add bool_buffer
remove assign_traits