some split codegen work
fix test ok
resolve set error
split codegen
add code