impementing between(). broken for between('z', '~11')