Hex Artifact Content

Artifact e07a00986834aee0e0f5b1e6b367989963070d95a16716348850b6a674872702:


0000: 23 21 20 2f 75 73 72 2f 62 69 6e 2f 65 6e 76 20  #! /usr/bin/env 
0010: 73 68 0a 0a 62 69 74 73 3d 27 32 30 34 38 27 0a  sh..bits='2048'.
0020: 6f 70 74 69 6f 6e 5f 66 61 6c 6c 62 61 63 6b 3d  option_fallback=
0030: 27 30 27 0a 66 6f 72 20 61 72 67 20 69 6e 20 22  '0'.for arg in "
0040: 24 40 22 3b 20 64 6f 0a 09 63 61 73 65 20 22 24  $@"; do..case "$
0050: 7b 61 72 67 7d 22 20 69 6e 0a 09 09 66 61 6c 6c  {arg}" in...fall
0060: 62 61 63 6b 29 0a 09 09 09 6f 70 74 69 6f 6e 5f  back)....option_
0070: 66 61 6c 6c 62 61 63 6b 3d 27 31 27 0a 09 09 09  fallback='1'....
0080: 3b 3b 0a 09 09 62 69 74 73 3d 2a 29 0a 09 09 09  ;;...bits=*)....
0090: 62 69 74 73 3d 22 60 65 63 68 6f 20 22 24 7b 61  bits="`echo "${a
00a0: 72 67 7d 22 20 7c 20 63 75 74 20 2d 66 20 32 20  rg}" | cut -f 2 
00b0: 2d 64 20 3d 60 22 0a 09 09 09 3b 3b 0a 09 65 73  -d =`"....;;..es
00c0: 61 63 0a 64 6f 6e 65 0a 0a 6f 70 65 6e 73 73 6c  ac.done..openssl
00d0: 5f 64 68 70 61 72 61 6d 31 28 29 20 7b 0a 09 69  _dhparam1() {..i
00e0: 66 20 6f 70 65 6e 73 73 6c 20 64 68 70 61 72 61  f openssl dhpara
00f0: 6d 20 2d 43 20 22 24 40 22 20 7c 20 73 65 64 09  m -C "$@" | sed.
0100: 5c 0a 09 20 20 20 20 2d 65 20 27 73 2f 5e 5c 28  \..    -e 's/^\(
0110: 73 74 61 74 69 63 20 5c 29 2a 44 48 20 5c 2a 67  static \)*DH \*g
0120: 65 74 5f 64 68 5b 30 2d 39 5d 2a 2f 73 74 61 74  et_dh[0-9]*/stat
0130: 69 63 20 44 48 20 2a 67 65 74 5f 64 68 50 61 72  ic DH *get_dhPar
0140: 61 6d 73 2f 27 09 5c 0a 09 20 20 20 20 2d 65 20  ams/'.\..    -e 
0150: 27 2f 5e 2d 2d 2d 2d 2d 42 45 47 49 4e 20 44 48  '/^-----BEGIN DH
0160: 20 50 41 52 41 4d 45 54 45 52 53 2d 2d 2d 2d 2d   PARAMETERS-----
0170: 24 2f 2c 2f 5e 2d 2d 2d 2d 2d 45 4e 44 20 44 48  $/,/^-----END DH
0180: 20 50 41 52 41 4d 45 54 45 52 53 2d 2d 2d 2d 2d   PARAMETERS-----
0190: 24 2f 20 64 3b 2f 5e 23 2f 20 64 27 0a 09 74 68  $/ d;/^#/ d'..th
01a0: 65 6e 0a 09 09 72 65 74 75 72 6e 20 30 0a 09 66  en...return 0..f
01b0: 69 0a 0a 09 72 65 74 75 72 6e 20 31 0a 7d 0a 0a  i...return 1.}..
01c0: 23 20 4f 70 65 6e 53 53 4c 20 33 2e 30 20 6f 70  # OpenSSL 3.0 op
01d0: 65 6e 73 73 6c 2d 64 68 70 61 72 61 6d 20 68 61  enssl-dhparam ha
01e0: 73 20 6e 6f 20 22 2d 43 22 20 6f 70 74 69 6f 6e  s no "-C" option
01f0: 2c 20 73 6f 20 77 65 20 65 6d 75 6c 61 74 65 20  , so we emulate 
0200: 69 74 20 68 65 72 65 0a 6f 70 65 6e 73 73 6c 5f  it here.openssl_
0210: 64 68 70 61 72 61 6d 33 28 29 20 7b 0a 09 69 66  dhparam3() {..if
0220: 20 6f 70 65 6e 73 73 6c 20 64 68 70 61 72 61 6d   openssl dhparam
0230: 20 2d 74 65 78 74 20 32 30 34 38 20 7c 20 5c 0a   -text 2048 | \.
0240: 09 20 20 20 20 73 65 64 20 2d 45 20 2d 65 20 27  .    sed -E -e '
0250: 2f 5e 2d 2d 2d 2f 2c 2f 5e 2d 2d 2d 2f 64 27 20  /^---/,/^---/d' 
0260: 5c 0a 09 09 2d 65 20 27 2f 28 44 48 7c 70 72 69  \...-e '/(DH|pri
0270: 6d 65 7c 67 65 6e 65 72 61 74 6f 72 29 2f 64 27  me|generator)/d'
0280: 20 5c 0a 09 09 2d 65 20 27 73 2f 28 5b 30 2d 39   \...-e 's/([0-9
0290: 61 2d 68 5d 7b 32 7d 29 28 3a 7c 24 24 29 2f 30  a-h]{2})(:|$$)/0
02a0: 78 5c 31 2c 20 2f 67 27 20 5c 0a 09 09 2d 65 20  x\1, /g' \...-e 
02b0: 67 65 6e 65 72 61 74 65 64 64 68 2e 74 78 74 0a  generateddh.txt.
02c0: 09 74 68 65 6e 0a 09 65 6c 73 65 0a 09 09 72 65  .then..else...re
02d0: 74 75 72 6e 20 30 0a 09 66 69 0a 0a 0a 09 63 61  turn 0..fi....ca
02e0: 74 20 3c 3c 20 5c 5f 45 4f 46 5f 0a 2f 2a 0a 20  t << \_EOF_./*. 
02f0: 2a 20 4f 70 65 6e 53 53 4c 20 6e 6f 20 6c 6f 6e  * OpenSSL no lon
0300: 67 65 72 20 6f 66 66 65 72 73 20 74 68 65 20 22  ger offers the "
0310: 2d 43 22 20 6f 70 74 69 6f 6e 20 66 6f 72 20 69  -C" option for i
0320: 74 73 20 64 68 70 61 72 61 6d 0a 20 2a 20 73 75  ts dhparam. * su
0330: 62 63 6f 6d 6d 61 6e 64 2c 20 73 6f 20 77 65 20  bcommand, so we 
0340: 6b 65 65 70 20 6f 75 72 20 6f 77 6e 20 43 2d 63  keep our own C-c
0350: 6f 64 65 20 68 65 72 65 2e 2e 2e 0a 20 2a 2f 0a  ode here.... */.
0360: 0a 73 74 61 74 69 63 20 44 48 20 2a 20 67 65 74  .static DH * get
0370: 5f 64 68 50 61 72 61 6d 73 28 76 6f 69 64 29 20  _dhParams(void) 
0380: 7b 0a 09 73 74 61 74 69 63 20 75 6e 73 69 67 6e  {..static unsign
0390: 65 64 20 63 68 61 72 20 64 68 70 5f 32 30 34 38  ed char dhp_2048
03a0: 5b 5d 20 3d 20 7b 0a 23 69 6e 63 6c 75 64 65 20  [] = {.#include 
03b0: 22 67 65 6e 65 72 61 74 65 64 64 68 2e 74 78 74  "generateddh.txt
03c0: 22 0a 09 7d 3b 0a 09 73 74 61 74 69 63 20 75 6e  "..};..static un
03d0: 73 69 67 6e 65 64 20 63 68 61 72 20 64 68 67 5f  signed char dhg_
03e0: 32 30 34 38 5b 5d 20 3d 20 7b 0a 09 09 30 78 30  2048[] = {...0x0
03f0: 32 0a 09 7d 3b 0a 09 44 48 09 20 20 20 20 20 20  2..};..DH.      
0400: 20 2a 64 68 20 3d 20 44 48 5f 6e 65 77 28 29 3b   *dh = DH_new();
0410: 0a 09 42 49 47 4e 55 4d 09 20 20 20 20 20 20 20  ..BIGNUM.       
0420: 2a 70 2c 20 2a 67 3b 0a 0a 09 69 66 20 28 64 68  *p, *g;...if (dh
0430: 20 3d 3d 20 4e 55 4c 4c 29 0a 09 09 72 65 74 75   == NULL)...retu
0440: 72 6e 20 4e 55 4c 4c 3b 0a 09 70 20 3d 20 42 4e  rn NULL;..p = BN
0450: 5f 62 69 6e 32 62 6e 28 64 68 70 5f 32 30 34 38  _bin2bn(dhp_2048
0460: 2c 20 73 69 7a 65 6f 66 28 64 68 70 5f 32 30 34  , sizeof(dhp_204
0470: 38 29 2c 20 4e 55 4c 4c 29 3b 0a 09 67 20 3d 20  8), NULL);..g = 
0480: 42 4e 5f 62 69 6e 32 62 6e 28 64 68 67 5f 32 30  BN_bin2bn(dhg_20
0490: 34 38 2c 20 73 69 7a 65 6f 66 28 64 68 67 5f 32  48, sizeof(dhg_2
04a0: 30 34 38 29 2c 20 4e 55 4c 4c 29 3b 0a 09 69 66  048), NULL);..if
04b0: 20 28 70 20 3d 3d 20 4e 55 4c 4c 20 7c 7c 20 67   (p == NULL || g
04c0: 20 3d 3d 20 4e 55 4c 4c 0a 09 20 20 20 20 7c 7c   == NULL..    ||
04d0: 20 21 44 48 5f 73 65 74 30 5f 70 71 67 28 64 68   !DH_set0_pqg(dh
04e0: 2c 20 70 2c 20 4e 55 4c 4c 2c 20 67 29 29 20 7b  , p, NULL, g)) {
04f0: 0a 09 09 44 48 5f 66 72 65 65 28 64 68 29 3b 0a  ...DH_free(dh);.
0500: 09 09 42 4e 5f 66 72 65 65 28 70 29 3b 0a 09 09  ..BN_free(p);...
0510: 42 4e 5f 66 72 65 65 28 67 29 3b 0a 09 09 72 65  BN_free(g);...re
0520: 74 75 72 6e 20 4e 55 4c 4c 3b 0a 09 7d 0a 09 72  turn NULL;..}..r
0530: 65 74 75 72 6e 20 64 68 3b 0a 7d 0a 5f 45 4f 46  eturn dh;.}._EOF
0540: 5f 0a 0a 09 72 65 74 75 72 6e 20 30 0a 7d 0a 0a  _...return 0.}..
0550: 67 65 6e 5f 64 68 5f 70 61 72 61 6d 73 5f 6f 70  gen_dh_params_op
0560: 65 6e 73 73 6c 28 29 20 7b 0a 09 6f 70 65 6e 73  enssl() {..opens
0570: 73 6c 5f 64 68 70 61 72 61 6d 33 20 22 24 7b 62  sl_dhparam3 "${b
0580: 69 74 73 7d 22 20 3c 20 2f 64 65 76 2f 6e 75 6c  its}" < /dev/nul
0590: 6c 20 7c 7c 20 72 65 74 75 72 6e 20 31 0a 09 72  l || return 1..r
05a0: 65 74 75 72 6e 20 30 0a 7d 0a 0a 67 65 6e 5f 64  eturn 0.}..gen_d
05b0: 68 5f 70 61 72 61 6d 73 5f 72 65 6d 6f 74 65 28  h_params_remote(
05c0: 29 20 7b 0a 09 75 72 6c 3d 22 68 74 74 70 73 3a  ) {..url="https:
05d0: 2f 2f 32 74 6f 6e 2e 63 6f 6d 2e 61 75 2f 64 68  //2ton.com.au/dh
05e0: 70 61 72 61 6d 2f 24 7b 62 69 74 73 7d 22 0a 0a  param/${bits}"..
05f0: 09 72 5f 69 6e 70 75 74 3d 22 60 63 75 72 6c 20  .r_input="`curl 
0600: 2d 73 53 20 22 24 7b 75 72 6c 7d 22 60 22 20 7c  -sS "${url}"`" |
0610: 7c 20 5c 0a 09 09 72 5f 69 6e 70 75 74 3d 22 60  | \...r_input="`
0620: 77 67 65 74 20 2d 4f 20 2d 20 2d 6f 20 2f 64 65  wget -O - -o /de
0630: 76 2f 6e 75 6c 6c 20 22 24 7b 75 72 6c 7d 22 60  v/null "${url}"`
0640: 22 20 7c 7c 20 72 65 74 75 72 6e 20 31 0a 0a 09  " || return 1...
0650: 69 66 20 72 5f 6f 75 74 70 75 74 3d 22 60 65 63  if r_output="`ec
0660: 68 6f 20 22 24 7b 72 5f 69 6e 70 75 74 7d 22 20  ho "${r_input}" 
0670: 7c 20 6f 70 65 6e 73 73 6c 5f 64 68 70 61 72 61  | openssl_dhpara
0680: 6d 31 60 22 3b 20 74 68 65 6e 0a 09 09 65 63 68  m1`"; then...ech
0690: 6f 20 22 24 7b 72 5f 6f 75 74 70 75 74 7d 22 0a  o "${r_output}".
06a0: 0a 09 09 72 65 74 75 72 6e 20 30 0a 09 66 69 0a  ...return 0..fi.
06b0: 0a 09 72 65 74 75 72 6e 20 31 0a 7d 0a 0a 67 65  ..return 1.}..ge
06c0: 6e 5f 64 68 5f 70 61 72 61 6d 73 5f 66 61 6c 6c  n_dh_params_fall
06d0: 62 61 63 6b 28 29 20 7b 0a 09 63 61 74 20 3c 3c  back() {..cat <<
06e0: 20 5c 5f 45 4f 46 5f 0a 23 69 6e 63 6c 75 64 65   \_EOF_.#include
06f0: 20 3c 6f 70 65 6e 73 73 6c 2f 64 68 2e 68 3e 0a   <openssl/dh.h>.
0700: 23 69 6e 63 6c 75 64 65 20 3c 6f 70 65 6e 73 73  #include <openss
0710: 6c 2f 62 6e 2e 68 3e 0a 44 48 20 2a 67 65 74 5f  l/bn.h>.DH *get_
0720: 64 68 50 61 72 61 6d 73 28 76 6f 69 64 29 20 7b  dhParams(void) {
0730: 0a 09 73 74 61 74 69 63 20 75 6e 73 69 67 6e 65  ..static unsigne
0740: 64 20 63 68 61 72 20 64 68 70 5b 5d 20 3d 20 7b  d char dhp[] = {
0750: 0a 5f 45 4f 46 5f 0a 09 63 61 73 65 20 22 24 7b  ._EOF_..case "${
0760: 62 69 74 73 7d 22 20 69 6e 0a 09 09 32 30 34 38  bits}" in...2048
0770: 29 0a 09 09 09 63 61 74 20 3c 3c 20 5c 5f 45 4f  )....cat << \_EO
0780: 46 5f 0a 09 09 30 78 43 31 2c 30 78 35 31 2c 30  F_...0xC1,0x51,0
0790: 78 35 38 2c 30 78 36 39 2c 30 78 46 42 2c 30 78  x58,0x69,0xFB,0x
07a0: 45 38 2c 30 78 36 43 2c 30 78 34 37 2c 30 78 32  E8,0x6C,0x47,0x2
07b0: 42 2c 30 78 38 36 2c 30 78 36 31 2c 30 78 34 46  B,0x86,0x61,0x4F
07c0: 2c 0a 09 09 30 78 32 30 2c 30 78 32 45 2c 30 78  ,...0x20,0x2E,0x
07d0: 44 33 2c 30 78 46 43 2c 30 78 31 39 2c 30 78 45  D3,0xFC,0x19,0xE
07e0: 45 2c 30 78 42 38 2c 30 78 46 33 2c 30 78 33 35  E,0xB8,0xF3,0x35
07f0: 2c 30 78 37 44 2c 30 78 42 41 2c 30 78 38 36 2c  ,0x7D,0xBA,0x86,
0800: 0a 09 09 30 78 32 41 2c 30 78 43 33 2c 30 78 43  ...0x2A,0xC3,0xC
0810: 38 2c 30 78 36 45 2c 30 78 46 34 2c 30 78 39 39  8,0x6E,0xF4,0x99
0820: 2c 30 78 37 35 2c 30 78 36 35 2c 30 78 44 33 2c  ,0x75,0x65,0xD3,
0830: 30 78 37 41 2c 30 78 39 45 2c 30 78 44 46 2c 0a  0x7A,0x9E,0xDF,.
0840: 09 09 30 78 44 34 2c 30 78 31 46 2c 30 78 38 38  ..0xD4,0x1F,0x88
0850: 2c 30 78 45 33 2c 30 78 31 37 2c 30 78 46 43 2c  ,0xE3,0x17,0xFC,
0860: 30 78 41 31 2c 30 78 45 44 2c 30 78 41 32 2c 30  0xA1,0xED,0xA2,0
0870: 78 42 36 2c 30 78 37 37 2c 30 78 38 34 2c 0a 09  xB6,0x77,0x84,..
0880: 09 30 78 41 41 2c 30 78 30 38 2c 30 78 46 32 2c  .0xAA,0x08,0xF2,
0890: 30 78 39 37 2c 30 78 35 39 2c 30 78 37 41 2c 30  0x97,0x59,0x7A,0
08a0: 78 41 30 2c 30 78 30 33 2c 30 78 30 44 2c 30 78  xA0,0x03,0x0D,0x
08b0: 33 45 2c 30 78 37 45 2c 30 78 36 44 2c 0a 09 09  3E,0x7E,0x6D,...
08c0: 30 78 36 35 2c 30 78 36 41 2c 30 78 41 34 2c 30  0x65,0x6A,0xA4,0
08d0: 78 45 41 2c 30 78 35 34 2c 30 78 41 39 2c 30 78  xEA,0x54,0xA9,0x
08e0: 35 32 2c 30 78 35 46 2c 30 78 36 33 2c 30 78 42  52,0x5F,0x63,0xB
08f0: 34 2c 30 78 42 43 2c 30 78 39 38 2c 0a 09 09 30  4,0xBC,0x98,...0
0900: 78 34 45 2c 30 78 46 36 2c 30 78 45 31 2c 30 78  x4E,0xF6,0xE1,0x
0910: 41 34 2c 30 78 45 45 2c 30 78 31 36 2c 30 78 30  A4,0xEE,0x16,0x0
0920: 41 2c 30 78 42 30 2c 30 78 30 31 2c 30 78 42 44  A,0xB0,0x01,0xBD
0930: 2c 30 78 39 46 2c 30 78 41 31 2c 0a 09 09 30 78  ,0x9F,0xA1,...0x
0940: 45 38 2c 30 78 32 33 2c 30 78 32 39 2c 30 78 35  E8,0x23,0x29,0x5
0950: 36 2c 30 78 34 30 2c 30 78 39 35 2c 30 78 31 33  6,0x40,0x95,0x13
0960: 2c 30 78 45 42 2c 30 78 43 42 2c 30 78 44 35 2c  ,0xEB,0xCB,0xD5,
0970: 30 78 46 43 2c 30 78 37 36 2c 0a 09 09 30 78 31  0xFC,0x76,...0x1
0980: 41 2c 30 78 34 31 2c 30 78 32 36 2c 30 78 43 45  A,0x41,0x26,0xCE
0990: 2c 30 78 32 30 2c 30 78 45 42 2c 30 78 33 30 2c  ,0x20,0xEB,0x30,
09a0: 30 78 31 30 2c 30 78 31 37 2c 30 78 30 37 2c 30  0x10,0x17,0x07,0
09b0: 78 45 31 2c 30 78 38 43 2c 0a 09 09 30 78 41 43  xE1,0x8C,...0xAC
09c0: 2c 30 78 35 37 2c 30 78 33 37 2c 30 78 38 42 2c  ,0x57,0x37,0x8B,
09d0: 30 78 45 38 2c 30 78 30 31 2c 30 78 44 45 2c 30  0xE8,0x01,0xDE,0
09e0: 78 41 39 2c 30 78 45 46 2c 30 78 41 34 2c 30 78  xA9,0xEF,0xA4,0x
09f0: 43 32 2c 30 78 41 34 2c 0a 09 09 30 78 36 45 2c  C2,0xA4,...0x6E,
0a00: 30 78 34 38 2c 30 78 32 35 2c 30 78 31 31 2c 30  0x48,0x25,0x11,0
0a10: 78 33 33 2c 30 78 31 31 2c 30 78 44 34 2c 30 78  x33,0x11,0xD4,0x
0a20: 35 32 2c 30 78 37 39 2c 30 78 38 37 2c 30 78 39  52,0x79,0x87,0x9
0a30: 46 2c 30 78 37 35 2c 0a 09 09 30 78 36 31 2c 30  F,0x75,...0x61,0
0a40: 78 46 37 2c 30 78 39 43 2c 30 78 37 44 2c 30 78  xF7,0x9C,0x7D,0x
0a50: 33 36 2c 30 78 34 31 2c 30 78 43 42 2c 30 78 45  36,0x41,0xCB,0xE
0a60: 43 2c 30 78 38 46 2c 30 78 45 41 2c 30 78 34 41  C,0x8F,0xEA,0x4A
0a70: 2c 30 78 34 37 2c 0a 09 09 30 78 36 41 2c 30 78  ,0x47,...0x6A,0x
0a80: 33 36 2c 30 78 33 37 2c 30 78 37 35 2c 30 78 42  36,0x37,0x75,0xB
0a90: 39 2c 30 78 38 45 2c 30 78 46 35 2c 30 78 35 46  9,0x8E,0xF5,0x5F
0aa0: 2c 30 78 36 37 2c 30 78 43 46 2c 30 78 31 46 2c  ,0x67,0xCF,0x1F,
0ab0: 30 78 44 38 2c 0a 09 09 30 78 43 41 2c 30 78 37  0xD8,...0xCA,0x7
0ac0: 30 2c 30 78 34 32 2c 30 78 43 37 2c 30 78 41 32  0,0x42,0xC7,0xA2
0ad0: 2c 30 78 45 44 2c 30 78 30 46 2c 30 78 37 44 2c  ,0xED,0x0F,0x7D,
0ae0: 30 78 42 45 2c 30 78 34 33 2c 30 78 30 38 2c 30  0xBE,0x43,0x08,0
0af0: 78 32 38 2c 0a 09 09 30 78 36 36 2c 30 78 33 44  x28,...0x66,0x3D
0b00: 2c 30 78 44 44 2c 30 78 38 37 2c 30 78 30 44 2c  ,0xDD,0x87,0x0D,
0b10: 30 78 36 31 2c 30 78 36 45 2c 30 78 44 30 2c 30  0x61,0x6E,0xD0,0
0b20: 78 45 37 2c 30 78 34 39 2c 30 78 44 31 2c 30 78  xE7,0x49,0xD1,0x
0b30: 37 30 2c 0a 09 09 30 78 41 39 2c 30 78 34 44 2c  70,...0xA9,0x4D,
0b40: 30 78 44 35 2c 30 78 46 44 2c 30 78 45 44 2c 30  0xD5,0xFD,0xED,0
0b50: 78 46 32 2c 30 78 36 44 2c 30 78 33 32 2c 30 78  xF2,0x6D,0x32,0x
0b60: 31 37 2c 30 78 39 37 2c 30 78 35 42 2c 30 78 30  17,0x97,0x5B,0x0
0b70: 36 2c 0a 09 09 30 78 36 30 2c 30 78 39 43 2c 30  6,...0x60,0x9C,0
0b80: 78 35 46 2c 30 78 41 33 2c 30 78 35 44 2c 30 78  x5F,0xA3,0x5D,0x
0b90: 33 34 2c 30 78 31 34 2c 30 78 37 45 2c 30 78 36  34,0x14,0x7E,0x6
0ba0: 33 2c 30 78 35 34 2c 30 78 45 34 2c 30 78 37 45  3,0x54,0xE4,0x7E
0bb0: 2c 0a 09 09 30 78 30 39 2c 30 78 38 46 2c 30 78  ,...0x09,0x8F,0x
0bc0: 42 42 2c 30 78 38 45 2c 30 78 41 30 2c 30 78 44  BB,0x8E,0xA0,0xD
0bd0: 30 2c 30 78 39 36 2c 30 78 41 43 2c 30 78 33 30  0,0x96,0xAC,0x30
0be0: 2c 30 78 32 30 2c 30 78 33 39 2c 30 78 33 42 2c  ,0x20,0x39,0x3B,
0bf0: 0a 09 09 30 78 38 43 2c 30 78 39 32 2c 30 78 36  ...0x8C,0x92,0x6
0c00: 35 2c 30 78 33 37 2c 30 78 30 41 2c 30 78 38 46  5,0x37,0x0A,0x8F
0c10: 2c 30 78 45 43 2c 30 78 37 32 2c 30 78 38 42 2c  ,0xEC,0x72,0x8B,
0c20: 30 78 36 31 2c 30 78 37 44 2c 30 78 36 32 2c 0a  0x61,0x7D,0x62,.
0c30: 09 09 30 78 32 34 2c 30 78 35 34 2c 30 78 45 39  ..0x24,0x54,0xE9
0c40: 2c 30 78 31 44 2c 30 78 30 31 2c 30 78 36 38 2c  ,0x1D,0x01,0x68,
0c50: 30 78 38 39 2c 30 78 43 34 2c 30 78 37 42 2c 30  0x89,0xC4,0x7B,0
0c60: 78 33 43 2c 30 78 34 38 2c 30 78 36 32 2c 0a 09  x3C,0x48,0x62,..
0c70: 09 30 78 39 42 2c 30 78 38 33 2c 30 78 31 31 2c  .0x9B,0x83,0x11,
0c80: 30 78 33 41 2c 30 78 30 42 2c 30 78 30 44 2c 30  0x3A,0x0B,0x0D,0
0c90: 78 45 46 2c 30 78 35 41 2c 30 78 45 34 2c 30 78  xEF,0x5A,0xE4,0x
0ca0: 37 41 2c 30 78 41 30 2c 30 78 36 39 2c 0a 09 09  7A,0xA0,0x69,...
0cb0: 30 78 46 34 2c 30 78 35 34 2c 30 78 42 35 2c 30  0xF4,0x54,0xB5,0
0cc0: 78 35 42 0a 5f 45 4f 46 5f 0a 09 09 09 3b 3b 0a  x5B._EOF_....;;.
0cd0: 09 09 34 30 39 36 29 0a 09 09 09 63 61 74 20 3c  ..4096)....cat <
0ce0: 3c 20 5c 5f 45 4f 46 5f 0a 09 09 30 78 45 33 2c  < \_EOF_...0xE3,
0cf0: 30 78 41 36 2c 30 78 36 34 2c 30 78 32 44 2c 30  0xA6,0x64,0x2D,0
0d00: 78 45 38 2c 30 78 30 31 2c 30 78 44 30 2c 30 78  xE8,0x01,0xD0,0x
0d10: 38 31 2c 30 78 36 37 2c 30 78 43 46 2c 30 78 31  81,0x67,0xCF,0x1
0d20: 32 2c 30 78 33 38 2c 0a 09 09 30 78 35 43 2c 30  2,0x38,...0x5C,0
0d30: 78 39 39 2c 30 78 34 38 2c 30 78 33 37 2c 30 78  x99,0x48,0x37,0x
0d40: 44 37 2c 30 78 30 46 2c 30 78 38 44 2c 30 78 31  D7,0x0F,0x8D,0x1
0d50: 30 2c 30 78 45 41 2c 30 78 38 38 2c 30 78 33 31  0,0xEA,0x88,0x31
0d60: 2c 30 78 36 44 2c 0a 09 09 30 78 44 34 2c 30 78  ,0x6D,...0xD4,0x
0d70: 36 39 2c 30 78 31 30 2c 30 78 35 37 2c 30 78 39  69,0x10,0x57,0x9
0d80: 34 2c 30 78 38 45 2c 30 78 45 38 2c 30 78 46 39  4,0x8E,0xE8,0xF9
0d90: 2c 30 78 32 32 2c 30 78 46 45 2c 30 78 30 44 2c  ,0x22,0xFE,0x0D,
0da0: 30 78 35 35 2c 0a 09 09 30 78 43 36 2c 30 78 39  0x55,...0xC6,0x9
0db0: 44 2c 30 78 32 39 2c 30 78 37 45 2c 30 78 34 35  D,0x29,0x7E,0x45
0dc0: 2c 30 78 38 39 2c 30 78 41 41 2c 30 78 44 35 2c  ,0x89,0xAA,0xD5,
0dd0: 30 78 39 38 2c 30 78 44 32 2c 30 78 39 38 2c 30  0x98,0xD2,0x98,0
0de0: 78 46 45 2c 0a 09 09 30 78 30 33 2c 30 78 35 34  xFE,...0x03,0x54
0df0: 2c 30 78 35 45 2c 30 78 39 31 2c 30 78 34 43 2c  ,0x5E,0x91,0x4C,
0e00: 30 78 34 41 2c 30 78 41 37 2c 30 78 46 46 2c 30  0x4A,0xA7,0xFF,0
0e10: 78 31 46 2c 30 78 32 46 2c 30 78 34 31 2c 30 78  x1F,0x2F,0x41,0x
0e20: 33 34 2c 0a 09 09 30 78 30 33 2c 30 78 39 42 2c  34,...0x03,0x9B,
0e30: 30 78 36 34 2c 30 78 30 41 2c 30 78 46 41 2c 30  0x64,0x0A,0xFA,0
0e40: 78 35 33 2c 30 78 43 37 2c 30 78 34 35 2c 30 78  x53,0xC7,0x45,0x
0e50: 44 37 2c 30 78 34 31 2c 30 78 33 46 2c 30 78 31  D7,0x41,0x3F,0x1
0e60: 36 2c 0a 09 09 30 78 43 44 2c 30 78 34 30 2c 30  6,...0xCD,0x40,0
0e70: 78 39 45 2c 30 78 46 32 2c 30 78 43 33 2c 30 78  x9E,0xF2,0xC3,0x
0e80: 42 44 2c 30 78 34 39 2c 30 78 32 43 2c 30 78 30  BD,0x49,0x2C,0x0
0e90: 43 2c 30 78 33 35 2c 30 78 39 42 2c 30 78 32 46  C,0x35,0x9B,0x2F
0ea0: 2c 0a 09 09 30 78 37 44 2c 30 78 41 35 2c 30 78  ,...0x7D,0xA5,0x
0eb0: 30 37 2c 30 78 35 38 2c 30 78 44 31 2c 30 78 46  07,0x58,0xD1,0xF
0ec0: 44 2c 30 78 45 39 2c 30 78 36 42 2c 30 78 37 41  D,0xE9,0x6B,0x7A
0ed0: 2c 30 78 35 34 2c 30 78 41 39 2c 30 78 43 32 2c  ,0x54,0xA9,0xC2,
0ee0: 0a 09 09 30 78 41 43 2c 30 78 30 39 2c 30 78 37  ...0xAC,0x09,0x7
0ef0: 46 2c 30 78 35 38 2c 30 78 44 35 2c 30 78 35 32  F,0x58,0xD5,0x52
0f00: 2c 30 78 42 32 2c 30 78 38 41 2c 30 78 35 44 2c  ,0xB2,0x8A,0x5D,
0f10: 30 78 45 43 2c 30 78 34 31 2c 30 78 32 33 2c 0a  0xEC,0x41,0x23,.
0f20: 09 09 30 78 39 33 2c 30 78 46 34 2c 30 78 30 35  ..0x93,0xF4,0x05
0f30: 2c 30 78 38 42 2c 30 78 34 36 2c 30 78 30 45 2c  ,0x8B,0x46,0x0E,
0f40: 30 78 34 36 2c 30 78 34 36 2c 30 78 43 35 2c 30  0x46,0x46,0xC5,0
0f50: 78 42 34 2c 30 78 37 35 2c 30 78 43 42 2c 0a 09  xB4,0x75,0xCB,..
0f60: 09 30 78 31 44 2c 30 78 31 44 2c 30 78 36 45 2c  .0x1D,0x1D,0x6E,
0f70: 30 78 38 31 2c 30 78 43 35 2c 30 78 35 35 2c 30  0x81,0xC5,0x55,0
0f80: 78 32 34 2c 30 78 31 44 2c 30 78 30 39 2c 30 78  x24,0x1D,0x09,0x
0f90: 32 33 2c 30 78 45 32 2c 30 78 33 46 2c 0a 09 09  23,0xE2,0x3F,...
0fa0: 30 78 46 34 2c 30 78 34 38 2c 30 78 36 30 2c 30  0xF4,0x48,0x60,0
0fb0: 78 44 37 2c 30 78 39 35 2c 30 78 43 30 2c 30 78  xD7,0x95,0xC0,0x
0fc0: 38 42 2c 30 78 37 31 2c 30 78 31 31 2c 30 78 41  8B,0x71,0x11,0xA
0fd0: 36 2c 30 78 30 42 2c 30 78 30 34 2c 0a 09 09 30  6,0x0B,0x04,...0
0fe0: 78 32 39 2c 30 78 42 36 2c 30 78 41 44 2c 30 78  x29,0xB6,0xAD,0x
0ff0: 42 46 2c 30 78 30 35 2c 30 78 36 46 2c 30 78 33  BF,0x05,0x6F,0x3
1000: 42 2c 30 78 42 33 2c 30 78 37 30 2c 30 78 33 34  B,0xB3,0x70,0x34
1010: 2c 30 78 41 35 2c 30 78 46 39 2c 0a 09 09 30 78  ,0xA5,0xF9,...0x
1020: 31 34 2c 30 78 38 31 2c 30 78 44 35 2c 30 78 45  14,0x81,0xD5,0xE
1030: 41 2c 30 78 33 43 2c 30 78 33 43 2c 30 78 33 38  A,0x3C,0x3C,0x38
1040: 2c 30 78 34 34 2c 30 78 43 46 2c 30 78 33 44 2c  ,0x44,0xCF,0x3D,
1050: 30 78 33 32 2c 30 78 32 39 2c 0a 09 09 30 78 39  0x32,0x29,...0x9
1060: 32 2c 30 78 44 35 2c 30 78 31 41 2c 30 78 33 43  2,0xD5,0x1A,0x3C
1070: 2c 30 78 32 35 2c 30 78 42 37 2c 30 78 33 44 2c  ,0x25,0xB7,0x3D,
1080: 30 78 34 32 2c 30 78 31 37 2c 30 78 39 36 2c 30  0x42,0x17,0x96,0
1090: 78 38 42 2c 30 78 45 45 2c 0a 09 09 30 78 43 33  x8B,0xEE,...0xC3
10a0: 2c 30 78 45 37 2c 30 78 36 31 2c 30 78 33 41 2c  ,0xE7,0x61,0x3A,
10b0: 30 78 35 31 2c 30 78 43 35 2c 30 78 32 41 2c 30  0x51,0xC5,0x2A,0
10c0: 78 35 31 2c 30 78 42 41 2c 30 78 38 46 2c 30 78  x51,0xBA,0x8F,0x
10d0: 44 30 2c 30 78 34 43 2c 0a 09 09 30 78 35 31 2c  D0,0x4C,...0x51,
10e0: 30 78 31 39 2c 30 78 42 45 2c 30 78 33 35 2c 30  0x19,0xBE,0x35,0
10f0: 78 31 41 2c 30 78 32 45 2c 30 78 39 42 2c 30 78  x1A,0x2E,0x9B,0x
1100: 35 35 2c 30 78 30 32 2c 30 78 41 37 2c 30 78 35  55,0x02,0xA7,0x5
1110: 41 2c 30 78 42 46 2c 0a 09 09 30 78 41 32 2c 30  A,0xBF,...0xA2,0
1120: 78 30 30 2c 30 78 46 39 2c 30 78 46 46 2c 30 78  x00,0xF9,0xFF,0x
1130: 34 42 2c 30 78 43 41 2c 30 78 37 36 2c 30 78 32  4B,0xCA,0x76,0x2
1140: 35 2c 30 78 33 44 2c 30 78 33 42 2c 30 78 42 31  5,0x3D,0x3B,0xB1
1150: 2c 30 78 30 34 2c 0a 09 09 30 78 39 41 2c 30 78  ,0x04,...0x9A,0x
1160: 36 44 2c 30 78 37 45 2c 30 78 31 32 2c 30 78 42  6D,0x7E,0x12,0xB
1170: 42 2c 30 78 42 45 2c 30 78 36 41 2c 30 78 35 41  B,0xBE,0x6A,0x5A
1180: 2c 30 78 42 32 2c 30 78 38 37 2c 30 78 38 42 2c  ,0xB2,0x87,0x8B,
1190: 30 78 42 43 2c 0a 09 09 30 78 42 39 2c 30 78 37  0xBC,...0xB9,0x7
11a0: 43 2c 30 78 36 41 2c 30 78 45 37 2c 30 78 35 45  C,0x6A,0xE7,0x5E
11b0: 2c 30 78 43 33 2c 30 78 34 31 2c 30 78 39 31 2c  ,0xC3,0x41,0x91,
11c0: 30 78 32 34 2c 30 78 41 44 2c 30 78 35 43 2c 30  0x24,0xAD,0x5C,0
11d0: 78 43 37 2c 0a 09 09 30 78 33 46 2c 30 78 32 34  xC7,...0x3F,0x24
11e0: 2c 30 78 37 37 2c 30 78 31 37 2c 30 78 35 33 2c  ,0x77,0x17,0x53,
11f0: 30 78 39 44 2c 30 78 36 41 2c 30 78 35 41 2c 30  0x9D,0x6A,0x5A,0
1200: 78 38 45 2c 30 78 33 39 2c 30 78 30 30 2c 30 78  x8E,0x39,0x00,0x
1210: 31 42 2c 0a 09 09 30 78 34 39 2c 30 78 39 33 2c  1B,...0x49,0x93,
1220: 30 78 30 37 2c 30 78 36 43 2c 30 78 36 37 2c 30  0x07,0x6C,0x67,0
1230: 78 46 33 2c 30 78 31 43 2c 30 78 32 34 2c 30 78  xF3,0x1C,0x24,0x
1240: 35 37 2c 30 78 37 36 2c 30 78 35 45 2c 30 78 37  57,0x76,0x5E,0x7
1250: 38 2c 0a 09 09 30 78 46 31 2c 30 78 38 44 2c 30  8,...0xF1,0x8D,0
1260: 78 38 31 2c 30 78 46 46 2c 30 78 38 31 2c 30 78  x81,0xFF,0x81,0x
1270: 44 30 2c 30 78 31 42 2c 30 78 37 41 2c 30 78 30  D0,0x1B,0x7A,0x0
1280: 34 2c 30 78 41 43 2c 30 78 37 44 2c 30 78 35 42  4,0xAC,0x7D,0x5B
1290: 2c 0a 09 09 30 78 33 35 2c 30 78 35 46 2c 30 78  ,...0x35,0x5F,0x
12a0: 34 35 2c 30 78 32 35 2c 30 78 41 45 2c 30 78 33  45,0x25,0xAE,0x3
12b0: 30 2c 30 78 31 31 2c 30 78 35 42 2c 30 78 33 34  0,0x11,0x5B,0x34
12c0: 2c 30 78 31 37 2c 30 78 45 37 2c 30 78 32 44 2c  ,0x17,0xE7,0x2D,
12d0: 0a 09 09 30 78 39 44 2c 30 78 45 37 2c 30 78 35  ...0x9D,0xE7,0x5
12e0: 36 2c 30 78 39 30 2c 30 78 37 35 2c 30 78 32 34  6,0x90,0x75,0x24
12f0: 2c 30 78 30 43 2c 30 78 30 31 2c 30 78 38 34 2c  ,0x0C,0x01,0x84,
1300: 30 78 33 38 2c 30 78 31 41 2c 30 78 36 32 2c 0a  0x38,0x1A,0x62,.
1310: 09 09 30 78 35 35 2c 30 78 34 33 2c 30 78 36 36  ..0x55,0x43,0x66
1320: 2c 30 78 32 31 2c 30 78 32 39 2c 30 78 34 34 2c  ,0x21,0x29,0x44,
1330: 30 78 45 35 2c 30 78 34 42 2c 30 78 39 30 2c 30  0xE5,0x4B,0x90,0
1340: 78 39 45 2c 30 78 34 38 2c 30 78 39 32 2c 0a 09  x9E,0x48,0x92,..
1350: 09 30 78 30 42 2c 30 78 39 36 2c 30 78 32 41 2c  .0x0B,0x96,0x2A,
1360: 30 78 44 30 2c 30 78 43 44 2c 30 78 33 41 2c 30  0xD0,0xCD,0x3A,0
1370: 78 41 34 2c 30 78 42 45 2c 30 78 45 37 2c 30 78  xA4,0xBE,0xE7,0x
1380: 44 43 2c 30 78 41 33 2c 30 78 46 42 2c 0a 09 09  DC,0xA3,0xFB,...
1390: 30 78 30 46 2c 30 78 41 33 2c 30 78 39 42 2c 30  0x0F,0xA3,0x9B,0
13a0: 78 46 37 2c 30 78 41 39 2c 30 78 32 36 2c 30 78  xF7,0xA9,0x26,0x
13b0: 35 41 2c 30 78 43 43 2c 30 78 37 46 2c 30 78 34  5A,0xCC,0x7F,0x4
13c0: 42 2c 30 78 31 41 2c 30 78 35 46 2c 0a 09 09 30  B,0x1A,0x5F,...0
13d0: 78 44 36 2c 30 78 33 32 2c 30 78 41 39 2c 30 78  xD6,0x32,0xA9,0x
13e0: 37 31 2c 30 78 41 31 2c 30 78 31 30 2c 30 78 45  71,0xA1,0x10,0xE
13f0: 35 2c 30 78 37 43 2c 30 78 34 46 2c 30 78 35 39  5,0x7C,0x4F,0x59
1400: 2c 30 78 46 45 2c 30 78 33 44 2c 0a 09 09 30 78  ,0xFE,0x3D,...0x
1410: 36 30 2c 30 78 34 31 2c 30 78 30 41 2c 30 78 41  60,0x41,0x0A,0xA
1420: 37 2c 30 78 36 38 2c 30 78 36 30 2c 30 78 31 45  7,0x68,0x60,0x1E
1430: 2c 30 78 44 45 2c 30 78 36 45 2c 30 78 46 37 2c  ,0xDE,0x6E,0xF7,
1440: 30 78 37 31 2c 30 78 34 44 2c 0a 09 09 30 78 42  0x71,0x4D,...0xB
1450: 45 2c 30 78 43 38 2c 30 78 34 39 2c 30 78 46 38  E,0xC8,0x49,0xF8
1460: 2c 30 78 35 37 2c 30 78 37 43 2c 30 78 39 39 2c  ,0x57,0x7C,0x99,
1470: 30 78 36 45 2c 30 78 35 39 2c 30 78 33 32 2c 30  0x6E,0x59,0x32,0
1480: 78 46 38 2c 30 78 32 36 2c 0a 09 09 30 78 46 31  xF8,0x26,...0xF1
1490: 2c 30 78 32 35 2c 30 78 39 34 2c 30 78 43 35 2c  ,0x25,0x94,0xC5,
14a0: 30 78 44 41 2c 30 78 37 38 2c 30 78 42 42 2c 30  0xDA,0x78,0xBB,0
14b0: 78 34 38 2c 30 78 39 37 2c 30 78 45 38 2c 30 78  x48,0x97,0xE8,0x
14c0: 44 46 2c 30 78 37 30 2c 0a 09 09 30 78 30 35 2c  DF,0x70,...0x05,
14d0: 30 78 38 36 2c 30 78 45 32 2c 30 78 45 37 2c 30  0x86,0xE2,0xE7,0
14e0: 78 33 35 2c 30 78 44 37 2c 30 78 33 46 2c 30 78  x35,0xD7,0x3F,0x
14f0: 32 33 2c 30 78 31 38 2c 30 78 41 41 2c 30 78 38  23,0x18,0xAA,0x8
1500: 36 2c 30 78 35 33 2c 0a 09 09 30 78 36 42 2c 30  6,0x53,...0x6B,0
1510: 78 30 44 2c 30 78 45 43 2c 30 78 39 33 2c 30 78  x0D,0xEC,0x93,0x
1520: 38 39 2c 30 78 41 34 2c 30 78 44 30 2c 30 78 44  89,0xA4,0xD0,0xD
1530: 41 2c 30 78 45 33 2c 30 78 44 44 2c 30 78 31 31  A,0xE3,0xDD,0x11
1540: 2c 30 78 30 36 2c 0a 09 09 30 78 43 45 2c 30 78  ,0x06,...0xCE,0x
1550: 44 44 2c 30 78 34 44 2c 30 78 44 33 2c 30 78 42  DD,0x4D,0xD3,0xB
1560: 46 2c 30 78 39 41 2c 30 78 37 31 2c 30 78 35 45  F,0x9A,0x71,0x5E
1570: 2c 30 78 41 37 2c 30 78 33 39 2c 30 78 39 41 2c  ,0xA7,0x39,0x9A,
1580: 30 78 33 31 2c 0a 09 09 30 78 34 42 2c 30 78 35  0x31,...0x4B,0x5
1590: 36 2c 30 78 42 33 2c 30 78 32 32 2c 30 78 31 42  6,0xB3,0x22,0x1B
15a0: 2c 30 78 38 31 2c 30 78 44 43 2c 30 78 42 45 2c  ,0x81,0xDC,0xBE,
15b0: 30 78 30 45 2c 30 78 37 42 2c 30 78 38 41 2c 30  0x0E,0x7B,0x8A,0
15c0: 78 41 41 2c 0a 09 09 30 78 33 37 2c 30 78 36 31  xAA,...0x37,0x61
15d0: 2c 30 78 45 44 2c 30 78 34 44 2c 30 78 45 45 2c  ,0xED,0x4D,0xEE,
15e0: 30 78 31 41 2c 30 78 43 33 2c 30 78 35 34 2c 30  0x1A,0xC3,0x54,0
15f0: 78 42 43 2c 30 78 34 46 2c 30 78 30 45 2c 30 78  xBC,0x4F,0x0E,0x
1600: 36 31 2c 0a 09 09 30 78 33 38 2c 30 78 30 30 2c  61,...0x38,0x00,
1610: 30 78 41 41 2c 30 78 34 35 2c 30 78 31 38 2c 30  0xAA,0x45,0x18,0
1620: 78 43 32 2c 30 78 44 46 2c 30 78 41 35 2c 30 78  xC2,0xDF,0xA5,0x
1630: 33 44 2c 30 78 37 35 2c 30 78 39 38 2c 30 78 31  3D,0x75,0x98,0x1
1640: 36 2c 0a 09 09 30 78 42 42 2c 30 78 30 41 2c 30  6,...0xBB,0x0A,0
1650: 78 33 39 2c 30 78 39 41 2c 30 78 46 45 2c 30 78  x39,0x9A,0xFE,0x
1660: 31 46 2c 30 78 35 33 2c 30 78 41 44 2c 30 78 43  1F,0x53,0xAD,0xC
1670: 33 2c 30 78 45 41 2c 30 78 44 46 2c 30 78 43 36  3,0xEA,0xDF,0xC6
1680: 2c 0a 09 09 30 78 33 44 2c 30 78 44 35 2c 30 78  ,...0x3D,0xD5,0x
1690: 42 41 2c 30 78 43 38 2c 30 78 46 33 2c 30 78 30  BA,0xC8,0xF3,0x0
16a0: 33 2c 30 78 33 41 2c 30 78 33 42 2c 30 78 38 44  3,0x3A,0x3B,0x8D
16b0: 2c 30 78 30 33 2c 30 78 38 34 2c 30 78 43 44 2c  ,0x03,0x84,0xCD,
16c0: 0a 09 09 30 78 38 36 2c 30 78 45 44 2c 30 78 34  ...0x86,0xED,0x4
16d0: 32 2c 30 78 44 42 2c 30 78 44 38 2c 30 78 45 30  2,0xDB,0xD8,0xE0
16e0: 2c 30 78 43 31 2c 30 78 41 46 2c 30 78 42 31 2c  ,0xC1,0xAF,0xB1,
16f0: 30 78 44 44 2c 30 78 42 35 2c 30 78 33 35 2c 0a  0xDD,0xB5,0x35,.
1700: 09 09 30 78 32 38 2c 30 78 42 31 2c 30 78 30 32  ..0x28,0xB1,0x02
1710: 2c 30 78 45 32 2c 30 78 39 42 2c 30 78 31 32 2c  ,0xE2,0x9B,0x12,
1720: 30 78 32 45 2c 30 78 31 32 2c 30 78 30 32 2c 30  0x2E,0x12,0x02,0
1730: 78 31 43 2c 30 78 37 44 2c 30 78 33 42 2c 0a 09  x1C,0x7D,0x3B,..
1740: 09 30 78 33 42 2c 30 78 38 44 2c 30 78 41 46 2c  .0x3B,0x8D,0xAF,
1750: 30 78 39 44 2c 30 78 33 46 2c 30 78 44 36 2c 30  0x9D,0x3F,0xD6,0
1760: 78 45 30 2c 30 78 35 33 0a 5f 45 4f 46 5f 0a 09  xE0,0x53._EOF_..
1770: 09 09 3b 3b 0a 09 09 38 31 39 32 29 0a 09 09 09  ..;;...8192)....
1780: 63 61 74 20 3c 3c 20 5c 5f 45 4f 46 5f 0a 09 09  cat << \_EOF_...
1790: 30 78 39 43 2c 30 78 43 33 2c 30 78 39 43 2c 30  0x9C,0xC3,0x9C,0
17a0: 78 36 43 2c 30 78 36 31 2c 30 78 43 35 2c 30 78  x6C,0x61,0xC5,0x
17b0: 46 41 2c 30 78 33 32 2c 30 78 42 38 2c 30 78 38  FA,0x32,0xB8,0x8
17c0: 36 2c 30 78 35 41 2c 30 78 33 38 2c 0a 09 09 30  6,0x5A,0x38,...0
17d0: 78 45 44 2c 30 78 34 36 2c 30 78 35 43 2c 30 78  xED,0x46,0x5C,0x
17e0: 38 31 2c 30 78 30 38 2c 30 78 44 39 2c 30 78 36  81,0x08,0xD9,0x6
17f0: 39 2c 30 78 31 31 2c 30 78 34 34 2c 30 78 35 30  9,0x11,0x44,0x50
1800: 2c 30 78 39 37 2c 30 78 34 44 2c 0a 09 09 30 78  ,0x97,0x4D,...0x
1810: 43 42 2c 30 78 30 39 2c 30 78 46 43 2c 30 78 44  CB,0x09,0xFC,0xD
1820: 31 2c 30 78 36 38 2c 30 78 39 46 2c 30 78 34 45  1,0x68,0x9F,0x4E
1830: 2c 30 78 39 36 2c 30 78 31 30 2c 30 78 46 46 2c  ,0x96,0x10,0xFF,
1840: 30 78 44 41 2c 30 78 44 37 2c 0a 09 09 30 78 41  0xDA,0xD7,...0xA
1850: 33 2c 30 78 43 39 2c 30 78 37 34 2c 30 78 45 39  3,0xC9,0x74,0xE9
1860: 2c 30 78 42 41 2c 30 78 44 42 2c 30 78 36 42 2c  ,0xBA,0xDB,0x6B,
1870: 30 78 30 34 2c 30 78 42 38 2c 30 78 42 46 2c 30  0x04,0xB8,0xBF,0
1880: 78 46 34 2c 30 78 37 32 2c 0a 09 09 30 78 36 44  xF4,0x72,...0x6D
1890: 2c 30 78 31 38 2c 30 78 42 31 2c 30 78 46 34 2c  ,0x18,0xB1,0xF4,
18a0: 30 78 39 41 2c 30 78 37 37 2c 30 78 41 39 2c 30  0x9A,0x77,0xA9,0
18b0: 78 39 34 2c 30 78 45 38 2c 30 78 31 33 2c 30 78  x94,0xE8,0x13,0x
18c0: 46 37 2c 30 78 31 44 2c 0a 09 09 30 78 39 32 2c  F7,0x1D,...0x92,
18d0: 30 78 31 32 2c 30 78 37 42 2c 30 78 42 39 2c 30  0x12,0x7B,0xB9,0
18e0: 78 39 32 2c 30 78 37 31 2c 30 78 35 34 2c 30 78  x92,0x71,0x54,0x
18f0: 38 33 2c 30 78 37 33 2c 30 78 37 31 2c 30 78 46  83,0x73,0x71,0xF
1900: 36 2c 30 78 41 37 2c 0a 09 09 30 78 31 32 2c 30  6,0xA7,...0x12,0
1910: 78 45 43 2c 30 78 36 32 2c 30 78 42 38 2c 30 78  xEC,0x62,0xB8,0x
1920: 44 43 2c 30 78 41 31 2c 30 78 32 45 2c 30 78 30  DC,0xA1,0x2E,0x0
1930: 30 2c 30 78 38 38 2c 30 78 35 33 2c 30 78 46 33  0,0x88,0x53,0xF3
1940: 2c 30 78 30 31 2c 0a 09 09 30 78 41 46 2c 30 78  ,0x01,...0xAF,0x
1950: 35 32 2c 30 78 46 37 2c 30 78 42 42 2c 30 78 45  52,0xF7,0xBB,0xE
1960: 31 2c 30 78 37 42 2c 30 78 46 31 2c 30 78 32 41  1,0x7B,0xF1,0x2A
1970: 2c 30 78 44 39 2c 30 78 45 46 2c 30 78 32 31 2c  ,0xD9,0xEF,0x21,
1980: 30 78 44 34 2c 0a 09 09 30 78 38 38 2c 30 78 31  0xD4,...0x88,0x1
1990: 38 2c 30 78 45 43 2c 30 78 39 38 2c 30 78 37 32  8,0xEC,0x98,0x72
19a0: 2c 30 78 30 35 2c 30 78 36 30 2c 30 78 45 43 2c  ,0x05,0x60,0xEC,
19b0: 30 78 35 41 2c 30 78 31 43 2c 30 78 32 44 2c 30  0x5A,0x1C,0x2D,0
19c0: 78 30 44 2c 0a 09 09 30 78 34 33 2c 30 78 35 44  x0D,...0x43,0x5D
19d0: 2c 30 78 31 39 2c 30 78 44 36 2c 30 78 31 44 2c  ,0x19,0xD6,0x1D,
19e0: 30 78 44 32 2c 30 78 33 43 2c 30 78 38 45 2c 30  0xD2,0x3C,0x8E,0
19f0: 78 44 33 2c 30 78 34 33 2c 30 78 36 32 2c 30 78  xD3,0x43,0x62,0x
1a00: 36 43 2c 0a 09 09 30 78 33 32 2c 30 78 31 34 2c  6C,...0x32,0x14,
1a10: 30 78 34 30 2c 30 78 44 36 2c 30 78 42 45 2c 30  0x40,0xD6,0xBE,0
1a20: 78 45 37 2c 30 78 38 34 2c 30 78 36 45 2c 30 78  xE7,0x84,0x6E,0x
1a30: 37 36 2c 30 78 41 35 2c 30 78 39 30 2c 30 78 31  76,0xA5,0x90,0x1
1a40: 34 2c 0a 09 09 30 78 43 38 2c 30 78 34 30 2c 30  4,...0xC8,0x40,0
1a50: 78 41 33 2c 30 78 32 45 2c 30 78 36 41 2c 30 78  xA3,0x2E,0x6A,0x
1a60: 33 44 2c 30 78 33 42 2c 30 78 34 33 2c 30 78 35  3D,0x3B,0x43,0x5
1a70: 44 2c 30 78 42 31 2c 30 78 33 46 2c 30 78 35 46  D,0xB1,0x3F,0x5F
1a80: 2c 0a 09 09 30 78 36 45 2c 30 78 44 35 2c 30 78  ,...0x6E,0xD5,0x
1a90: 31 42 2c 30 78 45 30 2c 30 78 32 30 2c 30 78 38  1B,0xE0,0x20,0x8
1aa0: 32 2c 30 78 38 41 2c 30 78 45 45 2c 30 78 43 35  2,0x8A,0xEE,0xC5
1ab0: 2c 30 78 36 35 2c 30 78 30 35 2c 30 78 36 32 2c  ,0x65,0x05,0x62,
1ac0: 0a 09 09 30 78 42 35 2c 30 78 39 36 2c 30 78 45  ...0xB5,0x96,0xE
1ad0: 45 2c 30 78 32 37 2c 30 78 46 31 2c 30 78 46 33  E,0x27,0xF1,0xF3
1ae0: 2c 30 78 33 32 2c 30 78 45 34 2c 30 78 30 30 2c  ,0x32,0xE4,0x00,
1af0: 30 78 37 44 2c 30 78 36 41 2c 30 78 36 43 2c 0a  0x7D,0x6A,0x6C,.
1b00: 09 09 30 78 34 35 2c 30 78 30 35 2c 30 78 30 30  ..0x45,0x05,0x00
1b10: 2c 30 78 34 41 2c 30 78 39 43 2c 30 78 39 44 2c  ,0x4A,0x9C,0x9D,
1b20: 30 78 42 39 2c 30 78 31 39 2c 30 78 37 37 2c 30  0xB9,0x19,0x77,0
1b30: 78 43 35 2c 30 78 33 31 2c 30 78 45 45 2c 0a 09  xC5,0x31,0xEE,..
1b40: 09 30 78 36 45 2c 30 78 33 30 2c 30 78 35 34 2c  .0x6E,0x30,0x54,
1b50: 30 78 30 44 2c 30 78 30 38 2c 30 78 46 46 2c 30  0x0D,0x08,0xFF,0
1b60: 78 31 39 2c 30 78 43 34 2c 30 78 33 34 2c 30 78  x19,0xC4,0x34,0x
1b70: 44 37 2c 30 78 39 46 2c 30 78 43 39 2c 0a 09 09  D7,0x9F,0xC9,...
1b80: 30 78 35 42 2c 30 78 38 39 2c 30 78 32 32 2c 30  0x5B,0x89,0x22,0
1b90: 78 34 45 2c 30 78 43 30 2c 30 78 42 46 2c 30 78  x4E,0xC0,0xBF,0x
1ba0: 31 36 2c 30 78 33 45 2c 30 78 31 30 2c 30 78 42  16,0x3E,0x10,0xB
1bb0: 42 2c 30 78 35 38 2c 30 78 42 41 2c 0a 09 09 30  B,0x58,0xBA,...0
1bc0: 78 33 31 2c 30 78 35 43 2c 30 78 44 43 2c 30 78  x31,0x5C,0xDC,0x
1bd0: 44 33 2c 30 78 44 39 2c 30 78 46 46 2c 30 78 37  D3,0xD9,0xFF,0x7
1be0: 33 2c 30 78 44 39 2c 30 78 32 39 2c 30 78 36 36  3,0xD9,0x29,0x66
1bf0: 2c 30 78 34 41 2c 30 78 45 36 2c 0a 09 09 30 78  ,0x4A,0xE6,...0x
1c00: 42 30 2c 30 78 42 41 2c 30 78 34 42 2c 30 78 31  B0,0xBA,0x4B,0x1
1c10: 41 2c 30 78 33 43 2c 30 78 35 45 2c 30 78 41 37  A,0x3C,0x5E,0xA7
1c20: 2c 30 78 31 39 2c 30 78 31 39 2c 30 78 44 38 2c  ,0x19,0x19,0xD8,
1c30: 30 78 38 34 2c 30 78 44 32 2c 0a 09 09 30 78 35  0x84,0xD2,...0x5
1c40: 34 2c 30 78 34 37 2c 30 78 38 36 2c 30 78 45 33  4,0x47,0x86,0xE3
1c50: 2c 30 78 43 41 2c 30 78 46 37 2c 30 78 38 41 2c  ,0xCA,0xF7,0x8A,
1c60: 30 78 43 39 2c 30 78 44 42 2c 30 78 33 41 2c 30  0xC9,0xDB,0x3A,0
1c70: 78 35 41 2c 30 78 42 37 2c 0a 09 09 30 78 42 37  x5A,0xB7,...0xB7
1c80: 2c 30 78 41 34 2c 30 78 32 37 2c 30 78 35 37 2c  ,0xA4,0x27,0x57,
1c90: 30 78 35 33 2c 30 78 33 34 2c 30 78 39 44 2c 30  0x53,0x34,0x9D,0
1ca0: 78 46 32 2c 30 78 46 32 2c 30 78 32 36 2c 30 78  xF2,0xF2,0x26,0x
1cb0: 30 44 2c 30 78 41 43 2c 0a 09 09 30 78 43 35 2c  0D,0xAC,...0xC5,
1cc0: 30 78 46 41 2c 30 78 45 39 2c 30 78 39 41 2c 30  0xFA,0xE9,0x9A,0
1cd0: 78 43 35 2c 30 78 44 41 2c 30 78 39 44 2c 30 78  xC5,0xDA,0x9D,0x
1ce0: 41 33 2c 30 78 32 45 2c 30 78 34 30 2c 30 78 38  A3,0x2E,0x40,0x8
1cf0: 35 2c 30 78 39 32 2c 0a 09 09 30 78 46 34 2c 30  5,0x92,...0xF4,0
1d00: 78 32 46 2c 30 78 45 41 2c 30 78 46 37 2c 30 78  x2F,0xEA,0xF7,0x
1d10: 41 34 2c 30 78 36 46 2c 30 78 33 36 2c 30 78 33  A4,0x6F,0x36,0x3
1d20: 36 2c 30 78 34 31 2c 30 78 46 41 2c 30 78 34 31  6,0x41,0xFA,0x41
1d30: 2c 30 78 35 42 2c 0a 09 09 30 78 30 32 2c 30 78  ,0x5B,...0x02,0x
1d40: 34 45 2c 30 78 46 43 2c 30 78 44 46 2c 30 78 42  4E,0xFC,0xDF,0xB
1d50: 42 2c 30 78 35 46 2c 30 78 37 34 2c 30 78 37 42  B,0x5F,0x74,0x7B
1d60: 2c 30 78 46 46 2c 30 78 38 31 2c 30 78 45 42 2c  ,0xFF,0x81,0xEB,
1d70: 30 78 36 30 2c 0a 09 09 30 78 30 38 2c 30 78 35  0x60,...0x08,0x5
1d80: 35 2c 30 78 39 31 2c 30 78 42 46 2c 30 78 30 43  5,0x91,0xBF,0x0C
1d90: 2c 30 78 31 45 2c 30 78 38 30 2c 30 78 42 33 2c  ,0x1E,0x80,0xB3,
1da0: 30 78 43 33 2c 30 78 33 39 2c 30 78 35 41 2c 30  0xC3,0x39,0x5A,0
1db0: 78 35 44 2c 0a 09 09 30 78 30 38 2c 30 78 33 45  x5D,...0x08,0x3E
1dc0: 2c 30 78 33 43 2c 30 78 42 38 2c 30 78 37 36 2c  ,0x3C,0xB8,0x76,
1dd0: 30 78 45 31 2c 30 78 39 32 2c 30 78 33 37 2c 30  0xE1,0x92,0x37,0
1de0: 78 46 31 2c 30 78 43 43 2c 30 78 30 43 2c 30 78  xF1,0xCC,0x0C,0x
1df0: 33 46 2c 0a 09 09 30 78 34 36 2c 30 78 45 44 2c  3F,...0x46,0xED,
1e00: 30 78 35 31 2c 30 78 32 44 2c 30 78 36 46 2c 30  0x51,0x2D,0x6F,0
1e10: 78 35 37 2c 30 78 30 35 2c 30 78 34 37 2c 30 78  x57,0x05,0x47,0x
1e20: 37 38 2c 30 78 42 35 2c 30 78 46 31 2c 30 78 36  78,0xB5,0xF1,0x6
1e30: 42 2c 0a 09 09 30 78 37 43 2c 30 78 45 41 2c 30  B,...0x7C,0xEA,0
1e40: 78 35 31 2c 30 78 41 36 2c 30 78 38 38 2c 30 78  x51,0xA6,0x88,0x
1e50: 44 38 2c 30 78 36 33 2c 30 78 31 38 2c 30 78 38  D8,0x63,0x18,0x8
1e60: 45 2c 30 78 34 32 2c 30 78 30 45 2c 30 78 35 30  E,0x42,0x0E,0x50
1e70: 2c 0a 09 09 30 78 46 31 2c 30 78 41 43 2c 30 78  ,...0xF1,0xAC,0x
1e80: 44 30 2c 30 78 37 35 2c 30 78 30 41 2c 30 78 42  D0,0x75,0x0A,0xB
1e90: 35 2c 30 78 39 42 2c 30 78 44 35 2c 30 78 30 37  5,0x9B,0xD5,0x07
1ea0: 2c 30 78 33 41 2c 30 78 46 30 2c 30 78 37 35 2c  ,0x3A,0xF0,0x75,
1eb0: 0a 09 09 30 78 30 34 2c 30 78 32 37 2c 30 78 43  ...0x04,0x27,0xC
1ec0: 35 2c 30 78 42 44 2c 30 78 41 36 2c 30 78 41 45  5,0xBD,0xA6,0xAE
1ed0: 2c 30 78 31 38 2c 30 78 45 45 2c 30 78 33 30 2c  ,0x18,0xEE,0x30,
1ee0: 30 78 32 32 2c 30 78 37 30 2c 30 78 35 36 2c 0a  0x22,0x70,0x56,.
1ef0: 09 09 30 78 30 39 2c 30 78 41 37 2c 30 78 43 32  ..0x09,0xA7,0xC2
1f00: 2c 30 78 32 36 2c 30 78 36 31 2c 30 78 33 42 2c  ,0x26,0x61,0x3B,
1f10: 30 78 35 36 2c 30 78 32 37 2c 30 78 38 32 2c 30  0x56,0x27,0x82,0
1f20: 78 39 37 2c 30 78 46 36 2c 30 78 46 45 2c 0a 09  x97,0xF6,0xFE,..
1f30: 09 30 78 37 41 2c 30 78 33 44 2c 30 78 31 37 2c  .0x7A,0x3D,0x17,
1f40: 30 78 33 43 2c 30 78 43 32 2c 30 78 32 37 2c 30  0x3C,0xC2,0x27,0
1f50: 78 33 39 2c 30 78 44 33 2c 30 78 42 42 2c 30 78  x39,0xD3,0xBB,0x
1f60: 38 30 2c 30 78 42 36 2c 30 78 34 32 2c 0a 09 09  80,0xB6,0x42,...
1f70: 30 78 34 44 2c 30 78 32 30 2c 30 78 42 31 2c 30  0x4D,0x20,0xB1,0
1f80: 78 43 31 2c 30 78 38 39 2c 30 78 30 30 2c 30 78  xC1,0x89,0x00,0x
1f90: 37 37 2c 30 78 38 43 2c 30 78 36 46 2c 30 78 44  77,0x8C,0x6F,0xD
1fa0: 44 2c 30 78 36 46 2c 30 78 31 44 2c 0a 09 09 30  D,0x6F,0x1D,...0
1fb0: 78 34 34 2c 30 78 41 44 2c 30 78 31 42 2c 30 78  x44,0xAD,0x1B,0x
1fc0: 39 32 2c 30 78 36 46 2c 30 78 44 36 2c 30 78 35  92,0x6F,0xD6,0x5
1fd0: 36 2c 30 78 31 31 2c 30 78 36 45 2c 30 78 31 32  6,0x11,0x6E,0x12
1fe0: 2c 30 78 35 43 2c 30 78 37 46 2c 0a 09 09 30 78  ,0x5C,0x7F,...0x
1ff0: 36 39 2c 30 78 33 33 2c 30 78 31 37 2c 30 78 37  69,0x33,0x17,0x7
2000: 41 2c 30 78 32 30 2c 30 78 45 38 2c 30 78 35 44  A,0x20,0xE8,0x5D
2010: 2c 30 78 38 31 2c 30 78 43 30 2c 30 78 44 44 2c  ,0x81,0xC0,0xDD,
2020: 30 78 31 45 2c 30 78 42 45 2c 0a 09 09 30 78 45  0x1E,0xBE,...0xE
2030: 46 2c 30 78 36 32 2c 30 78 38 31 2c 30 78 46 32  F,0x62,0x81,0xF2
2040: 2c 30 78 45 41 2c 30 78 45 41 2c 30 78 44 45 2c  ,0xEA,0xEA,0xDE,
2050: 30 78 37 42 2c 30 78 41 31 2c 30 78 38 43 2c 30  0x7B,0xA1,0x8C,0
2060: 78 37 44 2c 30 78 39 31 2c 0a 09 09 30 78 38 42  x7D,0x91,...0x8B
2070: 2c 30 78 36 32 2c 30 78 42 44 2c 30 78 31 33 2c  ,0x62,0xBD,0x13,
2080: 30 78 35 33 2c 30 78 34 31 2c 30 78 42 39 2c 30  0x53,0x41,0xB9,0
2090: 78 34 35 2c 30 78 36 35 2c 30 78 31 31 2c 30 78  x45,0x65,0x11,0x
20a0: 42 30 2c 30 78 30 30 2c 0a 09 09 30 78 37 43 2c  B0,0x00,...0x7C,
20b0: 30 78 41 36 2c 30 78 31 32 2c 30 78 31 39 2c 30  0xA6,0x12,0x19,0
20c0: 78 44 43 2c 30 78 37 37 2c 30 78 32 36 2c 30 78  xDC,0x77,0x26,0x
20d0: 44 36 2c 30 78 31 33 2c 30 78 43 38 2c 30 78 44  D6,0x13,0xC8,0xD
20e0: 46 2c 30 78 34 37 2c 0a 09 09 30 78 37 41 2c 30  F,0x47,...0x7A,0
20f0: 78 43 45 2c 30 78 45 42 2c 30 78 44 38 2c 30 78  xCE,0xEB,0xD8,0x
2100: 43 33 2c 30 78 44 46 2c 30 78 37 46 2c 30 78 32  C3,0xDF,0x7F,0x2
2110: 31 2c 30 78 32 37 2c 30 78 35 43 2c 30 78 34 41  1,0x27,0x5C,0x4A
2120: 2c 30 78 36 42 2c 0a 09 09 30 78 45 39 2c 30 78  ,0x6B,...0xE9,0x
2130: 32 37 2c 30 78 43 37 2c 30 78 36 30 2c 30 78 35  27,0xC7,0x60,0x5
2140: 36 2c 30 78 36 45 2c 30 78 41 32 2c 30 78 35 46  6,0x6E,0xA2,0x5F
2150: 2c 30 78 46 32 2c 30 78 41 44 2c 30 78 42 30 2c  ,0xF2,0xAD,0xB0,
2160: 30 78 43 33 2c 0a 09 09 30 78 39 37 2c 30 78 46  0xC3,...0x97,0xF
2170: 36 2c 30 78 45 39 2c 30 78 44 46 2c 30 78 46 42  6,0xE9,0xDF,0xFB
2180: 2c 30 78 31 46 2c 30 78 45 39 2c 30 78 31 37 2c  ,0x1F,0xE9,0x17,
2190: 30 78 30 36 2c 30 78 33 36 2c 30 78 43 35 2c 30  0x06,0x36,0xC5,0
21a0: 78 31 30 2c 0a 09 09 30 78 43 30 2c 30 78 34 39  x10,...0xC0,0x49
21b0: 2c 30 78 44 35 2c 30 78 35 39 2c 30 78 45 41 2c  ,0xD5,0x59,0xEA,
21c0: 30 78 39 37 2c 30 78 32 37 2c 30 78 45 37 2c 30  0x97,0x27,0xE7,0
21d0: 78 34 33 2c 30 78 36 34 2c 30 78 44 45 2c 30 78  x43,0x64,0xDE,0x
21e0: 33 31 2c 0a 09 09 30 78 44 37 2c 30 78 31 34 2c  31,...0xD7,0x14,
21f0: 30 78 39 44 2c 30 78 44 43 2c 30 78 37 38 2c 30  0x9D,0xDC,0x78,0
2200: 78 43 35 2c 30 78 30 45 2c 30 78 45 46 2c 30 78  xC5,0x0E,0xEF,0x
2210: 36 41 2c 30 78 37 36 2c 30 78 35 37 2c 30 78 33  6A,0x76,0x57,0x3
2220: 33 2c 0a 09 09 30 78 41 46 2c 30 78 35 34 2c 30  3,...0xAF,0x54,0
2230: 78 42 31 2c 30 78 33 30 2c 30 78 44 30 2c 30 78  xB1,0x30,0xD0,0x
2240: 39 31 2c 30 78 32 34 2c 30 78 30 39 2c 30 78 32  91,0x24,0x09,0x2
2250: 34 2c 30 78 34 30 2c 30 78 44 35 2c 30 78 30 30  4,0x40,0xD5,0x00
2260: 2c 0a 09 09 30 78 39 42 2c 30 78 38 34 2c 30 78  ,...0x9B,0x84,0x
2270: 46 37 2c 30 78 46 43 2c 30 78 41 44 2c 30 78 37  F7,0xFC,0xAD,0x7
2280: 46 2c 30 78 34 31 2c 30 78 42 42 2c 30 78 30 30  F,0x41,0xBB,0x00
2290: 2c 30 78 38 34 2c 30 78 34 39 2c 30 78 34 39 2c  ,0x84,0x49,0x49,
22a0: 0a 09 09 30 78 41 31 2c 30 78 34 33 2c 30 78 34  ...0xA1,0x43,0x4
22b0: 34 2c 30 78 41 30 2c 30 78 41 33 2c 30 78 44 31  4,0xA0,0xA3,0xD1
22c0: 2c 30 78 42 41 2c 30 78 34 39 2c 30 78 44 38 2c  ,0xBA,0x49,0xD8,
22d0: 30 78 43 45 2c 30 78 36 30 2c 30 78 39 30 2c 0a  0xCE,0x60,0x90,.
22e0: 09 09 30 78 30 37 2c 30 78 32 30 2c 30 78 43 44  ..0x07,0x20,0xCD
22f0: 2c 30 78 43 38 2c 30 78 45 42 2c 30 78 44 34 2c  ,0xC8,0xEB,0xD4,
2300: 30 78 30 32 2c 30 78 37 31 2c 30 78 42 38 2c 30  0x02,0x71,0xB8,0
2310: 78 36 30 2c 30 78 44 46 2c 30 78 41 39 2c 0a 09  x60,0xDF,0xA9,..
2320: 09 30 78 36 42 2c 30 78 45 43 2c 30 78 32 35 2c  .0x6B,0xEC,0x25,
2330: 30 78 38 44 2c 30 78 37 31 2c 30 78 32 38 2c 30  0x8D,0x71,0x28,0
2340: 78 36 41 2c 30 78 32 45 2c 30 78 46 36 2c 30 78  x6A,0x2E,0xF6,0x
2350: 35 32 2c 30 78 46 30 2c 30 78 32 34 2c 0a 09 09  52,0xF0,0x24,...
2360: 30 78 46 33 2c 30 78 46 35 2c 30 78 31 45 2c 30  0xF3,0xF5,0x1E,0
2370: 78 30 30 2c 30 78 37 42 2c 30 78 37 43 2c 30 78  x00,0x7B,0x7C,0x
2380: 43 41 2c 30 78 36 41 2c 30 78 36 42 2c 30 78 44  CA,0x6A,0x6B,0xD
2390: 37 2c 30 78 34 46 2c 30 78 33 45 2c 0a 09 09 30  7,0x4F,0x3E,...0
23a0: 78 35 45 2c 30 78 34 42 2c 30 78 38 35 2c 30 78  x5E,0x4B,0x85,0x
23b0: 43 46 2c 30 78 46 31 2c 30 78 36 37 2c 30 78 39  CF,0xF1,0x67,0x9
23c0: 46 2c 30 78 38 39 2c 30 78 35 41 2c 30 78 46 34  F,0x89,0x5A,0xF4
23d0: 2c 30 78 33 41 2c 30 78 32 39 2c 0a 09 09 30 78  ,0x3A,0x29,...0x
23e0: 37 33 2c 30 78 46 46 2c 30 78 44 43 2c 30 78 36  73,0xFF,0xDC,0x6
23f0: 38 2c 30 78 32 35 2c 30 78 41 35 2c 30 78 36 30  8,0x25,0xA5,0x60
2400: 2c 30 78 31 30 2c 30 78 46 43 2c 30 78 39 41 2c  ,0x10,0xFC,0x9A,
2410: 30 78 37 33 2c 30 78 37 38 2c 0a 09 09 30 78 45  0x73,0x78,...0xE
2420: 41 2c 30 78 32 38 2c 30 78 43 31 2c 30 78 31 31  A,0x28,0xC1,0x11
2430: 2c 30 78 33 42 2c 30 78 30 37 2c 30 78 34 36 2c  ,0x3B,0x07,0x46,
2440: 30 78 45 42 2c 30 78 44 45 2c 30 78 46 31 2c 30  0xEB,0xDE,0xF1,0
2450: 78 46 33 2c 30 78 32 45 2c 0a 09 09 30 78 43 37  xF3,0x2E,...0xC7
2460: 2c 30 78 43 31 2c 30 78 32 34 2c 30 78 46 42 2c  ,0xC1,0x24,0xFB,
2470: 30 78 43 32 2c 30 78 36 43 2c 30 78 34 41 2c 30  0xC2,0x6C,0x4A,0
2480: 78 33 38 2c 30 78 36 43 2c 30 78 39 41 2c 30 78  x38,0x6C,0x9A,0x
2490: 37 46 2c 30 78 38 37 2c 0a 09 09 30 78 37 36 2c  7F,0x87,...0x76,
24a0: 30 78 33 30 2c 30 78 46 34 2c 30 78 43 43 2c 30  0x30,0xF4,0xCC,0
24b0: 78 32 31 2c 30 78 34 39 2c 30 78 43 31 2c 30 78  x21,0x49,0xC1,0x
24c0: 36 36 2c 30 78 33 44 2c 30 78 39 35 2c 30 78 45  66,0x3D,0x95,0xE
24d0: 34 2c 30 78 41 41 2c 0a 09 09 30 78 45 32 2c 30  4,0xAA,...0xE2,0
24e0: 78 37 35 2c 30 78 30 38 2c 30 78 41 42 2c 30 78  x75,0x08,0xAB,0x
24f0: 45 46 2c 30 78 41 32 2c 30 78 35 31 2c 30 78 33  EF,0xA2,0x51,0x3
2500: 30 2c 30 78 46 45 2c 30 78 38 36 2c 30 78 44 30  0,0xFE,0x86,0xD0
2510: 2c 30 78 45 31 2c 0a 09 09 30 78 34 43 2c 30 78  ,0xE1,...0x4C,0x
2520: 30 35 2c 30 78 30 43 2c 30 78 44 45 2c 30 78 36  05,0x0C,0xDE,0x6
2530: 33 2c 30 78 39 33 2c 30 78 42 33 2c 30 78 33 37  3,0x93,0xB3,0x37
2540: 2c 30 78 31 31 2c 30 78 38 31 2c 30 78 42 35 2c  ,0x11,0x81,0xB5,
2550: 30 78 38 46 2c 0a 09 09 30 78 38 34 2c 30 78 45  0x8F,...0x84,0xE
2560: 32 2c 30 78 34 38 2c 30 78 43 31 2c 30 78 46 36  2,0x48,0xC1,0xF6
2570: 2c 30 78 46 36 2c 30 78 44 36 2c 30 78 35 30 2c  ,0xF6,0xD6,0x50,
2580: 30 78 39 31 2c 30 78 44 45 2c 30 78 36 31 2c 30  0x91,0xDE,0x61,0
2590: 78 31 34 2c 0a 09 09 30 78 37 42 2c 30 78 36 45  x14,...0x7B,0x6E
25a0: 2c 30 78 38 38 2c 30 78 39 35 2c 30 78 33 30 2c  ,0x88,0x95,0x30,
25b0: 30 78 35 32 2c 30 78 45 46 2c 30 78 41 35 2c 30  0x52,0xEF,0xA5,0
25c0: 78 30 33 2c 30 78 39 39 2c 30 78 42 45 2c 30 78  x03,0x99,0xBE,0x
25d0: 35 30 2c 0a 09 09 30 78 39 37 2c 30 78 45 33 2c  50,...0x97,0xE3,
25e0: 30 78 32 35 2c 30 78 38 46 2c 30 78 35 30 2c 30  0x25,0x8F,0x50,0
25f0: 78 30 31 2c 30 78 39 43 2c 30 78 35 34 2c 30 78  x01,0x9C,0x54,0x
2600: 39 39 2c 30 78 32 45 2c 30 78 34 43 2c 30 78 36  99,0x2E,0x4C,0x6
2610: 41 2c 0a 09 09 30 78 36 31 2c 30 78 44 37 2c 30  A,...0x61,0xD7,0
2620: 78 30 44 2c 30 78 42 39 2c 30 78 46 45 2c 30 78  x0D,0xB9,0xFE,0x
2630: 45 39 2c 30 78 46 43 2c 30 78 33 37 2c 30 78 43  E9,0xFC,0x37,0xC
2640: 31 2c 30 78 36 41 2c 30 78 44 46 2c 30 78 38 34  1,0x6A,0xDF,0x84
2650: 2c 0a 09 09 30 78 46 34 2c 30 78 35 41 2c 30 78  ,...0xF4,0x5A,0x
2660: 37 45 2c 30 78 42 41 2c 30 78 39 35 2c 30 78 32  7E,0xBA,0x95,0x2
2670: 33 2c 30 78 35 43 2c 30 78 34 31 2c 30 78 33 35  3,0x5C,0x41,0x35
2680: 2c 30 78 44 42 2c 30 78 46 39 2c 30 78 31 45 2c  ,0xDB,0xF9,0x1E,
2690: 0a 09 09 30 78 39 33 2c 30 78 43 36 2c 30 78 32  ...0x93,0xC6,0x2
26a0: 39 2c 30 78 38 45 2c 30 78 35 37 2c 30 78 32 38  9,0x8E,0x57,0x28
26b0: 2c 30 78 33 44 2c 30 78 33 41 2c 30 78 44 45 2c  ,0x3D,0x3A,0xDE,
26c0: 30 78 33 31 2c 30 78 38 36 2c 30 78 36 39 2c 0a  0x31,0x86,0x69,.
26d0: 09 09 30 78 33 44 2c 30 78 43 33 2c 30 78 38 46  ..0x3D,0xC3,0x8F
26e0: 2c 30 78 32 37 2c 30 78 36 32 2c 30 78 38 34 2c  ,0x27,0x62,0x84,
26f0: 30 78 37 37 2c 30 78 35 38 2c 30 78 30 32 2c 30  0x77,0x58,0x02,0
2700: 78 37 46 2c 30 78 39 30 2c 30 78 37 36 2c 0a 09  x7F,0x90,0x76,..
2710: 09 30 78 32 44 2c 30 78 44 46 2c 30 78 34 35 2c  .0x2D,0xDF,0x45,
2720: 30 78 37 30 2c 30 78 33 46 2c 30 78 30 34 2c 30  0x70,0x3F,0x04,0
2730: 78 34 34 2c 30 78 35 43 2c 30 78 44 31 2c 30 78  x44,0x5C,0xD1,0x
2740: 38 43 2c 30 78 37 33 2c 30 78 35 45 2c 0a 09 09  8C,0x73,0x5E,...
2750: 30 78 42 35 2c 30 78 43 38 2c 30 78 39 41 2c 30  0xB5,0xC8,0x9A,0
2760: 78 37 32 2c 30 78 33 45 2c 30 78 41 39 2c 30 78  x72,0x3E,0xA9,0x
2770: 34 44 2c 30 78 46 43 2c 30 78 44 43 2c 30 78 41  4D,0xFC,0xDC,0xA
2780: 43 2c 30 78 37 42 2c 30 78 46 46 2c 0a 09 09 30  C,0x7B,0xFF,...0
2790: 78 35 34 2c 30 78 43 32 2c 30 78 37 42 2c 30 78  x54,0xC2,0x7B,0x
27a0: 33 42 2c 30 78 31 31 2c 30 78 36 42 2c 30 78 31  3B,0x11,0x6B,0x1
27b0: 34 2c 30 78 41 33 2c 30 78 35 30 2c 30 78 44 42  4,0xA3,0x50,0xDB
27c0: 2c 30 78 31 34 2c 30 78 42 30 2c 0a 09 09 30 78  ,0x14,0xB0,...0x
27d0: 38 39 2c 30 78 35 41 2c 30 78 45 37 2c 30 78 44  89,0x5A,0xE7,0xD
27e0: 44 2c 30 78 42 46 2c 30 78 31 45 2c 30 78 32 37  D,0xBF,0x1E,0x27
27f0: 2c 30 78 42 43 2c 30 78 43 36 2c 30 78 33 30 2c  ,0xBC,0xC6,0x30,
2800: 30 78 43 34 2c 30 78 44 36 2c 0a 09 09 30 78 37  0xC4,0xD6,...0x7
2810: 34 2c 30 78 31 33 2c 30 78 32 36 2c 30 78 42 41  4,0x13,0x26,0xBA
2820: 2c 30 78 36 37 2c 30 78 31 35 2c 30 78 35 36 2c  ,0x67,0x15,0x56,
2830: 30 78 34 32 2c 30 78 45 44 2c 30 78 44 41 2c 30  0x42,0xED,0xDA,0
2840: 78 46 46 2c 30 78 39 46 2c 0a 09 09 30 78 34 42  xFF,0x9F,...0x4B
2850: 2c 30 78 42 45 2c 30 78 33 45 2c 30 78 42 43 2c  ,0xBE,0x3E,0xBC,
2860: 30 78 44 30 2c 30 78 41 38 2c 30 78 43 41 2c 30  0xD0,0xA8,0xCA,0
2870: 78 42 31 2c 30 78 38 45 2c 30 78 42 37 2c 30 78  xB1,0x8E,0xB7,0x
2880: 44 30 2c 30 78 46 46 2c 0a 09 09 30 78 45 30 2c  D0,0xFF,...0xE0,
2890: 30 78 38 37 2c 30 78 36 37 2c 30 78 45 34 2c 30  0x87,0x67,0xE4,0
28a0: 78 35 31 2c 30 78 41 34 2c 30 78 42 39 2c 30 78  x51,0xA4,0xB9,0x
28b0: 46 33 2c 30 78 34 37 2c 30 78 46 41 2c 30 78 31  F3,0x47,0xFA,0x1
28c0: 33 2c 30 78 46 41 2c 0a 09 09 30 78 42 31 2c 30  3,0xFA,...0xB1,0
28d0: 78 44 41 2c 30 78 42 36 2c 30 78 46 38 2c 30 78  xDA,0xB6,0xF8,0x
28e0: 45 43 2c 30 78 36 44 2c 30 78 30 42 2c 30 78 32  EC,0x6D,0x0B,0x2
28f0: 45 2c 30 78 39 39 2c 30 78 33 37 2c 30 78 42 38  E,0x99,0x37,0xB8
2900: 2c 30 78 36 36 2c 0a 09 09 30 78 38 30 2c 30 78  ,0x66,...0x80,0x
2910: 38 33 2c 30 78 33 41 2c 30 78 43 41 2c 30 78 34  83,0x3A,0xCA,0x4
2920: 36 2c 30 78 36 44 2c 30 78 44 43 2c 30 78 32 34  6,0x6D,0xDC,0x24
2930: 2c 30 78 39 46 2c 30 78 38 33 2c 30 78 35 34 2c  ,0x9F,0x83,0x54,
2940: 30 78 41 39 2c 0a 09 09 30 78 37 30 2c 30 78 36  0xA9,...0x70,0x6
2950: 32 2c 30 78 32 31 2c 30 78 36 44 2c 30 78 32 38  2,0x21,0x6D,0x28
2960: 2c 30 78 30 45 2c 30 78 36 33 2c 30 78 38 42 2c  ,0x0E,0x63,0x8B,
2970: 30 78 39 31 2c 30 78 37 46 2c 30 78 46 46 2c 30  0x91,0x7F,0xFF,0
2980: 78 43 44 2c 0a 09 09 30 78 38 30 2c 30 78 46 35  xCD,...0x80,0xF5
2990: 2c 30 78 41 43 2c 30 78 45 36 2c 30 78 39 30 2c  ,0xAC,0xE6,0x90,
29a0: 30 78 39 37 2c 30 78 33 43 2c 30 78 42 35 2c 30  0x97,0x3C,0xB5,0
29b0: 78 45 38 2c 30 78 30 30 2c 30 78 39 30 2c 30 78  xE8,0x00,0x90,0x
29c0: 39 36 2c 0a 09 09 30 78 42 37 2c 30 78 32 36 2c  96,...0xB7,0x26,
29d0: 30 78 32 43 2c 30 78 42 32 2c 30 78 39 43 2c 30  0x2C,0xB2,0x9C,0
29e0: 78 45 46 2c 30 78 42 46 2c 30 78 43 43 2c 30 78  xEF,0xBF,0xCC,0x
29f0: 44 36 2c 30 78 41 38 2c 30 78 30 31 2c 30 78 41  D6,0xA8,0x01,0xA
2a00: 30 2c 0a 09 09 30 78 46 43 2c 30 78 32 30 2c 30  0,...0xFC,0x20,0
2a10: 78 36 31 2c 30 78 42 44 2c 30 78 41 39 2c 30 78  x61,0xBD,0xA9,0x
2a20: 45 45 2c 30 78 35 46 2c 30 78 38 42 2c 30 78 33  EE,0x5F,0x8B,0x3
2a30: 32 2c 30 78 31 43 2c 30 78 36 32 2c 30 78 46 30  2,0x1C,0x62,0xF0
2a40: 2c 0a 09 09 30 78 39 34 2c 30 78 38 31 2c 30 78  ,...0x94,0x81,0x
2a50: 38 36 2c 30 78 33 30 2c 30 78 31 42 2c 30 78 42  86,0x30,0x1B,0xB
2a60: 31 2c 30 78 31 32 2c 30 78 46 35 2c 30 78 35 38  1,0x12,0xF5,0x58
2a70: 2c 30 78 35 32 2c 30 78 38 44 2c 30 78 45 34 2c  ,0x52,0x8D,0xE4,
2a80: 0a 09 09 30 78 39 39 2c 30 78 34 33 2c 30 78 36  ...0x99,0x43,0x6
2a90: 30 2c 30 78 39 42 2c 30 78 32 34 2c 30 78 46 38  0,0x9B,0x24,0xF8
2aa0: 2c 30 78 38 42 2c 30 78 31 34 2c 30 78 36 33 2c  ,0x8B,0x14,0x63,
2ab0: 30 78 30 43 2c 30 78 39 33 2c 30 78 46 34 2c 0a  0x0C,0x93,0xF4,.
2ac0: 09 09 30 78 37 41 2c 30 78 37 30 2c 30 78 30 41  ..0x7A,0x70,0x0A
2ad0: 2c 30 78 45 31 2c 30 78 34 35 2c 30 78 31 36 2c  ,0xE1,0x45,0x16,
2ae0: 30 78 39 32 2c 30 78 39 44 2c 30 78 31 32 2c 30  0x92,0x9D,0x12,0
2af0: 78 35 30 2c 30 78 30 35 2c 30 78 33 43 2c 0a 09  x50,0x05,0x3C,..
2b00: 09 30 78 30 35 2c 30 78 45 45 2c 30 78 34 30 2c  .0x05,0xEE,0x40,
2b10: 30 78 33 32 2c 30 78 34 44 2c 30 78 39 39 2c 30  0x32,0x4D,0x99,0
2b20: 78 46 46 2c 30 78 46 36 2c 30 78 31 34 2c 30 78  xFF,0xF6,0x14,0x
2b30: 32 35 2c 30 78 46 36 2c 30 78 44 46 2c 0a 09 09  25,0xF6,0xDF,...
2b40: 30 78 44 38 2c 30 78 44 41 2c 30 78 45 30 2c 30  0xD8,0xDA,0xE0,0
2b50: 78 38 35 2c 30 78 31 42 2c 30 78 33 46 2c 30 78  x85,0x1B,0x3F,0x
2b60: 32 43 2c 30 78 35 30 2c 30 78 44 39 2c 30 78 30  2C,0x50,0xD9,0x0
2b70: 31 2c 30 78 34 42 2c 30 78 30 31 2c 0a 09 09 30  1,0x4B,0x01,...0
2b80: 78 36 35 2c 30 78 32 43 2c 30 78 37 35 2c 30 78  x65,0x2C,0x75,0x
2b90: 33 32 2c 30 78 42 41 2c 30 78 36 46 2c 30 78 30  32,0xBA,0x6F,0x0
2ba0: 30 2c 30 78 35 36 2c 30 78 44 33 2c 30 78 38 33  0,0x56,0xD3,0x83
2bb0: 2c 30 78 43 38 2c 30 78 34 34 2c 0a 09 09 30 78  ,0xC8,0x44,...0x
2bc0: 39 42 2c 30 78 36 32 2c 30 78 33 46 2c 30 78 38  9B,0x62,0x3F,0x8
2bd0: 38 2c 30 78 41 37 2c 30 78 31 38 2c 30 78 41 43  8,0xA7,0x18,0xAC
2be0: 2c 30 78 36 39 2c 30 78 42 42 2c 30 78 46 33 2c  ,0x69,0xBB,0xF3,
2bf0: 30 78 31 34 2c 30 78 44 33 2c 0a 09 09 30 78 41  0x14,0xD3,...0xA
2c00: 34 2c 30 78 30 39 2c 30 78 36 43 2c 30 78 34 41  4,0x09,0x6C,0x4A
2c10: 2c 30 78 31 34 2c 30 78 30 43 2c 30 78 35 35 2c  ,0x14,0x0C,0x55,
2c20: 30 78 39 35 2c 30 78 37 41 2c 30 78 33 33 2c 30  0x95,0x7A,0x33,0
2c30: 78 32 31 2c 30 78 39 39 2c 0a 09 09 30 78 30 46  x21,0x99,...0x0F
2c40: 2c 30 78 30 31 2c 30 78 30 30 2c 30 78 35 44 2c  ,0x01,0x00,0x5D,
2c50: 30 78 32 44 2c 30 78 41 42 2c 30 78 45 42 2c 30  0x2D,0xAB,0xEB,0
2c60: 78 37 41 2c 30 78 37 36 2c 30 78 30 33 2c 30 78  x7A,0x76,0x03,0x
2c70: 45 37 2c 30 78 32 41 2c 0a 09 09 30 78 31 44 2c  E7,0x2A,...0x1D,
2c80: 30 78 43 32 2c 30 78 38 36 2c 30 78 34 42 0a 5f  0xC2,0x86,0x4B._
2c90: 45 4f 46 5f 0a 09 09 09 3b 3b 0a 09 09 2a 29 0a  EOF_....;;...*).
2ca0: 09 09 09 72 65 74 75 72 6e 20 31 0a 09 09 09 3b  ...return 1....;
2cb0: 3b 0a 09 65 73 61 63 0a 0a 09 63 61 74 20 3c 3c  ;..esac...cat <<
2cc0: 20 5c 5f 45 4f 46 5f 0a 09 7d 3b 0a 09 73 74 61   \_EOF_..};..sta
2cd0: 74 69 63 20 75 6e 73 69 67 6e 65 64 20 63 68 61  tic unsigned cha
2ce0: 72 20 64 68 67 5b 5d 20 3d 20 7b 0a 09 09 30 78  r dhg[] = {...0x
2cf0: 30 32 2c 0a 09 7d 3b 0a 0a 09 44 48 20 2a 64 68  02,..};...DH *dh
2d00: 20 3d 20 44 48 5f 6e 65 77 28 29 3b 3b 0a 09 42   = DH_new();;..B
2d10: 49 47 4e 55 4d 20 2a 64 68 70 5f 62 6e 2c 20 2a  IGNUM *dhp_bn, *
2d20: 64 68 67 5f 62 6e 3b 0a 0a 09 69 66 20 28 64 68  dhg_bn;...if (dh
2d30: 20 3d 3d 20 4e 55 4c 4c 29 20 7b 0a 09 09 72 65   == NULL) {...re
2d40: 74 75 72 6e 20 4e 55 4c 4c 3b 0a 09 7d 0a 0a 09  turn NULL;..}...
2d50: 64 68 70 5f 62 6e 20 3d 20 42 4e 5f 62 69 6e 32  dhp_bn = BN_bin2
2d60: 62 6e 28 64 68 70 2c 20 73 69 7a 65 6f 66 20 28  bn(dhp, sizeof (
2d70: 64 68 70 29 2c 20 4e 55 4c 4c 29 3b 0a 09 64 68  dhp), NULL);..dh
2d80: 67 5f 62 6e 20 3d 20 42 4e 5f 62 69 6e 32 62 6e  g_bn = BN_bin2bn
2d90: 28 64 68 67 2c 20 73 69 7a 65 6f 66 20 28 64 68  (dhg, sizeof (dh
2da0: 67 29 2c 20 4e 55 4c 4c 29 3b 0a 0a 23 69 66 64  g), NULL);..#ifd
2db0: 65 66 20 54 43 4c 54 4c 53 5f 4f 50 45 4e 53 53  ef TCLTLS_OPENSS
2dc0: 4c 5f 50 52 45 5f 31 5f 31 5f 41 50 49 0a 09 64  L_PRE_1_1_API..d
2dd0: 68 2d 3e 70 20 3d 20 64 68 70 5f 62 6e 3b 0a 09  h->p = dhp_bn;..
2de0: 64 68 2d 3e 67 20 3d 20 64 68 67 5f 62 6e 3b 0a  dh->g = dhg_bn;.
2df0: 0a 09 69 66 20 28 64 68 70 5f 62 6e 20 3d 3d 20  ..if (dhp_bn == 
2e00: 4e 55 4c 4c 20 7c 7c 20 64 68 67 5f 62 6e 20 3d  NULL || dhg_bn =
2e10: 3d 20 4e 55 4c 4c 29 20 7b 0a 23 65 6c 73 65 0a  = NULL) {.#else.
2e20: 09 69 66 20 28 64 68 70 5f 62 6e 20 3d 3d 20 4e  .if (dhp_bn == N
2e30: 55 4c 4c 20 7c 7c 20 64 68 67 5f 62 6e 20 3d 3d  ULL || dhg_bn ==
2e40: 20 4e 55 4c 4c 20 7c 7c 20 21 44 48 5f 73 65 74   NULL || !DH_set
2e50: 30 5f 70 71 67 28 64 68 2c 20 64 68 70 5f 62 6e  0_pqg(dh, dhp_bn
2e60: 2c 20 4e 55 4c 4c 2c 20 64 68 67 5f 62 6e 29 29  , NULL, dhg_bn))
2e70: 20 7b 0a 23 65 6e 64 69 66 0a 09 09 44 48 5f 66   {.#endif...DH_f
2e80: 72 65 65 28 64 68 29 3b 0a 09 09 42 4e 5f 66 72  ree(dh);...BN_fr
2e90: 65 65 28 64 68 70 5f 62 6e 29 3b 0a 09 09 42 4e  ee(dhp_bn);...BN
2ea0: 5f 66 72 65 65 28 64 68 67 5f 62 6e 29 3b 0a 09  _free(dhg_bn);..
2eb0: 09 72 65 74 75 72 6e 28 4e 55 4c 4c 29 3b 0a 09  .return(NULL);..
2ec0: 7d 0a 0a 09 72 65 74 75 72 6e 28 64 68 29 3b 0a  }...return(dh);.
2ed0: 7d 0a 5f 45 4f 46 5f 0a 0a 09 72 65 74 75 72 6e  }._EOF_...return
2ee0: 20 30 0a 7d 0a 0a 23 20 45 6e 61 62 6c 65 20 73   0.}..# Enable s
2ef0: 75 70 70 6f 72 74 20 66 6f 72 20 67 69 76 69 6e  upport for givin
2f00: 67 20 74 68 65 20 73 61 6d 65 20 44 48 20 70 61  g the same DH pa
2f10: 72 61 6d 73 20 65 61 63 68 20 74 69 6d 65 0a 69  rams each time.i
2f20: 66 20 5b 20 22 24 7b 6f 70 74 69 6f 6e 5f 66 61  f [ "${option_fa
2f30: 6c 6c 62 61 63 6b 7d 22 20 3d 20 27 31 27 20 5d  llback}" = '1' ]
2f40: 3b 20 74 68 65 6e 0a 09 67 65 6e 5f 64 68 5f 70  ; then..gen_dh_p
2f50: 61 72 61 6d 73 5f 66 61 6c 6c 62 61 63 6b 20 26  arams_fallback &
2f60: 26 20 65 78 69 74 20 30 0a 0a 09 65 63 68 6f 20  & exit 0...echo 
2f70: 22 55 6e 61 62 6c 65 20 74 6f 20 67 65 6e 65 72  "Unable to gener
2f80: 61 74 65 20 66 61 6c 6c 62 61 63 6b 20 70 61 72  ate fallback par
2f90: 61 6d 65 74 65 72 73 20 66 6f 72 20 44 48 20 6f  ameters for DH o
2fa0: 66 20 24 7b 62 69 74 73 7d 20 62 69 74 73 22 20  f ${bits} bits" 
2fb0: 3e 26 32 0a 0a 09 65 78 69 74 20 31 0a 66 69 0a  >&2...exit 1.fi.
2fc0: 0a 65 63 68 6f 20 22 2a 2a 2a 2a 2a 2a 2a 2a 2a  .echo "*********
2fd0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
2fe0: 2a 2a 2a 2a 22 20 3e 26 32 0a 65 63 68 6f 20 22  ****" >&2.echo "
2ff0: 2a 2a 20 47 65 6e 65 72 61 74 69 6e 67 20 44 48  ** Generating DH
3000: 20 50 72 69 6d 65 73 2e 20 20 20 2a 2a 22 20 3e   Primes.   **" >
3010: 26 32 0a 65 63 68 6f 20 22 2a 2a 20 54 68 69 73  &2.echo "** This
3020: 20 77 69 6c 6c 20 74 61 6b 65 20 61 20 77 68 69   will take a whi
3030: 6c 65 2e 20 2a 2a 22 20 3e 26 32 0a 65 63 68 6f  le. **" >&2.echo
3040: 20 22 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a   "**************
3050: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 22  ***************"
3060: 20 3e 26 32 0a 65 63 68 6f 20 22 55 73 65 20 4f   >&2.echo "Use O
3070: 70 65 6e 53 53 4c 22 20 3e 26 32 0a 67 65 6e 5f  penSSL" >&2.gen_
3080: 64 68 5f 70 61 72 61 6d 73 5f 6f 70 65 6e 73 73  dh_params_openss
3090: 6c 20 26 26 20 65 78 69 74 20 30 0a 23 65 63 68  l && exit 0.#ech
30a0: 6f 20 22 55 73 65 20 52 65 6d 6f 74 65 22 20 3e  o "Use Remote" >
30b0: 26 32 0a 23 67 65 6e 5f 64 68 5f 70 61 72 61 6d  &2.#gen_dh_param
30c0: 73 5f 72 65 6d 6f 74 65 20 26 26 20 65 78 69 74  s_remote && exit
30d0: 20 30 0a 65 63 68 6f 20 22 55 73 65 20 66 61 6c   0.echo "Use fal
30e0: 6c 62 61 63 6b 22 20 3e 26 32 0a 67 65 6e 5f 64  lback" >&2.gen_d
30f0: 68 5f 70 61 72 61 6d 73 5f 66 61 6c 6c 62 61 63  h_params_fallbac
3100: 6b 20 26 26 20 65 78 69 74 20 30 0a 0a 65 63 68  k && exit 0..ech
3110: 6f 20 22 55 6e 61 62 6c 65 20 74 6f 20 67 65 6e  o "Unable to gen
3120: 65 72 61 74 65 20 70 61 72 61 6d 65 74 65 72 73  erate parameters
3130: 20 66 6f 72 20 44 48 20 6f 66 20 24 7b 62 69 74   for DH of ${bit
3140: 73 7d 20 62 69 74 73 22 20 3e 26 32 0a 0a 65 78  s} bits" >&2..ex
3150: 69 74 20 31 0a                                   it 1.