input: Write a function that simulates a basic bank account. The function should be able to create an account with an initial balance, deposit an amount, withdraw an amount (only if there is enough balance), and retrieve the current balance. The function should return True if the withdrawal is successful, otherwise False. If the given amount to withdraw is greater than the balance, return False.
  
  ### Input:
  
  class BankAccount:
      
      def __init__(self, name, balance):
          self.name = name
          self.balance = balance
          
      def deposit(self, amount):
          self.balance += amount
      
      def withdraw(self, amount):
          if self.balance >= amount:
              self.balance -= amount
              return True
          else:
              return False
          
      def get_balance(self):
          return self.balance
  
  
  ### Output:
  
  assert BankAccount("Alice", 1000).deposit(500).get_balance() == 1500
  assert BankAccount("Bob", 1500).withdraw(2000) == False
  assert BankAccount("Charlie", 2000).withdraw(500).get_balance() == 1500
  
output: def __init__(self, name, balance):
      self.name = name
      self.balance = balance
      
  def deposit(self, amount):
      self.balance += amount
      return self
      
  def withdraw(self, amount):
      if self.balance >= amount:
          self.balance -= amount
          return True
      else:
          return False
      
  def get_balance(self):
      return self.balance