Sky.ElvenKings=newRings(3);
StoneHalls.DwardLords=newRings(7);
Doomed.MortalMen=newRings(9);
DarkThrone.DarkLord=newRings(1);
Debug.Assert(LandOfMordor.ShadowsLie);
CompositionContainerRing=newCompositionContainer();
Ring.AddComponent(Sky.ElvenKings);
Ring.AddComponent(StoneHalls.DwardLords);
Ring.AddComponent(Doomed.MortalMen);
Ring.AddComponent(DarkThrone.DarkLord);
#regionDarkness
Ring.Bind();
#endregion
Debug.Assert(LandOfMordor.ShadowsLie);

I couldn't help myself. Silliness aside, i think i'll be using this in one of my project. Should solve a problem that has been chasing me.