 				if (parserId == numRegisteredParser)
 					throw new Error('No parser could be found for this datatype');
 			}
+
+			byteArray.position = startPosition;
 			
 			_dependencies	 = _parser.getDependencies(byteArray);
 			_numDependencies = 0;

		
		public function loadBytes(byteArray : ByteArray) : void
		{
			if (_currentState != STATE_IDLE)
				throw new Error('This controller is already loading an asset.');
			
			_currentState = STATE_PARSING;
			
			_progress.execute(this, 0.5);
			
			if (_parserOptions.parser != null)
			{
				_parser = new (_parserOptions.parser)(_parserOptions);
			}

			_data			= null;
			_isComplete		= false;
			
			_parserOptions	= parserOptions || new ParserOptions();
		}
		
		public function load(urlRequest : URLRequest) : void
