nit: lets order the field definitions in the same order as the ctor.