modified hashie.rb