Simplification to allow older compilers to compile the code
Fixed expansion through BinaryOp types, and added a new var symbol