generate for ass3