input: Write a function to simulate a simple ATM machine. The function should handle account creation, deposits, withdrawals, and balance inquiries. The function should return an ATM object that supports these operations.
  assert simulate_atm().createAccount("John", 100)
  assert simulate_atm().deposit("John", 50)
  assert simulate_atm().withdrawal("John", 30)
  assert simulate_atm().printBalance("John")=="John  Balance: 120"
  assert simulate_atm().createAccount("Alice", 200)
  assert simulate_atm().deposit("Alice", 100)
  assert simulate_atm().withdrawal("Alice", 50)
  assert simulate_atm().printBalance("Alice")=="Alice  Balance: 250"
output: class ATM:
      def __init__(self):
          self.accounts = {}
  
      def createAccount(self, name, initial_balance):
          if name not in self.accounts:
              self.accounts[name] = initial_balance
              return True
          return False
  
      def deposit(self, name, amount):
          if name in self.accounts:
              self.accounts[name] += amount
              return True
          return False
  
      def withdrawal(self, name, amount):
          if name in self.accounts and self.accounts[name] >= amount:
              self.accounts[name] -= amount
              return True
          return False
  
      def printBalance(self, name):
          if name in self.accounts:
              return f"{name}  Balance: {self.accounts[name]}"
          return "Account not found"
  
  def simulate_atm():
      return ATM()