working on ComplexExpression