assign plan - finished front-end part
assign plan - full version