Description: Revisions to merge not in other sets
This file as text.
(active) Revisions in this set:
a34d4e715ce6bfda8a0c07be4fbfb53f1690808a,33463c86983c8db5cb3a903921f8acbd600099a2,6a612f90032fe3b129865fcfa59ed5191638faab
aa7bddc62129bf70e79272e11a492f2b66a15d17,a077e0dd90cba0fa1e388ea2101abf66f6d394b3,a19528efa1145e2403104931dcd153515c215810
4212b6a92f513812e59fe0072a1f66b79326da90,14f3676b2acdc1192c1183ef0765e36c01936107,7bc03f2590d15a2e4882056c8b4d41521a950aa4
4f573b50adbd33a2b3d9daacc86cefe5edb68b48,5db8d6bd5eca39bd1205cf3b355a953d219fb9bc,fe47db32be35d0de7ee99d09e0fc6f51c0bac52e
a51c06f90760b864d865b1956eb754062cf77857,47b8bf5924b835920fbf3d2f27137437c3c056de,d9c109a4dd3e17405a567f2ebd657723dd86d259
6f411d6355156913f10c37aa700e1559a1a498c2,8988a5e028080ac37c20c06bf8d0cfc134cdeb7e,1d9220d2702a27e90cd6cddf2eb65561c3fb0161
5c20481c7b0e0521e0747df6355b969dfee293ba,ad6897ffd87d759c5140bd4c4f7de76c2d8898b9,902ef73c7c5112bf522e69501e74121be8d2f5e8
25878f9eb2e6859a2b9a64639a8f3fff25a6ff7c,e53cb61b1122262554c744b8a9a5e10f11bdc870,55dfb59631a5e666c3d6e527aebad5086aeb359a
c0da39a35dae71be2248f6ac817ba76eaaf8ade7,48b8110e38b6b08a393e9a947b1b439746802ae7,e97a2cb03e21d32bd274d378a49a00acf9295a0c
a60ab40237581e8ea583b159308438cd62554d3f,67bf76c50e40f7a039429835e97bec38f37515d1,789f28877190ef79df431a76d5ec95fffc0a9e43
b0683edfcb6596528a75ff44a21b81f1367630d8,d6d3e171ceabb0e194e8ecd5de51b6cfdc1922a3,d6c5a1799ced537479b012392478218b5aa59ef6
008c1436d808d779dc129b38155ca2c5d7d68f23,10af6fe2fb5cc09e2573c81f3e51eb4ecb01aaf7,6f2b027e511472be397dde845f1703f8f44afe14
0c464605483132ac901f4004aa69a8d33555b671,00a418f589341d6ed9f3ba4ee80f6e6d552aa541,ed688aceee660abed27f84b18fa64e5d4af56fd9
617cc6984ba080be830cad11f3f18bd0e717532d,13902c1c7abebeec9688d3b554554ea36775535b,5ed2475c85809555242f34b9b39b05e4be58bebb
c652cd629acfb86e787765e3d1c4e88b5b1f32b1,b7dd63094fd75b6cb8e04498806eb0d98f2709b1,88648248ec2a1eb3cf9af867fc586943332d0523
84ebe96d41c2fbcbccbcc2573bb7783e18bcaf68,828e961f3d0191c6f20c930d667c0eb9718cf3a4,490f057aa11a32e1322e842343deab8d809c47a2
9a9cd15ec4427bd0e78d3e4048663afe71b30fe1,bfb4b885cadeb195c7c404c95cd6720b14e9455a,0f462077769536525b247465937637a22857f1b6
33fa211b8497b5f8d3b9511e4c29ef8d888873e5,e332c17bbd89f3a6223798afee6c837a370dc9bf,d8298c9f14ffe98e06a766597f8af54c81ead38a
90d2982977b802d664d3f9f2d5028693d894ceba,b3c579f49c891b155f6b89539ad22bd12630555f,81848157808ef123a1cb244b71d366abeee39aa7
22ab6dd329e69675fb1a213e2860c743539e7082,df28fdcbf8b4ab20479d264ddf92b0737d5585f0,871136d4f2beb86ee8056278c6d9b7cae070c8ff
6b9d3ead7a3c196651d09b8b6c12d8fadb556022,38d0a9af48bf9668da9b831a5c7248cc002242ee,af1a4c06c53b7486965fa31c8bc6ce7a3dcd16f1
7b4ef925f0502e4627d3a7a4bcfa8846be89852c,47b5d0b92edf48e9dc7580137262bf2b60076412,c8307d402283288be0859c18336a8a7446f3c765
375cc2b44343b143fef34d06aeec506708a59d22,48617611500cd54cb7f8fa6b32f3ba665251815b,3a76f9f477ae96a04700f8db2a66913830df3dfc
c474b95dfcb780807fbc982182cabe6a586e05f1,41b17115895bc992f9c34aa8385be55f4079c75e,f3c377f8d1e689d70f39e831701ab243162030c2
25c6f3a667b24d7d9f9f165e0a5eb6b37dadb357,c152796bf3a25f2a9fbc9fdd67f0d1cdb31dbca4,5c898fe795be88b59ae3c650abe9d5981a9dcead
bfa5bf80e20e47101e4253f920895acb098436b4,4e06d66d7fb98e634e4e86a1d43f3856da429fec,96c52ef16d0848d46da5c47e5981d09cca082d94
1e32b96bc230cd044d6c37faeb5a63e55408778a,c3954a0cee3ecd2e77124ea3cb0994dcf61d1852,0f4ddf7b3497938dce9f1ae5b20179e13c78d03d
5b2426752982777fc1e39b39fe01749990ca8a24,187cc46b327903667c670cf6c50a4b524824d892,3aa253c11d215bde7ff9312c9e5ac7a5287f0818
a414997a84f1b9099110ce89c77fcab85088c630,f9672b53a2d4e988e99575a70fd55eb7f9cb8960,f095bc59b01f7edce0764dab8c3634c19bbfbb50
1e1c17cb61713093bef48b63540533a7692e6e22,20f6514d9749d3e3a2323be70188df6eba2858f6,834dbf5f802a9a71982749f0c58a65c08da5074e
7020490f81b308c24d88dadcdcd21faccee544bd,8cf26b7a0fd84602757dd7e2bd0dc788f6ed3c4b,adf064cbb490c331528e6ce7b9697a1ea440f984
08949c86bf39b7432bc36bfd13f219aecac21646,ef099b20756f61a6c9a9be44f63314907393ff83,aa633544f1adf5d8521a99b1e2341168b1611c87
ec10ee8218c9247836264bcdfcef44331fed62c5,4b84de6a72df0b82b9217cb336190203b263055a,cfff96f44ce391ecd5cf16bb7c8dec76142cd1b0
8bc2326b772fb85d3fbd297582a04d9008c34d60,82346563c118fa536cdc0b5472be1f2be0e74c6f,213d2905dfc44bdbb83e475efc04aa5de59c5f59
832c3d89c83841bbf21cea783064b14c6a5ad6d4,1a4fdc7313a85c25efdf0279a422dbe26fecd34d,15141124f4462ec01e052f93aac2ae4c679b5c92
449cc8f152991ccd697dd7eb52dec1e03fa5d478,d72170f9a33cc70bff2748a07978964d28526d38,1e4dc56155d14f7531da51fad19b8986bb669b1d
7e0c21fa5fffcbf548f70ca3d59e436ff3d6a045,1bf58c2a55dfb16d6b000ff62812eae3002614c7,af20b064ed643cd726bea2d5b5a3cc03282e28d0
e718cb985ebb6cb444455abc48ac674cd3fd44a5,c9fcc68ec19dcebaf16dedb4cb0d3d3c69bfe726,297f468cd6677a0d16b78c36ae34df5f33f1f63e
d51213d26ada2eddcae37b82be384355361a554c,52cf07d96831bf8def50a45521582e75256f2dda,1fdf940d0b2937969df7ce2c7fa14a27bef30e62
408fc819b399947025669f134ff779bd78c5602c,3aa0d92c792b4ecb32eb2fc867b770a3160fa9eb,c2c4048e928ac7e6bbb806c30fae4a35221b03bb
e80b1d9e70ec37dea35becb348a1052c55301677,ac36eec71ae5a5c654ab9f4e8ac366005179d97e,05d680902e71ce9a482384009bb3aaaed9f231ae
a17ad61240ee2a0c6ab6c3b384437a0d1836fb52,257ef24a1e9647c25b6607f3889251d55e4006f6,e35e5ad34914c11ae2c76a7c2f45334cde844503
6d900039c4e731978286ac35747a7cd7accd03cc,e4e1ea586c5ce61a5862f27c19fe787418189ee4,40b7af10257e530132327cf4d3d90f911fbc5269
53a4e6c513bf1a7e3d98e869027a92041b2b40ee,2e2f2eb78467fd70d59196033a7197e9428f3992,1d92cc43bb5a80894d732202acd658d0add06c70
4f05523db92992b8fd91fc7d7620c5ae267b08bc,98d3473a1a699919fa8e27f616cb2e2e660c2430,514db355b1fce2eaedf4efd2ac2b637946f4efe4
b359080f42f427da88a6dc8790f00f486ac2351e,b5725ac3ed071ec564e8f49a80e89b9d46b54bf6,8b080792240467c8df06d80cc87deeb06fca1434
7d5b0d23827e124da3eab2f39fe6cd52673ff4c4,38ddf2e8c5883189c13fdce704f28862c91fec07,5dbd9eb2e059de506eb9e13317b7645db130918a
de62cb8b021a39dcbd2835e2c8459d492afee10f,2b73b5bf9a867a8d7b6527835bcd0c9cf657aab6,5677ef4bdd585b07b2669cc38e3aa519a528a4d6
26253b9e88b568da27460734798b26555ec58eac,9bc0f62f45d9fb8291d16e760abdd7d60b7199db,80bd080293c5e81123da68799d866a28a1dc55e8
4ab485225c97d77ecd8e9bb7d1836d97da0ab461,8c06529ae21c71b8f9251628d1265ec31c2b0ae2,0c22ee86781c2aae8457bddae8b88fbfc38b6cfb
71887b902b76261ed14f8cdab37723f585c89125,00efaece74a2d399971a8aece991fac38cc7fc70,8735d09894a9162ff2e4d73181f8c2748bef6b6c
a9f4c8a16b904ad483b802f4507a392d314faf42,d399df83ba9478ed63150abb045fb2db9fb2a186,3072df59ff4a6ae0cd4665180d68078ed8da4bff
800bb3adc2362456af74494503cca82bd12c0598,4c209a7dc2aa1f0fe43b104255d7d7670942bd4d,7fbda0e0e8b1d071e72ccbc5e487dbb1c2173c63
2ed3bfb58771edfb9882e193506554f1a52051d2,869f6993911b6bbfbe48c424077413f6510eb3ea,2d255cec9146f690285cf34bd56e49a6065da38b
5a20531d9be85ad43f38fbd240bc65f27c57c801,3ea0c335c9e22f066f59fdb7f0e6cf4529d701ac,ff71c51e4ec7950e7297c57178a3e575ed2bd83e
9b61b538d8216a27fc02e03c203ddaaf5ca1b96b,0d895c5826f0425712611001128e5575e06b392b,8b779975aa1d93f7a4e64b280ff02179dcff0d70
d712c64236a3e5d684975ee2a94a77c17141ceb0,e6f01065ec67ea82b1d8a4484f07d4680be82b8e,755c574a87c2505c793dc7fa51fdcb2c572ace70
4166e8c46409c6730e19c5dd3b1cc651b7bcc1de,7b9ed5fe466532e6057a7378ce8028f36fed3b97,8f61df817aa2d6f254ab5f118f569b826079806d
5442e9f9d86ab7807f917694eab6a06e037ef45a,822b46009626d3893cf23c2159d3a632f2c1168a,9f6651fdb7fc4e9b37a7f3ac1d417e6de95f1f34
3c205f895c6499b31004cb82a58942d69c34a42b,4de8ca83938b98367f4326d5cdb993521173288a,90afbc81146d59c0cd85d73f7cb8e8091fdc4c8c
73448deda64923dae27270f9eaf7f3b9b9bf2987,cb953f68c24fdb97ed1e8b5c2c59c7cdcf3c38e8,97b2f7a5e13190319754c19a688e000f8a6f50d7
4236bee6f1832b11845869ffe99cb8ea0a96a230,1e6952264b61d66f62db499f9ffbf405f7f4bcd2,5ca73c61f4d95f688a592a93cea607417a734c9c
6c0b79c258dbb242931b90418c458b610ef018ea,fafee8b85b91942bd60adba63c1348a6d89d5177,cebf880df914dceb662155d130bc6b565dc65a35
f0d92b74c1341cc1d09177718accb889d3791aa3,c5a128fae7e1c7671b05bbe286b4bf927a6c67b2,5d826cfe3cf1bcb0c5da68e0d584ddeb6a3220f9
352435cb75c53e081baf0dd311fc6cf90a804884,777d536d9bc826fcf5d580dd80ba2c25a73de1ee,26f4d957a0e50653dfac5a7e594d30154146fe89
d354428f42a29010872e8aa19afc7cc2c3b1418d,bfe3afbc62ae65e79ffac64f12a2ce2e884388d2,91cf1774dd59376434dde4581f8eaad74696aa0a
bff09e8e9e2f6e09d351387fd22b1849c5975ce8,f20de5d583cb86f6ec3bf856716fc85ab9ce4a95,bdc826cc18a03a833735853c0c91268c992e8592
e1698a59691361696e8ba2db1914f70b9d195762,b876a02daf2e8ea67b4b6a3aad8a3a96a6445e0d,f4580ff612b2e24eccac30c99a709019ef4dd457
b760863046f7d2f921c8a9144c94374863a806da,cd6bc9aeb7642f5430b0a3aaf49143a6e1c41041,e994bacbba097fa4cf38f59e9772c7b9b5ccbaed
b0459a19f48ea41596fd1f0ca61afa1f7598d5d7,e1a739d15d6e344727b196890e8afb0b0bd235ea,d9eae2c2c593f27253aeaea98b12199929d9db3e
567409379f3af31904f0a0ba408d8d178bcd34f3,5dcdfeb1260176b94ee89e1e1d0d1e77bc7b811b,b00fdb72059306064217faf72a99cd3e315515ab
c0979bbc0cbc6497c29b608fba5565f81a7228c2,781b2d0a80db394bfcb6ad42d75549a32b360cb4,b54068d1a457de5db08ca831f0edd5470c23fa71
dde8f54ee70849c6a179f126f085c6dcc5eff9eb,f590e65c7b45c8b5c559574decca3eec95b39c13,bb182470a563483803883b01f1a9b4ea3cd7d0fc
4aebfe97a95cd9b3dfb331f1329854e37691ae0e,ebdb90b1a5788b56d4a0396cef9a0f83c40b04ab,8362ee0e5f818a1b5ddb2d0b090676d412ceb360
a5811a35a91f955918edf249650b67fd7d8e3dad,d29a482cd12ef50734121e4dc7e4c5938c1df5ae,4c296af05eccba74d3bd854b6248d56a8efeffdf
1aed740440643b0fe4a0dfb28d26e2a6cf4aa88d,05072d0d82a707444a2847926525a0834d64cefd,38c06e64c742e269d7b9c01bba5344f12845c4e2
f39a6a775587692103ec6ba1012007224d57c01e,fc3b635013d0fd8552b9ae59b092d3697f6a82c5,9a90db79c30e3531034544d757d4f292617ea175
55f010324835946394d88b02b5aa87755444b66e,5f089afdfb3820d055e06e727859f38b0ed1f9b0,2f8750924f6da75b9842c1b2a4b97b522453d084
718709c87dfdd442dcd5326e374270abe6fd864b,02abad58d8836e80928e078ebccde151e1ea4b44,9b7f24841c7302b0bd35fba42f00e9409097e622
a7a689ca1632ef7c8783ea884d5ad59863aa1fde,2e8321e0fa8ade82c71aebe4ec31a1f52f742584,115f83794b8005274bdf149448f46bc4f42c531c
366aedc6d829bddee3b6063c56bf5244ecee74ab,1e90a4db3e9908fe0f06bafb801c967aa9c1c0c5,a8b0e0ed65cf9b0be0e7a177dc23c1e816fb9004
ee2d313aa0785735289f0a8630e2818971782c96,fecb72fea3fe979c2875c8a94cfcc7da6f1249f9,a237aaa1f5c4938272e7424dcc806d16d78ea78f
93494bf8bf41ca0dc37b698bc2852cb82687b609,a4e2d7462665ffdcb27d9d25ec1b2acd58063887,fbed0680487193cda590fde37f6fb35374a67d76
22b3268ac75ebf44e095572f57af6fd97576bae1,c9ec57bd737aa00cc132ea3418d2f4ef07dd3fdf,685f72ca2f5682d153800a11dc5d25acbe97e455
46ab8d79a28979dd94e0a36eece2420e57c67ceb,f56b6728a522fec1494b28f36aa18d89db1e97b2,79cf1dd9cfe47b43d7c057709006b0206e8a0079
3c5d6e72240dbb968f42f50c8fe7eb0783a0c16a,af49e3dc9f1e35a1d036e119934985b5e5fe1e3a,308bc294654f955b357c5e71ad9a7fa9e45d39ad
12ef9a4a223ec54c16cbe96a8107c7aa26380cbe,0b1734cc04e76d2a7972c39ffc77b7d0bcb16455,c223ae3610c215340a1fe34c61c9e6b7f8f454b1
850ba0bc7432168157aa582698976ea2e80b6cc3,38706a17134fb8307724dee4fa8fbb1dfbc523a8,ecef61e9c5413d254616d4bae10e0c993177d3ab
39836e2d37ae11f4052cfa527394994d61495a44,f8358977616796818531c57569d61af710be69c2,67fedc6b5ba09803a2264cb4ea2b3dce06713af9
04145589a9b263fc9159dbc55835e1e1e53d0237,dea81f4f60174483f0c61a77dfb2a63dc117efb3,08228d7fb37669f7ed4de4eedabd5dc576dc4f23
49f45764ec0dcb35b5fdb3cdf86473752dd63d61,39627cbdfb488c9dd0653f576737448098284226,0d03cad279240f219a5f01b21207e751e4c38609
82ccc863efd606b8c2592bf947b7381f17759609,a68884f7502941e37b4a51b525b1698a04d4eb3d,f183b2952ea5438993f4395e47bbc8694f3ea6b5
652e75f8ec7e0705b4c394cbf906894afece306e,54c95288f868a762f1caa9d8e62fa6f193237cf2,2dcca2eb6848b10defa57ef509f2990aea72f5ea
31f74f65b082f33402f3e59ca04ed36461c0f1c7,6bbefcae9e4c96887653d17331b3dd616a654440,bdd26766ed25c0cc6b9dd83861d2f3dadbbb2022
ac95c20c5a0fa5387aa87a963ef224fb86bcffe7,b90b6f2b872f203eca409cd31f863fc8567f6445,4e5916d17d69e79b1b2fd27032fd8bdd7b996b23
bcdc75cecfae395076c02ecb822f670d41632971,4df9da6c15e8b2492a75f7fd2dcb75a047307bc3,86b774e792a8454aaa2523b45f6492b488dd42cf
c9ed14f87bf4bfac5231cb2a65ca3cae06cf958c,5d6ef0f70cd44d289fc6619e57826bf53e4aee7b,41dbedfe2275bb536a9eff35bb1054ce1f64b2b3
1d8b21bcfc2ed4b60fe625ff82c75153bf77f05c,ec97a511d5ff005877006ba199a287a7f4287872,f92102a5f22ae7b978ecf91d59781e16f0b82163
799c22d5534e3f296eaafbb6b4ee3680e1ac8438,a45ba3add5f08399745e8f6f4e4eff58a63c5853,be4a317cb463f031e91527ca4e74ce03c7e3d661
7bcefd287d8109ed80190797e33bb5422395436a,5913434ba91a5726dd2842277eb378cba6eb2e3f,9cbc802d0dd183ea0c72aa32348b7bee14eef836
9f293df425a6c31b554bfbbad9f1020611b077cd,991460c4ee3c26f0811e3ee749bad8e98cd467b3,b38d13577f94364b4c7ba6f4d6b032eae404e934
c89848a00f59cc2539c5ff3862a547218129f594,229d88c50fc0b4d07f7c1c51923f7acf59c896a7,afc9acda374142b802a0fa02e11d0e98140d85f8
ae4c8359aabf282d0e1047ab9b5d89cfda3e8928,e63cc73cfa4672c92b7ebfd3600aa18683bab528,36073c1b6511134bc0a2312abc943844d22261ae
78666090c2673dd7eeb75864797301aea9adcab1,9b6926c5f514ab5a66abb78bdd0c31cc7770d99e,664c613d960ed04fb02ab85475032e6f09c4e902
031c16dd3cd6a8b7b85a747225899d34898ef0a8,e2d86ad66a13ed9fece73ed3afa086a728441da9,12aa48602bcd35b2013f97782520ca209bd4bd30
3e6d4bf1cc120e5885356af1cc3b0e93101fddaf,5e0eb521c4dfd2430e77ba4f8d01b8a887afedda,c1ec558d0aeda85edd81e095678952b34250d208
348fbfde9d524108e94ea970caf00c2be38bbe98,2c3b78682ad065b9aa677322b4d050b07df5f9c3,d65de901db648e6a8254722bbddc6be1075cd119
2c77416da0bf340fdafd5fb0acb896ca43c02ec6,c34eedb9cf70b2ad9f4d9dc2a99c6c8be1cf68b5,fbe1db32abda9fccb5bc52aac593efafd89770c5
4b1681aa1e9a16b3afcc3af4a4fffc0520d4d850,a2caccd31fc027a71216ac85372336fea1a209d8,7cba4bffa14f25487f58850c74d80bcb29e6b912
306e156b2bd329bd6e56267a23379291f1857614,7c538b17976e30802293f19690d9c54b2ec6a3e6,bd2b954ae59fdee3e94f7bafeb43a527a5e8c2e2
1ded960fc8da793f1339ad7cb2a752b0a7af6f97,fc32211dd22c4f5b2ebbdf25a901e20c68627b37,a7cc9d55cf1b0677ee6e212d0bdda7d5f0e0c8e2
810f54ac071f95fa1022874a8b737b7f14bab199,45b5f58c4ae667abe3541fc213540ab9922743f2,304372262a90db77c9fa5b24b358c4de63693054
af5a10946de0e9a3f4a12a5ed30007509043ac99,2ca6f178fb4439be72b093c25c318396eab5238b,88459e680cdc6ee850c95189ee2dec658370b2db
8f6b6ccde59d9fadf63b6e40ed88fee0993ba0be,1d331117b5edf89f43cfa71036b9029186d5eb18,83cad83c35b4340170ed66fb58c97966f344dd26
7fa92807882390fd92cf6d082855239579512fe6,57353df68fbf82350fb2dbb70492bf35b7ea6e84,485944b49288e248294564139ffc378d4caff964
4e9c267af949d7c625a1b84c08f6530ae8126d48,f96476b4fc116fb4a4d0e457841a1b99543d926e,d88a7c2e24b6682ddb393f5a175d37301c84dfba
a5ad266065adf90fd69fefc6230ad8779f066f03,24d2bcebdd0f2ddc1f28a9f60d40f7a596210901,a17efde2a32938708ba22689d8d29558601030a0
706e0904577fc4742b24a1aaa52fbe4db41ecde2,5ce739135b524b05d003f5daecbc7b31f5866363,46ca9f437ae89a6e82d3472ea59ffbf72002a48b
b849d92589642d3712afa9becd310756e21dae32,abd1e72e9db3d30201a1b0d15561da90b274529c,8c39b9376ba26cae71101c0d12a1f4c82d1ec50a
9d9df104b96b20c59924d245e80f5cc8dd9b4c61,6032bd09ba30de71d72ab5e8404177035a6257cd,28b4189a9a704b284e75ff7436d1cb808e569382
e9ce3be110edd8df93b4f693ab6096eb54db6988,aa3a5f83248e6accfc32dca36745a2e647c42582,0f7f9a73a842be9cd7af283a6c9e9478fbb9ef49
ef98dd877a2c801f67b20fc28fd9d11422c0fba7,3d88722d8ff537e43b3bef57f643b2b6ac095aae,a6e499264b726eaa190c3adda9e0926f853a2d81
cd8af229a8b207484a1e7105b798a353cfebfe75,c19b1d2fd5a61cfe059a28710b0ed2eed6c7ed0e,216c55871a1a939702e94dc083f4d6df940cb2a4
53b50327e9305adb60f1502d33f600552009a3de,53679400847938b202185636c1f019e43e12c545,79d906795db2d2a7b6453264762d12162b46e987
21d0a2d299414e1829a26ba7cef58c76fffac3e4,0135ff90f675ac7dccf5843004358b0b617e096e,cf17bd27339bfc947060c4fc9e0530808da14da6
552c2146d8e959b4fbfefd3995f1d921bb13f20a,44658572cdb096e1ac183d31f26602ab13cc47d7,05620b271debce0aced38264f258bfb8fb4bf5fb
08200fffa11124994727e235fd6f1304df396e64,59016499dcfc94c8ba0f5c0b6ce58b207808c60f,e9ce7ebd4b89a1fae646fa58fb872799b48b43ed
bf1af7a962f51924c99dce37dec930b6f28ff69c,1e587e1150f7d64dcd9bd6a523b2743ac1912312,32d55bb0ea8042ee202b34d4e29d27b08afa2a58
e50d90b7e90bc6489eff6601d221446ca8df375b,29c36aa4072cd3f300f5cc53b76f05a48cf4ace8,c8551879f7b259d56c9de254c1b3a28b658b009b
40bb7d9bdf7eadada9b57f8f85234e47de59787b,2677ad9f868406d8e5cababe04cb549b853f35f0,dafe77b954dd9e786817c37865a9945744f575b0
c29d36e369550035eed8b7e877b327a43b87f312,775408b21b85496d09ebf03541034cfaf4f55972,581dfc6d28fe712245a021a161f5cb74270a1bcd
057cfc100c0f5fa5fc703738bbaccd16bb70201d,4d42d013b8f0f2527d5bf0251f755547d906966f,01b70479a0ec5911460d35520b6984bf83d52135
62d650d926e914b0f210dd5a853a8598430030d6,bec6b8c2493860736d344c6a426187ef8470c224,16710100868d0a48b87ade93a7ab43976d467886
f75f208992232eac7d61d3a0f31dd9a90287e7b5,31ef6622019e34788a532b19813a6042d2f017c5,bcaf82f5e7b4ba858f0987055de374ffc550b009
e98ef65b6f39edc4d9eaef0ee2d97b7e96ff37c7,3085eac5017bdf6da203663305d47682ca7c98e8,b69c78cccea9c45d3ed02b2407fb119f653e2e3a
f04577d29273b9ad30c4a1d4e6e9fd2d3bf9df68,3aefada11a74147de6e220d907e840024c4a9060,30e3d93d5716b60ca4fa07319725a74d6c974830
4bddf12657ac416c76e192a848a6f9539026fec4,6cc315d4da71821165c3e80218512d0b4734a9c8,6535a72a08a68a4c023cd19c6dd14deb7ce46f6d
64e41e44199bed417da98f26a255855d4d84f665,1ea3c8486099f1d633329b7ed12c0e213a0881f1,a9b29137dfeec494f09a2a2849661626f8376c3d
5e1dc65865cd1ea132a5ca5ff358701f7277fb24,733f59a35cc8481c8e46d15333d4996cdac4de1b,58037dfaaafb8820f76a140a0c1da60873bf5868
d81c42424163729e6fc5b1ff26be5751aa43df3b,d6cf5f1386731fed65bda7cbbdf80f138809561b,d75405e47a8b4c109ab1f66e119ddf903295cbb4
79fd772870ea992ff9a0123a130b2ba44065d23d,07450440b182474c26e2bd1db93c615b394a0030,660248ec41ff0fd453d851b12f53795d8647e757
0ffc8de07722cf18f732b8315d9c7e11b604b511,9e7110e244008d9c0bf86b454572488858dc9f3a,382f6fc6776e0a507c1d48cf0fa0fe00cbe30bbe
09d4f7f4c1092655e362b50315ca025c1a703176,e0b3bd26baea13d2b3a72ad0f3876a266bcdd10f,584b43db81aea71ac257e35a1709d50545a16670
23e397cb35664bcf8ea051aa327392198a055a2e,574ddada392690cbeb4070f052d32065352f1cad,63e7f4feb6726581e9d04c98477c7c6c37b30f5d
0b35f53ddb96fb45233967529584f4f664aa8544,85f81b64a2e12f467892ee03b1d426f6bcc923b4,ef651f72662e5f911b75fb956207d1fa264f4795
c7ec598bf9112d3be4f1f28c59112314474c7d73,8cb2c3f606458887e0ef313e6f0a33825dbd3aaa,c8b2b5e060ab7f3866f4378cef8b3b5b1610c960
33a41603f33c16b0ed69ef9b249a45c6083af0ac,be6b57e35870308544c3578de92d959d23618d94,b1ca0cdeecaa291311ddaa5dd74c6de7ef88464a
d6e9c5e18a76fecfd6d0884fc3a0264c0034385d,afaea85c9f2504772eaad8be29ce01fafde6b121,a6f41f9f1c3efed49b2f90dca97c144ec8656f6f
7e6f9a1806aaaf115c2c84c7d159143faa4aa075,622215005ec9abc9afbeaaaa3f85ef58b8f327d1,239224f99e9b37a6ee516d6de0eed97dc64cc3e0
219a57d90501a86a137ddbc4b5cfe577c1b90a23,ee3059f4400e6c065dc6d556de107ce0d3940087,adc1723f97d69e461e163675104166a3348f00b1
1c0760619f59effe144c528e2e68f7c84f218171,56c75c40fa3801c4a20c8b1cb6abcc5094e273e3,cd58f233417cc3761708039cfb439a08f689390e
cc4521b7b5e5bb7b499e248c6750a9cb1ccf6dca,a4265d4c64bde36119f6c398e8edddcfe130ba9d,4a15ca0cbe42d741b845527faa9ed0303662afbd
9c680b6669438e063fc6b5a1fe99260e504816fa,7a23cfb2c8b6ba155b35de941a675ddaee4a8843,3798dd8d531f791f52cd7e44f039af05945645b0
8e6782d9078f4075b45e6ed8061ec1f2b97f0eba,85ee8b25ebb4bd0f96c9ea03b1755f180b984f0d,54292a28aa32dd61229ef8c6073da370390ee9af
2bca50e10a1ded6aca38605605fa80434bbf5501,5b868bfda25e950947272c7974403c0902b43f5c,52ebf638b84d099715b89bddb3b739bd4ee8f0e2
83b8edacd24d1cee90722360965d9532b038f2bf,239fe6806b50f810a7085ef0b6e0c5c5f80a14dd,92df6c234b696903416ad484226941588776cfcd
657b16d13f1b72b4927a18975f87b1c4bc558be9,89b91dfd74e8bdcd16ee16c564bb5a41b879672b,0923dfaf5a563bdf8d02ffe44bc8619aa9968e65
1a8b08197eb351d435d0cd032d7cb66a0de20fd9,a1466c7057f18e4c77abb04017c8907fd25dd486,616727791ef96eb0f9fdccff97d0abb3a18b2de5
a2570f806cdf85bd57baec8b18d212e377bb23b8,88ff885ab5a62b652f679e96c5bc86c50ea60fe4,25fe5694bf7ba5a811a5870098e85c922b64da2b
e3c9e0d26730a72dbeebcb7d2fbe1772f2bbdacd,88c52bc23edcb0ccd9f27143d174c3db8cf7f297,280aceea65036e74485e42164d641b41305382c9
85dcdf751cbffca9febf95e891c40a2101b9b9cc,4a2214baf775cf288e8a4abb8e39d934eb19df29,a0dbd61f08c5c1b07444077121f99cc432a1ab73
878e9349e83c30a03c8a97f0ca64b1f1e9bcd927,4072e73f12ea856d77a6c333adda2a541cc78e53,4fd74f8471e595045d89e5645aa50355d3a3f273
c33af225a5fda133e93d76a346a7b5614fa2083b,2ad71a49ed49ad06cb6bcb95cc9e0caf166e1d39,bec52928dc3d98a2b05dbb189cb3c4183503dc8c
00f7bfc43d4854a572c3f66182028330f913b765,ee4c0673bded4e3b97e29bd0f625d4610fb3a803,cb69602418a9f121b657d08f9e395c617ceee5da
324eb595893225f4f5a5e540218d0719bd05329e,0454ec3f2f5bf361f5109bfa62fdf3b052449d11,0e965ad02d5538551b40edbc3ccc03f119b1ff5a
7e1f1a31b0e9637d1cae9c0a21c76c2018ca2ec5,147c93d38e4a1e9be02d3b19033f250af7843746,721e0b51d5c1864628fa95744611d996ef0e9f33
62accca3a9da0a60f7f46a5125acdc36ad5aaa7a,414a55c3cee502d868e1ac4f85e323caae7d3a96,6a92202ce5d922b6899932fd749341c798a00be2
0a798a4b723cf091084712dc1f0798acea1f0610,7cacddbd2847101da882a8c70bb3fe9ba706a78e,9683219322b69da71fe640ff1d665a017b55ecc7
7231cd8f3865829a3b47912ed45ec25d6055fedb,39c29ffae2ab4e29b3aabc17e5f8d64f4388144f,46ab62fbb94646e4413856a9bb738a7771f10e9c
a846897f6850eefdebd9add40db27afda1185918,218da184e633d5268d80fcf12d1f2158c7dd2618,8b3544192e890f6678dc9b45c31efd1c2f5f6b9f
5691f2a2c0e00943762aa4dbf85b165f438da3df,84e7a17b67acab49f6db6c821ffcced4ec3dcd95,8ef4625e4d91ab3fda180e3102d08dc25ba8cd85
efc0272b99eba5c072baf074e16f85d70816d4a8,524589231fb1fc8b21c9c76f6dffb61190f44f45,7688f50c905a762be3f13e69655717ac8104a930
1db41363370f842807c215c5a151e904ea304fa5,08b14f06ef1ef3831849441ba238c02a70ca050b,e40f6e13f03a9b6874bc2f17ee210616df5a909a
a6b01f2b2094b92ee4fab3bfe6a9bdf059d2e666,24109eb2a6412e3682e37609b5957ec27cf0d0f1,30698ea06c93820a218861007154f3b25d8fffa6
ffa14ee4485dbb452fe4a89b9c7a6340ea359c7f,f0811e448daf681e70d7761353c3b19cb79e41fb,da12cfc867e3c522d7af9ff0cf3b6b7924d7be99
ee5b9e53a9dbb247e34372cfd2eb862a5967bdac,d36e96ea74202f3a5d22e691ca6046e356b0ef67,71863e1b2cd5e954df0d2988b7e1ea33fdd73718
eff26797abf1d1eec6b68c6ec1895ae4cbc9547e,61bee98af90f0c17fe8b4600955b192f1a067271,513c8983e0b7fa03529185436c6da150346f5f11
b72317811792b2332741e8a7b15d07e0a1939d6b,e4ad313f8b87fdac3aead3e546799348b18ca52e,7cc94fc000e6c6631ebb706044ef0349b3006c50
15f29b8fa06a5b5d25a0d4783d7940fdf73b00d2,159fa785147c8b71b60922cae2c8ea5bb6a52972,ee16fc7b96129dfb1eb6ca7e11fb54e2eafc852b
6a902660a52f622042d6aa005a1f60f2845e1b70,e42a11fbfea9d54fd84a11d03e71af92ddea311a,f67793022e16edfabd65a70f2f01f4aa5fb4492d
c357977a1ee3df9cf918c2bf1ba0370dd7b063fd,7f592bb331b1d8e7d80dae91260dab4ee38c313e,7378994ec553d600cfc96d1dcb1b5dfb13b2fcbc
4537f34c825959537b41c5c1af51b6a5b109b805,5d4aa763f24a8f766ffc4734a2abdf366a022e70,5da79e7ffaf1a011ce33f15c6b1bf9c5af5770e8
cc950e79741ac8a9ec97cc1132f11a9cd43fdd4c,60c68a7301a86b44a9cb910dedc8246749e704b3,79529a0cc066c48508a72a39a369bb1cd327b32b
57fa801ed228056c3090065a74c3a265f40d95d4,0cb53989ccdbefda256ef0056a258ae12e596b6f,6cdf023a21cbc7e357d9bb65bf389bd3acfd3be0
04ec431edae6f2a622476ae04cdf902bf8ebbf9a,a8f5fada572b30304198e356bd106954055a5f46,422cf466be643fed3c3ec869637f7726f7829d12
a1d21b2d17a2c1cb1ff575f04ed785e6bd774739,b2543a0f18cf9ca4672cd468949ef5e705d72c34,3e5323476d3694fd59b5a82c7033b3253d6b5b95
4b9ca326d0b7f7e01653d87b55834702a1645b0b,b3dad1f6b1eed6fc6d9dd4b9948fbbe7fd6df725,352f864210d4a79ad26a0ac0190d57a2b105826b
151a3124e032a91d96c944d08fde6777346ef5a1,0707b5f7ca971119a9015fc2d063f57bce28ec5e,cf147f7a497dfedfc10e7db51ce19fc5ef5b31ab
c7f406b1f9ad5301e802a47cabbfee3525342af2,2c6d0fb7f29d67255c97ea2164da154a2bc1b0e2,24bbfe2c45eb62502e917ec84289d2bb45238cbe
6593231fe49d306bc6dead82e850fb44db0d9c72,100bdd5b0c6bc1533a31097aade59f4da2150fa8,d312b46d1b34f605a3540b21c5a4c3c5f22e4c09
a99f330e3baf50ce852e8397413268a23c1c588e,f126fbe2cfc71ae1a7c78321ead4381548da971d,dcca8ab6fdf86773372135b014bdc9c15a876d33
a3828c8e3e5cc5801cf0fced38fc8622b331a0f2,a057c967170808c0e0c1a9b51208cfcd95b238a3,8058aaad9c43462db46784c659656803332d12db
6183327b18284addf62e93cbb6859a759f3f0688,e6e5c1724dc6c9c86a0261d898c1f872ed3d6489,0fe1317c820cddd59f5b303458fb27957edfafe7
ef5824a4d24f277d23c58c749cdd74eb033ebd88,cad28fa07520dbb36e7ea8d24def0c612f339d35,8307b72f747b1368899e125cddb86a213b24942d
d23863c821820dca29230b270ae0e4eaebfd9aec,d3df269339192d521f266809d7fb00e9a9893201,93def13823a527a1b5d611cf11ac563e86747da7
14091abda5f962de254084aeeed11b530138678c,864f097053e5050508472d4aac637f2929ec805d,46785d3884438cfd7252183cc6fb531926d18062
99549eec92b0b84784ed7897ea836780264323bf,18f0d90ba692cb84c5315a3d9decc37657d08ad2,7256f8be25aab8c91cf7ade2e257993be522ee7f
699cdca74dbe3509156134b1fc7dd639fdc32e7e,ce140620b9a78dd8e0edddd01e6d1dc6d6f3f9e8,6913f674b0d5e5c160c370380a0d346317a10b7f
043f6188af4bad9a22b70c506b4bf687e5ead2be,96d1f229b50eb1632a985f0f0f9f7c2bf9b29a11,00439969cea540f5089b22b9df9955435d2f5a1f
1ddbb6a6623d9334cd0f4ca3468dcc38bdf17d85,1a0a36f928f6d929f2ed1a146054ea23df1c72e0,42928f997372ad04e4d2b5fb31e93ca1f79fdcda
ae9cc5ed1833a2e6b65c68a5e76b911416ef15f3,ac35ba705e15917dca3f562e7ce3c006f03d7375,eba6b08625f7648ad264429b12907b98ad88ac0d
359e551c7fb0d3edff33a19aa3a73578860a2e71,95654bcaa571980efa862f58d49195a0ba2fbcbf,234c5cdc5a11ff0b4debd1c7221d0663d629c6ba
88ba748ef09b5fcd283082938a93c077fd38f08c,679281a7d357d16f36e624394e842a7699f7fb3b,38350a9701a9b03e214fc4e0761d9249d0dd501e
25f3dad01de01b325d1313ece23f9470fc554c16,ba290bb35831c75ab2bcf13d81ac89f00f93b443,069e4c77bcbe8f8cf6006d5369c9c473b8d62b7e
19541da2ad1c1a6da877f4b7cbb57f2b74f67c81,484c45340983f494c6a86e110eb79b749e196f1b,9e083789bacd4e660c2474ac8216445e981980f1
f063c5b611abcd64078dff948b4ea1b8a98e4e2d,22d290491e837d0dfc7a2003aaa0791890014351,d05bcd846ea9f296e9acb855de4810e2c24448a0
3cc17229479045475c1168cf4621d4f1faa36a51,71226c3bb2fd9ba8139a544785d0b958e2217bcd,d201478f852ed4d7314ecf5abbdbdc449ffa3d84
ca8b0f094880ad9b11fa7579f1360da2230a973b,a2321b38c7b2083ab94a8053ba1e0a0fe97a5014,ff4c0ecd900126c1d8c69d00110d309a3766b507
7ef30a4081075ecc5cc68427f0e3677cda1db12f,779604d6a3b3fb68793d372cb1c110329663b805,b3a5a031630516bbf4c6463a5a67d7f6ed070feb
b3aaf78961599acd6842acef7ed79ebf608c2749,dc096609ffdf6112565449464b54b097d87129bc,ac62ae5ce59a542e810022441c6beb7c45959c0b
610b269a123ba588cb3fe99a2d0775e9cc7ab7be,600a9a4d98e225f9a9d119ad4a9811a9bf1cee2d,91318fdea20fe3e65faf7ac7e72f1364fdb48305
d1c34f3ac0cac05172c80dc2a874c1b320d048d1,ef0f5d4fa406ba982998356c778b2d41fc0d1108,83e5ae792e643c8b3bf3f4da36f94dd7d46c5506
325b3e4d4247f1ea25bfdeb8fcf11a2ab73d3456,c2e666b6c769fc878b78fd35f1297bed7c654023,e289d78b28724554c73f8714145b91b6199d576e
a3d722dfe93d3fcc5291f7930098945cd9de15ec,093d78071e4bf32bf628231870fdb54899934a50,07db64412887d74519c1a76141a525ec110e7a5a
3391c2661ce3c2e180f4919766d396d2c5a4f219,73b528d17028e361229070ebd241f9980d4f8892,f0ac02cb2e2ec6b54666372f01e94702f717bf15
98fa292b202f6da868eed12fa9a538ad8d3d7143,86ffe6938012c52d4a31dc791b06ba933cfdf2c0,8e884d9acd2463ed0f6397e52dd87dd5f6373d2c
9f491a40c7b4a1c627b2f11553e1aa5d315a2c18,c07f36b30bde00274997123525e364d608e79d61,b56cbad50e1913235114311ccd2c943678e63ace
a4c324ee237674950e4675894df386519b75a130,8d5d7b480ddc11daa0f7554e8f60ba8b90a21cc4,669d41172cfd95e0b6b52416744960638798e642
b468793c6347bc84f3d536c36fa1028b80db3076,fca0ace070ea67a899d909d2df34f38443267302,9d8b801e4c27a898d267126ae0500b102d62b7e8
75256399b829a2645c1738cc8a82c27cc9a1db14,e74d89ce62efab3983701b34278fe7aa61aeead1,78368d4432091c520d31d2b8b012ff2807f24379
e83bb1964235a108b810e01a42930cb72c4af167,498b8be957becd096a30cc044195fd5b8b38f185,8b00faa4eb9a740db2a89944e4a0e000a3ba292b
50d72bb559b3d88f5971bb1ba8a305ad4cf679b3,c39e51485c2d2b122b9e682385169287b2cb1413,9249506a2ed9ff9482094f70081610dd78f2dac2
f20c7b9ae9bbfeb808668d66218c22f723216eae,b8738944ed4319b07c293c742bab2c12ca8d62dd,702ec640acafe9234c6c469b605a76aea748c473
61e53fd42ac3f84169467eead72671b030d8365c,0c3c9982b960f6e10cdfc30f1186f1e1ceeaf254,706aefb2aac30597c26d4f4e3d9633949bfe8248
e776368ac8063128ebf61ddca10a4b902442400b,b121045d4a0cebf142af45f270241a8eb520158e,2a87366086419afd28cfb109f464c532148a9567
96921aaba35135b40114ad02a6208101c2e15b66,ba2b29bd2cc75452b1a1578ac2c9a5e68db39723,032158d9437cd26e3ef857632fcc3abc842dc16e
517d1b017c45bfe75aa0bbe20778d532b253ea65,0a58afe71af45df64f943d623c3e783f360eb3b5,8d1d763a1a7ead756b90a65192ff9a5eeb8610f2
873492006d3e22bf1b07d7fa44cf735008a288ba,0d3d4918b3d44614d6a6bc552958faee46cead98,28b8d069ba74fdfc1bf26aba4c7fc9a9b883f20b
6e5c4667cdc2adefc0b78e852a9fd211b938ee09,bd036125274266dc82d19aa3be16a4c770f096ad,ab5b3a6e1c47a3d213663ea29a73daad4dc187f1
340ee21b34577cfac0514abef4ed144db00552e8,11e3b123542732fad685478a5d08f15cae60619c,9552d2b757dce8f48bb3645d0f00618259000702
adabc721c49e1e6cb43aa855160197ac54941721,cd275db151c5f5aa234c6f8fc8a8075c86785211,5a809d4dada723107408dfc95d98f82c4b05a4d4
943b88e3daca1bd2f4c25fd9ceb725274d6ff0d0,ce41aa9557a7493ec7dad5820d0e547e22e2b25b,48815baef63e4eff8191d1867a56615c7719295b
f96700f7db3c62260fbb9f08f35770d92ba8a0b8,defc7e99d1abbd9cf75cb13ebd0f28ccaab7d376,fad52c62ed69a9a8fc935d08a969196ffeaa29f2
a77c50728f79d18e626fe7f1dde0caed0fe6e809,c4e8dcd2e3bcbfefd088a06db340ebbb86c4ec53,f48975ffcf5542816b139a825947b84400d893d3
5bc82beab34d738db75a7e3007e7a3dc66bce2c0,816079a7cc2aee849b35f7aa3173285e8af5a831,b877b2a978ce1db4e10d3d817aa34a5fa32caeca
e917b5c083f364c07ecbe3bf30e1cd630d6e5da3,d12bc9e9b98026f3875053c78a686c15d54b9e44,1a6e6a1b0bfb1d246c5d7e3e00ba46433f1ddcf4
67ba21f8a865e521ca949f76f6b2f4127f36843d,17fc9aa60b5c9bfde53fcebf298949dc9c348edf,ed734996fcf75d27e38cdd3649fa96d9ed15564b
53de381d876c419a4e51720737456ce77e10491c,12a084d6c016d1e348a5b3be810eccc7887b3a0f,25360412305f3859c56745cd1a4e69f0c10fa7df
e16364b567be80ad7a555d24f8d9ab9775f08dab,2dca69f2accda9ee4f6af3a81469afb628ea20d8,f9667df16f143da6863a995dd118edb839e42f04
1ca9f9af51d7edd44af9c777a51adcfd2e3a6abd,7e69f399b34b34f1ab3dff11648dc3a61d01625e,324b77f3173877b6bddaa2682483fd1205ed1a91
30bf8047aa3ed465b345485fb693ee46fe814643,30a1cde7a5527cb0a4417a2e053dea2de0f9d736,ba78551c4fa3a74b161acd58b423378ac983c435
52fdfcd8dbb03330dc84aa6b1ca75d0a09e706b1,cf1683d14c6f6b9f981ed352b99cd53da37852a7,854d944cfa79e7308304838fbd208643df9248e3
8fb803bba637103350909423865821dc143204f4,d9c1efe7f06a6f1408898f0b59b10f58231d691f,89142ba73a6dc1dbbb2bbba97cba3913e99861cb
2ad20b37874268e9fa5157d1da4073c5b6619913,a23441394b658df01247b5b8d874156356e92a97,c1be8e590d38ee004ebf1a5206759669c77ed5e1
59fe173cc7e2f1da36571d050776b370dc72b211,44e2c05ef75525f337bca10995423900840bf4e7,0e426db5de52a548c18c13f041eb748b27fa62cf
48385fce80c853402b1d95c930e54861e1d34aa5,6045b3a6bdca79be9378337e28c3209535de7c4c,e00ab511856c3dd35f876468cb541eefcb305b52
b2a13077c0342db976b79068fc834eab8661b340,0bc1d8d446274effc390d271a3abd643b0a5bd5e,80d471a9f1c300bf6899a14ed6ca476fe7862ddb
038f054bdc1a88295d1e217d3391840e0ba01c02,8e024b26068dc29318759d15afe6963d9b6a3a01,d2f3426bda0753986075c88b558c5cb7e9d8f8da
407fb4b1da9d6ea4072909d0dfb90b5d4b0f9d72,e87e14c7cc463e3bd752d4ba00c442b463b5cc52,9917350ef0803af661e14bcd7f902807a62f7afe
3e96ac0c4c7b51cc0694c837c5907a12be26fbd3,c29dd86bb2cc182eae1540af0f0dfd4d32f0f95e,704ad21b239bb328e15f2d7fbfd6ccf4a23a89ad
5be05044ddfa3efd3baa1dc808e2a2478682b612,cde3dd3a877ec719ae8e9cb3e07e46d0a344697c,7bcd8dc88352e49a34d92b2d4e2db7b469a3342d
cbcc7c8d353de5e128ff76745e7232675f66fc23,b164817e18ec4a6672cd42e24be79e3dcc2a805a,d287788b573958f0d316252f15fcd71244e8b095
b7d32e4933771e370932fd969f26fd9ae666a3d8,1ec03269951024d920fa0335717e9190ce1e90f9,55deb8cb43ea8826c8b150be438eb7bca3fe6c97
6f8fb64d36221000fabd6caaa0b1e6c7bd8c774e,c6fbebf6adbd5906a098cdee68dfd5830e340946,42abb3395a72bb437e1e115f24890c9a270287c9
7ecb19f906f3e9010174bd3d70dddea65a415867,fef24dabd65ed9ed71eeddd256e6ff9f8e687095,932849c1bf6043f7c7f4f114bf26542f4f8ba59e
60473c7eadc02e6f1a1f9750bbb3bcfdb38e75f8,1fdd4f8c9028cb0a55fe0e4289faba89bdf6d821,d7812f6c05dbae4b3de71b75b6df7a01ca952563
a009cc5c350ca2cc1ab2a6cc96935e5eaf8c3aec,5c93f3e271bc5c51f9be06f6c17b8804fa2f71ed,1e066ba0bd9d9f54e46037266eee818120080f84
0750777fc8212c43ae7510aa096383f77b382128,e867fce88370c0d2a029b4d3099c0f0566eb0b0a,93a257ab295c315fd190a953f2fec2f84aa0ac5c
70839bd7f4cce7b299474c14c32fe06eefe8afbc,14cee4c15272f8b8ff2a968a23d5466a4603f536,ecc56d7e680907486fa248a6405ffc7d34342980
34519c67a10288a961093e22eca9796e3b77903d,8ceeb8d1651cb79690f96b46f2be35c4ea288789,005cb5914c39af54a599465582c494e88ae45bf8
2648f8151db723ff3f52a5ee6a321b378fb65d1e,a9ad18e6238ce217278b76b9ad173e03466f7a0b,0d5f7fa66bf1a9c5b39bac5b98b7eab5dbe0f194
f14aced9c576e0c376ebc7c19d5e661f18147149,8310b169b780171ba1aac906602bada424b9eb76,c38280ef3e41458d1d3de009a90da945bae90445
952f6ebf239740e13a243653f96c30ebf1fabaab,f206de703072bef927158670efb22490999ac01d,5d20c0f74919648653001432c22229cdc6a150d0
722711d675561a9268d197c8e245f58295c6750b,95dce3c5a81679ca919411aec27b6fb94199aaef,6ce266212830dc63dcb641cf767711761a025ab1
087b6cadda7f43c047d97715e950caff1735340c,35345fe14584eb877b5953c3bc1dc358f6fd4038,f510e6f59bbb20618d6011f175076257e63d18c7
b1e1a107d351ef6c293b5f67b9689ba8f07f2bcd,e4a0b1adb4d632b9059ecf71f06770e73aa4ae7b,f506df022e10bbba50e997c925c93b9e750bb39a
81ae7063f31c6857f2c5374dc959f48ee0198ae6,38ca4f915768e2b984e1809dc3ff9d9dfd6be1e7,dd4f7e9148541883a9478f2644c4e014dd4fc015
9bb6a32c62406fa3d4a8a5975ac072dd0f55fce8,b81f92536dedc52c110fc5117ab11f87685440bf,e9c6f1c15261103d0d036f72d94d9eb9d1448f42
4aeb1ee2236e7f8f73c09ee1e2aeb0a7f658269d,14ab1cfb716c0b7635638283fb8633d4080db964,a2f2af87d2c5ce1e2d68b97abfaf58bdacfd9a3d
a774075f2f36bffd342e4ef4d96d297a8524ef5e,acb6c7f36b15dd81480ef3f53a7a1a7675679790,e395166cb75a8fadd72ac24fa87c73edac0970a5
0b5998ee8bf31b127aa942905f6b8aee4e6edd03,12f18177ae17ec738eeb11d2bbd9fbeab7cf925b,7bf502ad40afd7b63b163f9d898442daac4cad08
4fd5237c0e22ce13bed0b7b6363670c79a8eb24f,1cda7d8e36eda043c1ace77c7f10ac09e193b1d9,75b5e8e63d0d3a358b8630ab1166b7f55a766117
244d3df869c4dcc379f4c56cc34de14b1c4ae340,e7600ee24581a90fdf0c4f0a170428068a3a0320,e5b47310c804353f6756d2643058c88c176da5dc
4af99236b0684fa965099c1409815a04b7c473e0,02115833885e048304d5f3de15b2d04f434e1924,2d6294eb26af80ef9e82db6ef7b7b1c7817129e6
e42209457e17148913fc706aa32b153ba7a9735e,87a37e70ee894ed7575db525d4db496f83556d1a,e9b12b41db860d1146273993b9f19a1c76aaf6d3
88c7954d9f85db24e61d9d6dad069bed663b00c4,0790b98277f8d8b8fa55ddbecc0044cb3fe04c74,30a20cc209e9d3f8ed93afd3880f42989fe6ec26
31b978f3b72332560eade5abd34fc77177584470,8baa4f41dbe67945a372587a7695d8e7221f2fd1,cbc938900f236d05850fd70754c14dbe0d7b2f9e
b3800d38cbe140917d15416daf7c6489d97df25b,8b40033964ca7c4008646fdf4471209fc9e814a5,11f076f0e7b29bc71e6ff5866a954315098d9142
a35577593b7de8cf5e66919f9e40a9a0914ff377,5a7d5367d23965468a4d9d22091f9748a2112556,4c6abb38b1d686ebd728c31f2e02f22a071eb9a0
c47fc710baec550d5ac0997b0b986f55b99a4124,edaee6f392b10c593a274fd61e998e24df7967bc,aed429201730ac92169075dbe23b8b899361052a
0ca608243c97c43738081c5b2863deb5fa5304cb,628e0cdbd16ce55994a413776e2e3752582c9b22,77673c5e3779c75eb6daa9ab4c9c13f8053fa2dc
6c8acf28cd4726182ab940354e9c763441896b96,22e9033076ff4d60135b90efcb35990a39260591,bad42011abeef21e7b27f7fcda79f8e726029f79
73bf0c82bb1cd913b8ebfd63e2bdf173bdc1c16f,ce6db34224fe9e3966bf8cc802541f3497337410,886f91dee3547953ffbb58c85f49f321306b805b
3cfec5e6a4e5c711dbea7bf001a1336faff1956b,0fe363304436afae572016840b2a9b592a44e923,fc3d71bba38e2c91813b224501eef9966544e18c
b87e22151a25cb17f44db5cf2bb6ea696ca6feee,e9579fe2df24f5d5a2d6625824e7f52f658bef10,b0076a4709d9fdb67c46d94e1210af71d8528dea
8b7dbb81b1a2a93f7f9368275d2055a28e986481,484dab553bfb2287bf7cb4f4fb57356381a59bba,0655b342d4d170bac9171fc74d3fe8754805f3d5
e133ab579077b6f4297a0de4eb7b42c41f999c6a,fed9c609e821b8d714d996f9bf76ab660f0a259b,00156573426312d417d654ef9426f169b62e1c8e
d1510840d05eb7922ce569bd0927918680be3c9b,801e14c33be6e586c49eb926de753a504ae2f512,4383aab15a238d013bfc9a98d7a09693c686b8e2
8d12774d3b94b44fe1f7d87e5abd7c8f737a5dc2,11942fcf012b1730c71263d4f16e86e48b4807b2,3302adc31a551db2969ae8e71235e514886ec7c6
2519f4285484011cfaf1a7a8e49ac74914548c39,d729d5a5b13d11e75df3871ac62d9be7e64d2856,875e22f7d7c94cf40add10fd077bf605628285d4
c68788e03e2de71ea957e74374005d35c8abd8e4,60d81ed79b9cf5b94d98f9332ae4d5e82fc9aeac,3d41e0923b5e93ff9f33034b465c8d4719580f1b
2c66f30520dbaf0db225425c74908f6b4c18b993,8d3a9c3ddacf577903186ad6f7572c982f84b4ed,6a983e533ab832290f31faa6e97c45e4f478a080
10b7ad9d0cf758d2eb4cb9eee8312b2fef70c2a5,142c851b58d66ceffbeaebac4337201c3b3f5835,f8559610e0b474c6945971804f4f38798ae15a69
67a614e48ddce29273c68bcbba113b831b5e8240,567187d4bac30ba7e2acd4e83ad014de60fddd67,c96b0f6ca58d899bee8682eccf5172107952d11a
ea271c1088641a3cc2ecf534fd92ade565d60d92,bdef7af09e23fd6033670380f1ea372791af087d,9209f55112348cadff86a64e2f3012bf3801b306
9d957cd6b393ce64e7ffced79af5d1c5d6edc30e,3180c985ed30e6536cb7afebed99eba42d6a758d,e51fb8020c6f11bafcb575cb58a61d5ed40fa7a4
b1f0c504cc58d9441af5dd81229d54c84e74b162,40c3dc5809eb9842bf7a283ec5655b60d0f0c557,713c9eea6a8e91d8dbb8a408575f740bbc79f2c3
fa1abfba92bbdcc4fd1dd584035466cd764cd695,cdda954ea746dfcb6d9625d51095422b1bf0fc93,569c3fb49feb3b4984814ecdde394dddeb58c74b
8bf2dc3f2b4b28a68dcfea9386f353ee8c14536a,061c8b5f25b97ff9ddb7c03d6de1a1ea899b128c,8032b65442c198b1cc1a14176190d41eea7c8ca0
be11d22c17e27d92da9cff57df4476baf16b2b79,37d699ed606c23139ae2aa501c2675ce8104ab05,3ee412a4a5468ca156f3a6dd4715fba1a43f98a5
8d7517b43014cb5c7936638480d5689415332746,e571bd869376b0cfac853f82a15513f86bf899ed,b3b4343e6be782d5697807f5d03c054322d5c075
e788fa7e3f7284a6516569ba282983e36ab12917,08bf5f72013fc4a7136eb935473d5cc2f3d5945d,c20178b6e1622a7da4abc72815c3b9882a9b16ca
bcaf8d14095489a4420c09f9c81e61f941d4c1de,1cea95e8e0a2832325572daf6f47a7622ad91801,6f7d2136c6d60a501e9a30a90512d8cb6b37a1d4
13dfd1cafd67261b0d44079a243186308553b6fc,5b5a8b3387ed2ca1f590c323252575382ca8f2c9,ea33fdcdf8541621e1f1778a551238607308a2b5
ca0e04a346d37e96f7b6ec65dc678f9cfd03c8d2,025ad39ef0fc0c1e7624a10fd4299f73f7f65750,258211e0389cd78dfdafd9915f8c074ff5aa52b3
296a7923802d48155cd66417b7e15e1da0f29e20,43660084b6d2e00a6d7785329d630604d7ad0331,781560f3e01579422da5ac66c0d88fcc0fc3d4de
db05be80bdb6e831c819f3f746326aa89c77ea69,8c3829e6981523efc6046c5aeea5426cf1b737fc,00d5351b55bb27987494d07f39660522d235ca23
6de766e40afdb32921fd875aa8e6f1cc36bd8873,b8fdd7148b07ad5e34ba18c8d7112deec110d7ad,cd2c8a6539441e0917d3f4b30b4e28d2c701c674
2dd0b55d0429e5d52bf853e5622297b6c4ef5424,5c91c89aea81931b071f69738752fe5056e16ea1,231bb3df8d25606f84aca047230a79ed363a6e9e
7d83cea8da7e877ae8f24395236e6628372aa830,696aaa4a4fb6e085af2d7e75b18f954c850ad7e3,b6390354150470f83457c679541360a9b387cef1
91d3746adfd29cbee1f14c8e0456f09a2228d947,213918037918f4bebdefed4074e5f71b72931dbb,fc039aab28d32444a74aa0a9b3ceff02ef11fed1
23a66d21bdf93f93a84dccec9110ac1f3d725b31,3a9024f0b77a16b942c6b6afe42ab42ba859717b,a95cb9f35af90ed8f48c816e705deedbe3e09056
1b26f5c3a3acfb77403de38b8a5271bb03fb24ff,abdbe4065b8a62f30500c0f5d112b2ef33c98d56,0a23fc17cf11bf02b021e59ff2ba9755cc8b30b4
f9ffdeaf9e0066ba0d4c09e065e8200e570c35c5,6914d812fd90dd2ba82ca62ef8c4d4fd55642d74,9662462d10429c9a6cc7f17fcd5ea25af0e956a8
f3ffadb2173f7771cf81da3c17b93428ceb44f40,9eaf79d30c7edfb8dd0c7005f8c3a97dafbe4784,dacbca0379997c8615fe24c7ea70c6910d4e4ead
73aa2fd2661a9c3eb215c77ec503045891638e0a,fe6e7430cebb9ae654c7a0351f453d9e1b6ed960,987d2174a392b313c304dcf70b1003c91c8d05d8
3d0cea88e958ceec83fad9cc86247aa4ad7fcab8,ccc6fa0ec6d2d4efbdbff40232d50e2ec10866c6,53df6927c5101107ea921e4a68dc36d535c9d57b
c883760ae7b4469d893a1f8f094080d073010d47,6f17e9122991ff051faad0d348aada972cd7ec90,b1b623232aa0147f35d551617dd49e01bd29a740
dfcdb1e742d327840d87c5cb7bcba0a79e82a03e,bb218b2fb1265c5f413c76f3a8c7c7ad92d11071,25c1112898f1582a967e784b111762808ace8a73
9fc475923843d43e9fb47c4cb1bbc250cb936121,978b1212c5aeb6b033d786f9f198d87eee4dbd5c,dc843bf86c3380661c9092be452985dea9df5621
b201ab9d1dc597842b64a6970eeab0c964e26dc0,28831a7734810f0bff7cb0cb7c67fc4293ba7fb1,3d868d13491b82ff41be7246daccec8e330af3de
0b3f80d231e504a0d942ecb694e81dc3d0d15ca2,4e877c3c11da6a50e4a349398935fcaf779c56a3,481ef7273e0d4c245332785f44ab8debf5cec947
eb29d4fa95153879d9087c30f5381fc631da98be,cc0c46becec5ff1afd53093cb81583a19f7cf1af,5f7c9b17993b96112b4b2a971b02d5c82ad21206
9143abf069b233f8e1478150de2bd68d76f748cb,63d5c0078df75a9493867921dae6c9070dcc907c,ab9c4996508936b4f113a12220f68bd34c467ad9
f768ad909462fc45f70d81875597d5e85331d26f,16e7b07f0fce34375fc5b498ab2a65b643570f30,e55ff3763e0ae97e5107738d44fff2c4a7570d48
b693af69a65283bd65883d88be7cef1034eddb48,bbc74de2419404402536ec164293629266789f80,201d38d6fe1a8be5aa5237807103f49b4c8cb53c
54dcfa78f88fa0e0bdc48642bd5ee3b27758f121,6e655eb5a3f59cf4a6e89c0d3e3061d092bae4a6,d544313698982438389e638758c5e3799b876ba6
5d0e2993fa99cebdc739dcabd6c07ae3b906ac56,4cf202180e47ace9e3e796c3a1d556a931df1ab3,bcdef8341e0216ed104673fb40c5d61189d3a4e4
bdb3d097b5572bc7742604e66b7d0be57e596b3e,bc03b48632954b3960c85c502deb2bdcc016bc32,c3ad885277c002e7638959e14921f697fb00661e
12f0ccbb0191ae2658189b83d6ebfb655637a2cf,092ff254f15618cde13a6a741dc1a6f7b0135b45,1b44d17899751257fbc91703ccacb8290ede4ee3
e9107bbf4fcd7547d5ad0ccd8a13350227884ddc,25954d39e4779f6b4a8a8e1c0b58ac5169eb1ee9,ecbd0fc0da5fa688aa81a361f1519e42e3038e65
f6402d6ff56ffbd048e1ca5505a55da833f1ecce,28e9ebc7da23e7afdef9b8849717f9084360fb3f,09f3600cc4518e997ac7e517241c2dcd68a7f9d2
d1db5d21043516e6a04b651343d83e5d6bbd659f,cc7325e31624bdd2933bef0c72be6fbd45b982e9,f1050aeb73100c28576e1a91915846e04fd8e053
c8b649186fe1bc92d15736ab58bbdaa8c2dbf6b7,072f1bfb29d954596ffa94d129cfd1c2b928f707,f72183eb3769dc2e52cc04b9d54014b3b1540d1a
295d3f0969c886c51a99b6f6e05aa948063943a6,ba7e87aff39460175a57063e388219653dd45537,73e96f8f1e80f882ec7e09ed5c7dedd22c828e32
e471c08cf84ba3451feaaabd837798d56c5f13bc,1ce0204088233e082773a1d1c27cc2e5c2c3db8b,5d6c8130a0e503120a1fa13dcec305d2ce652e81
60b8dd4276f5d0350fc869201f887a54bf7cc54b,2e54ad65fbbc3e6bf100689e572a6b15bfbaf084,7be06582b243e0c500716e9b3478cf71a31dbf65
5a6f7b3e29a675feefb8fb987fa5559fab1b3d75,fdd0ebeed90b99e423335fed1e63e30976a96a6f,5346faa02c531c2f9439e173f02542e9985fe5c2
20d9ddf5aef09214b613679820d325e35a619afa,19d908a964b40ea8494961c0b8b7823777c903d2,128a87a2dc61425e3fa6718be3774aec102d9f06
9b302983b079c826aa39b405137b4dda20aad420,f38cfbb23f182406164c1622ef22659400e4d343,ae938e16a5fe5710124240accb3d0cb3420dbc80
bb43afd26d9fd96d9cefbdf658a73b566caa8b6b,94a1f33f6035c5475713f144bc3cf8f1ef01d716,6035058a215e9cc7e73644c0f422696e3753de89
52d1a5da946c8581bce5a406f9160a9ec8913a4e,498ff5c56c49f6fba330c221d08741e8c1f92da5,2f086e1ec2f2233c092634854e674c1cdad283ea
e9eb8297bcea216c8cd2c4fe06e25a45f79805da,349003662c046a66c1ba05c14ec8973c3c082b55,417ba4cca8daea1e6bedc7305f6d95dca81bd270
2b56b2d725f713336880d44f8c73ae62d2e67655,abeccabdf16367f9e90f6e2108d4bc71186084df,df365a56cfa06d600aa5734401f8edfa54354587
2d46e35a455b447edd5d7076051be59af9744487,69f0d251e9d5377c48ce1f25e9ac43f52b2af95f,863fe13bd11f982261f3a5b25f798c069d35672a
e0cce52aaa83a3ba99001e0eb0e3454177321919,90c03c7e702da5a5713c5e569da0f3e8be86fc01,846250b83102b907e9da078cddc1ca2dabbdee8b
decb6ab3c62d0105bfb7f7a434dd9a6bd73deb72,91987f003742b490ad3087ff35ea8fe05b6b4d80,bdc926f4a2d3d45785070f07b1530ac35b542845
406318a299d727e696421774833fcb9dd4473f92,2a017b7f2b16b0254cdcfef72c1044ff7bf39219,cca6fe9f98b67d471d6e1b437068b6784734f8ff
ad3b32db69da4dc326bc2b2c2eb469807b4b5320,a2a513958f89a5c59ae7bf11b74ac91c68ddd931,ec7e917b1a9279a5057bcaf4e90f9f24b8f9db9c
af7e61603a4e61118ec1bf1126c1374c50b4aa72,e9a49204ab06a3ecb28525e8323fc4c0cfa41b4c,1d4ab430f173b6fa48ee26d799d04d5de3098c36
3b83d06d16a9103b6af5fee3d5d8fa6a9a0f5c67,96144dad6dc92f5392f7c09c3d04baf2afb0d0d9,885e257c129c807385487627ead34402ec4b5d68
bd1942eb90d1537f38363accd5e22815496be248,1a7d14c04ed9b63668fe000c967e93d48d6ac395,46c2be7407ee11d4ece1f5c210ada2e813eb3aa9
3123101b0cf3c0f11fcda939e2a355069f58684b,29ad3f9ae5e0664c1cc28a002818055be0297d10,5af16b3da3ade743edac011cc0f7d6e26817cfa3
0d11caa47d66c65444aec8a2588f45eaff310b65,904c25745c4442c973c36a28d8ed6602fdc5316d,fd677978e7661b22a15fb3a9bce3f5c4b2ae8134
7f77aada6b3960f2c346f7666674a78fba003e24,c229096983d325ab5ca2a077abc6ecdb167076cf,d18f31d156ee93f67962e4b053d2b0a7665bf241
02b31542f677b3f7cb6eacbf1b8f004d3aa86120,73d2ffcf42d12956d5c1dd25b622a3423287f352,9cac8e61839f0426093b8d1974181f04ee1d7732
28a9a448945b0ad5a917b1444ec5b87e830e90f5,ca53c5e7d451643247a3b0544d4e99da5a00b6a5,c6a68abfb6a9bc4e660ac3ad63df9dd06489e83b
0a53f40f071f9e1beeb7fdea071219c7ce4624c6,f8c09568d8011a9a9c4b40266e1611972e75d8c6,cd7656233940e163fa50d2d0cbe2ab961b6a4d9f
1e041077cc42b56ea2ae77075dadc8d3082532a6,c3f80014b41db2cb4a6fa50a50c2548a03000124,6ccad3dc4e7ad93c39eeeeb2cd0f99775feb340a
212b0fb7a834df33f9192ad64dac8eebe35921ec,98a5072fbebceb0c99483d2ac6ea521bff420b10,aeac1c60d1ea303d4585f29a9c9156f20d4d6715
66d7408b3d62414553485a33a8ef42fa38ffd6e6,f7f8c9a615e9fb06080fc3903aa43de3e71c4ad0,840df7e243f922a34113b23ec3b68c41e854a88f
6ab6be4793f300ac18d0b03f44b20c0d2128b2f1,27e17e318610b2ac62a0b35b83228fefa164d64f,900b1fc4eccfb1bf16723d2747107c02f8135c5f
e920651b4d01ae157a684ff41934ba27e3b987cd,1ae6f4ab97137547f5cbc9093588be63a08c79b3,610972b26cd6e8847e6fb31370fde0839ec81cc9
22345e4a281c0d754644682eea303b87fad04fdf,90faca9e69eefca34849ab5b290b1a1361e9689b,9328dd648970778be0ecc10f575d6038d6278937
8093b1ba0c8c9bb4a8054a1107c20b2efa368ba6,ed82c8325bbaae6303186b5bdc892275d980c907,0d5dddfcb5deb648397d38ed618c4c49911f6b03
4f92679625e2e03c9eb08b7bb50ddcd19e056949,8870c72d91842c08da7d51ad432a86ccf4b5136c,28c14ff345a75d5408d41ff6032d6250c2aa8474
ddd846ede494e86e85832d1bb3a1043c4196bea2,91667644f4680967908c455496ac2b2e70832a5a,282f4aa06022f30f1347f161ac44f13a0162f178
fb126e32f966918932da974d7f566443ff80c74d,0d63a5fdda7e4f1b121b4825147e82d20514cf44,6e964d153eb3cddd861b302d68e6052cd1f80f00
c8d86b3fdad87a7dca5ed48fd65285ea70c27655,293ddd6eb4dfa5d5ee7652ced7aa57059ec37f0c,baa6f2a1ef98019e5db9b34a4d04976fea804799
aabd2c50671dd79c8e52514483cf8cce63e71499,7dfc45cfeab2cde98e23e10733a7f623a23ffd01,9cb7e6353567937a0b50661173ace82cd9e6a204
eb9bc5532e4deb01624054017418796dfb206f39,a27d35d3491366e0631bee81aa1c2c994ec3973c,bab854df2f08368e2d7e0648e6c492ec66ebefc1
c3b358d25b61b58de842c4166c328e3bedf9108b,ad88310e5b7700e6d46903bfb3acc66e64d125d3,4cbd3ab6fad6548337cd59e5b5637342eeceba7d
1e6fff947363a916c35c54ee6ac0130d4277d68d,2d351ba50d2a7b9d368c3d16e7f8951c634d7741,602761fe442d0ea4513b655f4eb86d3514c19ce7
80883ee7c0c067545bf11e8d7de07ce245176117,4459510e5c4686eaa2c836f8e7e0c3f6be4c6920,28b54dc9de1c26402e1ffcaf0449cb46d9769f99
c8d931cd3f78298f9c438eab315e8ab0fe5e0a68,27772975cd31a261b83b96cd673effa307c92259,29f00416d672fcc2b054262823cf70b015abc6dc
9577540d2b61463db47e95ef5b2f3071317a2523,b64fb10cc7746159710de6bc43c90d0a32b6faf7,136a2692ac916c0c8852842772aec2edf579f346
fdf911339875cb872b5ee102c56860d1fc8189a8,78475e30709c70398a07578002da345013ce6058,7dfd188a9bc0ea329f4ba181fb0346c249bab832
32062dbecc438e197b747abfc1894cfef8c31fa2,1deec48879a667ccd5ba04f4c3bd44c56550eae1,a789dfc8e8f391dfb14ff994fc31c0452df3b2bc
adede6d2ae93189beb900e805095c983ebb85623,5f69f5a7cfee0b717d43747935e24a3afb983d3c,8facd4839edd72c2d23dc18dd305d488018540e3
ebff68a7981731561fc380c25e5f2217d1ae642c,ee79324b57acee28782e9eeca09b8daf533dd67f,bfaa957df00f30b6b0574ff071d82f54061b0a58
eb233fc4474b9056a9cbb7d02069c7f1024e8026,13fa0cc1a86e2e647e53951559e63e06396bcf9e,d77f4a5654fdffc8821273504b53ce3cb7470ca1
d72363d84df791d6e6a8d96617d04b4b3355ba49,9df9f1a0ff0a35b6abcad7e37d77086194d9fc66,65473dc5bc6a4499b52bf1f9c9f07ee71559bffe
1f962a5fd233bad39ba0e6d564b44af23e0357d0,4dbb84f6298e3328298d38f13c76481cabdbf5c7,9472851a1dc4d778d72ea24e331b3fc3c60850f5
cac70de9af210e66a64f3f2d66f521d2c4c03003,12a43c01703fde61a383be15c03338c3b21f2957,e17e9d14f2aea90cd86265095af690be440ab16a
b7ff6363c8825aec865483d8f64547e72724bcb4,c90f945db27821d4cac7f923a40d71be1a9110cf,a066952b934e260d43870b25ee12cd8ddcebb65c
073b11b1b0d62ee04801a5d8805b41ec57c980ac,5f81c871a3a8578cc70af56feeb96367ca6faa72,9ecc83420a00ceb75286b8d78d55c2cbdc25508b
62e79c32835024a23c912bc28fceedc4495a4357,2833eb6383fd02655d116965044efddff145d46b,1a06faf039c6a9f8207e01ca585179cd96844432
b0dbdf0a67599914a6bd55b388f21899b998e2fd,1d1794404b97e8f2c11380a7feab9c0b62e37af5,4d9562231ca3aca5967b502a885d607ddacf8414
81a55adffb5c4aea8a13c6632e5d1fb0087cb3fa,a5ef9e946c054981076fda28f2c37d1c6e652c4d,09b029ba9b2f4de32e4194ecb78677c12c903d41
7eeb313376a23b321a44e1639401468ce58ea81f,3a77574acc7fbe8522585b350bd1aed3147d8af3,a3a4b97ed60622831f2accc32b8eca15e3a807cb
44e92f7b00853839deffd5d2dcb1c3567749728a,c5a0a0daa252bbf9f8be3e6cd0c19097a34179af,14c6ba6991001a6c7e67d2fef0e7456f96391118
354b1066bf6e1228aa6a093e36c15bfe3e7c42fe,771d0aa49bcfa46d8e0112d5f710a38f498a0d70,ed52887c0200355436a4b260009c40925436defd
254debcdf1fc077778d63920964270b1bd372b85,7a4c1b0960a3a63bf1ea2acd67ae2568824b86af,3f0c76aa45a64f015f6e1224889997471fbcebbe
dc29758cd0143e7ded318c01a74a4cf2ccfb17eb,c4bd58077345a8d4ca50df52f00bbe032577c60c,44aea2cacf30f006670951399d6709338b6022d5
4ff1b9462d112cf06eceee0132a428aef35c7b56,1b9a107eef549c92a18b8f88133e416b9c7e2390,7c75393d407b5181702cd0cb14701895ed0c6783
ea9999fb03cd0d9f95b3c307f0164cbdacc3f274,09be6aeecf13286481b5656b2df0bd24c32dafb3,7917051df28770d23f77fd8856d40852da639aec
db65e3243bb9d7a4e46b288639770cdc3b9bf67f,5a0f69f452a4d5534b11dc6ce4dc50641e28b71c,e4e58c383eea29ac7678e12974d33a2aa322153a
a0e4a7168d741bcc38a827aca86dd434f3762ac2,c188238d003853ee66ee2f2d0992ddddd5624cce,a39d48b22dd3506d726db4488523fd7cfbe7d09e
38fe6dbf28936836c7e54df0fe459cde2549e793,93ad25cb93a0fb3eb45b9523f62e855d4f751b69,62c153bb03bb3a604e95a1ce0202863e2598bc2e
1375424dfea11445eea25133e7df2431791443fd,2dbcdfe9fb322bae1c8f6eada2043a230191781d,1afc052c6fad5605e570a1f626588e4cdb3ffce7
fcdcf9a96647f0907a65f05cffdad899a662d246,cda74dc3beea4360861b751d22cc9d9ca141d583,4b34e6a39ca41d0552d43df527f3994505d4f61d
0de9d0422c32852ad338e3e2c3e0054aa211b2c3,a31bd7b0e9397ca559887fcb8ad82eccefdf314a,3707750b2e1499c149c123a76f5cc58af3377270
af4da1fd6f7080ca34b387de1fdd8247b00a9a80,3fd9657559c4c8e76e41c6e84fe10238c9977791,a5b7617b26824586d20eed1b82677be2236d5c8d
13957fce44ad2f4e1d6b23cf073238a852f2eda2,72170261206ece315c248bbdebf3604621f23067,e030f019fe9dd1cdf5aa8e8bc81fc644ca29805c
61c7f95f08dbfccd2d9682f53f4610ae81808077,08405bb0cc72548d8905a3d3dcc54640a9f0ca4b,89152d9440232c4a4386cfd7d52088f75d8656d3
6f4a82ab0715ec2924b8c340d175d1f14d2e5284,a65d8cd58b251d46c4ac37b25a134621fc87ae43,fddc08144e3872ff5e59b72a7c75798f63aa2672
c642400bcbfb1224cfa1d64b4baa0b471720b37c,e28f7c9232346ff182c7edeaa9e3199c050bd0d5,844da1266fb46880e9da892aa3337e8b146688c6
8920279f6958de6cfbfeab312ebbd2d69a615fab,5e27183af2f3d0f1dc14371ca0b580ce4ca5717e,175a512efb5fd5c79cf89c4944c8912a97151f25
dc43aa7cf389c95397b609caca0b57939de590d7,fe5a39c822424766b0402fff7c39ca8bde9b4689,671e25e8ff79f3b407d7a81047d794de5b1e281f
5c4007efc3fbdedde42fb3313d603f44ffc23c46,d020bd76677f050d4fb31e30d6eceb7cfb4fbace,7d34dd3c61920f997cf3a4dce84c1fc92b25489f
Clicking a revision will expand files
Merge: 7082b6e34a 88f83280dc
Merged riscv_new branch
* moved align helper so it actually gets inlined
+ created branch for keyboard/video/mouse unit unicode support development
+ add svn:needs-lock to kbd_us.ods, because it's a binary file (and therefore,
unmerge-able)
+ llvm_lifetime_start/llvm_lifetime_end intrinsic declarations
reverted accidental commit to text.inc
* access the Default8087CW global variable directly from within inline asm,
instead of copying it to a local var first, since the concern about PIC code
(this asm code started out as a copy of the i386 rtl code) doesn't exist on
the i8086, since there's no such thing as PIC code on the i8086
* optimize the i8086 backwards move by using movsw instead of movsb in the Move
and MoveData procedures
+ added asm optimized version of fpc_pwidechar_length for i8086
* place the "external" directives in the interface instead of in the
implementation, because we don't support "external" in the implementation
for C varargs functions for LLVM (can't generate a stub for them)
o having "external" in the implementation also causes useless overhead
with code generators that do support this
+ added the initial implementation of my C structure checker code generator
tool, named h2paschk. This is currently a separate tool, that requires a
manually crafted input file with a special syntax (example is included as a
comment in the source code), that contains descriptions of all the records
that need to be checked, but it is planned to add support to h2pas to generate
these files automatically, since this would be very useful.
+ added h2paschk structure checker files for the DirectDraw and DirectInput
header translations, used by PTCPas.
Avoid C 64-bit compiler warnings by using %lu instead of %u for sizeof and offsetof
+ Add handling of simple types and constants
+ Add ReadID helper procedure inside ProcessH2PasChk method
Use %X instead of %x for C hexadecimal constants as Free Pascal hexstr uses uppercase characters A to F for values 10 to 15
* fixed floating point div-by-zero RTE code on Darwin (208 instead of 200,
fixes webtbs/tw32671)
* fixed Darwin/AArch64 flt/int-div-by-zero error codes (fix for 42045, as
noted by AlexeyT)
Allways use local pt variable to ameliorate readability of code
put #ifdef TARGETOS / #endif around the gcclib section, otherwise the various host paths can cause a hard to debug mess during crosscompiling in some cases
Add support for softfloat in RISCV RTL.
* TRttiDataCommon is required outside of the RTTI and DynArray include files as well
* Tenum_typedata needs to include the Common record as well
* disable UCS4String if dynamic arrays are disabled
* tests with Delphi showed that an attribute class must explicitely declare a parameterless constructor if it should be used, cause TCustomAttribute.Create is private
Note: this also means that TCustomAttribute itself can not be used as an attribute
* adjusted existing tests
+ added test
* handle records with managed fields correctly after attribute merge fixes
- Fix overflow checking in software multiplication routines. Overflow checking should also be enabled for the unsigned multiplications.
- Call FPC_Overflow instead of multiple calls to save on size.
* fixed distribution of random(int64) based on patch by Pangea
(mantis
0035878)
* simplified random(int64) code
Try to fix alignment issues in RTTI code for 64-bit targets which require proper alignment
Avoid range check error when compiled -Criot option
Fix bug report 35937 by simple assembly code change and add test
* fix for Mantis
0035965: correct alignment also for the class info used to retrieve the unit name
+ added test
Avoid range check error for functions returning THandle type by using unusedhandle system constant
* m68k has slightly different alignment requirements, so that aligntoptr might result in incorrect addresses for a record's element entries, thus we introduce a separate AlignTypeData function that handles this correctly
* also correctly align the pointer for the record elements inside FPC_COPY
* remove packed from tdynarray, it is not needed and especially 64 bit CPUs which require proper aligment, suffer from it
* call DoUnhandledException instead of RunError(217) when the the psabi eh
unwinder returns an error (this is usually because there is no outer
exception catching frame anymore -> unhandled exception) (based on patch by
Cyrax, mantis
0035751)
* fixed compilation for __ARM_EABI_UNWINDER__ with -dexcdebug
* InitThread variant without parameters as user threads normally cannot know the max. stack size
* the final build of packages and rtl are compiled with the general tls model on i386 as they could be used in dyn. libraries.
This does not hurt much as the linker optimized the threadvar access if possible
* arm uses the same approach as i386: during the final build of the rtl and the packages, the general dynamic tls model is selected
* fix random() for 32 Bit CPUs
Define FPC_IS_SYSTEM at start of all system.pp source
* remove unused constants
* replaced the arrays in the generic set helpers with arrays of 32 bytes
instead of high(cardinal), so LLVM doesn't get tricked into massively
unrolling and parallelising those loops
TInterfacedObject.Destroy: fix case for correct auto-completion
Add riscv32 mathu inculde file, redirecting to ../riscv64/mathu.inc file (this file seems to have no 64-bit specific code)
* fixed (harmless) range error when expanding ~
+ x86-64: assembler implementation for u128_div_u64_to_u64 for SysV ABI
* reminder => remainder (thanks to Stefan Kanthak for pointing it out)
* some inconsistency regarding FPC_NONE usage fixed
Try to correctly handle m68k exceptions bits inside SetExceptionMask function
Wipe out any pre-existing exception on SetExceptionMask call for m68k cpu
* ensure that the includes for the new mm related files are indeed enabled
* ensure that the new mm related procs are only used for 3.3.1 and newer as 3.2 and older don't support the corresponding SSE types
* disabled mm procs again, they are not usable yet neither supposed to be
used
Pass old value of OPT to FPCMAKEOPT
* first couple of improvements propose by Stefan Kanthak at https://skanthak.homepage.t-online.de/division.html#fpc
Add '.built.on.$(SOURCESUFFIX)' for snapshots generated on another target using singlezipinstall
* fixed generic round(...) for large values based on a comment by Alexander Hofmann on fpc-devel
* extended test
* attempt at crt1 translation to get freebsd 12 running.
atari: added the fpwidestring unit to the RTL build
* use getpagesize function instead of reading external variables to restore
ability to compile against SDKs < OS X 10.9 (mantis
0036653)
* allow FPC 3.2.0 as bootstrap version
Try to fix problems for more recent GDB versions.
Move GDB_NEW_UI macro def. to GDB_VER_GE_712
Add GDB_INTERP_LOOKUP_HAS_UI and GDB_HAS_SAVED_COMMAND_LINE_BUT_NO_SIZE
to same GDB_VER_GE_712.
Use stdio_filopen to create gdb_stdout and gdb_stderr
if GDB_HAS_GET_STDIN macro is set.
* Fix compilation of gdbint unit for go32v2, should resolve bug report 36923.
Replace cint type by longint (as gdbint unit does not use ctypes unit).
* disable some x86_64 specific assembly routines
* disable CPU and Signals units for Windows on AArch64 for now
* use accessor functions to work with the TContext record
* the prefetch bug handling is specific to x86_64
* rename RunErrorCodex64 to a more appropriate RunErrorCodeSEH
* enable is_prefetch only for x86 code
* inside the Win64 system unit convert FPC_USE_WIN64_SEH to a SYSTEM_USE_WIN_SEH
+ implement RTL functionality for SEH for aarch64-win64
+ implement a main_wrapper for the default exception handler for aarch64-win64
* Minor improvement. No need to move the terminating null char, since it is written later anyway. Remove a local var.
* Fixed
0044960. Also copy a trailing implicit #0 of the original string to the new larger string.
* Do not report about unimplemented unicodestring manager when HAS_WIDESTRINGMANAGER is defined (on Windows). In such case unimplemented parts are never executed unless you call them directly.
* Do not assign DefaultGetStandardCodePage when HAS_WIDESTRINGMANAGER is defined (on Windows).
* reduced the stack margin for stack checking to 64 bytes on the Z80
* Windows: Do not use CommandLineToArgvW for parsing command line parameters, because it treats \" as an escape sequence for the double quote.
- Implemented parsing of the command line which is backward compatible.
- Do not use GetCommandLineA.
Allow system unit to be compiled without RTTI feature
Use 0 instead of 0xffffffff to disable page width
- removed old float-to-string and string-to-float conversion code
+ add ability to generate a flat binary file instead of a tape file
* simplify code: simply raising an exception is enough, it's not necessary to call ShowException and Terminate
* fix compilation for non 64 Bit targets
Also use union with double field to ensure correct alignment for float64 type from genmath.inc source
Put floating point type as first variant of floatXX definitions, to ensure correct alignment
Fix conversion between TFPURoundMode and bits of get_fsr according to SPARC-V8 specifications
New: rtl/inc/genmathh.inc source file, to provide a unique position
for the interface definition of float64 and float32 records,
available to all systems if FPUNONE is not defined.
rtl/inc/genmath.inc: Remove float64/float32, as they are now in rtl/inc/genmathh.inc
rtl/inc/softfpu.pp: Use provided definitions of float32 and float64
if available (by checking presence of FPC_SYSTEM_HAS_floatXX macro)
rtl/inc/systemh.inc: include genmathh.inc if FPUNONE is not defined.
rtl/java/jsystemh_types.inc: Likewise.
+ readd Randomize with parameter
* import library function with a name that does not conflict with the functions exported in the interface
* Added a simple implementation of random. It is TP/Delphi compatible. Enabled it for 8/16 bit CPUs by default.
* Improved generic implementations of fpc_mul_dword, fpc_mul_word, fpc_mul_byte to use less iterations and registers.
* Optimized Handle_I8086_Error by using smaller int types.
FExpand: always uppercase drive letter also in BasePath
* Fix bug
0037601: add some attribte definitions
* Add StoredAttribute class, bug ID
0037602
* Xtensa: disable simple random again, committed by accident
* fix for broken wince compilation after
0046863
* restore ability to cycle with 3.0.4 (at least until 3.2.2 is released) after
0046890
* make use of AllocMem in fpc_dynarray_setlength
Fix compilation for watcom RTL
* inlinable frame handling dummies for avr
* inline frame handler if possible
Fix NDS RTL compilation for default armv4 CPU, which does not have CLZ instruction
* make framecount and framebufsize dependent on the pointer size
* replace some longint by ObjpasInt
* enable the compiler to optimize away parts of System.PushExceptObject, if System.get_frame is not implemented, i.e. returning nil
Use // comments as curly brackets not recognized as comment start inside aarch64 assembly blocks
* adjust softfpu unit so that it can be really used as a standalone unit instead of mainly as part of the System unit
* the define to check for inclusion in the System unit is FPC_IS_SYSTEM, *not* FPC_IN_SYSTEM
Fix compilation failure of i386-netbsd target after last commit
+ initial implementation of a FullName field in file records to overcome length limitions of the name field
Fix compilation of RTL when USE_FILEREC_FULLNAME is not defined
Put GetFullName functions inside $ifdef FPC_WIDESTRING_EQUAL_UNICODESTRING
* protect GetFullName with FPC_HAS_FEATURE_UNICODESTRINGS instead of _WIDESTRINGS
* make sure things still build with 3.0 after
0047353
Adapt to change of chr function in commit 47353, to change chr() a real intrinsics
* Fix bug ID
0038008: allow UTF8 to unicode conversion to react on/ignore invalid input
Add missing CPULLVM versions for fpc_abs_real and fpc_sqr_real in x86_64/math.inc
Fix LLVM compilation by casting untyped real constants to double type, as LLVM does not support extended type constant apparently
Revert wrong change, llvm supports extended constants
Use pascal code for LLVM fpc_sqr_real, because fmultp instruction is not accepted by llvm
* patch by Zoran Vučenović: fixes TDoubleRec.SetFrac, resolves
0038202
+ test
- remove could which prevented that rte is triggered even if we are inside
an exception block but *without* using sysutils. The remove code
was once added to have primitive exception handling even if
no sysutils is used. But if this is desired, an appropriate handler
to ErrorProc should be assigned. Resolves
0038201
* fpc_ln_real raises an exception for invalid operands if they exception is not masked
+ RTMSupport function
+ if available use RTM to support InterlockedCompareExchange128 on i386
* i386: disable InterlockedCompareExchange128 implementation if PIC is enabled
* darwin/AArch64: always clear fpu exception flags regardless of the
triggered signal, as the kernel currently triggers SIGILL rather
than SIGFPE for FPU exceptions
* fixed round(currency) so it takes the rounding mode into account on
platforms where currency is "type int64"
* inline trunc(currency), trunc(comp) and round(comp) on platforms where
currency and comp are "type int64"
* while not official supported, bootstrapping with 3.0.4 fixed
* fpc_AnsiStr_Concat: if one of the strings is empty and CP_NONE is passed, the code page
of the other string is taken, this is also like fpc_AnsiStr_Concat_multi works if length(sarr)=2
* handle rawbytestrings in Win32Ansi2UnicodeMove properly, resolves
0038299
Fix spelling error of revision 48023
Introduce USE_REAL_INSTRUCTIONS to handle expressions not accepted by old assemblers
* do not execute xend twice which was introduced in
0048430
* fixed the parse-collations script/bat file
* fixed the file name in the cldrparser help screen
* updated readme with URLs of the Unicode 9.0 and CLDR 30 data files (to the best of my knowledge)
+ added tool for parsing GraphemeBreakProperty.txt and converting it to code
+ added unit GraphemeBreakProperty, containing the grapheme break property character data from Unicode 9.0
+ added modified LGPL license header to the new graphemebreakproperty.pp unit
+ added and implemented a TUnicodeStringExtendedGraphemeClustersEnumerator class
in the graphemebreakproperty unit - an enumerator that splits a UTF-16 string
into extended grapheme clusters (i.e. user-perceived characters), conforming
to the Unicode 9.0 algorithm:
https://www.unicode.org/reports/tr29/tr29-29.html
+ added an eawparser tool - tool for parsing the EastAsianWidth.txt unicode
property table and converting it to code
+ added unit EastAsianWidth, which contains the EastAsianWidth unicode data property
Fixed free_fun function signature in zlib
fix! 2d00cab5
+ RiscV32: setjmp/longjmp implementation, based on the RiscV64 one
* compilation on Windows fixed
* RiscV32: fpc_longjmp needs nostackframe directive
* RiscV: unified procedure directives of fpc_*jmp
* overflow checked mul helpers do not need to check all bits either
* instead of using discardresult, wrap the uniquestring functions in procedures,
that are declared as inline
* support building with FPC 3.2.2
Add missing go32v2 zips and corresponding sources
* rework the basic event on Windows so that peventstate directly represents the Event handle
Replace p2fp by p2fm as short version for pas2fpm utils package and add some missing -3.3.1 to long source zip names
Remove double source entry for utils lexyacc package
Use utils also for short version for OS/2 and emx
Fix short name for utils-fpcres for OS/2 and EMX
* thumb2: Make fillchar smaller, faster and more reliable. Some gas versions remove the "mov r0,r0" making the calculated branch break
* thumb2: Optimize fillchar a bit more with a wider inner loop chunk size
+ Aarch64: use LSE if available for atomic intrinsics
* Darwin/BSD: fixed StackBottom calculation
rtl: make STACK_MARGIN a variable instead of a const. this allows adjusting margin size on system unit init, based on the actual stack length of the executable. useful for small systems running with little stack. allow overwriting SysBackTraceStr with a platform-specific implementation
atari: implemented stacktop for working stacktraces, implemented stacksize dependent stackmargin, and a system specific backtracestr. however, offs display still doesn't work properly, due to a linker issue (reported)
* insert explicit type cast for the count parameter of move/fillchar wrapping C functions,
avoids a warning in combination with -O3 and negative count values
* fix bootstrapping on aarch64-linux with 3.2.x
+ added Get/SetTextAutoFlush feature
* LLVM does not have an intrinsic for int/frac, so don't replace frac with
a call to runerror(207) there
* fpcr and fpsr are 64 bit on aarch64
* RiscV: unified cpu initialization and FPU exception handling, resolves
0038893
* Windows: Prevent removal of the TLS directory by the linker when RTL is compiled with -O4 or when inlining is enabled.
* as 3.2.0 is now the oldest compiler we support we can now use {$push} {$pop} to reset the $minenumsize in the RTTI header
Exchange REQUIREDVERSION and REQUIREDVERSION2 values to get 3.2.2 version in reuired release version message
* win64: factored out cpu specific code
* BitSizeOf Documentation sub (issue
0039110)
+ CPU.BMI1Support and CPU.BMI2Support
+ AVX512*Support functions
* call cpuid with eax=7 only if it is supported by the CPU
* x86-64: removed some fwait instructions from fpc_frac_real, they shouldn't be necessary
* x86-64: fpc_frac_real further improved: memory loads of extendeds are expensive
- x86_64: some more fwaits removed
* Gitlab client + example
* Some additional filters
* extended routines int/frac/trunc shouldn't mess with precision or exception flags, should fix
gitlab 0039275
* replace MT random generator by Xoshiro128**, resolves
gitlab 0038237
+ CPU units: check for SHA support
* fixed padding in the filerec to match textrec even on platforms where
sizeof(pointer)<>sizeof(codepointer), like in the medium and compact i8086
memory models
* x86-64: do not jump in inc/declocked to return but return directly
* when compiling with the main branch compiler, p2align with 3 parameters can be used now
* the libc unit might be deprecated, but it's no reason for wrong declarations, in this case values that should be declared as octal but were declared as decimal with the same literal text
Fix compilation of nds and wii OS rtl
* fixed the ptccrt key codes for the ctrl+numpad keys
* Add missing definitions
+ initial files for intrinsics support on AArch64
FreeBSD CSU fixes
* Assembler blocks in non-pure assembler functions must always declare all
changed registers
* argc is read as *(long*) in C -> changed plongint to pptrint
* fixed ident section
Also add short format version of build unit BUnit.pp to ignore list
* updated ptcpas and ptcgraph to the latest 0.99.16 release candidate
* ptcpas update: support the F13..F35 function keys on platforms that recognize them
* ptcpas keyboard handling improvements for macOS and X11
* TObject.InitInstance got very big so inlining has no advantage anymore, resolves
gitlab 0039494
* libffi: fix abi declarations for x86_64
+ LZCNTSupport
+ test extended
* out and var are reserved words
* Prepend T when writing pointer types and PrependTypes is set
+ x86: ADXSupport
+ x86: RDSEEDSupport
* Remove debugging statements
* fixes for fpc_Val_SInt_ShortStr by Bart B
+ new test for fpc_Val_SInt_ShortStr
+ benchmark
* reordered condition so they can be evaluated quicker
Java: adapt FPC_ANSISTR_UNIQUE signature
Conform to change made in 800bb3adc23
* updated version by Bart B
* optimze case
* few formatting changes
* fpc_Val_SInt_ShortStr: bug fixes and improvements by Bart B
* patch by Bart B to fix the value of Code for unsigned types if the input is negative, resolves
gitlab 0039523
o patch by Bart B:
* fixes fpc_Val_UInt_Shortstr, part of
gitlab 0015633
* fpc_val_qword_shortstr uses the ValueArray constant
* patch by Bart B: fixes fpc_val_word_shortstr() and refactors fpc_val_longword_shortstr() so that it uses the same algorithm and naming conventions as the other unsigned val-helpers.
* all val helpers now use the ValValueArray
* some fixes for 8 Bit CPUs
Fix compilation of jvm-java and jvm-android rtl
* fpc_AnsiStr_To_ShortStr: set length before moving, should result in better memory access pattern
+ routines to test for AVX512VNNI and AVX512BITALG support
* avoid warning/error on uninitialized variable
* more false positives of unintialized varibles worked around
* rtl/atari: get rid of the old prt0.as startup code, which is not in use any more. this way, we do not require GAS any more for a build
Added TranslatePlaceholderCP before Wide2AnsiMoveProc call.
In the fpc_setstring_ansistr_pwidechar procedure, before calling Wide2AnsiMoveProc, the translation cp = 0 to the DefaultSystemCodePage has been added.
Note: In all other places such translation is present.
Added TranslatePlaceholderCP in fpc_Read_Text_AnsiStr procedure.
This is a small optimization.
atari: implement ARGV protocol for runtime startup
rtl/atari: check for application/acc at startup
* rtl/atari: use the haltproc declared in the startup code instead of calling pterm in the system unit directly.
* rtl/atari: fix haltproc external name. apparently the atari target uses a different Cprefix in the compiler, so copy-pasting this stuff from the Amiga port don't work 1:1
Set float type information in system interface part for mips64 and mips64el CPUs
rtl/atari: implement environment functions also in dos unit
* rtl/atari: add the standalone softfpu units to the Atari build. this fixes the Atari native compiler build after recent changes
atari/sysos: use the symbolic names for error numbers
rtl/atari: fix readln from console
+ skeletons for mips64el specific files
+ store also ecx and edx after cpuid call with eax=7
+ test VNNI and BIGALG instructions
* m68k: implement basic support for interlocked functions using a TAS based global spinlock on CPUs which don't have the CAS instruction
* setting of MIPS64(EL) in system.inc fixed
* m68k: some CPUs don't have TAS either (for example some CF)
rtl/atari: move common code of getenv
rtl/atari: try to convert argv[0] to absolute pathname
atari: support ARGV protocol in ExecuteProcess
* fix declocked(longint) for aarch64 without LSE, resolves
gitlab 0039569
* m68k: fix an instruction which doesn't exist on ColdFire
- removed superfluous comment
Add missing rtl/mips64 files and fix some rtl/mips64el files
* handle frac(+/-Inf or Nan) correctly in the software implementation, resolves
gitlab 0039584
* Extra options for more flexibility
* revert a650d346f1646c1b71380430a96c440e222a087d for now as it apparently does
not work with all language encoding
* nds: the embedded stub DOS unit was just a copy of the NDS one with minor fixes, so lets make the NDS port use the current cleaned one as well
+ AVX512VBMISupport and AVX512VBMI2Support
* i386: make use of *fence instructions
Make pas2jni use cthreads on Unices
+ introduced PTCKEY_LESS (the 102th key on international keyboards, <> when
used with US keyboard layout)
* use v*csr instructions if they are available
* initialized some fields and data to -1 to make the results more similar to the slave chm (merged_chapter/example1/slave1) example.
Now only
- the checksum at $4
- the number of topics (different issue)
- the offset of framename in #strings differs.
Fix compilation by removing unicodenumtable unit
* CGI demo for css minimizer/classname extractor
* check more cpuid flags in the cpu units
* Changed -1 to $FFFFFFFF on DWord writes to suppress range check errors
* Add examples for syshelpers from Zeljko Avramovic. Fix issue
gitlab 0039541
* Libnettle & dynamically loadable version of libgmp
* Add libnettle into build
+ some more cpu specfic files for mips64(el)
+ enable the 64-bit SAR instruction on the WebAssembly target
Fix compilation ofrtl/nds/classes.pp unit
* align memory blocks in cmem at least to stack alignment boundaries, resolves
gitlab 0039730
Remove accidently added binaries in commit 0e142c00
* patch by Rika: SwapEndian([u]int16) has unnecessary “and $FFFF”, resolves
gitlab 0039814
Revert " * patch by Rika: SwapEndian([u]int16) has unnecessary “and $FFFF”, resolves
gitlab 0039814"
This reverts commit f92102a5f22ae7b978ecf91d59781e16f0b82163.
The and $ffff is needed to avoid range check warnings when the function is inlined with a constant parameter
* x86-64: math helpers do not need a stackframe
FIX: DARWIN: aarch64: tstatfs.fstypename length error (
gitlab 0039873)
Add DISABLE_SYSTEMINLINE check to be able to avoid setting SYSTEMINLINE macro
+ add platform independent helper routines for the atomic intrinsics; these only require the implementation of the size specific fpc_atomic_cmp_xhg_* helper, but if only the CPU size specific helper is implemented the others will at least be safe for multi threading inside the same process
Rewrite fpc_shortstr_concat_multi for AVR to not use a temporary shortstring to reduce RAM usage.
Make Utf8CodepointLen adhere to the Unicode standard somewhat more and know all of the Unicode 15.0 combining characters.
powerpc64le: fix reading FPU control word after
gitlab 000758aa1143
Also, missing rest of the commit message for that change:
The default implementation of SysResetFPU now sets the FPU control word that
was last set from any thread (Delphi and FPC i386/x86-64-compatible). No longer
call SysInitFPU when starting a new thread, only SysResetFPU. Combined, this
means that new FPC-started threads will always start out with that control
word on all architectures.
Added generic fpc_cpuinit implementation that is used unless
FPC_SYSTEM_HAS_FPC_CPUINIT has been defined.
Ensure that the softfloat exception mask is initially set to the same
value as the hardware fpu exception mask on architectures that use both.
SafeLoadLibrary now saves/restores the FPU control word on all platforms.
Removed outdated fpc_mtfsb0_corrected define check in powerpc64.inc
Resolves
gitlab 0038230
Thumb(2): fix compilation after FPU control word changes
Resolves
gitlab 0039966
Change wrong "$macros off" into "$macro off"
Darwin/AArch64: detect when SIGILL indicates an FPU exception
Parse the ESR (ESR_ELx, Exception Syndrome Register (ELx)), return run error
as in float_raise
Darwin/AArch64: future-proof version check
* Add gstreamer library import unit (gst)
Introduce CTYPES_INLINE, enabled by default but which can be disabled using -dDISABLE_INLINE for ctypes unit
add loongarch64 rtl support
Fix potential overflow when incrementing 8 bit high value of res.
add ppsuf so that we can compiler loongarch fpc now
Fix use of unaligned for big endian code
* first (modified, added a comment) patch by Rika to improve generic Index*, part of
gitlab 0039996
* Add stub for IsManagedType
Add PIC code for solaris/i386/start.inc
- remove apparently accidently added files
* Free cached queries when committing
* fix for bug
gitlab 0040071 (corrected integer size redefined due to use of objfpc)
* string -> shortstring, check zero length instead of comparing to empty string
* check zero length instead of comparing to empty string
* check zero length instead of comparing to empty string
* string -> shortstring, check zero length instead of comparing to empty string
* string -> shortstring, check zero length instead of comparing to empty string
* string -> shortstring, check zero length instead of comparing to empty string
* Add IndexChar for widechar
* check zero length instead of comparing to empty string
* String -> ShortString/RTLString
* check zero length instead of comparing to empty string
* check zero length instead of comparing to empty string
Make generic Index* faster and denser.
* Fix compilation with unicodertl
* alternative declaration for SDL_CreateThread added to keep old code working, resolves
gitlab 0040112
+ support of octal literals
* UnicodeString<>WideString on windows
* Zero out stringmanager record
Improved CompareByte for i386 and x86_64.
* Rework so scanner & lexer files do not contain actual code. Code is moved to scanbase and h2pbase units
* Add switch to revert to using char
* Prevent writing pointer types twice
Utf8CodePointLen: remove pointer arithmetic to fix JVM compatibility
Improve generic CompareWord.
Improved CompareWord for i386 and x86_64.
Improve generic CompareDWord.
Improved CompareDWord for i386 and x86_64.
IndexWord and IndexDWord for i386 without REP SCAS.
Fix compilation error for loongarch64 system unit with -dFPC_USE_LIBC option
Fix compilation error with -dFPC_USE_LIBC for loongarch64 cpu
Even better CompareByte for x64.
Tries to handle tails with a SIMD unit as well.
* Better transaction handling, improved ranking mechanism speed
* patch by Rika: Perform 32-bit random if the bound fits into 32 bits at runtime, resolves
gitlab 0040171
* patch by Rika: fix for 15f29b8fa06a5b5d25a0d4783d7940fdf73b00d2
* patch by Rika: Make more use of fpc_*_array (mainly fpc_addref_array) in rtl/inc/dynarr.inc, resolves
gitlab 0040174
* Dotted filenames for package uuid
* Dotted filenames for package os2units
* Dotted filenames for package opengles
* Dotted filenames for package opencl
* Dotted filenames for package ptc
* Dotted filenames for package odbc
* Dotted filenames for package libgc
* Dotted filenames for package iconvenc
* Dotted filenames for package fpgtk
* Dotted filenames for package gstreamer
* Dotted filenames for package cairo
* Dotted filenames for package bfd
* Dotted filenames for package libxml
* Dotted filenames for package libffi
* Dotted filenames for package pxlib
* Dotted filenames for package imlib
* Dotted filenames for package cocoaint
* Dotted filenames for package fpindexer
* Dotted filenames for package libcurl
* Dotted filenames for package mysql
* Dotted filenames for package libndsfpc
* Dotted filenames for package unzip
* Dotted filenames for package dblib
* Dotted filenames for package ncurses
* Dotted filenames for package gdbm
* Dotted filenames for package symbolic
* Dotted filenames for package bzip2
* Dotted filenames for package users
* Dotted filenames for package libfontconfig
* Dotted filenames for package newt
* Dotted filenames for package gnutls
* Dotted filenames for package numlib
* Dotted filenames for package oracle
* Dotted filenames for package tcl
* Dotted filenames for package ggi
* Dotted filenames for package gtk2
* Dotted filenames for package libgbafpc
* Dotted filenames for package sndfile
* Dotted filenames for package zorba
* Dotted filenames for package libenet
* Dotted filenames for package graph
* Dotted filenames for package httpd13
* Dotted filenames for package syslog
* Dotted filenames for package libpng
* Dotted filenames for package winceunits
* Dotted filenames for package dbus
* Dotted filenames for package fcl-sound
* Dotted filenames for package objcrtl
* Dotted filenames for package libogcfpc
* Dotted filenames for package a52
* Dotted filenames for package fcl-sdo
* Dotted filenames for package hermes
* Dotted filenames for package rexx
* Dotted filenames for package proj4
* Dotted filenames for package fftw
* Dotted filenames for package imagemagick
* Dotted filenames for package dts
* Dotted filenames for package cdrom
* Dotted filenames for package ldap
* Dotted filenames for package fastcgi
* Dotted filenames for package libcups
* Dotted filenames for package unixutil
* Dotted filenames for package libusb
* Dotted filenames for package palmunits
* Dotted filenames for package odata
* Dotted filenames for package pthreads
* Dotted filenames for package httpd22
* Dotted filenames for package libmagic
* Dotted filenames for package libc
* Dotted filenames for package libnettle
* Dotted filenames for package jni
* Dotted filenames for package mad
* Dotted filenames for package xforms
* Dotted filenames for package postgres
* Dotted filenames for package gnome1
* Dotted filenames for package pcap
* Dotted filenames for package matroska
* Dotted filenames for package oggvorbis
* Dotted filenames for package gtk1
* Dotted filenames for package winunits-jedi
* Dotted filenames for package fcl-async
* Dotted filenames for package httpd24
* Dotted filenames for package libsee
* Dotted filenames for package gdbint
* Dotted filenames for package tplylib
* Dotted filenames for package libvlc
* Dotted filenames for package utmp
* Dotted filenames for package libmicrohttpd
* Dotted filenames for package libgd
* Dotted filenames for package modplug
* Dotted filenames for package gmp
* Dotted filenames for package lua
* Dotted filenames for package nvapi
* Dotted filenames for package svgalib
* Dotted filenames for package ibase
* Dotted filenames for package openal
* Dotted filenames for package librsvg
* Dotted filenames for package aspell
* Dotted filenames for package rtl-unicode
* Dotted filenames for package httpd20
* Dotted filenames for package zlib
* Dotted filenames for package ami-extra
* Dotted filenames for package sdl
* Dotted filenames for package iosxlocale
* Dotted filenames for package chm
* patch by Rika: Remove dead code in DynArrayIndex, resolves
gitlab 0040194
* patch by Rika: Remove wrong paranoia (and add correct one (and shorten in general (and fix a bug in))) fpc_dynarray_setlength, resolves
gitlab 0040193
SSE2 Index* and Compare* for i386, chosen at runtime.
* Better signature for Initialize/Finalize dummies
Handle Index* / Compare* tail by directly reading last VECSIZE bytes, if there was at least one full vector.
Post-modern CompareByte for i386/SSE2.
Post-modern CompareByte for x86-64/SSE2.
Supposedly faster FillChar for x64.
Fill* for x64, physically sharing half of the code with FillChar.
Supposedly faster Move for x64.
Fix UTF-8 symbols in comments.
Index/Compare refined by hand instead of mostly being GCC output.
Improve shortstring Pos() and generic fpc_shortstr_compare().
Improve i386 fpc_shortstr_to_shortstr(), fpc_shortstr_compare(), and add fpc_shortstr_compare_equal().
* patch by Dean Mustakinov to improve commandline quote handling on Windows, resolves
gitlab 0040189
Specialized IndexQWord for i386.
Add symbian target to UItypesOSes
Remove accidentally added binary file
* Define RTTI visibilities
* Avoid range error in comparisons
Shorter i386.inc:fpc_AnsiStr_Decr_Ref.
Shorter x86_64.inc:inc/declocked.
* Add TNoRefCountObject (delphi compatibility)
* Fix variant record definition for CIF
Rename variable called section to _section to avoid parsing error for morphos OS
Added changes that didn't commit in merge 427
Fix the init state of LoongArch FPU exception bit
* TPtrWrapper for Delphi compatibility
* Delphi compatibility aliases for Interlocked* functions
Fix cpu16 error in AtomicCmpExchange
Fix system compilation for CPU16
* Interface thunk class must query owner object interface list
Don’t use local shortstring in generic fpc_pchar_to_shortstr, move directly to the destination.
Working i386 fpc_pchar_to_shortstr; previous version didn’t support length limits smaller than 255 and was often slower.
Don’t allow generic fpc_pchar_length to arbitrarily over-read.
* Replace string -> shortstring
* Do not compile pointer overloads of atomic operations for MS-DOS/i8086
* ansichar is the basic type
* Better detection of ansichar
Delay-load CoWaitForMultipleHandles to not force the dependency on ole32.dll.
Load oleaut32.dll for widestrings on demand.
Most of the applications don’t and shouldn’t use widestrings, as unicodestrings are superior.
Delay-load ole32.dll in WinDirs.
* Fix compilation for avr-embedded (no unicode strings)
Fix order of parameters of FillChar as suggested by Alexey Torgashin
* Script to regenerate makefiles with proper options
Handle macos directory, which target name is now macosclassic
Handle path conversion using cygpath utility on Cygwin system
Avoid using namespcaced/win32 directory
Temporary fix for win32/initc unit which is not yet handled in namespaced
Improve generic large set operations: +, -, *, ><, =, <=, mostly by working in PtrUints.
Add dotted version of Dos unit in msdos/sysutils source
Add required OS2Api. prefix for dotted units
Add required FPC_DOTTEDUNITS changes
Set DYNLIBSINCDIR to WINDIR for win32 and win64
Remove unwanted space in EmbeddedApi.sc32442b.pp name
Faster genset.inc:fpc_varset_set_range.
Adapt sources to FPC_DOTTEDUNITS
Specialized fpc_varset_OP_sets for i386 and x86-64.
Remove ancient i386 implementations of (large)set_(add/mul/sub/symdif/contains)_sets that were kept as references until someone implements varset_* versions, according to the comment.
* patch and test by Rika: fixes self inserts in Insert(x, dynarray) and improves Insert(x, dynarray), resolves
gitlab 0040417
Let fpc_dynarray_concat(_multi) reuse the only nonempty input or append to the destination if possible.
Improve fpc_dynarray_delete.
* ensure that the field and method tables are always accessed with the default alignment
* fix
gitlab 0040421: implement assembly variants of the SwapEndian functions for Aarch64
* corrected version provided by Yuri Prokushev, the original author; fix for
gitlab 0040322
* patch by Rika: In i386/set.inc, use “pop mem” instead of “pop reg; mov mem ← reg”, resolves
gitlab 0040443
Faster string concatenations.
Revert " * patch by Rika: In i386/set.inc, use “pop mem” instead of “pop reg; mov mem ← reg”, resolves
gitlab 0040443"
This reverts commit cf1683d14c6f6b9f981ed352b99cd53da37852a7.
Update fpcsrc level Makefile using lakest trunk fpcmake utility
Faster dynamic array concatenations.
Add pseudo PIC code for 32-bit powerpc, probably wrong :-(
Add calls to FcGetVersion, FcConfigGetFilename and FcConfigFilename
Set calling convention for fontconfig library import unit
x86_64.inc: shorten Interlocked*, perform macro-fused test+jz in Index* early.
* Add Delphi-compatible DisposeOf and friends.
On i386 and x86_64, add cpu.CPUID — high-level wrapper to CPUID instruction, and cpu.CPUBrandString — convenience for CPUID leaves 80000002, 80000003, and 80000004.
* redefine also PPChar and PPPChar depending on the string type mode, resolves
gitlab 0040491
Deny effective RTM support if CPUID bit RTM_ALWAYS_ABORT is set.
* Add HINST for Delphi compatibility
* Add varUInt32 alias for delphi compatibility
* Fix by Dokkie8844 to treat error codes by GnuTLS in a more graceful manner. Fixes issue
gitlab 0040195
* pthread_mutex_timedlock
Make some i386.inc functions “nostackframe”.
AVX2 CompareByte for i386.
iosxwstr: use kCFCompareNonliteral
Patch by @modersohn
Fixes tunistr7/twidestr7, resolves
gitlab 0040507
Remove runtime ABI adapter in x86_64.inc:IndexByte/Word, and save two jumps in the common case.
+ centralized cpu capability detection
* detect avx support also in the i386 system unit
m68k: first bit of a Human68k RTL - a very dummy startup code
human68k: have a README for the RTL
Revert wrong commit about PIC code for powerpc-linux
* check also for XGETBV support, resolves problem reported by Pierre
ERMSB-aware Fill* for i386.
REP STOS branch for x64 Fill* (only for System V ABI for now).
* Do not ignore .lpi files in general
Fix a typo in CompareWord_Plain.
* remove some artifact file
human68k: implemented some basic file and I/O handling functions
human68k: fixed a dumb typo on the bss start calculation. fixes FPC binaries under run68.
human68k: minimal DOS calls error handling/inoutres mapping
human68k: refactored some type naming used in the startup code
human68k: parse the arguments passed to the program, fill out argc/argv, make ParamCount and ParamStr() to work
human68k: actually, the comm field coming from the OS is in ph68kdos_comline format, so use it accordingly
human68k: fix zero termination of the last argument
human68k: fixed argv[0] generation, after figuring out that length() is something very different to strlen()
human68k: also fill the entire args buffer with zeros, for proper last argument termination
human68k: one more rework after advices/reports from Pierre Muller, hopefully this fixes all remaning edge cases
Supposedly better fastmove.inc.
human68k: implemented do_open (based on the Atari version)
human68k: try not to nuke immediately during argument parsing, if memory allocation fails
human68k: cosmetics, no functional change
human68k: implemented do_getdir (based on the Atari version)
Attempt to save push/pop ebx on small non-GPR moves.
human68k: implemented do_chdir
human68k: pre-fetch the version number of the OS during startup. and store it for easy access
human68k: implemented do_rename
human68k: implemented some trivial functions in sysutils
h68units: new package with and for Human68k support units
Increase non-temporal i386 & x64 Fill* thresholds to 4 Mb.
Attempt to ERMS backward i386 ‘Move’s.
Move ERMS branch into a separate function instead of runtime checks of fast_large_repmovstosb.
human68k: added a totally untested DOS unit to the RTL
* Namespaced version of testinsight units
* Add const for string where possible
* No static versions for 5.6 and 5.7
Fix FillQWord_SSE2 stack usage.
Use GetProcAddress to set GetFinalPathNameByHandle function pointer
Fix compilation of syscall unit for i386-beos target
Use ERMS in all eligible cases, again.
Namely, when Move.count > NtThreshold but move distance is too short. 8310b169b780171ba1aac906602bada424b9eb76 messed with the logic and made this case fall back to a regular loop instead of more preferable ERMS.
Add missing syscall_nr_futimens for NetBSD OS
Add new DragonFly OS syscall number up to release 6.4.0 (v6.4.0 tag on https://gitweb.dragonflybsd.org/dragonfly.git)
* remove semicolon to make Lazarus happy
* fix
gitlab 0040592: make the Delphi-compatible attributes usable, but in a way that makes it clear to the user that they won't work
+ added test
* avoid wrong warning about FillChar not initializing the output parameter in case count <= 0
* avoid that fpc_fillmem does not inline due too much nested calls
* Delphi-compatible overloads UTF8ToUnicodeString
* fix implementation comment
* set stack margin on windows, so there is stack space left for exception handling in case of a stack overflow, resolves
gitlab 0040589
* Windows CE does not support SetThreadStackGuarantee
Support Windows XP where SetThreadStackGuarantee is absent.
* win64 has always SetThreadStackGuarantee
Check for Move overlaps in more obvious way (that also does no jumps in forward case).
Write two last values after 2× loops unconditionally instead of an extra check.
Simplify x86_64.inc:Move non-temporal loops, and adjust thresholds for move distances considered too short for NT.
Change Mov*DQ to Mov*PS; they are always equivalent because no operations but the memory transfers are performed, and 1 byte shorter each.
* mask FPU exceptions during libxml initialization to avoid an fpu exception with newer libxml, resolves
gitlab 0040622
REP MOVSB branch for x64 Move.
* fix
gitlab 0040603:
- initialize thrdinfo record using Default() so that padding bytes are zeroed as well
- correctly pass the count of ULONG_PTRs
* make Lazarus' CodeTools happy
* patch by Rika: Small improvements to (a|u)strings.inc, resolves
gitlab 0040364
Supposedly faster i386 int() and frac().
* Fix compilation in dotted units
* Add EnumModules for Delphi compatibility
* also add stack note for trunke
rtl: add two defines toallow disabling the verbose error of the stub unicodestringmanager and threadmanager
* Add operators to TMethod, for Delphi compatibility
* Add UnicodeFromLocaleChars for Delphi compatibility
JVM: fix system unit compilation error
Apply same change as to systemh.inc in bccc0b195e
* Fix wrong assigned check pointed out by Gareth Moreton
* Handle potential double defintion of INFINITE
Don’t misalign FillChar pattern.
Try to implement UnicodeFromLocaleChars for java
Non-nil-aware fpc_ansistr_compare(|_equal).
* do not copy sets in fpc_varset_(un)set if source and dest are the same
SSE set operations (i386).
SSE4.1 IndexQWord for i386 and x86-64.
* Fix compilation in unicode RTL
+ MMXSupport added to cpu unit
* mmx unit makes more use of cpu unit
Better i386.inc:fpc_ansistr_unique.
Disable _Plain versions when compiling RTL for newer CPUs.
Shortcut Compare*(a, a) before entering the aligned loop.
Simplify shortstr_concat(_multi).
Check bounds in SetLength(shortstring).
Use non-conservative Fill thresholds.
Integers are 16-bit in system, replace with SizeInt.
Update after commit b0076a4709 to fix jvm rtl compilation error
+ add a batch file to also regenerate the RTL makefiles on Windows
Fix + QoL + eye candy for Windows error boxes.
Calculate the amount of ansichars in argv with one call to WideCharToMultiByte.
Fix compilation of rtl with -dDISABLE_SYSTEMINLINE
Faster Insert(ansi/unicodestring).
Fix off-by-one error in syswin.inc:setup_arguments.
Cover more values in the [0; 1) range by “random”.
* arm: Disabled "inline" on "fpc_ansistr_decr_ref" and "..._incr_ref" until arm compiler bug is resolved
* arm: Re-enabled "inline" on "fpc_ansistr_decr_ref" and "fpc_ansistr_incr_ref".
Implement length(PWideChar) with IndexWord.
Low-level optimistic implementations of SysRelocateThreadvar that directly read TEB.
* Remove debug statements
* remove unneeded checks in generic string routines, resolves
gitlab 0040816
- remove file that's generated again by the Makefile
+ added wasmwriter to namespaces.lst
* Small output improvement
* workaround for WebAssembly resource names possibly residing in memory below 64KB
Make int64 division helpers “nostackframe”.
* corrected rte number after last merge
* make GetProcessID inline
* fix TSC support bit as mentioned by Rika
* fix naming (no functional change)
+ introduced constant MaxIntResource, use it in InternalIsIntResource
Fix wince compilation using FPC_HAS_SYSRELOCATETHREADVAR_ASM macro.
Replaces merge request !705
Fix directory for varutils unit
Adapt namespaces.lst to removal of src/win/varutils.pp separate source file
* Shortcuts must pass result on
* Fix error out of bounds
* really all TMonitor shortcuts pass through the results
Simplify CPU units (70 LoC + 500 b code + 500 b data).
fix ffi_cif record for loongarch
The ffi_closure_alloc return fCode is real do
human68k: sync h68kdos.inc file between packages and rtl
human68k: add interface function to h68kdos_super call
h68units: fixed dottedunits inclusion
h68units: added an initial version of an IOCS API unit with some graphics related calls, and an example program using it
* Disposed is protected, does not appear by default in RTTI
h68units: fix copyright year in h68iocs unit. no functional change
h68units: added some more IOCS calls, mostly related to hardware sprite handling
h68units: also credit Federico Roviralta for his X68K related work
h68units: new h68kutil unit, with various constans for now. more to come.
* get rid of a couple of more tabs
* add cpuriscv to be on the safe side
Decimate rtl/i386/strings.inc.
Faster path for IndexBytes with a match at the beginning.
* Fix wrong raise statement
* set MaxIntResource to 1023 for WebAssembly, because that's where the first
data segment starts, after commit 3218f25d130f9e3989ee3a8c6e3079aacde55c8a,
and even before that, when using the external linker
Redesign RTTISizeAndOp to return more useful information.
Faster RTTIManagementAndSize -_-.
* the fpc_invalidpointer rtl function declared compproc to allow easier calling
from the high level code generator
* avr: take advantage of sbiw in mod/div_word
+ test
Change prt0.as and cprt0.as to allow to generate FreeBSD aarch64 13.2 executables
* fpc_varset_load takes a ptrint for set size
remove of the build scripts
moved the psy-q-sdk to the rtl/ps1 folder
Use FillChar in InitializeArray.
+ PS1 system unit: include the softfpu code, in case the softfpu is enabled in
the compiler (it is still disabled by default)
* PS1 system unit: moved constants that should be public to the interface part
+ define FPC_IS_SYSTEM in the PS1 system unit
- removed /psy-q-sdk/lib/* from .gitignore
- MIPS: removed functions get_fsr and set_fsr from the RTL in case the SoftFPU
is enabled, because they contain inline assembler, containing FPU code
Typo in comment (windirs unit)
Added missing keys for WinCRT unit
* PS1: initialize exceptions on system unit startup
+ PS1: initialize the unicode string manager
+ PS1: implemented debug output via write/writeln (visible in emulator logs, same effect as printf)
+ PS1: set the IsConsole and IsLibrary in the system unit startup
+ comment (no functional changes)
+ PS1: add const AllFilesMask to the system unit
+ PS1: initialize the thread manager in the system unit
ordinary malloc doesn't work, so malloc2
all the strings.h functions are in libstd.pas
removed unpreaty line endings / beginnings
+ added package ptckvm - a console driver for the keyboard, video and mouse units, implemented on top of the PTCPas library
* fixed ptckvm compilation with dotted units
* unit ptckvm renamed PTC.KVM if dotted units are used
* fix memory leaks after ptckvm finalization
+ started integrating my fpterm terminal emulator (from https://sourceforge.net/projects/fpterm/)
as a part of FPC's packages, for potential use and future integration with the
console IDE, Lazarus, WebAssembly, Pas2Js, etc. This commit adds the first
unit: System.Terminal.Base
+ added unit System.Terminal.View
+ added unit System.Terminal.Model
+ added unit System.Terminal.InputOutputConnection
+ added unit System.Terminal.PointingDeviceInput
+ added unit System.Terminal.Logger
+ added unit System.Terminal.Controller
+ added unit System.Terminal.KeyboardInput
+ added unit System.Terminal
* fcl-fpterm/fpmake.pp modified, so it includes a function, similar to
rtl-console/fpmake.pp. This is to allow declaring constant sets for the OSes.
+ added unit System.Terminal.KeyboardInput.Keyboard
+ added unit System.Terminal.PointingDeviceInput.Mouse
+ added unit System.Terminal.View.Video.Base
+ added unit System.Terminal.View.Video
+ added unit System.Terminal.KVM
+ added unit System.Terminal.View.Video.PTC.KVM
+ added unit System.Terminal.PTC.KVM
+ added unit System.Terminal.Pseudoterminal.Unix
+ added unit System.Terminal.InputOutputConnection.UnixPTY
* system.terminal renamed fpterm
- removed unnecessary (unused) virtual constructors
* fix fpc_frac_real to properly thrown an exception on +/-Inf/NaN
Remove fpc_varset_* indirections if SSE support is guaranteed.
* bootstrapping fix with 3.2 for arm-linux
* really fix bootstrapping with 3.2.2 on arm-linux
* fix
gitlab 0040992: correctly handle padding inside the FFI Invoke manager
+ added test
fix AtomicDecrement(Cardinal) overload
* correctly declare KNONVOLATILE_CONTEXT_POINTERS.IntegerContext for ARM64
set stack top to 801FFFF0 as in system.cnf
* made dblib/fpmake.pp to use the same structure as other fpmake files => avoids hint on unused variable during make all
+ AtomicIncrement/Decrement overloads
* tests extended
* fix
gitlab 0041004: correctly determine the instruction pointer for leaf functions and set the CONTEXT_UNWOUND_TO_CALL context flag
* Patch from Евгений Савин to fix passing records to invoke. Fixes issue
gitlab 0041006
* OpenAPI to pascal conversion tool
* move aliases of fpc_copy and fpc_copy_by_move_semantics to aliases and adjust their names to match other aliaes
* Correct command-line working
Darwin: disable new assembler fill*word variants
They use interprocedural gotos at the assembler level, which is incompatible
with auto-generated CFI
* patch by Lipinast Lekrisov: fix building ffi.pp on macOS, resolves
gitlab 0041035
Darwin: re-enable new assembler fill*word variants
Work around with an extra jump to an extra function.
* increase stack margin for x86-64 so back tracing a stack overfow with line info does not cause another stack overflow
+ SysResetFPU for Aarch64
* ensure always an exception is raised in genmath.inc if appropriate
* switch i386 RTL to provide the atomic intrinsics instead of Interlocked* functions
* switch x86_64 RTL to provide the atomic intrinsics instead of Interlocked* functions
* switch Aarch64 RTL to provide atomic intrinsic helpers instead of Interlocked* functions
* switch ARM RTL to provide atomic intrinsic helpers instead of Interlocked* functions
* switch i8086 RTL to provide atomic intrinsic helpers instead of Interlocked* functions
* switch SPARC 32 RTL to provide atomic intrinsic helpers instead of Interlocked* functions
* switch SPARC 64 RTL to provide atomic intrinsic helpers instead of Interlocked* functions
* switch MIPS RTL to provide atomic intrinsic helpers instead of Interlocked* functions
* switch PowerPC 32 RTL to provide atomic intrinsic helpers instead of Interlocked* functions
* switch PowerPC 64 RTL to provide atomic intrinsic helpers instead of Interlocked* functions
* switch RISC-V 32 RTL to provide atomic intrinsic helpers instead of Interlocked* functions
* switch RISC-V 64 RTL to provide atomic intrinsic helpers instead of Interlocked* functions
* switch AVR RTL to provide atomic intrinsic helpers instead of Interlocked* functions
* switch LoongArch 64 RTL to provide atomic intrinsic helpers instead of Interlocked* functions
* Append extension, needed for Laz codetools. Fixes issue
gitlab 0041061
* correctly disable the Atomic*Lock functions for the fpc_atomic_cmp_xchg_*() helper fallback of the CPU size
Add more specialized atomics for i386 and x86-64.
Shorten i386 and x86-64 atomic implementations to offset the LoC cost of the previous commit.
Shorten generic atomic implementations to offset the LoC cost of the commit before last.
This also fixes wrong fpc_atomic_sub_8 and fpc_atomic_sub_16 emulations.
* Add YAML parser & converter to JSON
* Allow to read YAML files.
* Some formatting fixes, make sure string argument is const where possible
* Handle case where there is no end-of-document
* Fix extensions in filenames
* Add possibility to scan single document in consecutive calls
* Use IsYAMLFileName, detect other extensions
+ added header translation for the JACK Audio Connection Kit library
* fix comment (was refering to OpenBSD, instead of JACK :) )
+ added libjack example program simple_client.pp (translated from simple_client.c)
+ added libjack example program latent_client.pp (translated from latent_client.c)
+ added libjack example program transport_client.pp (translated from transport_client.c)
+ added header translation for the jack/ringbuffer.h header to libjack
+ updated t_jack.h2paschk with the new ringbuffer structures
+ added libjack example program impulse_grabber.pp (translated from impulse_grabber.c)
+ added libjack example program showtime.pp (translated from showtime.c)
+ added header translation of jack/uuid.h to libjack
* fixed compilation of libjack with the dotted RTL
+ added header translation of jack/session.h to libjack
+ added libjack example program simple_session_client.pp (translated from simple_session_client.c)
+ added header translation of jack/thread.h to libjack
Use correct defines for ALUSInt, fixes problems encountered in webassembly
+ added header translation of jack/statistics.h to libjack
* libjack: use external on haiku and aix, because they don't support weakexternal
+ added header translation of jack/net.h to libjack
+ added header translation of jack/midiport.h to libjack
+ added header translation of jack/metadata.h to libjack
+ added header translation of jack/jslist.h to libjack
+ added header translation of jack/intclient.h to libjack
+ added header translation of jack/control.h to libjack
+ added libjack example program midisine.pp (translated from midisine.c)
+ added libjack example program midiseq.pp (translated from midiseq.c)
+ added libjack example program metro.pp (translated from metro.c)
* apply patch by Michael Ring to fix compilation for ARM THUMB
+ fix and enable compilation of libjack for Win32 and Win64
* fixed compilation after previous commit
+ added example program capture_client.pp to libjack (translated from capture_client.c)
* package sndfile (whose compilation has been disabled for quite a while) renamed libsndfile
+ fix fpmake.pp and enable compilation of package libsndfile
- libsndfile: removed the ctypes. prefix from all types, in order to fix compilation with the dotted units RTL
* make rounding mode and exception mask thread variables as well
+ add an SysInitFPU implementation
* call SysResetFPU and SysInitFPU in InitThread for the time being
* unify SysInitFPU and SysResetFPU on RiscV
* RiscV: unify memory barrier functions
Faster managed record initialization.
* RiscV: unify stack related functions
+ atomic operations for RV32
Interface unref should zero the pointer first.
Shortcut declocked on refcount = 1.
Remove NewAnsiString & NewUnicodeString.
Tailor fpc_ansistr_concat_(multi) to the common case of concatenations.
+ RiscV64: make use of rev8 instruction
Check for refcount = 1 first.
* Remove outdated version number
* Fix compilation : implement correct GetLocalTimeOffset overload
Fix compilation of rtl for mipsel-ps1 target
Fix compilation of mips-linux rtl using 3.2.X compiler
* fix further instances where reallocmem instead of sysreallocmem is used to allocate the cmdline buffer, resolves
gitlab 0041168
Fix UnicodeString ElementSize.
Inline polyevl&ldexp in sin&cos.
+ RiscV: UMul64x64_128 assembler implementation
+ test
+ Aarch64: UMul64x64_128 assembler implementation
fpc_cpuinit: add destroyed register lists to assembler blocks
Otherwise the compiler assumes no registers are overwritten. And while the
regular code generator won't use register variables if assembler blocks are
present, LLVM is not restricted like that (and it could still cause issues
even with the default code generator in case PIC-rebased addresses are
accessed).
Add definitions of ALUSInt and ALUUInt types in java/jsystemh_types.inc
* RtlUnwind destroys register, so save and restore them afterwards
Move pop compiler directive to respective ifdef branch to match with push.
* use sametext instead of converting case
* use sametext instead of converting case
* x86-64: New optimised "exp" routine
+ add balign before commonly used label
Avoid TOO NEW instructions if OLD_ASSEMBLER is defined.
Few more functions to test x86 cpu supported instruction sets.
Prioritize less initialization code over data.
Add .section .note.GNU-stack,,@progbits to all .as files for FreeBSD OS
* x86-64: Fixed minor inaccuracy with "Exp" function at extreme values
Removing forgotten dead code
Save little of data space (12 bytes).
* Fix compilation for 16/8 bit platforms
Use al register to load a byte by value parameter in SetCGAPalette and SetCGABorder procedures
Fix compilation for win16 OS by using USE_WINDOWS_UNIT macro, defined for other Windows OSes
SSESupport SEE2Support return true allays in 64 bit mode. +More bugfixes.
* Place a copy of COPYING.FPC so people do not need to look for it in rtl
Call MemoryManager.InitThread symmetrically to MemoryManager.DoneThread.
Use 'libgstreamer-1.0' for all targets but Windows OSes
* Add simple redis client by Mario Ray Mahardhika. Manual merge of MR !466
libxml: update nad fix libxml2 headers, added dynamic loading capability, libxslt and libexslt headers.
On aarch64-win64 system, C 'long' type is also a 32-bit type, as for x86_64-win64
* Actually use SubStrLen in pos() function. Fixes issue
gitlab 0041350
* Fix compilation with namespaces
Simplify UTF8Encode & Decode.
For JVM, use float64xxx wrappers instead of unsupported lvalue casts.
Fix variable i range of values in procedure InitInterfacePointers(objclass: tclass;instance : pointer);
Fix variable i range of values in class function TObject.InitInstance(instance : pointer) : tobject;
Fix variable i range of values in class function TObject.GetInterfaceEntry(const iid : tguid) : pinterfaceentry;
Fix variable i range of values in class function TObject.GetInterfaceEntryByStr(const iidstr : shortstring) : pinterfaceentry;
Let Copy(string, start, count) reuse the existing allocation.
Fix
gitlab 0041380 by shifting left second AnsiChar for SND_ALIAS_XXX constants
* check for FPC_ABI_WIN64 instead of just WIN64 in x86_64 specific RTL files
* also check for FPC_ABI_WIN64 instead of WIN64 for the jmp_buf declaration
* properly initialize prev in the various fpc_val_*_shortstr functions as otherwise the JVM's verifier will complain about the corresponding register not containing the valid type as there can be a path from the start of the function where the register is not initialized (Note: -OoDFA also reports these!)
* remove packed from TTlsDirectory, packed makes no sense for API structures on Windows
and it might cause them to get wrongly aligned, found by Alfred Glänzer and reported in
gitlab 0041428
Regenerate main Makefile after last change to fpcmake.ini
Specialized huge chunk manager for the case of no SysOSFree.
* Arrays used in CreateCIF must remain allocated while calling ffi_call.
* tag from cvs times removed
Add missing test object files
Fix typo in directory name of intrinsics.inc
Correct directory naming in rtl/bsd/powerpc64
Update SIGFPE handling in sighnd.inc
Update SIGFPE fault codes
* Introduce overloads for ClassNameIs
* Typecast correct filename in FileGetDateTimeInfo. Fixes issue
gitlab 0041534
Fix targets without AnsiString feature
by removal of ClassNameIs overload with RTLString
type because RTLString=ShortString when
the target does not support AnsiString.
* Add TObject lifetime tracking possibility
* Add unit initialization tracking hook
Update SignalToRunerror codes in sighnd.inc
Remove changes for powerpc64
* RiscV32: assembler implementations of SwapEndian
Update PowerPC64 syscall.inc
Update PowerPC64 syscall.inc
Add missing file rtl/powerpc/cpuinnr.inc
Add missing rtl/powerpc/cpuprocs.inc
Add missing rtl/powerpc/intrinsics.pp
Do not use FPC_USE_INTRINSICS on some old target OSes
Fix erroneous double inclusion of classesh.inc file
Fix compilation of i386-win32 target
* Added missing namespaced System.Intrinsics.pp
Typo fix in rtl debug string.
Typo fix in comments for installer.
Mas typo fixes in strings for utils.
Fix compilation of i386-nativent RTL
Comment fix (rtl). Char not AnsiChar.
+ added makefiles for fpalsa
* Add missing namespaces.lst
Skip nil tails when finalizing pointer arrays.
Split RecordRTTI into FinalizeRecordFields and AddRefRecordFields.
* handle ...^ correctly for multiple writes in iso mode, resolves
gitlab 0041609
FPIndexer: Fixed compilation of "TestDBIndexer" example due to incorrect dependency
FPIndexer: Fixed compilation of "DocIndexer" example on Windows with the "cwstring" and "cthreads" units
FPIndexer: Fixed compilation of "HTTPSearch" example due to a typo in the directive
SDO: Fixed compilation of "XSD2Pas" example on Windows with the "cwstring" unit
* update ident message in cprt, after comment on 1afc052c
* Freebsd idents to 1500068
Correct dotted unit name.
Changed the inc files to compile the RTL package too.
Using the web assembly operational systems variable.
Update file names to correct names.
Only compile unicode string if the define exists.
Allow to define the output unit directory.
Binary loading components.
Also remove binaries with different EXEEXT in distclean rule
Correctly remove dosbox_wrapper related generated files for make distclean rule
Revert "Binary loading components."
This reverts commit a5b7617b26824586d20eed1b82677be2236d5c8d
* Always call inherited destructor
* save the correct blocktype field in tnode.ppuwrite
Do not set run directory, if there is no specific run directory configured. Fixes issue
gitlab 0038470.
Fixed AV on application start
* Add second fenced codeblock with info string. Fixes issue
gitlab 0041673
fcl-css: parse @media rule only, and, or conditions
* Call inherited destructor
fcl-css: parse @media rule nested rules, resolve boolean media condition
compiler: fixed checking all used units even indirect before setting ms_compiled
* Make include file unique, type cannot be set and enum at once
Correctly update statements inside tbblocknode.pass_1 method
compiler: fixed error on system.ppu not found, better debug on invalid reload
compiler: Add only when inlinecleanupblock has actual content, fixing issue
gitlab 0041655