from itertools import groupby
def split_case(s):
cats = str.isupper, str.islower, lambda x: True
cat = lambda c: next(i for i, f in enumerate(cats) if f(c))
return [''.join(g) for _, g in groupby(s, cat)]
print(split_case('FUCK you!!!11!'))
ZnJvbSBpdGVydG9vbHMgaW1wb3J0IGdyb3VwYnkKCmRlZiBzcGxpdF9jYXNlKHMpOgogICAgY2F0cyA9IHN0ci5pc3VwcGVyLCBzdHIuaXNsb3dlciwgbGFtYmRhIHg6IFRydWUKICAgIGNhdCA9IGxhbWJkYSBjOiBuZXh0KGkgZm9yIGksIGYgaW4gZW51bWVyYXRlKGNhdHMpIGlmIGYoYykpCgogICAgcmV0dXJuIFsnJy5qb2luKGcpIGZvciBfLCBnIGluIGdyb3VwYnkocywgY2F0KV0KCnByaW50KHNwbGl0X2Nhc2UoJ0ZVQ0sgeW91ISEhMTEhJykp