adapted to work with ruby 1.9.3