--- id: aliases: [] tags: - automation - estimating - software - type/idea --- # Assembly Objects ```cs public class GangableReceptacle : IGangableDevice ... public class GangableSwitch : IGangableDevice ... public class OutletBox { public List Contents; public void Add(IUtilizationEquipment) { // Add to contents or throw if incompatible } public List Resolve() { // Check content types and resolve by specifications // or raise error if not possible // (e.g. incompatible devices) } } ```