Node v15.6.0(현재 버전)

주요 변경사항

  • child_process:
    • ‘overlapped’ stdio 플래그를 추가했습니다. (Thiago Padilha) #29412
    • fork에서 AbortSignal을 지원합니다. (Benjamin Gruenbaum) #36603
  • crypto:
    • 기초적인 보안 힙(heap)을 지원합니다. (James M Snell) #36779
    • keygen 오류 처리의 버그를 수정했습니다. (James M Snell) #36779
    • X509Certificate API를 도입했습니다. (James M Snell) #36804
    • randomuuid를 구현했습니다. (James M Snell) #36729
  • doc:
    • Danielle Adams의 릴리스 키를 갱신했습니다. (Danielle Adams) #36793
    • dnlup을 협업자로 추가했습니다. (Daniele Belardi) #36849
    • panva를 협업자로 추가했습니다. (Filip Skokan) #36802
    • yashLadha를 협업자로 추가했습니다. (Yash Ladha) #36666
  • http:
    • 에이전트의 기본 스케줄링 전략을 lifo로 설정했습니다. (Matteo Collina) #36685
  • net:
    • server.listen에서 abortSignal을 지원합니다. (Nitzan Uziely) #36623
  • process:
    • 페이지를 순회하지 않고 rss에 직접 접근할 수 있습니다. (Adrien Maret) #34291
  • v8:
    • 네이티브 serdes 생성자를 수정했습니다. (ExE Boss) #36549

