When the median time past<sup>[1]</sup> of the most recent `11` blocks (`MTP - 11`) is greater than or equal to UNIX timestamp `1510600000` Bitcoin Cash will execute a hardfork according to this specification.
Starting from the next block these three consensus rules changes will take effect:
* Enforcement of LOW_S signatures ([BIP 0146](//github.com/bitcoin/bips/blob/master/bip-0146.mediawiki#low_s))
* Enforcement of NULLFAIL ([BIP 0146](//github.com/bitcoin/bips/blob/master/bip-0146.mediawiki#nullfail))
To calculate the difficulty of a given block (<code>B<sub>n</sub> + 1</code>), with an `MTP-11`<sup>[1]</sup> greater than or equal to the unix timestamp `1510600000`, perform the following steps:
1. Let <code>B<sub>n</sub></code> be the Nth block in a Bitcoin Cash Blockchain.
1. Let <code>B<sub>last</sub></code> be chosen<sup>[2]</sup> from <code>[B<sub>n</sub> - 2, B<sub>n</sub> - 1, B<sub>n</sub>]</code>.
1. Let <code>B<sub>first</sub></code> be chosen<sup>[2]</sup> from <code>[B<sub>n</sub> - 146, B<sub>n</sub> - 145, B<sub>n</sub> - 144]</code>.
1. Let the Timespan (`TS`) be equal to the difference in UNIX timestamps (in seconds) between <code>B<sub>last</sub></code> and <code>B<sub>first</sub></code> within the range `[72 * 600, 288 * 600]`.
1. Let Target (`T`) be equal to the <code>(2<sup>256</sup> - PW) / PW</code>. This is calculated by taking the two’s complement of `PW` (`-PW`) and dividing it by `PW` (`-PW / PW`).
1. The target difficulty for block <code>B<sub>n</sub> + 1</code> is then equal to the lesser of `T` and `0x00000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF`
> See [GetSuitableBlock](https://github.com/Bitcoin-ABC/bitcoin-abc/commit/be51cf295c239ff6395a0aa67a3e13906aca9cb2#diff-ba91592f703a9d0badf94e67144bc0aaR208)