function OperationNode(operation)
{
	BaseNode.call(this);

	this.type = "OperationNode";

	/**
	 * Math operation performed by this node.
	 *
	 * @attribute operation
	 * @type {string}
	 */
	this.operation = operation;

	this.box.set(new Vector2(-50, -35), new Vector2(50, 35));

	/**
	 * Input node socket a.
	 *
	 * @attribute a
	 * @type {NodeSocket}
	 */
	this.a = null;

	/**
	 * Input node socket b.
	 *
	 * @attribute b
	 * @type {NodeSocket}
	 */
	this.b = null;

	/**
	 * Output node socket r with the result.
	 *
	 * @attribute r
	 * @type {NodeSocket}
	 */
	this.r = null;

	this.text = new Text();
	this.text.strokeStyle = new ColorStyle(DOMUtils.getCSSVariable("--color-light"));
	this.text.serializable = false;
	this.text.font = "25px Arial";
	this.text.layer = 2;
	this.add(this.text);
}
Operation nodes can be used for simple math operations with two input values.

@constructor
@class OperationNode
@param {string} operation Math operation symbol to be performed.