Commits

  • [3ca7a786c5] - benchmark: fix http2 benchmarks (Rich Trott) #36871
  • [4601886d7c] - benchmark: fix http/headers.js with test-double (Rich Trott) #36794
  • [7aedda9dcd] - benchmark: add simple https benchmark (Andrey Pechkurov) #36612
  • [822ac48272] - buffer: make FastBuffer safe to construct (Antoine du Hamel) #36587
  • [21f329532f] - build: refactor Makefile (raisinten) #36759
  • [857b98eed9] - build: fix unknown warning option (raisinten) #36629
  • [ffaa8c1735] - build: do not “exit” a script meant to be "source"d (François-Denis Gonthier) #35520
  • [9bc2cec848] - (SEMVER-MINOR) child_process: add ‘overlapped’ stdio flag (Thiago Padilha) #29412
  • [b98cc51be2] - child_process: reduce abort handler code duplication (Rich Trott) #36644
  • [78d4d91e54] - child_process: treat already-aborted controller as aborting (Rich Trott) #36644
  • [a8a427f646] - (SEMVER-MINOR) child_process: support AbortSignal in fork (Benjamin Gruenbaum) #36603
  • [7134d49e56] - child_process: clean event listener correctly (Benjamin Gruenbaum) #36424
  • [54bd4ab855] - cluster: fix edge cases that throw ERR_INTERNAL_ASSERTION (Ouyang Yadong) #36764
  • [0c11a17d82] - console: refactor to avoid unsafe array iteration (Antoine du Hamel) #36753
  • [53cf996270] - (SEMVER-MINOR) crypto: implement basic secure heap support (James M Snell) #36779
  • [42aca13953] - (SEMVER-MINOR) crypto: fixup bug in keygen error handling (James M Snell) #36779
  • [c4ad50e0ff] - (SEMVER-MINOR) crypto: introduce X509Certificate API (James M Snell) #36804
  • [4e4deca90d] - (SEMVER-MINOR) crypto: implement randomuuid (James M Snell) #36729
  • [1c9ec2529e] - deps: upgrade npm to 7.4.0 (Ruy Adorno) #36829
  • [ff5bd04900] - deps: update nghttp2 to 1.42.0 (Michaël Zasso) #36842
  • [578fa0fedf] - deps: V8: cherry-pick dfcdf7837e23 (Benjamin Coe) #36573
  • [05f34c6963] - doc: define “browser”, “production”, “development” (Guy Bedford) #36856
  • [e8bb1f7350] - doc: clarify event.isTrusted text (Rich Trott) #36827
  • [153be6c80e] - doc: fix module syncBuiltinESMExports example (Bruce A. MacNaughton) #34284
  • [3b64b38142] - doc: os.uptime() temporary bug notice (Nicholas Schamberg) #36503
  • [da49624a46] - doc: update release key for Danielle Adams (Danielle Adams) #36793
  • [2d8423da3c] - doc: clarify child_process.exec inherits cwd (ugultopu) #36809
  • [1a4d34ebd0] - doc: clarify descriptions of _writev chunks argument (James M Snell) #36822
  • [7c7180a6f7] - doc: document buffer’s “Uint” aliases clearly (Michaël Zasso) #36796
  • [ff6edbc6b2] - doc: add dnlup to collaborators (Daniele Belardi) #36849
  • [835bdf0e50] - doc: improve crypto.randomUUID() text (Rich Trott) #36830
  • [d4bcb3689d] - doc: clarify subprocess.stdout/in/err/io properties (James M Snell) #36784
  • [a956fb3fdd] - doc: add dark mode (Ajay Poshak) #36313
  • [757b9664cd] - doc: revise method text in async_hooks.md (Rich Trott) #36736
  • [b4091ea59b] - doc: clarify when messageerror is emitted (James M Snell) #36780
  • [61b039365c] - doc: avoid memory leak warning in async_hooks example (James M Snell) #36783
  • [a7bb4da55e] - doc: clarify that --require only supports cjs (James M Snell) #36806
  • [c6eb2b4fec] - doc: clarify Buffer.from when using ArrayBuffer (James M Snell) #36785
  • [ad1d8fba9f] - doc: fix broken link for ChildProcess (James M Snell) #36788
  • [ef628891f7] - doc: revise exit() and run() text in async_hooks.md (Rich Trott) #36738
  • [ff39464559] - doc: add OpenSSL CVE fix to notable changes in v15.5.0 (Beth Griggs) #36798
  • [6db465a99f] - doc: clarify that N-API addons are context-aware (Alba Mendez) #36640
  • [fad07d5439] - doc: fix typo in esm documentation (Mohamed Kamagate) #36800
  • [67dd48ed05] - doc: add panva to collaborators (Filip Skokan) #36802
  • [b2c1aeb694] - doc: revise process.memoryUsage() text (Rich Trott) #36757
  • [8f672ebbd6] - doc: add YAML metadata for process.memoryUsage.rss (Gerhard Stoebich) #36781
  • [fa54f012b8] - doc: reduce abbreviations in async_hooks.md (Rich Trott) #36737
  • [56c00d7b2f] - doc: simplify pull request template (Rich Trott) #36739
  • [214dbac8ff] - doc: clarify undocumented stream properties (James M Snell) #36715
  • [242ce19346] - doc: document common warning types (James M Snell) #36713
  • [d3dc124575] - doc: update emitClose default for fs streams (Kevin Locke) #36653
  • [181bd0510f] - doc: improve ALS.enterWith and exit descriptions (Andrey Pechkurov) #36705
  • [edf8c6de5a] - doc: add note about uncloneable objects (James M Snell) #36534
  • [651e7d27b7] - doc: document http.IncomingMessage behaviour change (Dr) #36641
  • [72b0ab0739] - doc: add yashLadha to collaborator (Yash Ladha) #36666
  • [8a0cdb3b4e] - doc: alphabetize http response properties (Rich Trott) #36631
  • [ff4674b033] - doc: correct callback parameter type for createPushResponse() (Rich Trott) #36631
  • [f623d5d377] - doc: use _code name_ rather than _codename_ (Rich Trott) #36611
  • [1ed517c176] - doc: document return value of https.request (Michael Chen) #36370
  • [5645b21e23] - doc: document “http: lazy create IncomingMessage.headers” (ExE Boss) #36601
  • [3ee4cfc7d7] - doc: fix bugs in _construct() example (Maksym Baranovskyi) #36509
  • [93237c5999] - doc: remove replication of GitHub template (Rich Trott) #36590
  • [538f226f6d] - doc: remove “Related Issues” from pull request template (Rich Trott) #36590
  • [dcc93d3dce] - doc: expand openssl instructions (Michael Dawson) #36554
  • [41e278bf61] - docs: add references to punycode.md (Isaac Levy) #36761
  • [9b9b6d5fc5] - domain: make node resilient to Array prototype tempering (Antoine du Hamel) #36676
  • [f0a9c53bec] - errors: refactor to use more primordials (Antoine du Hamel) #36651
  • [c844d22b72] - errors: eliminate all overhead for hidden calls (Momtchil Momtchev) #35644
  • [3fa470a3c9] - events: refactor to use optional chaining (ZiJian Liu) #36763
  • [82393aefff] - events: refactor to use more primordials (Antoine du Hamel) #36304
  • [e3a091d9f3] - fs: refactor to avoid unsafe array iteration (Antoine du Hamel) #36699
  • [d5e1b82125] - fs: accept non-32-bit length in writeBuffer (raisinten) #36667
  • [d858c9576a] - http: remove dead code from internal/http.js (ZiJian Liu) #36630
  • [7e3ad1be32] - Reverthttp: remove dead code from internal/http.js” (ZiJian Liu) #36890
  • [a9a2dd32e3] - http: don’t cork noop .end() (Robert Nagy) #36633
  • [dfc962f67a] - http: add test case for req-res close ordering (Daniele Belardi) #36645
  • [cc28d2f541] - (SEMVER-MINOR) http: set lifo as the default scheduling strategy in Agent (Matteo Collina) #36685
  • [954a36947d] - http: make HEAD method to work with keep-alive (Joseph Hackman) #34231
  • [9156f430b5] - http: remove dead code from internal/http.js (ZiJian Liu) #36630
  • [5e499c490e] - http: refactor to use more primordials (Antoine du Hamel) #36194
  • [c784f15588] - Reverthttp: use autoDestroy: true in incoming message” (Daniele Belardi) #36647
  • [a38ad0709c] - http2: refactor to use primordials instead of <string>.indexOf (Rohan Chougule) #36679
  • [e85fbb778d] - http2: fix typos in core.js (Pranshu Jethmalani) #36719
  • [a4d64f967a] - https: refactor to use more primordials (Antoine du Hamel) #36195
  • [1db3772c95] - lib: simplify primordials.uncurryThis (ExE Boss) #36866
  • [95219eac08] - lib: refactor to use mapping in cluster master (Yash Ladha) #36250
  • [b764269437] - lib: remove v8_prof_polyfill from eslint ignore list (Antoine du Hamel) #36537
  • [eb6b38639a] - lib: remove unused code (Brian White) #36632
  • [7fe1b5ef5a] - lib: refactor to use validateCallback (ZiJian Liu) #36609
  • [bb4f8c8732] - lib: use more primordials in shared validators (Pooja D P) #36552
  • [181bad58d3] - lib: add primordials.SafeArrayIterator (Antoine du Hamel) #36532
  • [6e338dac3c] - lib: refactor to use more primordials in internal/encoding.js (raisinten) #36480
  • [ec3e841f59] - lib: refactor to use primordials in internal/priority_queue.js (ZiJian Liu) #36560
  • [8ac2016229] - lib: add primordials.SafeStringIterator (Antoine du Hamel) #36526
  • [56af1250fe] - lib: make safe primordials safe to construct (Antoine du Hamel) #36428
  • [d20235b6cb] - lib: fix diagnostics_channel hasSubscribers error (ZiJian Liu) #36599
  • [63091f8440] - lib: refactor to use more primordials in internal/histogram.js (raisinten) #36455
  • [eca2df0909] - meta: notify slack when someone force pushes (Mary Marchini) #35131
  • [01213c71b9] - module: fix Windows folder exports deprecation warning (Guy Bedford) #36859
  • [302be57be4] - module: refactor to avoid unsafe array iteration (Antoine du Hamel) #36680
  • [24246a29d7] - net: throw ERR_OUT_OF_RANGE if blockList.addSubnet prefix is NaN (ZiJian Liu) #36732
  • [02dbcc4317] - (SEMVER-MINOR) net: support abortSignal in server.listen (Nitzan Uziely) #36623
  • [a258bc9b70] - perf_hooks: refactor to avoid unsafe array iteration (Antoine du Hamel) #36723
  • [94afc3e712] - process: passing -1 to setuid/setgid should not abort (James M Snell) #36786
  • [92af50327e] - (SEMVER-MINOR) process: add direct access to rss without iterating pages (Adrien Maret) #34291
  • [8b7336b072] - quic,timers: refactor to use validateAbortSignal (ZiJian Liu) #36604
  • [b17130a55a] - readline: fix behaviour of Interface plugged to a non-terminal output (Antoine du Hamel) #36774
  • [d70824f567] - src: fix typo in crypto_aes.cc (Ikko Ashimine) #36717
  • [8b43388903] - src: reduce duplicated boilerplate with new env utility fn (James M Snell) #36536
  • [a53997e6c0] - src: fix leading backslash bug in URL (raisinten) #36613
  • [abae61e230] - stream: finished waits for ‘close’ on OutgoingMessage (Robert Nagy) #36648
  • [4c819d65f9] - stream: fix .end() error propagation (Robert Nagy) #36817
  • [cb0b53edb1] - stream: lazy read ReadStream (Momtchil Momtchev) #36823
  • [b996e3b4b5] - stream: do not use _stream_* anymore (Matteo Collina) #36684
  • [190ddced46] - stream: only use legacy close listeners if not willEmitClose (Robert Nagy) #36649
  • [1fc30a84ac] - stream,zlib: do not use _stream_* anymore (Matteo Collina) #36618
  • [d2b9e7cb01] - string_decoder: throw ERR_STRING_TOO_LONG for UTF-8 (Michaël Zasso) #36661
  • [abc2ff47c2] - test: disable test-crypto-secure-heap with asan (James M Snell) #36900
  • [17a52337c4] - test: http complete response after socket double end (Dimitris Halatsis) #36633
  • [cc37ff24dc] - test: use faster variant for rss in test-crypto-dh-leak (Pooja D P) #36766
  • [daad0ab1cc] - test: use faster variant for rss in test-vm-memleak.js (Pooja D P) #36769
  • [9d25d25cfd] - test: mark test-cluster-bind-privileged-port flaky on arm (James M Snell) #36850
  • [c64db20fdd] - test: use faster variant for rss test-memoryusage-emfile (Pooja D P) #36768
  • [d48e00e5a3] - test: fix test-memory-usage.js for IBMi (Rich Trott) #36758
  • [9b7d2c2523] - test: guard large string decoder allocation (Michaël Zasso) #36795
  • [5bc130bd9e] - test: increase coverage for events (ZiJian Liu) #36668
  • [9f7fbcc64d] - test: add coverage for breakLength one-column array (Rich Trott) #36657
  • [9eff709c23] - test: update wpt interfaces (Daijiro Wachi) #36659
  • [a7f743f5cc] - test: update wpt resources (Daijiro Wachi) #36659
  • [4acc2732f9] - test: update wpt encoding (Daijiro Wachi) #36659
  • [986d5aca44] - test: update wpt url (Daijiro Wachi) #36659
  • [833e614682] - test: increase coverage for diagnostics_channel (ZiJian Liu) #36602
  • [f0dfe57bd1] - test: add already-aborted-controller test for spawn() (Rich Trott) #36644
  • [d5d56ec3d4] - test: add test for reused AbortController with execfile() (Rich Trott) #36644
  • [f81556563a] - test: increase coverage for internal/error_serdes.js (ZiJian Liu) #36628
  • [34d1d791e5] - test: improve coverage for util.inspect() with classes (Rich Trott) #36625
  • [1f3bc5ed73] - test: increase runInAsyncScope() coverage (Rich Trott) #36624
  • [863bfc44d2] - test: redirect stderr EnvironmentWithNoESMLoader (Daniel Bevenius) #36548
  • [8e8b16ff7e] - timers: refactor to use optional chaining (ZiJian Liu) #36767
  • [c23cca2de9] - tls: refactor to avoid unsafe array iteration (Antoine du Hamel) #36772
  • [37becfda8c] - tools: update all lint-md rollup dependencies (Michaël Zasso) #36843
  • [cfdbb79ccf] - tools: update doc tool dependencies (Michaël Zasso) #36844
  • [1f2a198c32] - tools: fix md5 hash for ICU 68.1 src (Richard Lau) #36777
  • [4e0995bc60] - tools: update ESLint to 7.17.0 (Colin Ihrig) #36726
  • [8ad3455ae3] - tools: revise install.py for minor improvements (Rich Trott) #36626
  • [b367d5a61d] - tools: update gyp-next to v0.7.0 (Michaël Zasso) #36580
  • [10f1c893c8] - tools: correct usage message for genv8constants.py (Rich Trott) #36606
  • [37b39a2d6b] - tools: call close() explicitly in genv8constants.py (Rich Trott) #36606
  • [7664f3678c] - tools: use is None consistently in Python (Rich Trott) #36606
  • [cb7f73c9d4] - tools: revise line in configure.py for clarity (Rich Trott) #36551
  • [258aa50986] - tty: refactor to avoid unsafe array iteration (Antoine du Hamel) #36771
  • [5cb8b16452] - url: fix url.format with ipv6 hostname (ZiJian Liu) #36665
  • [b1c6a44caf] - url: refactor to use more primordials (Antoine du Hamel) #36316
  • [baa8064bd0] - util: refactor inspect.js to use more primodials (Rohan Chougule) #36730
  • [bff201a66d] - util: remove unreachable defensive coding (Rich Trott) #36744
  • [64bf2f229e] - util: refactor to use more primordials (Antoine du Hamel) #36265
  • [2dd2ec3836] - v8: refactor to use more primordials (Antoine du Hamel) #36527
  • [3170636a8e] - (SEMVER-MINOR) v8: fix native serdes constructors (ExE Boss) #36549
  • [d5a9799e76] - wasi: refactor to avoid unsafe array iteration (Antoine du Hamel) #36724
  • [b6f74b0b09] - zlib: refactor to use primordial instead of <string>.startsWith (Rohan Chougule) #36718

