public function update(Functions\ElementProjection $outerKeyFunction, Functions\ElementProjection $innerKeyFunction)
{
if ($this->outerKeyFunction === $outerKeyFunction && $this->innerKeyFunction === $innerKeyFunction) {
return $this;
}
return new self($outerKeyFunction, $innerKeyFunction);
}