@@ -55,6 +55,7 @@ settings::settings() NOEXCEPT
5555 forks.bip66 = true ;
5656 forks.bip68 = true ;
5757 forks.bip90 = true ;
58+ forks.bip94 = false ;
5859 forks.bip112 = true ;
5960 forks.bip113 = true ;
6061 forks.bip141 = true ;
@@ -129,6 +130,7 @@ settings::settings(chain::selection context) NOEXCEPT
129130 forks.bip66 = true ;
130131 forks.bip68 = true ;
131132 forks.bip90 = true ;
133+ forks.bip94 = false ;
132134 forks.bip112 = true ;
133135 forks.bip113 = true ;
134136 forks.bip141 = true ;
@@ -230,6 +232,7 @@ settings::settings(chain::selection context) NOEXCEPT
230232 forks.bip66 = true ;
231233 forks.bip68 = true ;
232234 forks.bip90 = true ;
235+ forks.bip94 = false ;
233236 forks.bip112 = true ;
234237 forks.bip113 = true ;
235238 forks.bip141 = true ;
@@ -267,6 +270,96 @@ settings::settings(chain::selection context) NOEXCEPT
267270 break ;
268271 }
269272
273+ case chain::selection::testnet4:
274+ {
275+ genesis_block = chain::block
276+ {
277+ data_chunk
278+ {
279+ 0x01 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 ,
280+ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 ,
281+ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 ,
282+ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 ,
283+ 0x00 , 0x00 , 0x00 , 0x00 , 0x4e , 0x7b , 0x2b , 0x91 ,
284+ 0x28 , 0xfe , 0x02 , 0x91 , 0xdb , 0x06 , 0x93 , 0xaf ,
285+ 0x2a , 0xe4 , 0x18 , 0xb7 , 0x67 , 0xe6 , 0x57 , 0xcd ,
286+ 0x40 , 0x7e , 0x80 , 0xcb , 0x14 , 0x34 , 0x22 , 0x1e ,
287+ 0xae , 0xa7 , 0xa0 , 0x7a , 0x04 , 0x6f , 0x35 , 0x66 ,
288+ 0xff , 0xff , 0x00 , 0x1d , 0xbb , 0x0c , 0x78 , 0x17 ,
289+ 0x01 , 0x01 , 0x00 , 0x00 , 0x00 , 0x01 , 0x00 , 0x00 ,
290+ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 ,
291+ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 ,
292+ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 ,
293+ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0xff , 0xff ,
294+ 0xff , 0xff , 0x55 , 0x04 , 0xff , 0xff , 0x00 , 0x1d ,
295+ 0x01 , 0x04 , 0x4c , 0x4c , 0x30 , 0x33 , 0x2f , 0x4d ,
296+ 0x61 , 0x79 , 0x2f , 0x32 , 0x30 , 0x32 , 0x34 , 0x20 ,
297+ 0x30 , 0x30 , 0x30 , 0x30 , 0x30 , 0x30 , 0x30 , 0x30 ,
298+ 0x30 , 0x30 , 0x30 , 0x30 , 0x30 , 0x30 , 0x30 , 0x30 ,
299+ 0x30 , 0x30 , 0x30 , 0x30 , 0x31 , 0x65 , 0x62 , 0x64 ,
300+ 0x35 , 0x38 , 0x63 , 0x32 , 0x34 , 0x34 , 0x39 , 0x37 ,
301+ 0x30 , 0x62 , 0x33 , 0x61 , 0x61 , 0x39 , 0x64 , 0x37 ,
302+ 0x38 , 0x33 , 0x62 , 0x62 , 0x30 , 0x30 , 0x31 , 0x30 ,
303+ 0x31 , 0x31 , 0x66 , 0x62 , 0x65 , 0x38 , 0x65 , 0x61 ,
304+ 0x38 , 0x65 , 0x39 , 0x38 , 0x65 , 0x30 , 0x30 , 0x65 ,
305+ 0xff , 0xff , 0xff , 0xff , 0x01 , 0x00 , 0xf2 , 0x05 ,
306+ 0x2a , 0x01 , 0x00 , 0x00 , 0x00 , 0x23 , 0x21 , 0x00 ,
307+ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 ,
308+ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 ,
309+ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 ,
310+ 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 ,
311+ 0xac , 0x00 , 0x00 , 0x00 , 0x00
312+ }, false
313+ };
314+
315+ forks.bip16 = true ;
316+ forks.bip30 = true ;
317+ forks.bip30_deactivate = true ;
318+ forks.bip30_reactivate = true ;
319+ forks.bip34 = true ;
320+ forks.bip42 = true ;
321+ forks.bip65 = true ;
322+ forks.bip66 = true ;
323+ forks.bip68 = true ;
324+ forks.bip90 = true ;
325+ forks.bip94 = true ;
326+ forks.bip112 = true ;
327+ forks.bip113 = true ;
328+ forks.bip141 = true ;
329+ forks.bip143 = true ;
330+ forks.bip147 = true ;
331+ forks.bip341 = true ;
332+ forks.bip342 = true ;
333+ forks.retarget = true ; // !regtest
334+ forks.difficult = false ; // !testnet
335+ forks.time_warp_patch = false ; // litecoin
336+ forks.retarget_overflow_patch = false ; // litecoin
337+ forks.scrypt_proof_of_work = false ; // litecoin
338+
339+ bip16_activation_time = 1329264000 ;
340+ bip34_activation_threshold = 51 ;
341+ bip34_enforcement_threshold = 75 ;
342+ bip34_activation_sample = 100 ;
343+ bip90_bip34_height = 1 ;
344+ bip90_bip65_height = 1 ;
345+ bip90_bip66_height = 1 ;
346+
347+ // Approximation, see satoshi PR#12204.
348+ bip30_reactivate_height = 486'000' 000_size;
349+
350+ bip30_deactivate_checkpoint = { " 0000000012982b6d5f621229286b880e909984df669c2afabb102ce311b13f28" , 1 };
351+ bip9_bit0_active_checkpoint = { " 0000000012982b6d5f621229286b880e909984df669c2afabb102ce311b13f28" , 1 };
352+ bip9_bit1_active_checkpoint = { " 0000000012982b6d5f621229286b880e909984df669c2afabb102ce311b13f28" , 1 };
353+ bip9_bit2_active_checkpoint = { " 0000000012982b6d5f621229286b880e909984df669c2afabb102ce311b13f28" , 1 };
354+ checkpoints =
355+ {
356+ { " 00000000da84f2bafbbc53dee25a72ae507ff4914b867c565be350b0da8bf043" , 0 }
357+ };
358+ milestone = { " 0000000002368b1e4ee27e2e85676ae6f9f9e69579b29093e9a82c170bf7cf8a" , 123613 };
359+ minimum_work = base16_hash (" 000000000000000000000000000000000000000000000b6a51f415a67c0da307" );
360+ break ;
361+ }
362+
270363 case chain::selection::regtest:
271364 {
272365 proof_of_work_limit = 0x207fffff ;
0 commit comments