Updated to use ByteString instead of String. Much faster.