private bool ScanPPUnaryExpression(ref char c) { if (c == '!') { c = this.SkipBlanks(); return !this.ScanPPUnaryExpression(ref c); } return this.ScanPPPrimaryExpression(ref c); }