public void SignContract(string firstName, string lastName, int terminalNumber, TariffOption tariffType) { if (!_billing.Repository.ContainsKey(terminalNumber)) { IContract newContract = new Contract(firstName, lastName, terminalNumber, tariffType, DateTime.Now); ITerminal newTerminal = ProduseTerminal(terminalNumber); IPort newPort = ProdusePort(newTerminal); ISubscriberInfo subscriberInfo = CreateSubscriberInfo(tariffType, terminalNumber, newContract); _billing.AddSubscriberInfo(terminalNumber, subscriberInfo); _station.AddMapItem(terminalNumber, newPort, newTerminal); } else { Console.WriteLine("\nThis number alredy used. Please choose another number.\n"); } }