ruby 1.9 compatible