docs: async function (showPrompts) {
  
      logger.step('** Deploying utilityRegistrar Contract');
      if (showPrompts) {
        logger.info("Utility Chain Deployer Address: " + utilityDeployerAddress);
        logger.info("Foundation Address: " + foundationAddress);
        logger.info("Utility Chain Registrar User Address: " + utilityRegistrarAddress);
  
        await new Promise(
          function (onResolve, onReject) {
            prompts.question("Please verify all above details. Do you want to proceed? [Y/N]", function (intent) {
              if ((intent === 'Y') || (intent === 'y')) {
                logger.info('Great! Proceeding deployment.');
                prompts.close();
                onResolve();
              } else {
                logger.error('Exiting deployment scripts. Change the env vars and re-run.');
                process.exit(1);
              }
            });
          }
        );
      } else {
        prompts.close();
      }
  
      const utilityRegistrarContractDeployResult = await deployHelper.perform(utilityRegistrarContractName, web3Provider,
        utilityRegistrarContractAbi, utilityRegistrarContractBin, utilityDeployerName,
        {gasPrice: UC_GAS_PRICE, gas: UC_GAS_LIMIT});
  
      logger.step('** Setting opsAddress of utilityRegistrar Contract to utilityRegistrar');
      const utilityRegistrarContractAddress = utilityRegistrarContractDeployResult.contractAddress
        , utilityRegistrar = new UtilityRegistrarKlass(utilityRegistrarContractAddress);
  
      await utilityRegistrar.setOpsAddress(utilityDeployerName, utilityRegistrarAddress,
        {gasPrice: UC_GAS_PRICE, gas: UC_GAS_LIMIT});
  
      const getOpsAddressResponse = await utilityRegistrar.getOpsAddress();
  
      if (!utilityRegistrarAddress.equalsIgnoreCase(getOpsAddressResponse.data.address)) {
        logger.error('Exiting the deployment as opsAddress of utilityRegistrar Contract does not match');
        process.exit(1);
      }
  
      logger.step('** Initiating OwnerShipTransfer of utilityRegistrar Contract to foundation');
      await utilityRegistrar.initiateOwnerShipTransfer(utilityDeployerName, foundationAddress,
        {gasPrice: UC_GAS_PRICE, gas: UC_GAS_LIMIT});
  
      const getOwnerResponse = await utilityRegistrar.getOwner();
  
      if (!foundationAddress.equalsIgnoreCase(getOwnerResponse.data.address)) {
        logger.error('Exiting the deployment as owner of utilityRegistrar Contract does not match');
        process.exit(1);
      }
  
      return Promise.resolve(responseHelper.successWithData(
        {contract: 'utilityRegistrar', address: utilityRegistrarContractAddress}));
    }