input: Write a function named `VersionControl` that implements a basic version control system in Python, which keeps track of changes in the code. The function should have an `__init__` method to initialize the state, a `commit` method to save the current state, and a `restore` method to revert to the previous state.
  
  
  class VersionControl:
      def __init__(self, lines):
          self.lines = lines
          self.mark = 0
   
      def commit(self):
          self.mark += 1
          log_file = open("log_file.txt", "a+")
          log_file.write(str(self.mark) + ": " + str(self.lines))
          log_file.close()
   
      def restore(self):
          log_file = open("log_file.txt", "r")
          lines = log_file.readlines()
          to_mark = self.mark-1
   
          self.lines = lines[to_mark]
          log_file.close()
  
  assert VersionControl(["line1", "line2"]).commit()==None
  assert VersionControl(["line1", "line2"]).restore()==None
  assert VersionControl([]).commit()==None
  assert VersionControl([]).restore()==None
  
output: 
  class VersionControl:
      def __init__(self, lines):
          self.lines = lines
          self.mark = 0
          self.history = []
  
      def commit(self):
          self.history.append(self.lines[:])
          self.mark += 1
  
      def restore(self):
          if self.mark > 0:
              self.mark -= 1
              self.lines = self.history[self.mark][:]
  