Windows 32-bit Installer: https://nodejs.org/dist/v15.6.0/node-v15.6.0-x86.msi

Windows 64-bit Installer: https://nodejs.org/dist/v15.6.0/node-v15.6.0-x64.msi

Windows 32-bit Binary: https://nodejs.org/dist/v15.6.0/win-x86/node.exe

Windows 64-bit Binary: https://nodejs.org/dist/v15.6.0/win-x64/node.exe

macOS 64-bit Installer: https://nodejs.org/dist/v15.6.0/node-v15.6.0.pkg

macOS 64-bit Binary: https://nodejs.org/dist/v15.6.0/node-v15.6.0-darwin-x64.tar.gz

Linux 64-bit Binary: https://nodejs.org/dist/v15.6.0/node-v15.6.0-linux-x64.tar.xz

Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v15.6.0/node-v15.6.0-linux-ppc64le.tar.xz

Linux s390x 64-bit Binary: https://nodejs.org/dist/v15.6.0/node-v15.6.0-linux-s390x.tar.xz

AIX 64-bit Binary: https://nodejs.org/dist/v15.6.0/node-v15.6.0-aix-ppc64.tar.gz

ARMv7 32-bit Binary: https://nodejs.org/dist/v15.6.0/node-v15.6.0-linux-armv7l.tar.xz

