added ExpressionGuard implementation