--- id: aliases: [] tags: - status/fleeting - topic/automation - topic/estimating - topic/software --- # 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) } } ``` ```yaml - type: switchboard parents: 1 children: 0.. primary-rating: amperes - type: transfer-switch parents: 2 children: 1 - type: transformer parents: 1 children: 1 primary-rating: volt-amperes ```