| 
					
				 | 
			
			
				@@ -288,6 +288,20 @@ function resolve_kernel(configuration) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function withImportsExcluded(data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	var srcLines = data.split(/\r\n|\r|\n/), dstLines = [], doCopy = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	srcLines.forEach(function (line) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if (line.replace(/\s/g, '') === '//>>excludeStart("imports",pragmas.excludeImports);') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			doCopy = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} else if (line.replace(/\s/g, '') === '//>>excludeEnd("imports");') { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			doCopy = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} else if (doCopy) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			dstLines.push(line); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	return dstLines.join('\n'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * Resolve .js files needed by compiler, read and eval() them. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * The finished Compiler gets stored in configuration.{core,globals}. 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -355,13 +369,14 @@ function create_compiler(configuration) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	.then(function(files) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		var loadIds = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		files.forEach(function(data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			// data is an array where index 0 is the error code and index 1 contains the data 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			builder.add(data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			data = data + ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			// matches and returns the "module_id" string in the AMD definition: define("module_id", ...) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			var match = ('' + data).match(/^define\("([^"]*)"/); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			var match = data.match(/^define\("([^"]*)"/); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			if (match) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				loadIds.push(match[1]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				data = withImportsExcluded(data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			builder.add(data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		// store the generated smalltalk env in configuration.{core,globals} 
			 |