How to get different singleton in different module that create the same singleton in Flex?
===

I had study 「Beware of singleton in Flex modules」
in http://www.devahead.com/blog/2010/03/beware-of-singleton-in-flex-modules/
and a lot of information tell me that different module with different content,but in my case it doesn't work!
why the different module use the same static object? 
I'm trying to use module wide singleton,but it work like application wide singleton.
Can someone help me how to make module wide singleton.
the short code is like:

        <s:Application>
	    <s:ModuleLoader id="A" creationComplete="loadAModule()"/>    
	    <s:ModuleLoader id="B" creationComplete="loadBModule()"/>    

        </s:Application>

        //-----------AModule
        <s:Module>
           var aITx:ITx=Tx.newInstant();//Tx extend ITX
           tracc(aITx.instantId);
           ...
        </s:Module>

        //-----------BModule
        <s:Module>
           var aITx:ITx=Tx.getInstance();//Tx extend ITX
           tracc(aITx.instanceID);
           ...
        </s:Module>


        //-----singleton class
        	public class Tx extends EventDispatcher  implements ITx
        	{
        		public function Tx()
        		{
        			// Add listeners
        			addEventListeners();
        		} 
        		private static var instance:Tx;
        		public static function getInstance():Tx
        		{
        			if (!instance)
        			{
        				instance = new Tx();
        				// Generate a random instance ID
        				instance._instanceID = Math.round(Math.random() * 100);
        				trace("create new itx id="+instance.instanceID);
        			}else{
        				trace("use old itx id="+instance.instanceID);
        			}
			
        			return instance;
        		}
        		protected var _instanceID: Number = NaN;
		
        		public function get instanceID(): Number
        		{
        			return _instanceID;
        		}

        	}