input: from typing import List
  
  def version_control(code_lines: List[str]) -> VersionControl:
      """Implement a basic version control system that keeps track of changes in the code.
      
      This function initializes a VersionControl object and provides methods to commit changes
      and restore to a previous version.
  
      >>> vc = version_control(['print("Hello, World!")'])
      >>> vc.commit()
      >>> vc.restore()
      """
      return VersionControl(code_lines)
output:     class VersionControl:
          def __init__(self, code_lines: List[str]):
              self.code_lines = code_lines
              self.history = [code_lines.copy()]
              self.current_version = 0
  
          def commit(self):
              if self.code_lines != self.history[self.current_version]:
                  self.history = self.history[:self.current_version + 1]
                  self.history.append(self.code_lines.copy())
                  self.current_version += 1
  
          def restore(self):
              if self.current_version > 0:
                  self.current_version -= 1
                  self.code_lines = self.history[self.current_version].copy()