Garrison Keillor cancels Illinois appearance