Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automate pretty print #84

Open
wants to merge 1 commit into
base: seanturner-cert-examples
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
287 changes: 9 additions & 278 deletions draft-ietf-lamps-kyber-certificates.md

Large diffs are not rendered by default.

280 changes: 280 additions & 0 deletions example/ML-KEM-1024.crt.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,280 @@
SEQUENCE {
SEQUENCE {
[0] {
INTEGER { 2 }
}
INTEGER { `159ffe6f22fd5cc42c524df6fd5e28d0de38f34f` }
SEQUENCE {
OBJECT_IDENTIFIER { 2.16.840.1.101.3.4.3.19 }
}
SEQUENCE {
SET {
SEQUENCE {
# organizationName
OBJECT_IDENTIFIER { 2.5.4.10 }
PrintableString { "IETF" }
}
}
SET {
SEQUENCE {
# commonName
OBJECT_IDENTIFIER { 2.5.4.3 }
PrintableString { "LAMPS WG" }
}
}
}
SEQUENCE {
UTCTime { "200203043210Z" }
UTCTime { "400129043210Z" }
}
SEQUENCE {
SET {
SEQUENCE {
# organizationName
OBJECT_IDENTIFIER { 2.5.4.10 }
PrintableString { "IETF" }
}
}
SET {
SEQUENCE {
# commonName
OBJECT_IDENTIFIER { 2.5.4.3 }
PrintableString { "LAMPS WG" }
}
}
}
SEQUENCE {
SEQUENCE {
OBJECT_IDENTIFIER { 2.16.840.1.101.3.4.4.3 }
}
BIT_STRING { `00` `4b94c29450111191823b3514c9ac1ea3d9825cc
b86393a2dfb04654fa2192d37bfad1c497c6502eee5ca80a73bfce0baf5a54a8
8585a401397a3d232f426a7afb082bc21a44317090eaac7592c2ea88a653c449
1ea193931335f52e989a3c4cc56d9c553732d57c470fb41ab759b65d2d044453
82fcd9c4e344a1128fa9e11e04358e192ed014b23232a7ee2b22e23717f44111
ee33575399c37646da9813ec9b212afe94e5dc5c2330a7294cc1f4234a6d3fbb
4f1685ab8892c04acb17cd1c170d7b0611b6a7176c794cc8c67f55fc923c2ad2
03100f365991882c30243d77813843b5ec7c964032263706092ecf00c7516be6
4e4598ca4226c069bb5e67e4175cf2286c8dd5c488a6c5861f31baa0bd026947
0e8b551dd3bcd38c86c12f9cdb176c77dc8b6c02a701f478902c8553f694c0d8
2727b4c4a5c2c1041212aa1274808b82111b377ec75214e9b1978f76004d4139
d98613f4b8e98d20af7b534073a509a959b7a7564f9b40ca218bf61829320a85
02017954d328d7ac6c769ec29700756e7b0685b340d5e118059504a49a9a50a1
0198eb10a5784678eb427d7b4babb9552933b062897973e1318eaf0a0eac3758
4a65401b1703e042accd837531483f241cadcd1c1d378119e694429db199ac89
1e4c5343757085bb3ae783667350c4458d97672e861e80b1d2679510ea3a6f23
60c77a46942c7a06a554d228080c84b47aef14db17620cb16c06ab30a1be4cda
7082be9f87e9c211c46916349a5ba8eaa5201c7294a3c0885b53b65745210882
5ec646c90a04612324ee7d031afe5343132cbef67b6efb1a5ec2809b773538ce
77b3d8b04eb0b3c2256011e4c716c19a8ba0752bf71492117649f0615c3290fc
29a46fde4bd52db9286d603388244259c15a7ac2b640a60cc03376a5841a3fb8
a473568fa9b1a267215f34c01697b0f0e627175d72105b7707c29b9e614bdc33
a6f6c818a95370b427882d7b476796a9ec6eb993274cd9b2391a82ba45e3393d
2e9ae9721ca9d6c1b988b5827713f90a6585de9433528c02b03ce10bb5f72013
8d0fbb4c30c1266b918e52925dfe17b37f95d22bca54f475919ac859098c0f0d
08ac5875ef29b56fd141e6ef15f700a0b66f39595c588177373c4669b21bc071
e4c3aa5f0b4a31b6258f35da24ac3cd29c7f2092410c5078355b138fb53a6b9a
e6e0b9c08243e7baa45c47376eb8c7f13d4cf51aa736fa31540c9241f370da54
4bf9f9c28d9a57e2f2a7ca95a4e4b466e641ab3bcc76adf1139d567a6f12b52f
3a65e7ec0aae26bcaa8c55833b04e59998ebc9a1930fbb6d2233c53d2c1f8b95
18e3c2de73a19dee6b380a5b32971cf64e129fd6c1fa6e75d4a234501e966dd3
a540af5c8f4f34a6b4a253ee28492566d5e67c6f55855fcb0506fb06c156744d
9a03a31a26fa94cad14f157b7f303d07a69c773768fcb4d079c09059703a0c3a
94de4b99ea3a2f16583d0f9170a3950db07b4f0bc30802927f9f7961b6259892
636a9502a2705303637799dd344da451c1cf7bf67840ceb3079ab8c6b8c1927f
64053c612450c45c9e603bc16666e596b3471e103b6f15447424d17022048111
ffbd37e1c670f64f14b8a7b32b94c1a49b45dd2fc38cd5289d910ad63602cf5e
13042c64ac6797b89fb551ad08e05a92d200cccb7e712ef23c9312cb350f029a
b537e287347fd3075ac10906a783f1c6c07ccb88f41228c4be1c640f790b5c3a
5d5d3ca792495d74bc461562658c07ac600276b924ab5bc9be1f0494cb76f82f
460a7480972663381e169996061d799859ec54d4f5ca5c411c01db1597b16597
7669de13a928a34afbac258fea8c4764239c9421dc3119bf5b47699206978327
b1c5345ef746a7983841f056e2534100ab24d4e9abbd0b17c6a95bd4c3c0e40f
69e1612aceeb28b99086c95116e7204273893390bf46b899b36286b0ebf1947b
b9884f732ca27da82b19b5dc0cc7f8885714910888b2310c4f9319d410b34e64
33b9003e2176bb995257456106e8952163b8ba592530cc5aa0aeb43ad398fe9e
97baa523d7a4431677c3d3af0719e475db85ca95af5089beabeb05b2faab4896
ba60f81c88472a57b46a828826a0cdfb446f8189182d2bf5eac4ec1cc5deaf59
9c8a13e48235406d17ffddc8344b6c66984a868aa92fa02227a086950eb0c870
1ed58dc628776b983882e1175` }
}
[3] {
SEQUENCE {
SEQUENCE {
# keyUsage
OBJECT_IDENTIFIER { 2.5.29.15 }
BOOLEAN { TRUE }
OCTET_STRING {
BIT_STRING { b`001` }
}
}
SEQUENCE {
# subjectKeyIdentifier
OBJECT_IDENTIFIER { 2.5.29.14 }
OCTET_STRING {
OCTET_STRING { `da82182c39ebdb350d904ee4bc507b72043f
fa23` }
}
}
SEQUENCE {
# authorityKeyIdentifier
OBJECT_IDENTIFIER { 2.5.29.35 }
OCTET_STRING {
SEQUENCE {
[0 PRIMITIVE] { `89886750b57c24db3fc012e61ede59753
337374f` }
}
}
}
}
}
}
SEQUENCE {
OBJECT_IDENTIFIER { 2.16.840.1.101.3.4.3.19 }
}
BIT_STRING { `00` `74225bdfc7af660a19d5e3c84e80613d45140b98c2b
28c59f8b0a0f114ef20ac002cc4ac3d85d124bfe4caa9ac8b9029317839e12ff
1c83a70d15f167d89550c70252b85c7ab6082198947ae0896181c09345affde4
05faacd3dd435110a7658c10fbae57a6ef0442ee84fabdfdf4e0116c0ce4262f
7c8bde087c848c9cc54e52321ddd1fa1a3d704ae83dd4b54157f4212de6c38b1
5ee28e7bfab9772350464d652388a6e72b060a41b376a519b9a9ea058bef1347
3576fbe0786f7ea95f404503b198e68a610304355540f476f3195eba194ad1d7
d8caf73d5b448392cc509b6bcde81872b20bd6c708b7efb571574713559431c6
93b7519b674039db3f89624be1cbbf3363bcad66b122dca97de89ec8a6ebe824
231b35aa43994d602de988c3bd07297a431bd9a813e115e2db5d8737645864db
9d28cfb9be2c50e91d7d3eb9fe1244e5b9d440e8a3780dde140fa7dbac81841c
7e9acffd2a711a6c49d3719a1effed145fe91300804feb063e3606b13d782953
46fff82e238707b3da44eace58f25b250f50148c583c550948a85d8908f9da38
6c9a81d11e9b799accb274cb62829c5321aa9de819a5565c2d8b4b0c8e2ded17
29e25645bbaf5d0e1697cd4e22dc8b5fce9f8e897c6ce9c21bcdd5df0e0bdce9
a2cddf5276706d77abaffb54baa3112f35cb3bfa9c3a4cdffa12e51a44f862fe
362bf19a6996a25fb02394a0bb3a8492e3ac3e50326082c580ab57be9e6ba328
cb2af5ff499f1253a49132cc2f328de69e2fa8f11d01d379bc3013f20e189f43
2c44faaa2b4a57c9403b031f48486b9079b785f6b044b681081be6eae305c15b
1986da04372a272d3434b92d4652db79fce6967cb74d36217e9f5c3dc962d9f8
50c2448db4a1dfeb3a598dc0d6a1b4d1b2c92f872122af86f26040666d3f7b42
b16fe1fb635b566674defa98b4f1f2b045c3d311d1d72ca53c6d2e777b703ce7
5cbc70dac6b3474d1da0d01e371ba058038574b881e058ea2c331c67667c329c
0399b15113fe5d4806e8704bb826029b1d12e4eccff85658f9b0a19d1ef3d23f
1b4e5e1838e222687ca1d825bc7eb1ac225c35b4120d7b32d66bbb2bfb8af1e8
2d422b417627f21d60874430b88bf18c7ce702f4ab412e7c3a1cfc73d045ede1
0c3b58b1ec7744cafcde8b1923ea247fedefb4ca0bbf7089c72648a7c0e2eb94
ae6511d9e4a356fc31855860286d11db4ba55adfb2938f3cac83556c74ceb0a9
c21816f38c57f9af51527631b5d26b042ec0a54c8d87a26d3f27e794bd88bee6
71f9e2bcb825ed034ef3abda92cf194699d9100f855524224b42bd7999c14c8e
cbe1bcc92991e04e0d2d71dd77a995d9b54a50757c6ab92eb7a3494366cee4e6
22b1ed7b773f34f57f6cb9003408ad23c9f58b70ef54ee6c6a2d077f6f922ab0
beb1767e5ee7fc86bc6841e9de4eb1d4e51b39c43b1bb3d6fac13699d832fb61
5c4a5ca89855c37a7b7d6b21f5df957693ceff618c2d263b76ac531246882eb7
4d40b4a27f3a70b51365f9b3953d15799ebb2d6cb3f53acc767e544892499941
bb57a3ebfcabb0202cbb4dff1dea5731f6e1e0db81e17c944c6458838ac5d769
c7f1a87d12bdf76f889833acdfe4954f44f6dafbaa038d01d8023bc3fa0445f4
3e6deb83dc690240037f351d162ab6280ba52d4d6800f66d4be0d8962c644932
997b35c3e886f1a2c171a909a6a9b029acc57337296499c07e1540a298d1413c
86c72b251fed3529de195223f82ca64290dad08ec36ca481c86803cca7490bfc
5034ded7c6c1eb19bdcbe59c9603ecf22bc31096748156db803ac9a18a838c44
d4d3bda094162d13430d8e88c8e61ff63c3860d95c1b9c2c27922c6d47147241
8e3c7891c7d2074a23857b06f92968d050defdc00f7fc354964e81b67d44ab7d
448d844bec57917e02cf44710be0546b4836e9735961f17c219b7d51d9f043b7
e71406d3bef170418c84ccfd78d59047c19d40e2f2da4423365655f54f6929ae
427158e40511cfa5fb0538c4f8a875ba02bbfa56835c4f052ea1b16d97a0d859
3794feaae63777b980cd7be822a77914bc2280c5f2765e08309e1c00f5ee0e15
f5450a35a787695419e1e96fbd5c0f859bddad31a8229f9566b60826a96d5026
70bc1becc72e882f36470864cb4d0c166874a26912d52943d5ca65d5067ce3d9
c45e0dbe2993cfdb42eff4dd94aab8eb9be8f4d5ffc53b7a36f87d75dae93116
41ad926a8ef38aa6085137f0a0fccd7efcf878b14c3f08fb5129c15def2657e3
0e80bda770aedaa1b388c9f3f06a5e48100039a2f3e663add3d49406740a2e98
a4ceecd3956f9851fdf5eadb93ab59fefb0dfdef94d762e67d460bb5055cdd85
749e30265dd7f26cb92f7b153adcc058a300a812dba8d70a14ac4cbdb608ea00
53efd566f5fe0b8301847fd945414937cac3ffb90170511186825ccf3781a622
b3473cdc79c816d453be2443c77928e6263f4f52ea0cb155dd7b9dabba8b8064
c7003af479c84bb4435df83b9059eb9cdbe4d3248715b6bc6262d32b89f91c43
b62914a86b222332ae63ec2bd36596a0fde98bddd49d16c36c9ea25c95497944
89a55e0e719ef9dfe71fa55dcc7b219ddf05abb7c84d34d42e16fa58e587d133
691a93b74bd3d89b89fcc9f8891c2cfdaec261d5f7f8b14836cae090e2706e05
0e159186fcb4a15ded4e8cfc5b5671344cc977e50a82ead63263ee7b96a6f570
1737f993e64dc43bc8e7877c6021748eda61157c1aab769f1f19c2e842251bae
c561988dba71f52b5b6d5792990c90383a1451e5ef051ec38c5a8a551cf70971
56d23f123112625c293ca506f727e71bc80d80b9726406590862cc0b5601f635
3de89db9e13bad186e4522bfb77c000464b6ed551c3a495abe4980c490d39939
6f6aea283d023c75a985aa4517210304449e2cb9a75075977f468d97b56b62b5
d8473117cd41837fad725096c1c3d8132cc0c2f1618797f34fb61e7b699d40a3
f201f08af7cf6bd7001a8acf707293c9251b311adfbb62b2dfac66337cec384a
1a3014728960a0e9fc17da7e480c272d52cc841a3e622169bb9870008820cd88
42f9f807d7b3b3f26f1210bfa8e8b52802d95e3193d00a06d26fcf02bc164f1c
13dade5ebea8570e442ada7e447b78a5940427097a34b352f6a9d958aa0d29de
acb1e5d1ca692af2f407d25ffbe0cee510112a14cb74b04a087b1f19558987e7
2978f1dd30cd0acdac792b8e918db2ab2b4bfba83e681df1d0388e91577a09fd
25ee66be4746a8c7832eaabb1c24b29e70d62977db891da10f95cda54735b77b
3b29e093c84cd510b6fc757213ff31263959531328971fc3e3ad05a6e5ddc72b
9883b678eac1cdbf5a373bbb1188e15725f387f7055be87e0f028dd3f242b51c
049a0387d7ab5963e0d195e1e483d1bc43349bfeeeecb06d44d32b3cb939b178
b3056091f407b51906a176704939081a71b0f9bc0ec0e188cf65b44f86195706
c7b3a802867edc0909ea526ac51fec199f9e2a6391435fd6721ac3f6ab179be7
387b1ad671e135a3704904a24d8ed98c2fb5e4b16143ccff9964a25e5e772f5e
e64b9af18284105b9ed380a0859bf7ed13909e1e7efec345668a0d4f33fb88f0
dc62e3cc6120a96e8c2b55a451c6eec0dfe20adfb9fd82407d34c5d3e315e2ce
fefd7b2de03bdc6b93ed9a6bc1930b82445ccdc452388b221950fc614b93ac4f
8b4cbdfdd5f8b71991cc68ba0c4ca2eb27e9a20db1868e7acd4a87676a9c2819
84cab2b377df499837b7462c3d0b42dc8b74b328fd43bcd424b437ab9b94e4ca
125b3909796397e3924b098d4744bd6386cac247c7b1a55194463f2b57813b97
28467aa0c39b5edebefe5405741e35d7b76c6a63dd97e217c9cf45c60c0c0b26
8408fef60aebc9c02351acf108c6544901a30f6216a5825b6a186166f2f0e1c8
a81f6c0ca122f3ab907ebfee8398f15ffd492e97b512190fc5a92ecc482a107e
b29bed1520379a480b3b0f95c78e82b55fbdd5fe6b25d1dc0c0a8e325fca79b1
dbb748132a2227731e080944b739c4e6179304852c70047a9319e176bbac3ada
1f63969a7e2439b7e2187d035807dcec2c9c119c04cc5be87db7897346619632
5b29de225b904ef453d029caadaf21826f0e3635cae8537c0597a9c412f506ee
d34081f5898516e4b9d0cc8126e9e21ffe2694cfa4b84514f4e3609e93c6165a
992101fe24a34d2cc8b3d5a4f3f14993298f6ad42a6c8e88fc4bb47795844d50
1de512f58aa48c41fd5b7d60ebc97323fd4ec0800f997f3fd16d9e8677005d9c
dcbdaa8a9f7b151749ed7d8eb37b172f9162a7427b72ad58a4e9f7a2902443ca
6e4282ec46cef95e069e0f545f64309fa56d14c282fbbeac0bbbd2c9bb1d1624
6edbd443374091d21060d1986b9021f7ecbfa08d2fcb50b8633e5ce43e172cde
a5a261cbfcdfded80e913f009ae22e417550c1bad2c10225e0f102de89c8a43c
bc669f354975585ab7fd958160cf9ab5b684e7c78246be4b89ae3947311e42cb
2b3e2f232e07e9a533b529e3a1de4fff4dc9ad03a6f2a881ce139803db7338ac
4d3a7f12c655a5247853f2f6fb297de94fd74a996a9f4cf9f98189674fcadec6
e74991c5f4a58426f5c2cd29385d440c0ffeded893d7afb7aaa1ee0ffffc9319
8ca3081ed3c4fa62f99bfc6206318d880d49915e7fbe5e79b56a911a824cbf4a
a070fbccf482af50c93ae71da08c7e68b357ee579d818153a973085b2c91261c
6e3077f204a3d1ab5bbac51462f8bf250d871c57b2602c7e162ca12451fecdc6
957d45c0f0f1a94c3e552d9db9508762f28306c65a2cf12b82de9f0da9472995
539c8dad546347ddf169026042e55f08abcb61ccae1f44adb217c9c63f81d849
636a41cd8fe68841f30bc4a1fa468e2b4174daa5ba390131c36c2cf3e4f599d4
990dff7abcc5c37e1bd234cc501aec7e579a1b629fd52f421ba6148942e83284
61f1c3d24abbda182c5f371f4cfd691a23c26f0ec10bd7d012058aaeddb395d9
b0aeb4f81b7cf05dd42e8df1f34dcc9ee13d2540ab3f7cd13b5f9a02be763e0d
aa1130e40695c72e3ef48546b7a2616004fc17ffc04cac5f01ee389c3d418fc5
0637eb1e630124edd29a09def4df23fa08dbbde38ee4ff7c64bedc1cc2d2f8d0
aaa6cdaebdd7707ae07bd0d868d268e74802468fab5002cbed8e23e4b5908bce
4ca05e98717728c25fd36fb565d021c09e2e2529c60e2b954fcb2f1ccefbf458
0850c6633a6744f1d23b8e944ab30ddcce0b9c1b6aff10f61155ad41f1c41df6
2abc5f0d7f09eec26e044e02a99f6e832ea43800f90115f4d7f6680c2a41312c
eb21b9b1a3ada0d88250b5f0366875f113d685984aaa6be85cfc6767267656c3
778e5705076586e659e07feafffdddf6417f29b464079844d7c48bcc9911b6a7
64d2ecf02d8714f8e5236c6cbe63350172b232505939461981a33464091edaa1
9a2230a54202a093729867d8124ae0f3840aa3bf8d757c5915dec7000c3d31d4
a5d6dbe42d7fae885ce5fb677f77e4af0311c3dea0e2b60ffdd2d5032c0a00c6
66983b7966172913b8950c5492e191abe9dcb0b64392be9a07afaa59f0e21fac
c36958d1aed154b2e71dcebf1558bfb02fd29aed6ef2ed35f51dee9f1f1f6a5b
94b6ab11be5c408ed1f57de41d200a72e45169e66f2df88c697b5422a414cddc
06be8376e9874856c3bbbd2603ce8dad252090c3c86c16872bf8882b08235392
2a11dd2e7dd4df804243c9d36360cfaafa23a512a0eee3d59d23e96c074b9df4
94dd9fb1e1e4198992ca43c2f070e9d4ebe27c4b632779ba23e2df1c8696e56c
5a97117d860f28c4e897df20012d65a9fc6c9cae0fd94d260af8ada7b2b76aea
44b9a9a18d449a4e474a2a088ec8144eef7615e329fdb6163fa15cfeb5c7a189
79c51e64516e01b6207ee7dd87fd7749ccf1c9431da48f34b8821d4d1f9b34c8
434c3966136abd0725e719b61e0117748d0f312559c3af1969cc423fdfa641e0
02af9aa976b65027783ff15a1175543aec72faf9c7c1eaaa8a0a7f9960f5f7e0
e24f2bfb5847bea3f02898772d2f28a0185951db3b37c8b5d2c0d9c327a60036
980c944b29c12dd3a0cecf6dc542f6f0df8ca84674086f7554f596bec85347d8
78c569a44e87928292ead6eca246fdaad6efb6f5827f323adf8daa9bb056ebf4
a2644c7f4a5fc3cc5f2a03778b1ccd31151da4bc7b27fb9001e6e732d9938917
65bd5eec1849404fa11ae674858a4180bcfcc0f93ed64ca94a041af1e5ea3169
7db3baf913fa35a92903eab84e5e31b8337278aa8e743f7e5dd13769c591febf
89b1e8ab7066810c39298c1125718819b8b7ea2abc75f86e62eadea05a8a5c36
d2e655cb805af1d54fce7838890d214a2a7e7112383adccdbdc2e648c9db7d1d
7f8575e7aa8c6c9070c1c245b737f939bc8edf272777f90d820229e000000000
000000000000000000000000000000000000000000004080f171d292e31` }
}
9 changes: 9 additions & 0 deletions example/ML-KEM-1024.priv.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
SEQUENCE {
INTEGER { 0 }
SEQUENCE {
OBJECT_IDENTIFIER { 2.16.840.1.101.3.4.4.3 }
}
OCTET_STRING { `000102030405060708090a0b0c0d0e0f10111213141516
1718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f30313233343536
3738393a3b3c3d3e3f` }
}
55 changes: 55 additions & 0 deletions example/ML-KEM-1024.pub.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
SEQUENCE {
SEQUENCE {
OBJECT_IDENTIFIER { 2.16.840.1.101.3.4.4.3 }
}
BIT_STRING { `00` `4b94c29450111191823b3514c9ac1ea3d9825ccb863
93a2dfb04654fa2192d37bfad1c497c6502eee5ca80a73bfce0baf5a54a88585
a401397a3d232f426a7afb082bc21a44317090eaac7592c2ea88a653c4491ea1
93931335f52e989a3c4cc56d9c553732d57c470fb41ab759b65d2d04445382fc
d9c4e344a1128fa9e11e04358e192ed014b23232a7ee2b22e23717f44111ee33
575399c37646da9813ec9b212afe94e5dc5c2330a7294cc1f4234a6d3fbb4f16
85ab8892c04acb17cd1c170d7b0611b6a7176c794cc8c67f55fc923c2ad20310
0f365991882c30243d77813843b5ec7c964032263706092ecf00c7516be64e45
98ca4226c069bb5e67e4175cf2286c8dd5c488a6c5861f31baa0bd0269470e8b
551dd3bcd38c86c12f9cdb176c77dc8b6c02a701f478902c8553f694c0d82727
b4c4a5c2c1041212aa1274808b82111b377ec75214e9b1978f76004d4139d986
13f4b8e98d20af7b534073a509a959b7a7564f9b40ca218bf61829320a850201
7954d328d7ac6c769ec29700756e7b0685b340d5e118059504a49a9a50a10198
eb10a5784678eb427d7b4babb9552933b062897973e1318eaf0a0eac37584a65
401b1703e042accd837531483f241cadcd1c1d378119e694429db199ac891e4c
5343757085bb3ae783667350c4458d97672e861e80b1d2679510ea3a6f2360c7
7a46942c7a06a554d228080c84b47aef14db17620cb16c06ab30a1be4cda7082
be9f87e9c211c46916349a5ba8eaa5201c7294a3c0885b53b657452108825ec6
46c90a04612324ee7d031afe5343132cbef67b6efb1a5ec2809b773538ce77b3
d8b04eb0b3c2256011e4c716c19a8ba0752bf71492117649f0615c3290fc29a4
6fde4bd52db9286d603388244259c15a7ac2b640a60cc03376a5841a3fb8a473
568fa9b1a267215f34c01697b0f0e627175d72105b7707c29b9e614bdc33a6f6
c818a95370b427882d7b476796a9ec6eb993274cd9b2391a82ba45e3393d2e9a
e9721ca9d6c1b988b5827713f90a6585de9433528c02b03ce10bb5f720138d0f
bb4c30c1266b918e52925dfe17b37f95d22bca54f475919ac859098c0f0d08ac
5875ef29b56fd141e6ef15f700a0b66f39595c588177373c4669b21bc071e4c3
aa5f0b4a31b6258f35da24ac3cd29c7f2092410c5078355b138fb53a6b9ae6e0
b9c08243e7baa45c47376eb8c7f13d4cf51aa736fa31540c9241f370da544bf9
f9c28d9a57e2f2a7ca95a4e4b466e641ab3bcc76adf1139d567a6f12b52f3a65
e7ec0aae26bcaa8c55833b04e59998ebc9a1930fbb6d2233c53d2c1f8b9518e3
c2de73a19dee6b380a5b32971cf64e129fd6c1fa6e75d4a234501e966dd3a540
af5c8f4f34a6b4a253ee28492566d5e67c6f55855fcb0506fb06c156744d9a03
a31a26fa94cad14f157b7f303d07a69c773768fcb4d079c09059703a0c3a94de
4b99ea3a2f16583d0f9170a3950db07b4f0bc30802927f9f7961b6259892636a
9502a2705303637799dd344da451c1cf7bf67840ceb3079ab8c6b8c1927f6405
3c612450c45c9e603bc16666e596b3471e103b6f15447424d17022048111ffbd
37e1c670f64f14b8a7b32b94c1a49b45dd2fc38cd5289d910ad63602cf5e1304
2c64ac6797b89fb551ad08e05a92d200cccb7e712ef23c9312cb350f029ab537
e287347fd3075ac10906a783f1c6c07ccb88f41228c4be1c640f790b5c3a5d5d
3ca792495d74bc461562658c07ac600276b924ab5bc9be1f0494cb76f82f460a
7480972663381e169996061d799859ec54d4f5ca5c411c01db1597b165977669
de13a928a34afbac258fea8c4764239c9421dc3119bf5b47699206978327b1c5
345ef746a7983841f056e2534100ab24d4e9abbd0b17c6a95bd4c3c0e40f69e1
612aceeb28b99086c95116e7204273893390bf46b899b36286b0ebf1947bb988
4f732ca27da82b19b5dc0cc7f8885714910888b2310c4f9319d410b34e6433b9
003e2176bb995257456106e8952163b8ba592530cc5aa0aeb43ad398fe9e97ba
a523d7a4431677c3d3af0719e475db85ca95af5089beabeb05b2faab4896ba60
f81c88472a57b46a828826a0cdfb446f8189182d2bf5eac4ec1cc5deaf599c8a
13e48235406d17ffddc8344b6c66984a868aa92fa02227a086950eb0c8701ed5
8dc628776b983882e1175` }
}
Loading
Loading