generate different types of frames