internal Hookup ChildContaining(Hookup child) { if (child.ParentHookup == this) return child; return (from hookup in child.Parents where hookup.ParentHookup == this select hookup).FirstOrDefault(); }