added part template generation