public bool IsPossibleToCreate(CaseModel Case, ProcessorModel Processor, MotherboardModel Motherboard, MemoryCardModel MemoryCard, PowerSupplyModel PowerSupply) { double SystemWatage = PowerSupply.CalculateSystemWattage(Processor.Wattage, MemoryCard.Wattage); bool IsCompatiblePowerSupply = PowerSupply.Wattage > SystemWatage; bool IsCompatibleWithMB = Motherboard.CheckMemoryCardCompatibility(MemoryCard.MemoryCardType) && Motherboard.CheckProcessorCompatibility(Processor.SocketType); bool IsCompatibleWithCase = Case.CheckMotherBoardСompatibility(Motherboard.MotherboardType) && Case.CheckPowerSupplyСompatibility(PowerSupply.PowerSupplyType); return(IsCompatibleWithMB && IsCompatibleWithCase && IsCompatiblePowerSupply); }