| 
					
				 | 
			
			
				@@ -2,6 +2,8 @@ import json 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import re 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 from abc import ABC, abstractmethod 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 from base64 import b64encode 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+from collections.abc import Mapping 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+from typing import Any 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 class TemplateTransformer(ABC): 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -10,7 +12,7 @@ class TemplateTransformer(ABC): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     _result_tag: str = "<<RESULT>>" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @classmethod 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    def transform_caller(cls, code: str, inputs: dict) -> tuple[str, str]: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    def transform_caller(cls, code: str, inputs: Mapping[str, Any]) -> tuple[str, str]: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         """ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Transform code to python runner 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         :param code: code 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -48,13 +50,13 @@ class TemplateTransformer(ABC): 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         pass 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @classmethod 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    def serialize_inputs(cls, inputs: dict) -> str: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    def serialize_inputs(cls, inputs: Mapping[str, Any]) -> str: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         inputs_json_str = json.dumps(inputs, ensure_ascii=False).encode() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         input_base64_encoded = b64encode(inputs_json_str).decode("utf-8") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return input_base64_encoded 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @classmethod 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    def assemble_runner_script(cls, code: str, inputs: dict) -> str: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    def assemble_runner_script(cls, code: str, inputs: Mapping[str, Any]) -> str: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         # assemble runner script 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         script = cls.get_runner_script() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         script = script.replace(cls._code_placeholder, code) 
			 |