class InstanceSelector {

    T select( IndexSlot slot )
    {
        if ( !instances.containsKey( slot )  )
        {
            throw new IllegalStateException( "Instance is not instantiated" );
        }
        return instances.get( slot );
    }

      InstanceSelector();
      InstanceSelector( EnumMap<IndexSlot,T> map );

}