add bind type
remove bind type
change structs' typedef, add func pointer to zd