ARMv8 64-bit Binary: https://nodejs.org/dist/v15.6.0/node-v15.6.0-linux-arm64.tar.xz

Source Code: https://nodejs.org/dist/v15.6.0/node-v15.6.0.tar.gz

Other release files: https://nodejs.org/dist/v15.6.0/

Documentation: https://nodejs.org/docs/v15.6.0/api/

SHASUMS

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

166985455aaf6a16c570045c3381bc7d88a1dfa3f98cf4bb67a699b7240c6bed node-v15.6.0-aix-ppc64.tar.gz
e79baddd344fd19c68104591964263b14ddc57fb98051bebb744151f21a83667 node-v15.6.0-darwin-x64.tar.gz
489f1072dbded246c8f3727844409ee7d835a46479f354e39b080ad5a8416cc0 node-v15.6.0-darwin-x64.tar.xz
73687e7b2afa53dc35bc331534dcdca25137a5b1a543cd7c8c35b74ef53f4ddf node-v15.6.0-headers.tar.gz
4883ecad8ef4d6c3028252b2dae014e2a9f5a09b44cdf2609b497be8839a1ccc node-v15.6.0-headers.tar.xz
b0660398fe590f8588431a787e9b032c7271a2fa88306c7a26e751571df998e4 node-v15.6.0-linux-arm64.tar.gz
533a5cbda0dc4f42f0cd2967db3f40a5186e64806ee981b791e7c37bb2780fc3 node-v15.6.0-linux-arm64.tar.xz
234871415c54174f91764f332a72631519a6af7b1a87797ad7c729855182f9cd node-v15.6.0-linux-armv7l.tar.gz
76f9e0c89da946a834a0711855b75c84e64c5440cf78f4b81b7d27e2791b1710 node-v15.6.0-linux-armv7l.tar.xz
7c45fa66e8c5f3c8d6bf82785717776cb3b2bc4e78c2d5846123dfcded06bba3 node-v15.6.0-linux-ppc64le.tar.gz
f6dd89aad601c3cfdaa75f3673b03a37314b2b6cf50b51e61c039d0c8c1ddd64 node-v15.6.0-linux-ppc64le.tar.xz
f9c28fec6a4215ca65cb42c3a317e13e4b81f88609a49507d810d52334f85ffe node-v15.6.0-linux-s390x.tar.gz
94a350a4cbd1b46789b9425610e25dffd560b78d4e711708df06565b361df3fa node-v15.6.0-linux-s390x.tar.xz
a8b42f6f174f857b9369858b63ff136ed5b9072336e6df9f0208eddde13897dc node-v15.6.0-linux-x64.tar.gz
e8ae7a715c1886c1ca4ec401c401bc832c8fac586c7aa0e7cc1db9bda4e785a8 node-v15.6.0-linux-x64.tar.xz
948ff411a76eb7adc317cd18c6fe75e8d10009937771786ac25b68364feadb04 node-v15.6.0.pkg
1dd3681e85bb9c8205a331bfac5121050893defb5ad9d04698239aeef4e736b3 node-v15.6.0.tar.gz
39df81ddcd9ca0b99b179aeb61d1b01257a1579e257764a93b0386ff029c38d2 node-v15.6.0.tar.xz
e913e4e4597374da71e649c94b7273a834c365cb996bde1755ed18c45764147c node-v15.6.0-win-x64.7z
83d1aafbe869c8e7064b8ad97894ce8428d8d66b8fa38f6d5364dc3e9ffb3813 node-v15.6.0-win-x64.zip
ac25fc5e7e195f2c743d0d2d7fef73d24d9ee02df867049d51f8ab6a92d749d1 node-v15.6.0-win-x86.7z
f0d5efd49afe4e418edbb415f9d9df11bf052d4eae0915a8a808b8506415c64a node-v15.6.0-win-x86.zip
3936fc5c9e7b8e5a9824ea2f1dfefad7a4b0bc94db94ef9efeb5b38cb24691d5 node-v15.6.0-x64.msi
ecb4c5a259b161504736193ffb6121c76cf71d77e4151432104ad79c3540c900 node-v15.6.0-x86.msi
1ba33091e6edf2636e1f5088d8753ef765217cdab2233fd82874a87d968e18f8 win-x64/node.exe
c0f8428d8179b9d99ddc564f722ad7022075e72823305edbe48ec5366fad40b2 win-x64/node.lib
9e3fd87f4c19a84cc1f3dc7260bbcf12749fd561f771e7596d87dfde15f8c6b4 win-x64/node_pdb.7z
8aa9f8db544b49ab6abb3c6fda822c703f17d4a3ac51f87d35ad2e9cb395ab8a win-x64/node_pdb.zip
acea7cb81f2078d74fa506bd32d8ffbea0ebc80abd4e7fbbd0199526098456b3 win-x86/node.exe
f2144ca5323061754edfdf630af6c3495b0a87d23303c18438527dfa1356d730 win-x86/node.lib
c6acd5a72660389899aedd935ba6fb4dbf246bcfd4ae9a5ef2cd28c3544fbb5a win-x86/node_pdb.7z
4bc9524beb622c589c53823eef47daf6f98d73cf784f6ec73a581f577645c7fa win-x86/node_pdb.zip
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEdPEmArbxxOkT+qN606iWE2Q7YgEFAmAA6XIACgkQ06iWE2Q7
YgEhXg//Yo/MLY9+sVtbNn3yiZa/KXI/MYKMqO6ZdyAYiVX9/XF5C2/cCN0H2BbB
i4tSMx2gO7zjuEJ+mMu0m3Mjf6sIzgs9RhhGJfTW5gyLHfZtcMy+ozZmEzTE23oQ
HMlr2jbyd9UUhfcMv4wAJF+tFgQ9nys1nEng/j8hvdf8Jj1wSbzFh280nDa34h97
YAOlIS83neX9rQWpcPMf1KKYyo4WxFr3nJEDCdd3rB0VandfNVg2F79kQDYgJrLT
I3nK/3kSYkW+m3p8JwLfWFjhx6A/9nHyH0x2JuF/Or0lBGs6sCs8GtPw++dNr9NZ
p62u6anbVz3J+R7W68ETdrcBvFifmsEhOpYMpGTGYVAEgEGbReqlFj/Dn5f3t+Y0
8H+Ua3q8ISitWZmtvJKWoUscbPJc3G+PZKwqE7lDIRlCuj+csttlMkZFJoLiAEiO
eD6whkmcuDznSbFOmmfvwTf6lI7gj5NqXBczlsw6DDWzO9SHTesDU90sX9ooeWr/
YHImDZD1kE21FD2xuULah6aHrtGvtj0p9cB+JtHWzGdszdKsroMun2VI2uCGzfSH
I8xDU9Kp3RJV63bVpEulJM4TIkuITeBgWAmhkgv4xNdzXaRM3Gei4XA0cwGQgqQj
Qa3WI2loQqEc/Xn/m1GrcvJqfQ7xzFKNdf8IShkrYt6QvUNR+wI=
=t9Po
-----END PGP SIGNATURE-----