where go acc _ "" = acc
go acc cur str
= let newAcc
= (takeWhile (==cur
) str
):acc
in
go newAcc newCur newStr
rle "" = ""
bWFpbiA9IHB1dFN0ckxuICQgcmxlICJ3d3d3YWFhZGV4eHh4eHgiCgpzcGxpdCA6OiBbQ2hhcl0gLT4gW1tDaGFyXV0Kc3BsaXQgc3RyID0gcmV2ZXJzZSAkIGdvIFtdIChoZWFkIHN0cikgc3RyCiAgd2hlcmUgZ28gYWNjIF8gIiIgICAgPSBhY2MKICAgICAgICBnbyBhY2MgY3VyIHN0ciA9IGxldCBuZXdBY2MgPSAodGFrZVdoaWxlICg9PWN1cikgc3RyKTphY2MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdTdHIgPSBkcm9wV2hpbGUgKD09Y3VyKSBzdHIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdDdXIgPSBoZWFkIG5ld1N0cgogICAgICAgICAgICAgICAgICAgICAgICAgaW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgZ28gbmV3QWNjIG5ld0N1ciBuZXdTdHIKCnJsZSA6OiBbQ2hhcl0gLT4gW0NoYXJdCnJsZSAiIiA9ICIiCnJsZSB4ICA9IGZvbGRsIChcYWNjIHggLT4gYWNjICsrIChoZWFkIHg6KHNob3cgJCBsZW5ndGggeCkpKSAiIiAuIHNwbGl0ICQgeAo=