Skip to content

Instantly share code, notes, and snippets.

@helderjnpinto
Created December 23, 2019 13:31
Show Gist options
  • Save helderjnpinto/099751aedce90ebf8bdf47901a80eca0 to your computer and use it in GitHub Desktop.
Save helderjnpinto/099751aedce90ebf8bdf47901a80eca0 to your computer and use it in GitHub Desktop.
calcIntrinsic: encodedData => {
const txFee = new BigNumber('21000')
encodedData = hexToBytes(encodedData)
let countNonZeros = 0
let countZeros = 0
for (let i = 0; i < encodedData.length; i++) {
const dataElement = encodedData[i]
if (dataElement == '0') {
++countZeros
}
}
countNonZeros = encodedData.length - countZeros
countZerosTotal = new BigNumber(countZeros.toString()).times(new BigNumber('4'))
countNonZerosTotal = new BigNumber(countNonZeros.toString()).times(new BigNumber('16'))
return txFee.plus(countZerosTotal).plus(countNonZerosTotal)
},
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment