public synchronized byte @NotNull [] getTreeHash() {
    if (myTreeHash == null) {
      // Probably we don't need to hash the length and "\0000".
      MessageDigest digest = DigestUtil.sha256();
      digest.update(String.valueOf(myTreeByteLength).getBytes(StandardCharsets.UTF_8));
      digest.update("\u0000".getBytes(StandardCharsets.UTF_8));
      digest.update(myTreeBytes, 0, myTreeByteLength);
      myTreeHash = digest.digest();
    }
    return myTreeHash;
  }
public synchronized byte @NotNull [] getTreeHash()