reader on type-sets
some restructuring