first version of preprocessor class added