wrap "slurp()" into eval {} too