 			ExtensionClassRegistry.register( RosterExtension );
 			return true;
 		}
-		
+
 		/**
 		 * Adds a contact to the roster. Remember: All roster data is managed on the server-side,
 		 * so this contact is added to the server-side roster first, and upon successful addition,

			{
				displayName = id.toString();
			}
				
			var callbackObj:Roster = null;
			var callbackMethod:String = null;
			var subscription:String = RosterExtension.SUBSCRIBE_TYPE_NONE;
			var askType:String = RosterExtension.ASK_TYPE_NONE;
			
			if ( requestSubscription == true )
			{
				callbackObj = this;

				subscription = RosterExtension.SUBSCRIBE_TYPE_TO;
				askType = RosterExtension.ASK_TYPE_SUBSCRIBE
			}

			var tempIQ:IQ = new IQ( null, IQ.SET_TYPE, XMPPStanza.generateID( "add_user_" ),
									callbackMethod, callbackObj );
			var ext:RosterExtension = new RosterExtension( tempIQ.getNode() );
			ext.addItem( id.escaped, null, displayName, groupName ? [ groupName ] :
						 null );
			tempIQ.addExtension( ext );
			_connection.send( tempIQ );


			addRosterItem( id, displayName, RosterExtension.SHOW_PENDING, RosterExtension.SHOW_PENDING,
						   [ groupName ], subscription, askType );
		}

		/**
		 *
		 * @param	resultIQ
		 */
		public function addContact_result( resultIQ:IQ ):void
		{
			// Contact was added, request subscription
			requestSubscription( pendingSubscriptionRequestJID );
			pendingSubscriptionRequestJID = null;
		}

		/**
		 * Revokes an existing presence subscription or denies a subscription request. If a user
		 * has sent you a subscription request you can use this method to deny that request. Otherwise,
		 * if a user already has a granted presence subscription, you can use this method to revoke that
		 * subscription.
		 *
		 * @param	tojid The JID of the user or service that you are denying subscription
		 */
		public function denySubscription( tojid:UnescapedJID ):void
		{
			var tempPresence:Presence = new Presence( tojid.escaped, null, Presence.UNSUBSCRIBED_TYPE );
			_connection.send( tempPresence );
		}

		/**
		 * Fetches the roster data from the server. Once the data has been fetched, the Roster's data
		 * provider is populated appropriately. If the Roster-XMPPConnection class dependency has been
