support for complex, cleanups, ...
fixed isConstant