public FacadeBase Login(string username, string pwd, out ILoginToken loginToken) { LoginService LS = new LoginService(); if (LS.TryAdminLogin(username, pwd, out LoginToken <Administrator> adminToken)) { loginToken = adminToken; return(new LoggedInAdministratorFacade()); } if (LS.TryAirlineLogin(username, pwd, out LoginToken <AirlineCompany> airlineToken)) { loginToken = airlineToken; return(new LoggedInAirlineFacade()); } if (LS.TryCustomerLogin(username, pwd, out LoginToken <Customer> customerToken)) { loginToken = customerToken; return(new LoggedInCustomerFacade()); } loginToken = null; return(null); }