nicetraj: key order is arbitrary except in init and vary