code: public byte [] before() {
              if (this.sharedKey == null) {
                  this.sharedKey = new byte[sharedKeyLength];
                  crypto_box_beforenm(this.sharedKey, this.theirPublicKey, this.mySecretKey);
              }
  
              return this.sharedKey;
          }
docs: /*
  @description
  Returns a precomputed shared key
  which can be used in nacl.box.after and nacl.box.open.after.