implemented ruby version