def main() -> None:  # Main function for testing.
    root = make_tree()

    print(f"In-order Traversal: {inorder(root)}")
    print(f"Pre-order Traversal: {preorder(root)}")
    print(f"Post-order Traversal: {postorder(root)}", "\n")

    print(f"Height of Tree: {height(root)}", "\n")

    print("Complete Level Order Traversal: ")
    print(level_order(root), "\n")

    print("Level-wise order Traversal: ")

    for level in range(1, height(root) + 1):
        print(f"Level {level}:", get_nodes_from_left_to_right(root, level=level))

    print("\nZigZag order Traversal: ")
    print(zigzag(root))