For ChicagoPianoTuner, as on https://lalescu.ro/liviu/fet/forum/index.php?topic=4151.0 1) Activities without teachers (only subject and a student), FET days are teachers, FET hours are 42 real slots A1, A1', A2, A3, A4, A5, B1, B1', ..., G5, and 8 fake slots Fake1, ..., Fake8, in total 50 hours per day. 5) Students cannot have activities both (A2, T1) and (A2, T2) (same FET hour). This is done automatically in the code. 8) CPT: There are still some things we need to work out: Right now, if a student has a course of duration 8 (6 + 1 + 1) and it is requested by the teacher that the extra 2 do NOT occupy the long period (A1 and A1'), it is currently possible that those two extra are placed in different blocks (e.g F2 and B4). They should be in the same block. Liviu Lalescu: I will try a customization. Assuming the 1+1 activities are one near each other in the activities list (id, id+1), they have total duration 8, duration 1, and same activity group id. 9) Physical education (1+1+1): all subactivities should be in the same block. 10) If a subactivity from (6+1+1) is in Fake1...8, all parts should be in Fake1...8. 11) Activity tags not overlapping constraints are not checked in the Fake1...8 hours. It is assumed that there are no constraints of type activities not overlapping, or they can have the same behavior in Fake1...8, because they are treated together in the generation. 12) If two activities are constrained not to be ovelapping by constraints of type activities not overlapping or activity tags not overlapping, if they both have duration=total duration=4, they are allowed to overlap if they start at the same time. 13) A configurable option, now active, in timetablexport.cpp, to hide empty days (columns, real life teachers) in the subgroups' timetable days horizontal. 14) Faster code assuming each subgroup has around 10 activities. 15) 2+2 activities fall both in Fake or not Fake. 16) 2+2 two activities grouped are allowed G4,G5 and A1,A1'.