use forked assemble