added assembly generation