public void PayOK()
 {
     Console.WriteLine($"Payment successful. You can now proceed.");
     Turnstile.ChangeState(new OpenTurnstileState(Turnstile));
 }
 public void Enter()
 {
     Console.WriteLine($"You went through the turnstile.");
     Turnstile.ChangeState(new ClosedTurnstileState(Turnstile));
 }
 public void Pay()
 {
     Console.WriteLine($"Processing payment");
     Turnstile.ChangeState(new ProcessingTurnstileState(Turnstile));
     Turnstile.Pay();
 }