code: async function(web3) {
              return new Promise(function(resolve, reject) {
                  web3.eth
                      // .sendSignedTransaction(signedTransaction.rawTransaction, function(err, txHash) {
                         .sendTransaction(tx, function(err, txHash) {
                          if (err) {
                              reject(err);
                          } else {
                              // Mark completed when transaction has been submitted
                              resolve(txHash);
                          }
                  // Mark completed when transaction has been mined
                  // }).on('receipt', (receipt) => {
                  //     resolve(receipt);
                  // }).on('error', (err) => {
                  //     reject();
                  });
              });
          }
docs: const signedTransaction = await this.web3.eth.accounts.signTransaction(tx, this.privateKey);