from kata_021 import merge_sorted

def merge_k_divide(arrays):
    def merge_range(left, right):
        if left == right:
            return []
        if right - left == 1:
            return list(arrays[left])
        mid = (left + right) // 2
        a = merge_range(left, mid)
        b = merge_range(mid, right)
        return merge_sorted(a, b)
    return merge_range(0, len(arrays))
