ruby 2.0 compatibility