ugly MVP for 28.rb
cleaned up 28.rb