template
B_update