added assembly helper functions