added function do_assemble (similar to do_link) if non-null this function