patters-and-strings