generating various formats improved