ugly preprocessor token