 
 			var i:int;
 			var token:String;
+			var str:String;
 			
 			// first step: compile quoted Strings and Numbers
 			for (i = 0; i < tokens.length; i++)
 			{
-				var str:String = tokens[i] as String;
+				str = tokens[i] as String;
 				if (!str)
 					continue;
 				

					catch (e:Error)
					{
						if (ignoreRuntimeErrors)
						{
							result = undefined;
						}
						else
						{
							/*
							if (compiledParams && call.evaluatedMethod == null)
							{
								while (call.compiledMethod is CompiledFunctionCall && call.evaluatedMethod == null)
									call = call.compiledMethod as CompiledFunctionCall;
								throw new Error("Undefined method: " + call.evaluatedMethod || (call.compiledMethod as CompiledConstant).value);
							}
							*/
							throw e;
						}
					}
					// remove this call from the stack
					stack.pop();

					return;
			}
		}
		*/
		
		private function assertValidStatementParams(tokens:Array):void
		{
			for (var index:int = 0; index < tokens.length; index++)
			{
				var statement:String = tokens[index] as String;
				if (statements[statement]) // requires parameters?
				{
					// statement parameters must be wrapped in operator ';' call
					var params:CompiledFunctionCall = tokens[index + 1] as CompiledFunctionCall;
					if (!params || params.evaluatedMethod != operators[';'])
						throwInvalidSyntax(statement);
					
					var cpl:int = params.compiledParams.length;
					if (statement == ST_FOR || statement == ST_FOR_EACH)
					{
						// 'for' and 'for each' require either 3 or 1 statement params
						if (cpl != 3 && cpl != 1)
							throwInvalidSyntax(statement);
						
						if (cpl == 1)
						{
							// if 'for' or 'for each' has only one param, it must be the 'in' operator
							var cfc:CompiledFunctionCall = params.compiledParams[0] as CompiledFunctionCall;
							if (!cfc || cfc.evaluatedMethod != operators['in'])
								throwInvalidSyntax(statement);
							
							// the 'in' operator must have a variable or property reference as its first parameter
							cfc = cfc.compiledParams[0];
							if (cfc.compiledParams != null || cfc.evaluatedMethod != operators['.']) // not a variable and not a property
								throwInvalidSyntax(statement);
						}
					}
					else if (cpl != 1)
					{
						throwInvalidSyntax(statement);
					}
				}
			}
		}
