support ruby 1.8