 		public static var cacheFlushInterval:Number = ( 6 * 60 * 60 * 1000 );
 
 		/**
-		 * VCard cache indexed by the UnescapedJID.bareJID of the contact or current user.
-		 */
-		private static var cache:Object = {};
+		 * VCard cache indexed by the UnescapedJID.bareJID of the user.
+		 */
+		private static var cache:Dictionary = new Dictionary();
 
 		/**
 		 * Flush the vCard cache every 6 hours by default.

			{
				vcardExtNode.TZ = DateTimeParser.date2string( timezone );
			}
			
			//GEO
			if( geographicalPosition )
			{
				var geoNode:XML = <GEO/>;
				
				if ( geographicalPosition.latitude )
				{
					geoNode.LAT = geographicalPosition.latitude;
				}
				
				if ( geographicalPosition.longitude )
				{
					geoNode.LON = geographicalPosition.longitude;
				}
				
				vcardExtNode.appendChild( geoNode );
			}


				workAddressLabelNode.LINE = workAddressLabel;
				vcardExtNode.appendChild( workAddressLabelNode );
			}

			if ( homeAddressLabel )
			{
				var homeAddressLabelNode:XML = <LABEL/>;
