interface changes:
assign_id included!