More test cases ... will need to compare output against the Ruby version