code: function ContractInstance(config) {
        _classCallCheck(this, ContractInstance);
  
        this._config = config;
        this._contract = config.contract;
        this._web3 = this._contract._web3;
        this._address = config.address;
        this._inst = this.contract._contract.at(this._address);
  
        /*
        Logger is same as parent contract one, except that address is prepended 
        to all log output.
         */
        this._logger = {};
        for (var logMethod in DUMMY_LOGGER) {
          this._logger[logMethod] = function (logMethod, self) {
            return function () {
              self.contract.logger[logMethod].apply(self.contract.logger, ['[' + self.address + ']: '].concat(Array.from(arguments)));
            };
          }(logMethod, this);
        }
      }
docs: Construct a new instance.
  
  @param {Object} config Configuration.
  @param {Contract} config.contract The contract instance.
  @param {String} config.address Address on blockchain.