def solution(*args):
for s1, s2 in zip(args, args[1:]):
a, b, l = (s1, s2, len(s2)) if len(s1) > len(s2) else (s2, s1, len(s1))
if l and (a[-l:] != b or a[:l] != b):
return False
return True
print(solution("", "aab"))
print(solution("ab", "abab"))
print(solution("abc", "abcd", "abcabc"))
ZGVmIHNvbHV0aW9uKCphcmdzKToKICAgIGZvciBzMSwgczIgaW4gemlwKGFyZ3MsIGFyZ3NbMTpdKToKICAgICAgICBhLCBiLCBsID0gKHMxLCBzMiwgbGVuKHMyKSkgaWYgbGVuKHMxKSA+IGxlbihzMikgZWxzZSAoczIsIHMxLCBsZW4oczEpKQogICAgICAgIGlmIGwgYW5kIChhWy1sOl0gIT0gYiBvciBhWzpsXSAhPSBiKToKICAgICAgICAgICAgcmV0dXJuIEZhbHNlCiAgICByZXR1cm4gVHJ1ZQoKcHJpbnQoc29sdXRpb24oIiIsICJhYWIiKSkKcHJpbnQoc29sdXRpb24oImFiIiwgImFiYWIiKSkKcHJpbnQoc29sdXRpb24oImFiYyIsICJhYmNkIiwgImFiY2FiYyIpKQ==