working properly in ruby 1.8.7