// ------------------------------------------------------------
  // Constructors
  // ------------------------------------------------------------
  public LeftTuple(
      final InternalFactHandle factHandle, LeftTupleSink sink, boolean leftTupleMemoryEnabled) {
    this.handle = factHandle;
    this.recency = factHandle.getRecency();

    this.hashCode = handle.hashCode();

    if (leftTupleMemoryEnabled) {
      LeftTuple currentFirst = handle.getLeftTuple();
      if (currentFirst != null) {
        currentFirst.leftParentPrevious = this;
        this.leftParentNext = currentFirst;
      }

      handle.setLeftTuple(this);
    }
    this.sink = sink;
  }