add 'prepare' for user function
add map binding for json