modified knife.rb