input: Write a python function to perform level order traversal of a binary tree and return the result as a list of values.
  assert LevelOrderTraversal(Node(4)) == [4]
  assert LevelOrderTraversal(Node(1, Node(2), Node(3))) == [1, 2, 3]
  assert LevelOrderTraversal(Node(4, Node(2, Node(1), Node(3)), Node(6, Node(5), Node(7)))) == [4, 2, 6, 1, 3, 5, 7]
output: class Node:
      def __init__(self, value=0, left=None, right=None):
          self.value = value
          self.left = left
          self.right = right
  
  def LevelOrderTraversal(root):
      if not root:
          return []
      
      from collections import deque
      
      queue = deque([root])
      result = []
      
      while queue:
          node = queue.popleft()
          result.append(node.value)
          
          if node.left:
              queue.append(node.left)
          if node.right:
              queue.append(node.right)
      
      return result