Download Latest Version Exe2Image.jar (12.4 kB)
Email in envelope

Get an email when there's a new version of maXbox

Home / Examples / maxbox5reference
Name Modified Size InfoDownloads / Week
Parent folder
examples 2024-08-22
docs 2024-07-22
crypt 2024-07-22
astroids_res 2024-07-05
maXbox52.exe 2025-06-06 75.9 MB
Sternenhaufen_Max_SunoAI.mp3 2025-05-04 3.1 MB
maXbox5.exe 2024-08-30 75.0 MB
GAPIKEY.INC 2024-08-30 180 Bytes
fMain.pas 2024-08-30 469.7 kB
WebView2Loader.dll 2024-07-22 138.7 kB
README.txt 2024-07-22 175.7 kB
reoverview.rtf 2024-07-22 13.8 kB
pas_includebox.inc 2024-07-05 22.7 kB
maxboxlog.log 2024-07-05 376.0 kB
maxboxerrorlog.txt 2024-07-05 1.4 kB
maxboxdef.ini.BACKUP 2024-07-05 1.2 kB
maxboxdef.ini 2024-07-05 1.2 kB
maXboxCertAuth3.cer 2024-07-05 530 Bytes
dmath64.dll 2024-07-05 4.3 MB
maxbox_starter_testsequence51.bat 2024-07-05 978 Bytes
firstdemo.txt 2024-07-05 98.7 kB
bds_delphi.dci 2024-07-05 119.2 kB
Totals: 22 Items   159.7 MB 1
maXbox5 alpha version 5.0.1.21 beta
maXbox5 alpha version 5.0.1.22 beta Ocean550
maXbox5 alpha version 5.0.1.22 beta Ocean560
maXbox5 beta  version 5.0.2.24 beta Ocean580  20/11/2023
maXbox5 beta  version 5.0.2.28 beta Ocean590  25/11/2023
maXbox5 beta  version 5.0.2.30 beta Ocean600  28/11/2023
maXbox5 beta  version 5.0.2.30 beta Ocean600  06/12/2023
maXbox5 beta  version 5.0.2.31 beta Ocean610  11/12/2023
maXbox5 beta  version 5.0.2.40 beta Ocean620  16/12/2023
maXbox5 beta  version 5.0.2.40 beta Ocean640  22/12/2023
maXbox5 beta  version 5.0.2.60 beta Ocean660  02/01/2024
maXbox5 beta  version 5.0.2.70 beta Ocean670  05/01/2024
maXbox5 beta  version 5.0.2.80 beta Ocean680  17/01/2024
maXbox5 beta  version 5.0.2.90 beta Ocean690  28/01/2024 🐞
maXbox5 beta  version 5.0.2.95 beta Ocean690  01/02/2024 🐞
maXbox5 beta  version 5.0.3.40 beta Ocean710  04/02/2024 🐞
maXbox5 beta  version 5.0.3.60 beta Ocean720  12/02/2024 🐞
maXbox5 beta  version 5.0.4.60 beta Ocean740  15/02/2024 🐞
maXbox5 beta  version 5.0.4.70 beta Ocean750  18/02/2024 🐞
maXbox5 beta  version 5.0.4.70 PE XN beta Ocean750  24/02/2024 🐞
maXbox5 beta  version 5.1.4.70 PE XN beta Ocean770  25/02/2024 🐞
maXbox5 beta  version 5.1.4.80 UnitExplor Ocean780  01/03/2024 🐞
maXbox5 beta  version 5.1.4.80 UnitExplor Ocean800  03/03/2024 🐞
maXbox5 beta  version 5.1.4.80 UnitExplor Ocean820  08/03/2024 🐞
maXbox5 beta  version 5.1.4.80 UnitExplor Ocean840  10/03/2024 🐞
maXbox5 beta  version 5.1.4.90 UnitExplor Ocean840  15/03/2024 🐞
maXbox5 beta  version 5.1.4.90 UnitExplor Ocean860  21/03/2024 🐞
maXbox5 beta  version 5.1.4.95 UnitExplor Ocean870  17/04/2024 🐞
maXbox5 beta  version 5.1.4.95 II WebUtil Ocean880  19/04/2024 🐞
maXbox5 beta  version 5.1.4.98 I WebUtil  Ocean890  26/04/2024 
maXbox5 beta  version 5.1.4.98 II WebUtil Ocean900  30/04/2024 🐞
maXbox5 beta  version 5.1.4.98 III WebUtil Ocean910  03/05/2024 🐞
maXbox5 beta  version 5.1.4.98 IV  WebUtil Ocean920  06/05/2024 🐞
maXbox5 beta  version 5.1.4.98 V  WebUtil Ocean920  07/05/2024 🐞
maXbox5 beta  version 5.1.4.98 VI  WebUtil Ocean930  13/05/2024 🐞
maXbox5 beta  version 5.1.4.98 VII  WebUtil Ocean940  15/05/2024 🐞
maXbox5 beta  version 5.1.4.98 VIII  WebUtil Ocean950  24/05/2024 🐞
maXbox5 beta  version 5.1.4.98 IX WebUtil Ocean950  25/05/2024 🐞
maXbox5 beta  version 5.1.4.98 X WebUtil Ocean960  08/06/2024 🐞
maXbox5 beta  version 5.1.4.98 XI WebUtil Ocean960  09/06/2024 🐞
maXbox5 beta  version 5.1.4.98 XII WebUtil Ocean970  16/06/2024 🐞
maXbox5 beta  version 5.1.4.98 XIV WebUtil Ocean980  26/06/2024 🐞
maXbox5 beta  version 5.1.4.98 XV WebUtil Ocean990  30/06/2024 🐞
maXbox5 beta  version 5.1.6.98 XVI WebUtil Ocean1000  22/07/2024 🐞


------------------------------------------------------
This file was provided by: https://github.com/maxkleiner/maXbox4/tree/master/source2023_1_64bitbox

Windows 11, version 23H2
2024-04 Cumulative Update for Windows 11 Version 23H2 for x64-based Systems (KB5036893)
2024-04 Cumulative Update for .NET Framework 3.5 and 4.8.1 for Windows 11, version 23H2 for x64 (KB5036620)

If you downloaded it from somewhere else, please let us know: maxkleiner1@gmail.com
https://maxbox4.wordpress.com/
Primo loco - Fac totum  - Actas volat - maxbox5.zip has 310 files

maxkleiner
22.07.2024 15:11
Release Notes maXbox 5.1.6.98 XVI July 2024 Ocean1000
SHA1: 5.1.6.98 XVI maXbox5.exe afeb2c82bc24407be76b5fe36c9a4613c3f70817
SHA1: ZIP maxbox5.zip E2DD06DBDE1DE2DC7278247CAD6BCA11658401B0

maxkleiner
30.06.2024 16:12
Release Notes maXbox 5.1.4.98 XV June 2024 Ocean990
SHA1: 5.1.4.98 XV maXbox5.exe b05a4d880fefe2b15b821b3780a71104299581fc
SHA1: ZIP maxbox5.zip DB0FDFE1AB39E3E24D7E7F558241D14A6F6C2C19

maxkleiner
26.06.2024 12:27
Release Notes maXbox 5.1.4.98 XIV June 2024 Ocean980
SHA1: 5.1.4.98 XIV maXbox5.exe c8dba4bf0d6197550f91e4b7f30c03af5e5eb4e7
SHA1: ZIP maxbox5.zip B5493BAAA40DA0C0F3E13C9ECCFEBE07F6E03E72

maxkleiner
16.06.2024 22:53
Release Notes maXbox 5.1.4.98 XII June 2024 Ocean970
SHA1: 5.1.4.98 XII maXbox5.exe ac23d30dcc318935aab2f74853dec299d74845e6
SHA1: ZIP maxbox5.zip 9E09478DF5CBD8902F27F9EBF53266D520F73D69


Contains ModulesCountEnd___: 3734

*****************************************************************
Release Notes maXbox 5.1.6.98 July 2024 mX516 beta64-bit🐞
*****************************************************************
Add 48 Units (of 3734) + 22 Tutorials
- install or update certificate maXboxCertAuth3.cer
- for https Indy SSL unpack ./crypt/openssl-1.0.2u-x64_86-win64.zip
- for python4maxbox install Python 3.11.9 or 3.12.4 64-bit
- test with ./maxbox_starter_testsequence51.bat
- optional: on 2880 x 1800 set scale 150% (140 DPI)
- edgeview2 runtime kit VCL.Edge, RichEdit Control5

MD5 063f7192c73a00cd54f4614610ed1589 
SHA-1 afeb2c82bc24407be76b5fe36c9a4613c3f70817 
SHA-256 14a31204506302cdd1c2ae3cc384ad57aa543133dc61c1774ddb3dafa13bd324

zip: e2dd06dbde1de2dc7278247cad6bca11658401b0

https://github.com/adaloveless/commonx/blob/master/FramePiano.pas

maxbox5.zip has 305 files

MD5 bd696270d8447c32091b55b5a46266d7 
SHA-1 64c3a791843c1c81f85d9cf7f448010d743e9ee4 
SHA-256 e836ea77d7d560678519c4775a81c5564257e6b9c1b501e0670d5b9592480a5e

MD5
3594ea5dae8cac05ccfad4e17ffcd9e8 
SHA-1
5dfee8026417285731d3387af2e893fa6964c29a 
SHA-256
5d22e866d16f0054b71cad85d8f4fdf106a703b8b762012f4f75cc774cb26e1b

maxkleiner
08.06.2024 16:07
Release Notes maXbox 5.1.4.98 X June 2024 Ocean960
SHA1: 5.1.4.98 X maXbox5.exe 223fabc5473da22000966ce9dc17080a63ebb703
SHA1: ZIP maxbox5.zip 8287D0BF7A61C60F64B6BE5552013895E53047D4


Viruscheck as clean at:
https://www.virustotal.com/gui/file/14a31204506302cdd1c2ae3cc384ad57aa543133dc61c1774ddb3dafa13bd324/detection
https://www.virustotal.com/gui/file/963a9dd6517ba351dccb62ef966915fdc010ddb6212e7a06330ae1c464a01b59/detection
https://www.virustotal.com/gui/file/161183ff429b9190cda152783168ad32a10594bbc8504991cd04dcb362af11e2/detection
https://www.virustotal.com/gui/file/74c27745b24e648640539b8cd79d76a5edf6fb760deafdecd5d603cbd0022ec7/detection
https://www.virustotal.com/gui/file/e836ea77d7d560678519c4775a81c5564257e6b9c1b501e0670d5b9592480a5e/detection
https://www.virustotal.com/gui/file/e836ea77d7d560678519c4775a81c5564257e6b9c1b501e0670d5b9592480a5e?nocache=1
https://www.virustotal.com/gui/file/5d22e866d16f0054b71cad85d8f4fdf106a703b8b762012f4f75cc774cb26e1b/detection
https://www.virustotal.com/gui/file/ef0747447bc8fe158fb4368bbdda2ad4f612dead10b46dbfe2ad1ad664ffa4ab/detection
https://www.virustotal.com/gui/file/bc14fe78dd6c1ed3f8fb9d713eed63d536e7da14b5d814bf61b0fc6c60fae95d/detection
https://www.virustotal.com/gui/file/2b552e5e8ae7cb966f8366fb0ca9498ef231c4e703fe839f2bba44fdccd325e3?nocache=1
https://www.virustotal.com/gui/file/42799b0aa7d3131b0bd8251e1b388823bf73142fd1ab0834dc8d31792adf74d4/detection
https://www.virustotal.com/gui/file/d68874db1278013f911ddb542995100410476d12887b42892a9a13678503789d/detection
https://www.virustotal.com/gui/file/f99b01f2487aca1a1e0eb2f7574ef12e0f0f3aad8fa84cccb9542141c1c38505/detection
https://www.virustotal.com/gui/file/57b32d1a731a1f145b2efd6228157a5d02b110f3fe69e69be5a2f82840401faf/detection
https://www.virustotal.com/gui/file/334582f819ca37e245457c8917aacbe47d4c41f4530e109bfe248f35d0d88fbb/detection
https://metadefender.opswat.com/results/file/bzI0MDUwM0k1SzFpQTc1TWNwSFlINFhSNHM_mdaas/regular/overview
https://www.virustotal.com/gui/file/289b11bea0f3ed0a3f4d7ca5a9f4ae2e23d477ba8e0f37fdc406b6cf6715205f/detection
https://www.hybrid-analysis.com/sample/6ea28dba5aada00cfbd97d3cc1024b845ec64ef35f5db146edc92233d2ce15bd
https://www.virustotal.com/gui/file/6ea28dba5aada00cfbd97d3cc1024b845ec64ef35f5db146edc92233d2ce15bd/detection
https://metadefender.opswat.com/results/file/bzI0MDQyNm5lbVl6RGJ4S1ZpckFGZnh5SC1X_mdaas/regular/overview
https://www.virustotal.com/gui/file/6ea28dba5aada00cfbd97d3cc1024b845ec64ef35f5db146edc92233d2ce15bd?nocache=1
https://www.virustotal.com/gui/file/d0c67eddb6494d8115f2f3e79babf962c9b577708306d1e904a4df6d917466fd/detection
https://www.virustotal.com/gui/file/30c690db62436ea717547a62b5f3eef83308159f6d51f6e87d87694dce24a949/detection
https://www.virustotal.com/gui/file/f1d09d3d7a98ac8b91618d47bdf7625867fb2b12e202d72f59ac312967257eb3/detection
https://www.hybrid-analysis.com/sample/f1d09d3d7a98ac8b91618d47bdf7625867fb2b12e202d72f59ac312967257eb3
https://www.virustotal.com/gui/file/b4c41dd487f28e2c3cad2285f048b640579f5a4b8ce08d889e99b7c2122fe566?nocache=1
https://www.virustotal.com/gui/file/21c11f025db024bdfbadf890c4d495f38a418fac4baefbd0af6a5c687e6055a2?nocache=1
https://www.virustotal.com/gui/file/6c0883d1ac971b54b026e776b7d47a6d3ffa52b2083f18c85ccdbcf1f5b0b3e8/detection
https://www.virustotal.com/gui/file/2a965afa61b2717ae0af5d683cb7b9d0fa17356027f68919751ea748dedfb90c/detection
https://www.virustotal.com/gui/file/f2d163a0d20beec76d860dd3376d3fe7088afd878cedb1d3a2a4ada56c36916f/detection
https://www.virustotal.com/gui/file/4580bf9ec64db20fc102b539ccff9fa7ecf0a8a1648d2ff147df83ca34768e07/detection
https://www.virustotal.com/gui/file/442681ad017536c569230b5f78d8fd4dcebd9e2adc1559d50e68ac9a0e57a8aa/detection
https://metadefender.opswat.com/results/file/bzI0MDMwMzF6cWNBQVpoOEJwTjlFWkJ2cDc_mdaas/regular/overview
https://www.hybrid-analysis.com/sample/442681ad017536c569230b5f78d8fd4dcebd9e2adc1559d50e68ac9a0e57a8aa

https://www.virustotal.com/gui/file/b985359cba2be29838b8dafdca41f9042d919254e59d36def159b49f6d078516/detection
https://www.virustotal.com/gui/file/27a2f95c2c344a59b90b46bf37dcfdc61f59c756abfc4660fc8916b7d7183138/detection
https://www.virustotal.com/gui/file/c757ee7323a60e67bf2716a06dc8bbde8e79cc4b7dd0b6e632d42c6a9e286def/detection
https://www.virustotal.com/gui/file/04ca4906fa42471a019f961551558d06d748223efc1a8e33e296f84fe88b6913/detection
https://metadefender.opswat.com/results/file/bzI0MDIyNWt2bFZIWFdHQUZRY2J2a0ROUm0_mdaas/regular/overview
https://www.hybrid-analysis.com/sample/04ca4906fa42471a019f961551558d06d748223efc1a8e33e296f84fe88b6913

https://www.virustotal.com/gui/file/ed66799c5b76fcccfca1515b0188d5f8ac41dce49f0410ba76ffb913d2df8955/detection
https://metadefender.opswat.com/results/file/bzI0MDIyNGJOcXh5VDFMallxaTBMd1YtbGg_mdaas/regular/overview
https://www.hybrid-analysis.com/sample/ed66799c5b76fcccfca1515b0188d5f8ac41dce49f0410ba76ffb913d2df8955

https://www.virustotal.com/gui/file/998280f98383457e9148bb73f0787b25f3173af1aa52a854dcd78cc52bb0df2b/detection
https://metadefender.opswat.com/results/file/bzI0MDIxOElhRDNoUVBueXJIdDBvU0pla0k_mdaas/regular/overview
https://www.hybrid-analysis.com/sample/998280f98383457e9148bb73f0787b25f3173af1aa52a854dcd78cc52bb0df2b

https://www.hybrid-analysis.com/sample/998280f98383457e9148bb73f0787b25f3173af1aa52a854dcd78cc52bb0df2b/65d217cfbed42b0ab202c037
https://www.virustotal.com/gui/file/5439e647a22a33aa87caaea96adc16f867c78321ea5249fc3a92a7a6fe2980fa/detection
https://metadefender.opswat.com/results/file/bzI0MDIxNkUtVks1emF2OVhMY2laazFwa3o_mdaas/regular/overview

https://www.virustotal.com/gui/file/928326a4211b50edc4fcd88aa001d19c69d1bc33292dc121c4c7d7d5a4c1eaf9/detection
https://metadefender.opswat.com/results/file/bzI0MDIxNUxvY2xxWFN2VDhHSHdKZ0xsbFE_mdaas/regular/overview
https://www.hybrid-analysis.com/sample/928326a4211b50edc4fcd88aa001d19c69d1bc33292dc121c4c7d7d5a4c1eaf9
https://www.virustotal.com/gui/file/90de12e5f0ff2307023ff96644be35a976ea1ea3df497e1060cca3f11c5918bc/detection
https://metadefender.opswat.com/results/file/bzI0MDIxMktiTUpkWnl5YmtaVjh3OEk2Rl9w_mdaas/regular/overview
https://www.hybrid-analysis.com/sample/90de12e5f0ff2307023ff96644be35a976ea1ea3df497e1060cca3f11c5918bc/65ca1e1c20f2c83e7a086b7b
https://www.virustotal.com/gui/file/4bf74727ef80b99a10ef7daf8a0c2be4b54415387df87cf57ed9d334ca826088/detection
https://www.virustotal.com/gui/file/7d0f6a42f1fc75f82bace5ce1704018839b2366b7689a40b1bef0f39fb169d96/detection
https://www.hybrid-analysis.com/sample/5c6fd68214935dcbe13ed14529a265d2d4a12a2cfabbdb2c43754118bcecc615
https://www.virustotal.com/gui/file/5c6fd68214935dcbe13ed14529a265d2d4a12a2cfabbdb2c43754118bcecc615/detection
https://www.virustotal.com/gui/file/066f5aae5692f24e96ab3660c3f3a9d5d36f8eb3445f095a49282727d5c5ded6/detection
https://www.virustotal.com/gui/file/be155feccff2bb8aa79bf50cdb2c809ec74937fd7afd0a35311bd33feb14ae51/details
https://www.virustotal.com/gui/file/a0cb07f0ada81f317b8bdda7ada408619624a1148347c5365ed3fa2d8fae4862/detection
https://www.virustotal.com/gui/file/faaa1ecf193afb5bfe1f3dd489ca830db38a3ad67ca0e2cad54fc0256d45d40e/detection
https://www.virustotal.com/gui/file/84dd7e157da55d608cba95feb7d705ccda48cdf7c980fec964c183198741e0db/detection
https://www.virustotal.com/gui/file/da34199785ae5371e2cf8a23a12b68295f7c968ba0c8a24f367baf0c5f091439/detection
https://metadefender.opswat.com/results/file/bzI0MDEwMTJJSTN0R3h5dHV6MS1wdzBpLWo_mdaas/regular/sandbox/details
https://www.virustotal.com/gui/file/f64df137d0ae2fc724d3bbd419c850b9262554776aadfed03c0b5cb27e7806bb/detection
https://www.virustotal.com/gui/file/f58817db55eabd401ee37539434f0fdcb0453eddd3864aac0668c48265e720f2/detection
https://www.virustotal.com/gui/file/048dae8dab0df4bc6b3f77233a3a4c8f2ca0a56517a9861bb94c2179cfdb87fe/detection
https://www.virustotal.com/gui/file/0d31956549a268645a2616f0c358772042f44f69714d4f0de6ba455d99f40855/detection
https://www.hybrid-analysis.com/sample/a6215ee348a7434b90f215362731337c36bb6e711c61d5cf5fdc213e6e9ee36f/657191c420cba00ce108a768
https://www.virustotal.com/gui/file/a6215ee348a7434b90f215362731337c36bb6e711c61d5cf5fdc213e6e9ee36f/detection
https://www.hybrid-analysis.com/sample/f999d8522736906d9c93c1867ec536c3dbdd6ec8a939982572534835f7253743
https://www.virustotal.com/gui/file/f999d8522736906d9c93c1867ec536c3dbdd6ec8a939982572534835f7253743/detection
https://www.virustotal.com/gui/file/3e1dee4a7d1120b8b706d6d08bfc756fe8a13abd4df0317958f7b6a0e4c8ee0d/detection
https://www.virustotal.com/gui/file/cae3a4eae8f3bcfbd972c4675894891f35d5ef97c326624e0e8b2f585aea0911?nocache=1
https://www.virustotal.com/gui/file/ee1d20b3e44855308813d54b3768a97c842524e1a021ec6adfacb022e523a40f?nocache=1
https://www.virustotal.com/gui/file/00e6bb40d6e3ab176e5d9024b52975d710df5ad0cdfb79e5ce255db8a386bf10?nocache=1
https://www.virustotal.com/gui/file/ffd69c30dbe891a029451899400be4409ebf78718ec8fc2ec5ceaf13a01238d8/detection
https://www.virustotal.com/gui/file/1058b2b6004a73ebd6d4b3ecc54b36dec94be97c0c2c75e406d266712b3db011/detection
https://www.virustotal.com/gui/file/0c0851d0ebe022fa42360465d803cdc11e6ae81b688ac3a8a4f06e6203914ff2/detection
https://www.virustotal.com/gui/file/67dee7d584bd6d53bef4f6891b9b73521302cdc66a2c4cc7d8ea96939bed6450/detection
https://www.virustotal.com/gui/file/34040f3dd5f929ef4b3142bf3b2a206057ef58956595ecfa7ab2cd91e4e66ee5/detection
https://www.virustotal.com/gui/file/ce681d23c7e3ec6febc0af5e7fd87674d65e63f595641e87092c01957a27f894/detection
https://www.virustotal.com/gui/file/82591ab1b613368f3a4c235300d79bc958867244326292d9ec940619dc874afe/details
https://www.virustotal.com/gui/file/2100cc8d605b5396f3acdb4c235615281b3938767270517f102afc6bb48c582a/detection
https://www.virustotal.com/gui/file/3659aa9ef8e9e85da0bef15c6f9af88da869023c549b98688cba7a6062966dcf/detection
https://www.virustotal.com/gui/file/dc542ca67bec024448447e01e31197cda60374e47b7f4c61ece2d79c8312e375/detection
https://www.virustotal.com/gui/file/5af156d782e755b35fccd72dcb4cea8729c50c332fc00e69272028297bf2373d/details

https://github.com/Delphi-FPC-Lazarus/DelphiLazarus_UnicodeUtil/blob/master/unicode_util_unit.pas
The individual DLL files like dmath64.dll are provided free of charge with the understanding that the user is familiar with their use.

If you need further information, please see:
https://maxbox4.wordpress.com/
or ask your question in the forum:
https://github.com/maxkleiner/maXbox4/issues
https://forum.dll-files.com/

DISCLAIMER AND LIMITATION OF LIABILITY

The Following Refers to all Files with the Extension of "dll" or dlls compressed as "zip" or files as "exe" or compressed as "zip".

All files are provided on an as is basis. No guarantees or warranties are given or implied. Downloading files from this site is free of charge and the user assumes all risks of any damages that may occur, including but not limited to loss of data, damages to hardware, or loss of business profits. We do our best to ensure that all files are virus-free using available means. However, all files have not been tested for functionality or contamination. Many have been sent to us by visitors like yourself. Thus, we suggest that you do a virus scan using an up-to-date version of an anti-virus program before use. Please use at your own risk.setuptools~=68.2.0
PyQt5~=5.15.10
pyqtgraph~=0.13.3
xmltodict~=0.13.0
networkx~=3.1
pytest~=8.0.0
pytest-cov~=4.1.0

function chat(const Token, Prompt: string; const Model: string): string;
begin
  try
    var API: IOpenAI := TOpenAI.Create(Token);
    var Chat := API.Chat.Create(
      procedure(Params: TChatParams)
      begin
        Params.Model(Model);
        Params.Messages([TChatMessageBuild.User(Prompt)]);
      end);
    try
      if Length(Chat.Choices) > 0 then
        Result := Chat.Choices[0].Message.Content;
    finally
      Chat.Free;
    end;
  except
    on E: Exception do
      Result := 'Error "' + E.Message + '"';
  end;
end;

 url := 'https://api.openai.com/v1/chat/completions
 function TChatGPT4Delphi_Query(aurl, sMessage, Fapikey: string): string;
 function ChatGPT4Delphi(aurl, sMessage, Fapikey: string): string;


 function TChatGPT4Delphi_Query(aurl, sMessage, Fapikey: string): string;
var
  http: TIdHTTP;
  sslHandler: TIdSSLIOHandlerSocketOpenSSL;
  url, body, Response: string;
  JSON: TJSONObject;
  Choices: TJSONArray;
begin
  if aurl = '' then
     url := 'https://api.openai.com/v1/chat/completions' else
     url:= aurl;
  body := Format
    ('{"model": "%s", "messages": [{"role": "user", "content": "%s"}]}',
    ['gpt-3.5-turbo', sMessage]);
  http := TIdHTTP.Create(nil);
  sslHandler := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
  try
    sslHandler.SSLOptions.Method := sslvTLSv1_2;
    http.IOHandler := sslHandler;
    http.Request.ContentType := 'application/json';
    http.Request.Accept := 'application/json';
    http.Request.CharSet := 'UTF-8';
    http.Request.CustomHeaders.AddValue('Authorization',
      Format('Bearer %s', [FApiKey]));
    try
      Response := http.Post(url, TStringStream.Create(body, TEncoding.UTF8));
    except
      on E: EIdHTTPProtocolException do
        raise Exception.CreateFmt('Indy mX5 exception (%d): %s',
          [E.ErrorCode, E.Message + sLineBreak + E.ErrorMessage]);
      // retorna a exceção com raise
    end;
    Response := IndyTextEncoding_UTF8.GetString
      (IndyTextEncoding_OSDefault.GetBytes(Response));
    JSON := TJSONObject.ParseJSONValue(Response) as TJSONObject;
    Choices := JSON.GetValue('choices') as TJSONArray;
    Result := Choices.Items[0].GetValue<TJSONObject>('message')
      .GetValue('content').Value;
  finally
    http.Free;
    sslHandler.Free;
  end;
end;


writeln(GETDOSOutput('cmd.exe /c fc units1.txt units2.txt',
                                         'C:\maxbox\maxbox51\examples'));
Comparing files units1.txt and UNITS2.TXT  64 Units
1CursorGraphicsResourceForm
2CurvesAndSurfaces
3FileMD3
4GeometryBB
5GeometryCoordinates
6gl_actorUnit1
7GLBaseMeshSilhouette
9GLCadencer
9GLContext
10GLCrossPlatform
GLFileMD3
GLGraphics
GLMesh
GLMisc_
Globfct
GLObjects
GLParticleFX
GLScene_
GLScriptBase
GLScriptPython
GLShadowPlane
GLSilhouette
GLState
GLStrings
GLTexture
Glut
GLUtils
GLVectorFileObjects
GLWin32Context
GLWin32Viewer
HttpClasses
HttpConnection
HttpUtils
MeshUtils
Octree
OpenGL1x
panUnit1
PerlinNoise
PictureRegisteredFormats
Polynomials
PythonVersions_class
Q3MD3
Spline_
uPSI_GeometryBB
uPSI_GeometryCoordinates
uPSI_gl_actorUnit1
uPSI_GLCrossPlatform
uPSI_GLScriptPython
uPSI_Glut
uPSI_HttpClasses
uPSI_HttpUtils
uPSI_MeshUtils
uPSI_panUnit1
uPSI_Polynomials
uPSI_unitCharsetMap
uPSI_VectorGeometry
uPSI_VectorLists_
uPSI_VRMLParser
uPSI_XnClasses
VectorGeometry_
VectorLists_
VectorTypes
VRMLParser
XnClasses
XOpenGL
*****
uPSI_XnClasses.pas
uPSI_unitCharsetMap.pas

writeln(GETDOSOutput('cmd.exe /c fc units1.txt units2.txt',
                                         'C:\maxbox\maxbox51\examples'))  //}

V5.1.4.98 III
GLCanvas
GLNavigator
GLParticles
GLStarRecord
JclComplex
uPSI_GLCanvas
uPSI_GLNavigator
uPSI_GLParticles
uPSI_GLSilhouette
uPSI_GLStarRecord
uPSI_JclComplex

V5.1.4.98 IV
ALAVLBinaryTree2
ALCommon
(ALExecute2)
ALFBXBase
ALFBXClient
ALFBXConst
ALFBXError
ALFBXLib
ALString_
ALWebSpider
uPSI_ALFBXClient
uPSI_ALFBXLib
uPSI_ALWebSpider

V5.1.4.98 V
ALFcnSQL
AlMySqlClient
ALMySqlWrapper
PJCBView
uPSI_ALFcnCGI
uPSI_ALFcnSQL
uPSI_AlMySqlClient
uPSI_DataSetUtils

V5.1.4.98 VII - 3705 Units
ESBDates
GpTimezone
hhAvALT
JclPCRE2
maXbox5_14beta90
SqlTxtRtns
uPSI_GpTimezone
uPSI_hhAvALT
uPSI_JclPCRE2
uPSI_SqlTxtRtns

V5.1.4.98 VIII - 3714 Units
AsciiShapes
IdWebSocketSimpleClient
uPSI_AsciiShapes
uPSI_IdWebSocketSimpleClient
uPSI_uWebUIMiscFunctions

uWebUIConstants
uWebUILibFunctions
uWebUIMiscFunctions
uWebUITypes

V5.1.4.98 IX - 3720 Units
ExecuteGLPanel
ExecuteidWebSocket
uPSI_ExecuteGLPanel
uPSI_ExecuteidWebSocket
Winapi.OpenGL
Winapi.OpenGLext

V5.1.4.98 X - 3721 Units
uPSI_IdCustomTCPServer.pas

V5.1.4.98 XI - 3725 Units
numbers
typex
uPSI_IdCustomTCPServer
uPSI_WebString
WebString

V5.1.4.98 XIV - 3730 Units
McJSON
REST.Json
uPSI_McJSON
System.JSON.Utils
unit SynMiniMap;

V5.1.6.98 XVI - 3734 Units
EdgeMain
maXbox5_16beta90
reabout
remain
uPSI_EdgeMain



Comparing files units1.txt and UNITS2.TXT
***** units1.txt
SynHighlighterDfm
SynHighlighterEiffel
***** UNITS2.TXT
SynHighlighterDfm
SynHighlighterDWS
SynHighlighterEiffel
*****

***** units1.txt
SynMemo
SynPdf
***** UNITS2.TXT
SynMemo
SynMiniMap
SynPdf
*****

***** units1.txt
***** UNITS2.TXT

https://www.virustotal.com/gui/file/161183ff429b9190cda152783168ad32a10594bbc8504991cd04dcb362af11e2/detection
https://www.virustotal.com/gui/file/74c27745b24e648640539b8cd79d76a5edf6fb760deafdecd5d603cbd0022ec7/detection
https://www.virustotal.com/gui/file/e836ea77d7d560678519c4775a81c5564257e6b9c1b501e0670d5b9592480a5e/detection
https://www.virustotal.com/gui/file/5d22e866d16f0054b71cad85d8f4fdf106a703b8b762012f4f75cc774cb26e1b/detection
https://www.virustotal.com/gui/file/bc14fe78dd6c1ed3f8fb9d713eed63d536e7da14b5d814bf61b0fc6c60fae95d/detection

The specified operation is not supported while virtualization is enabled on the target object

CL.AddDelphiFunction('function GetScreenDPI : integer;');
 CL.AddDelphiFunction('function GetDeviceScaleFactor: single');
function CustomURLDecode(const aEncodedStr : wvstring) : AnsiString;
function EscapeCommandLineParameter(const aParameter : string) : string;


https://github.com/salvadordf/WebView4Delphi/blob/main/source/uWVMiscFunctions.pas

function GetIP2: string;
{$IFDEF DESKTOP_VCL}
var
  WSAData: TWSAData;
  HostEnt: PHostEnt;
  Name: AnsiString;
{$ENDIF}
begin
  {$IFDEF DESKTOP_VCL}
  WSAStartup(2, WSAData);
  SetLength(Name, 255);
  Gethostname(PAnsiChar(Name), 255);
  SetLength(Name, StrLen(PAnsiChar(Name)));
  HostEnt := gethostbyname(PAnsiChar(Name));
  with HostEnt^ do
    Result:=Format('%d.%d.%d.%d',[Byte(h_addr^[0]),
              Byte(h_addr^[1]),Byte(h_addr^[2]),Byte(h_addr^[3])]);
  WSACleanup;
  {$ENDIF}

  {$IFDEF WEB_UNIGUI}
  Result := UniApplication.RemoteAddress;
  {$endif}
end;

function GetIP2: string;
function GetInternetConnectionTCP(Url: string): Boolean;
function GetInternetConnection(Url: string): Boolean;
function ISProcessOpen(ExeName: string): Boolean;
procedure CheckPcreResult(const ErrorCode: integer);
function StrToASCIIZ(const Str: string): TBytes;
https://github.com/jdredd87/DelphiRegExTests
https://en.delphipraxis.net/topic/3073-regex-validate-string/
function ValidateChars(const Value, ValidChars: string): boolean;
function BytesToUnicodeString(const Bytes: SysUtils.TBytes): String;
procedure ImageFromStream(pImage: TImage; pData: TStream);
function TryISOToDate(const Text: string; out DateTime: TDate): boolean;
function TryISOToDateTime(const Value: string; out DateTime: TDateTime; TimeZoneMode: TTimeZoneMode): boolean; //overload;
function TimeToISO(const Value: TTime): string;'
function LocalToUTC2(const Value: TDateTime): TDateTime;$
function UTCToLocal2(const Value: TDateTime): TDateTime;$
function FileToBase64(const FileName: TFileName): TBase64Data2;
function StreamToBase64_2(Stream: TStream; const ContentType: string): TBase64Data2;

//https://github.com/HemulGM/DelphiOpenAI/blob/main/OpenAI.Utils.Base64.pas
type
 TBase64Data2 = record
    ContentType: string;
    Data: string;
    //function ToString: string;
  end;

function TBase64Data.ToString: string;
begin
  Result := 'data:' + ContentType + ';base64,' + Data;
end;
function GetFileContentType(const FileName: TFileName): string;
var
  LKind: TMimeTypes.TKind;
begin
  TMimeTypes.Default.GetFileInfo(FileName, Result, LKind);
end;

function FileToBase64(const FileName: TFileName): TBase64Data2;
var
  FS: TFileStream;
  Base64: TStringStream;
begin
  FS := TFileStream.Create(FileName, fmOpenRead);
  try
    Base64 := TStringStream.Create('', TEncoding.UTF8);
    try
      {$IF RTLVersion >= 35.0}
      TNetEncoding.Base64String.Encode(FS, Base64);
      {$ELSE}
      TNetEncoding.Base64.Encode(FS, Base64);
      {$ENDIF}
      Result.Data := Base64.DataString;
      Result.ContentType := GetFileContentType(FileName);
    finally
      Base64.Free;
    end;
  finally
    FS.Free;
  end;
end;

with CL.AddClassN(CL.FindClass('TComponent'),'THttpResponseC') do
  begin
    RegisterMethod('Constructor Create( AOwner : TComponent)');
     RegisterMethod('Procedure Free');
    RegisterMethod('Procedure SaveToFile( AFileName : String)');
    RegisterProperty('StatusCode', 'THttpStatus', iptr);
    RegisterProperty('StatusCode2', 'cardinal', iptr);
    RegisterProperty('Content', 'TBytes', iptr);
    RegisterProperty('ContentAsString', 'String', iptr);
    RegisterProperty('ContentAsAnsiString', 'String', iptr);
    RegisterProperty('ContentAsUTF8String', 'String', iptr);
    RegisterProperty('ContentType', 'String', iptr);
    RegisterProperty('ContentLength', 'Integer', iptr);
    RegisterProperty('Headers', 'THeaders', iptr);
  end;


 AdjustPath(path: string): string;
 function CreateCenterIterateMap(w,h: integer): TPointArray;
 //CreateCenterIterateMap(w,h: ni): TPointArray;  
 function DNSLookup(sHost: string): string;
 //reverseip2 //DNSLookup(sHost: string): string; 

class function TSistema.GetGPSStatus: Boolean;
{$IFDEF ANDROID}
var
  locationManager : JLocationManager;
{$ENDIF}
begin
{$IFDEF ANDROID}
  locationManager := TJLocationManager.Wrap( ((SharedActivity.getSystemService(TJContext.JavaClass.LOCATION_SERVICE)) as ILocalObject).GetObjectID);
  if locationManager.isProviderEnabled(TJLocationManager.JavaClass.GPS_PROVIDER) then
    Result := True
  else
    Result := False;
{$ELSE}
{$IFDEF IOS}
  if (not TCLLocationManager.OCClass.locationServicesEnabled) {or (TCLLocationManager.OCClass.authorizationStatus <> kCLAuthorizationStatusAuthorized) }then
    Result := False
  else
    Result := True;
{$ELSE}
  Result := True;
{$ENDIF}
{$ENDIF}
end;

class procedure TSistema.HabilitaGPS;
{$IFDEF ANDROID}
var
  Intent: JIntent;
{$ENDIF}
begin
{$IFDEF ANDROID}
  Intent := TJIntent.Create;
  Intent := TJIntent.JavaClass.init(StringToJString('android.settings.LOCATION_SOURCE_SETTINGS'));
  Intent.setPackage(StringToJString('com.android.settings'));
  TAndroidHelper.Activity.startActivity(Intent);
{$ENDIF}
{$IFDEF IOS}
//  TApplicationEvent.OpenURL(NSUrl.URLWithString(NSSTR(PChar('App-Prefs:root=Privacy&path=LOCATION'))));
{$ENDIF}
{$IFDEF FPC}
  UIApplication.sharedApplication.openUrl(NSUrl.URLWithString(NSSTR(PChar('App-Prefs:root=Privacy&path=LOCATION'))));
{$ENDIF}
end;

procedure SIRegister_unitCharsetMap(CL: TPSPascalCompiler);
begin
 CL.AddConstantN('CP_MAC','LongInt').SetInt( 10000);

 CL.AddTypeS('TCharFormat', 'record dbsize: integer; dwmask'
   +' : longint; dwEffects : longint; yHeight: longint; yOffset: Longint; crTextColor : TColor; bCharSet : byte;'
   +' bPitchAndFamily : byte; szFaceName: array[0..32 - 1] of Char; end');

 { CHARFORMATA = record
    cbSize: UINT;
    dwMask: Longint;
    dwEffects: Longint;
    yHeight: Longint;
    yOffset: Longint;
    crTextColor: TColorRef;
    bCharSet: Byte;
    bPitchAndFamily: Byte;
    szFaceName: array[0..LF_FACESIZE - 1] of AnsiChar;
  end;}
function AnsiNaturalCompareText(const S1, S2: string): integer;
AnsiNaturalCompareText(memo1.lines.text, memo2.lines.text);
      writ(roundtime2('07/05/2024',15,true));
      //PipeToFile(Filename: string; Cmd: string; Append: boolean): boolean;
PipeToFile(exepath+'maxboxerrorlog.txt','dir *.*',true);
function PipeToFile(Filename: string; Cmd: string; Append: boolean): boolean;
var
  SI: TStartupInfo;
  PI: TProcessInformation;
  Appnd: string;
  ComSpec: string;
  procedure GetComSpec;
  begin
    SetLength(ComSpec, MAX_PATH);
    FillChar(ComSpec[1], MAX_PATH, #0);
    if GetEnvironmentVariable('COMSPEC', PChar(ComSpec), MAX_PATH) = 0 then
      ComSpec := 'C:\WINDOWS\system32\cmd.exe' // best guess ?
    else
      ComSpec := string(PChar(ComSpec));
  end;
begin
  GetComSpec;
  GetStartUpInfo(SI);
  SI.wShowWindow := SW_HIDE;
  if Append then
    Appnd := ' >>'
  else
    Appnd := ' >';
  Cmd := string(PChar(ComSpec)) + ' /C ' + Cmd + Appnd + Filename;
  Result := CreateProcess(nil, PChar(Cmd), nil, nil, false, 0, nil, nil, SI, PI);
  try
    if Result then
    begin
      WaitForInputIdle(PI.hProcess, INFINITE);
      Result := WaitForSingleObject(PI.hProcess, INFINITE) <> WAIT_FAILED;
    end;
  finally
    CloseHandle(PI.hThread);
    CloseHandle(PI.hProcess);
  end;
  if not Result then
    RaiseLastOSError;
end;

procedure SIRegister_TMcJsonItem(CL: TPSPascalCompiler);
begin
  //with RegClassS(CL,'TOBJECT', 'TMcJsonItem') do
  with CL.AddClassN(CL.FindClass('TOBJECT'),'TMcJsonItem') do
  begin
    RegisterProperty('Count', 'Integer', iptr);
    RegisterProperty('Key', 'string', iptrw);
    RegisterProperty('Value', 'string', iptr);
    RegisterProperty('ItemType', 'TJItemType', iptrw);
    RegisterProperty('Keys', 'string Integer', iptr);
    RegisterProperty('Items', 'TMcJsonItem Integer', iptr);
    RegisterProperty('Values', 'TMcJsonItem string', iptr);
    SetDefaultPropery('Values');
    RegisterProperty('HasChild', 'Boolean', iptr);
    RegisterProperty('IsNull', 'Boolean', iptr);
    RegisterProperty('J', 'string string', iptrw);
    RegisterProperty('O', 'TMcJsonItem string', iptrw);
    RegisterProperty('A', 'TMcJsonItem string', iptrw);
    RegisterProperty('I', 'Integer string', iptrw);
    RegisterProperty('D', 'Double string', iptrw);
    RegisterProperty('S', 'string string', iptrw);
    RegisterProperty('B', 'Boolean string', iptrw);
    RegisterProperty('N', 'string string', iptrw);
    RegisterProperty('AsJSON', 'string', iptrw);
    RegisterProperty('AsObject', 'TMcJsonItem', iptrw);
    RegisterProperty('AsArray', 'TMcJsonItem', iptrw);
    RegisterProperty('AsInteger', 'Integer', iptrw);
    RegisterProperty('AsNumber', 'Double', iptrw);
    RegisterProperty('AsString', 'string', iptrw);
    RegisterProperty('AsBoolean', 'Boolean', iptrw);
    RegisterProperty('AsNull', 'string', iptrw);
    RegisterMethod('Constructor Create');
    RegisterMethod('Constructor Create0( aJItemType : TJItemType);');
    RegisterMethod('Constructor Create1( const aItem : TMcJsonItem);');
    RegisterMethod('Constructor Create2( const aCode : string);');
      RegisterMethod('Procedure Free');
    RegisterMethod('Procedure Clear');
    RegisterMethod('Function IndexOf( const aKey : string) : Integer;');
    RegisterMethod('Function Path( const aPath : string) : TMcJsonItem;');
    RegisterMethod('Function Add( const aKey : string) : TMcJsonItem;');
    RegisterMethod('Function Add1( const aKey : string; aItemType : TJItemType) : TMcJsonItem;');
    RegisterMethod('Function Add2( aItemType : TJItemType) : TMcJsonItem;');
    RegisterMethod('Function Add3( const aItem : TMcJsonItem) : TMcJsonItem;');
    RegisterMethod('Function Copy( const aItem : TMcJsonItem) : TMcJsonItem;');
    RegisterMethod('Function Clone : TMcJsonItem;');
    RegisterMethod('Function Insert( const aKey : string; aIdx : Integer) : TMcJsonItem;');
    RegisterMethod('Function Insert1( const aItem : TMcJsonItem; aIdx : Integer) : TMcJsonItem;');
    RegisterMethod('Function Delete( aIdx : Integer) : Boolean;');
    RegisterMethod('Function Delete1( const aKey : string) : Boolean;');
    RegisterMethod('Function HasKey( const aKey : string) : Boolean');
    RegisterMethod('Function IsEqual( const aItem : TMcJsonItem) : Boolean');
    RegisterMethod('Function Check( const aStr : string; aSpeed : Boolean) : Boolean');
    RegisterMethod('Function CheckException( const aStr : string; aSpeed : Boolean) : Boolean');
    RegisterMethod('Function CountItems : Integer');
    RegisterMethod('Function At( aIdx : Integer; const aKey : string) : TMcJsonItem;');
    RegisterMethod('Function At1( const aKey : string; aIdx : Integer) : TMcJsonItem;');
    RegisterMethod('Function ToString2( aHuman : Boolean) : string;');
    RegisterMethod('Function ToString1: string;');
    RegisterMethod('Function Minify( const aCode : string) : string');
    RegisterMethod('Procedure LoadFromStream( Stream : TStream; asUTF8 : Boolean)');
    RegisterMethod('Procedure SaveToStream( Stream : TStream; asHuman : Boolean; asUTF8 : Boolean)');
    RegisterMethod('Procedure LoadFromFile( const aFileName : string; asUTF8 : Boolean)');
    RegisterMethod('Procedure SaveToFile( const aFileName : string; asHuman : Boolean; asUTF8 : Boolean)');
    RegisterMethod('Function GetEnumerator : TMcJsonItemEnumerator');
    RegisterMethod('Function GetTypeStr : string');
    RegisterMethod('Function GetValueStr : string');
    RegisterMethod('Function Qot( const aMsg : string) : string');
    RegisterMethod('Function QotKey( const aKey : string) : string');
    RegisterMethod('Procedure Error( const Msg : string; const S1 : string; const S2 : string; const S3 : string)');
  end;
end;

(*----------------------------------------------------------------------------*)
procedure SIRegister_McJSON(CL: TPSPascalCompiler);
begin
  CL.AddClassN(CL.FindClass('TOBJECT'),'EMcJsonException');
  CL.AddTypeS('TJItemType', '( jitUnset, jitValue, jitObject, jitArray )');
  CL.AddTypeS('TJValueType', '( jvtString, jvtNumber, jvtBoolean, jvtNull )');
  CL.AddClassN(CL.FindClass('TOBJECT'),'TMcJsonItemEnumerator');
  SIRegister_TMcJsonItem(CL);
  SIRegister_TMcJsonItemEnumerator(CL);
  CL.AddTypeS('TJEscapeType', '( jetNormal, jetStrict, jetUnicode, jetNone )');
 CL.AddDelphiFunction('Function McJsonEscapeString( const aStr : string; aEsc : TJEscapeType) : string');
 CL.AddDelphiFunction('Function McJsonUnEscapeString( const aStr : string) : string');
 CL.AddDelphiFunction('Function GetItemTypeStr( aType : TJItemType) : string');
 CL.AddDelphiFunction('Function GetValueTypeStr( aType : TJValueType) : string');
 CL.AddDelphiFunction('function escapeChar(const aStr: string; aPos, aLen: Integer; out aUnk: Boolean): Integer;');
 CL.AddDelphiFunction('function findUtf8BOM(const Stream: TStream): Int64;');
CL.AddDelphiFunction('function SplitStringX(sSource: string; const sSplitter: string; var sLeft, sRight: string; bStartAtRight: boolean;iZStartAt: integer): boolean;'); //overload;
 CL.AddDelphiFunction('function zpos(sSubString: string; sString: string;iSTartAt:integer):integer;');
 CL.AddDelphiFunction('function getJsonData2(JsonString: String; User: String; Field: String): String;');
 CL.AddDelphiFunction('function getJsonData(JsonString: String; User: String; Field: String): String;');
 CL.AddDelphiFunction('function FormatJSON(ajson: String): String;');
 CL.AddDelphiFunction('function FormatJSON2(Value: String; Indentation: Integer): String;');
function BalancedWorkload(Total, Count: Integer): TIntegerArray;
function SplitInteger(Value: Integer; divisor: Integer): TIntegerArray;
function getJsonData(JsonString: String; User: String; Field: String): String;
function getJsonData2(JsonString: String; User: String; Field: String): String;
function FormatJSON(ajson: String): String;
function FormatJSON2(Value: String; Indentation: Integer): String;
end;

TestJSON
 {
  "key1": 1,
  "key2": true,
  "key3": 1.234,
  "key4": "value 1",
  "array": [
    1,
    2,
    3
  ]
}


procedure SIRegister_WebString(CL: TPSPascalCompiler);
begin
  CL.AddClassN(CL.FindClass('TOBJECT'),'HTTPException');
  CL.AddTypeS('HTTPString', 'string');
  CL.AddTypeS('HTTPChar', 'char');
  //CL.AddTypeS('PHTTPChar', '^char // will not work');
  CL.AddTypeS('HTTPContentTextString', 'UTF8String');
  CL.AddTypeS('HTTPContentTextChar', 'char');
  CL.AddTypeS('PHTTPContentTextChar', 'char');
  CL.AddTypeS('HTTPContentTextString', 'string');
  CL.AddTypeS('HTTPContentTextChar', 'Char');
  CL.AddTypeS('PHTTPContentTextChar', 'Char');
  CL.AddTypeS('HTTPString', 'String');
  CL.AddTypeS('HTTPChar', 'Char');
  //CL.AddTypeS('PHTTPChar', '^Char // will not work');
 //CL.AddDelphiFunction('Function DecodeURLParams( sURL:string; out sDocument : string) : TNameValuePairList');
 //CL.AddDelphiFunction('Function DecodeURLParams(sURL:HTTPString;out sDocument string): TNameValuePairList;');
 CL.AddDelphiFunction('Function ApplyRelativeURL( sBaseURL : HTTPString; sURL : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function RemoveComments( sHTML : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function RepairLinuxHTTPString( sLinuxHTTPString : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function ExtractURLPAth( sURL : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function ExtractURLFileNAme( sURL : string) : string');
 CL.AddDelphiFunction('Function ExtractLinks( sBasePath : HTTPString; sHTML : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function AmpEncode( s : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Procedure SplitAccount(sAccount:HTTPString;out iDataCenter:integer;out sAccountID: HTTPString)');
 CL.AddDelphiFunction('Function RandomHTTPString( iLength : integer) : HTTPString');
 CL.AddDelphiFunction('Function Flashify( sl : TStringList) : HTTPString');
 CL.AddDelphiFunction('Function AdjustWebPath( sPath : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function AdjustURLForParams( sPath : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function StaticHashToInt( sHash : HTTPString) : integer');
 CL.AddDelphiFunction('Function IntToStaticHash( iNumber : integer) : HTTPString;');
 CL.AddDelphiFunction('Function CRToBR( s : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function SimpleEncrypt( s : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function SimpleDecrypt( s : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function SlashDot( sHTTPStringWithSlashes : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function Simplify( i : integer) : HTTPString');
 CL.AddDelphiFunction('Procedure BlankString(var sHTTPString:HTTPString;sBlankChar:HTTPChar;iStartAt,iEndAt: integer)');
 CL.AddDelphiFunction('Function HackContentLength( sHeader : HTTPString) : integer');
 CL.AddDelphiFunction('Function DecodeInlineURL( sURL : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function EncodeInlineURL( sURL : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function StrToBool2( s : HTTPString) : boolean');
 CL.AddDelphiFunction('Function BoolToSTr2( b : boolean) : HTTPString');
 CL.AddDelphiFunction('Function ClipLeft( s, sBeforeAndIncluding : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function ClipRight( s, sStartingWith : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function GetHeaderParam(sHead, sParamName:HTTPString; iInstance:integer): HTTPString');
 CL.AddDelphiFunction('Function ChangeHeaderParam( sHead, sParamName, sNewValue : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function AddHeaderParam( sHead, sParamName, sValue : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Procedure MergeHeaderAndFooter( var sHeader : HTTPString; sFooter : HTTPString)');
 CL.AddDelphiFunction('Function GetCommand( sHead : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function GetDocument( sHead : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function GetResultMessage( sHead : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function GetResultCode( sHead : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function ChangeDocument( sHead, sNewDocument : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function IsHeaderComplete( sFullRequest : HTTPString) : boolean');
 CL.AddDelphiFunction('Function IsFooterComplete( sFullRequest : HTTPString) : boolean');
 CL.AddDelphiFunction('Function ExtractHeader( sFullRequest : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function ExtractContent( sFullRequest : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function EncodeXMLString3( s : HTTPString; sEscapeChar : HTTPchar) : HTTPString;');
 CL.AddDelphiFunction('Function IsValidURL( sURL : string) : boolean');
 CL.AddDelphiFunction('Function EncodeTAGString( s : HTTPString; sEscapeChar : HTTPChar) : HTTPString;');
 CL.AddDelphiFunction('Function EncodeWebString( s : HTTPString; sEscapeChar : HTTPChar) : HTTPString;');
 CL.AddDelphiFunction('Function DecodeWebString(sOriginal: HTTPString; sEscapeChar : HTTPString) : HTTPString;');
 CL.AddDelphiFunction('Function XMLStringToPlainText(sOriginal: HTTPString; sEscapeChar: HTTPChar): HTTPString');
 CL.AddDelphiFunction('Procedure Decodeurl2( sUrl : HTTPString; out sHostAndPort, sDocument : HTTPString)');
 CL.AddDelphiFunction('Function IsChunkComplete( sChunkedContent : HTTPString) : boolean');
 CL.AddDelphiFunction('Function GetChunkLength( sChunkedContentAtChunkStart : HTTPString) : integer');
 CL.AddDelphiFunction('Procedure DecodeChunk( var sChunkToChunkBody : HTTPString; out sRemainder : HTTPString)');
 CL.AddDelphiFunction('Function DigitToInteger( c : HTTPChar) : integer');
 CL.AddDelphiFunction('Function HexToInt2( sHexHTTPString : HTTPString) : integer');
 CL.AddDelphiFunction('Function ExtractWebPath( sPath : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function MakeSecureURL( sURL : HTTPString) : HTTPString');
 CL.AddDelphiFunction('Function FindLinkInHTML( sBaseURL : HTTPString; sHTML : HTTPString; sLinkText : HTTPString; iInstance : integer) : HTTPString');
 CL.AddDelphiFunction('Function FindIFrameInHTML( sBaseURL : HTTPString; sHTML : HTTPString; iInstanceOneBased : integer; out sSrc : HTTPString) : boolean');
 CL.AddDelphiFunction('Function FindTagAttributeInHTML( sBaseURL : HTTPString; sHTML : HTTPString; sTag : HTTPString; sAttribute : HTTPString; iInstanceOneBased : integer; out sSrc : HTTPString) : boolean');
 CL.AddDelphiFunction('Function StringListToHTML( sl : TStringList) : string');
end;

https://github.com/adaloveless/commonx/blob/master/HexConvert.pas

function SplitStringNoCaseEx(sRealSource, sSplitter: string; var sLeft, sRight: string; notinLeft, notInRight: string; bStartAtRight: boolean = false): boolean; overload;
function zcopy(sString: string; iStartZeroBased: nativeint; iLength: nativeint): string;
function GetHexDataLength(s: string): integer;
function GetHexData(s: string): string;
function AddCheckSum(sLine: string): string;
function CombineHexLines(sLine, sNextLine: string): string;
function ConvertHex(sHexString: string; iMaxBytesPerLine: integer): string;
 function FindMemoryByte(sl: TStrings; addr: integer): byte;
 CL.AddDelphiFunction('function BinToHexFile(sFile: string; bytesPerLine: integer): string;');
function GetNumberOfPhysicalProcessors: integer;
 function GetNumberOfLogicalProcessors: integer;
function GetCPUCount: integer;
 function CountSetBits(bitMask : NativeUInt) : integer;
type
  TLogicalProcessorInformation = record
    LogicalProcessorCount : integer;
    NumaNodeCount : integer;
    ProcessorCoreCount : integer;
    ProcessorL1CacheCount : integer;
    ProcessorL2CacheCount : integer;
    ProcessorL3CacheCount : integer;
    ProcessorPackageCount : integer;
  end;

 function GetLogicalProcessorInfo: TLogicalProcessorInformation;
function DebugHeapStatus: string;
  function GetKeyboardShiftState: TShiftSTate;
procedure CopyFileX(sSource: string; sTarget: string; bFailIfExists: boolean);
function ComplyFilePath(const sPath: string; sSlash: string): string;

//https://stackoverflow.com/questions/46093706/how-to-detect-number-of-logical-and-physical-processors-efficiently


procedure PolyFit (const x, y: array of Double;
                   var coefs: array of Double;
                   var correl_coef: Double;
                   const npoints, nterms: Integer);
procedure PolyFit2 (const x, y: array of Double; {was Real}
                   var coefs: TDoubleArray; {was Real}
                   var correl_coef: Double;
                   const npoints, nterms: Integer);

 function FileOpenX(const FileName: string; Mode: LongWord; Flags: cardinal): THandle;
 function FileCreateX(const FileName: string; Mode: LongWord; Rights: Integer; Flags: cardinal): THandle;
procedure CopyFileX(sSource: string; sTarget: string; bFailIfExists: boolean);


procedure SIRegister_GpTimezone(CL: TPSPascalCompiler);
begin
 CL.AddConstantN('gpMINUTESPERDAY','LongInt').SetInt( 1440);
  CL.AddTypeS('TSwatchBeat', 'Integer');
  //CL.AddTypeS('integer', 'longint');
  CL.AddClassN(CL.FindClass('TOBJECT'),'TGpRegistryTimeZones');
  SIRegister_TGpRegistryTimeZone(CL);
  SIRegister_TGpRegistryTimeZones(CL);
 Function DateEQ( date1, date2 : TDateTime) : boolean');
 Function DateLT( date1, date2 : TDateTime) : boolean');
 Function DateLE( date1, date2 : TDateTime) : boolean');
 Function DateGT( date1, date2 : TDateTime) : boolean');
 Function DateGE( date1, date2 : TDateTime) : boolean');
 Function FixDT( date : TDateTime) : TDateTime');
 Function DayOfMonth2Date( year, month, weekInMonth, dayInWeek : word) : TDateTime');
 Function DSTDate2Date( dstDate : TSystemTime; year : word) : TDateTime');
 Function GetTZDaylightSavingInfoForYear( TZ : TTimeZoneInformation; year : word; var DaylightDate, StandardDate : TDateTime; var DaylightBias, StandardBias : integer) : boolean');
 Function GetTZDaylightSavingInfo( TZ : TTimeZoneInformation; var DaylightDate, StandardDate : TDateTime; var DaylightBias, StandardBias : integer) : boolean');
 Function GetDaylightSavingInfoForYear( year : word; var DaylightDate, StandardDate : TDateTime; var DaylightBias, StandardBias : integer) : boolean');
 Function GetDaylightSavingInfo( var DaylightDate, StandardDate : TDateTime; var DaylightBias, StandardBias : integer) : boolean');
 Function TZLocalTimeToUTC( TZ : TTimeZoneInformation; loctime : TDateTime; preferDST : boolean) : TDateTime');
 Function UTCToTZLocalTime( TZ : TTimeZoneInformation; utctime : TDateTime) : TDateTime');
 Function LocalTimeToUTC( loctime : TDateTime; preferDST : boolean) : TDateTime');
 Function UTCToLocalTime( utctime : TDateTime) : TDateTime');
 Function GetTZCount : integer');
 Function GetTZ( idx : integer; var EnglishName, displayName : string; var TZ : TTimeZoneInformation) : boolean');
 Function GetTZBias( TZ : TTimeZoneInformation) : integer');
 Procedure GetTZNowUTCAndBias( TZ : TTimeZoneInformation; var nowUTC : TDateTime; var nowBias : integer)');
 Procedure GetNowUTCAndBias( var nowUTC : TDateTime; var nowBias : integer)');
 Function NowUTC : TDateTime');
 Function TimeUTC : TDateTime');
 Function DateUTC : TDateTime');
 Function CompareSysTime( st1, st2 : TSystemTime) : integer');
 Function IsEqualTZ( tz1, tz2 : TTimeZoneInformation) : boolean');
 Function UTCToSwatch( utctime : TDateTime; var internetDate : TDateTime) : TSwatchBeat');
 Function SwatchToUTC( internetDate : TDateTime; internetBeats : TSwatchBeat) : TDateTime');
 Function TimeZoneRegKey : string');
end;

procedure SIRegister_ThhAvALT(CL: TPSPascalCompiler);
begin
  //with RegClassS(CL,'TGraphicControl', 'ThhAvALT') do
  with CL.AddClassN(CL.FindClass('TGraphicControl'),'ThhAvALT') do
  begin
    RegisterMethod('Constructor Create( AOwner : TComponent)');
    RegisterMethod('Procedure AddAltitude( AddAlt : Longint)');
    RegisterProperty('BackColor', 'TColor', iptrw);
    RegisterProperty('BorderStyle', 'TBorderStyle', iptrw);
    RegisterProperty('PointerColor', 'TColor', iptrw);
    RegisterProperty('MinAlt', 'Longint', iptrw);
    RegisterProperty('MaxAlt', 'Longint', iptrw);
    RegisterProperty('ScaleColor', 'TColor', iptrw);
    RegisterProperty('Shutter', 'Boolean', iptrw);
    RegisterProperty('Altitude', 'Longint', iptrw);
    registerpublishedProperties;
  end;
end;

procedure SIRegister_TJsonTextUtils(CL: TPSPascalCompiler);
begin
  //with RegClassS(CL,'TOBJECT', 'TJsonTextUtils') do
  with CL.AddClassN(CL.FindClass('TOBJECT'),'TJsonTextUtils') do
  begin
    RegisterMethod('Constructor Create');
    RegisterMethod('Procedure WriteEscapedString( const Writer : TTextWriter; const Str : string; Delimiter : Char; AppendDelimiters : Boolean; const CharEscapeFlags : array of Boolean; StringEscapeHandling : TJsonString' +
      'EscapeHandling; var WriteBuffer : TCharArray)');
    RegisterMethod('Function ShouldEscapeJavaScriptString( const S : string; const CharEscapeFlags : array of Boolean) : Boolean');
    RegisterProperty('SingleQuoteCharEscapeFlags', 'TBooleanDynArray', iptr);
    RegisterProperty('DoubleQuoteCharEscapeFlags', 'TBooleanDynArray', iptr);
    RegisterProperty('HtmlCharEscapeFlags', 'TBooleanDynArray', iptr);
    RegisterMethod('Procedure ToCharAsUnicode( C : Char; var Buffer : array of Char)');
    RegisterMethod('Function IsWhiteSpace( const Str : string) : Boolean');
  end;
end;


CL.AddDelphiFunction('function FormatJSON(ajson: String): String;');
 CL.AddDelphiFunction('function FormatJSON2(Value: String; Indentation: Integer): String;');
 CL.AddDelphiFunction('function GetJSONFormat: TFormatSettings;');
 CL.AddDelphiFunction('function JsonToFloat(const DotValue: string): Double;');
 CL.AddDelphiFunction('function FloatToJson2(const Value: Double): string;');
 CL.AddDelphiFunction('function TryJsonToFloat(const DotValue: string; var Value: Double): Boolean;');
 CL.AddDelphiFunction('function HexToDecimal(const AHex: Byte): Byte;');
 CL.AddDelphiFunction('function DecimalToHex(const ADecimal: Byte): Byte; ');
 CL.AddDelphiFunction('Function MIMECharsetNameToCodepage( const MIMECharsetName : string) : Integer');
 CL.AddDelphiFunction('Function CharsetNameToCodepage( const CharsetName : string) : Integer');
 CL.AddDelphiFunction('Function CodepageToMIMECharsetName( codepage : Integer) : string');
 CL.AddDelphiFunction('Function CodepageToCharsetName( codepage : Integer) : string');
 CL.AddDelphiFunction('Function CharsetToCodePage( FontCharset : TFontCharset) : Integer');
 CL.AddDelphiFunction('Function CodePageToCharset( codePage : Integer) : TFontCharset');
 CL.AddDelphiFunction('Function StringToAnsiString2( const ws : string; codePage : Integer) : AnsiString');
 CL.AddDelphiFunction('Function AnsiStringToString2( const st : AnsiString; codePage : Integer) : string');
 CL.AddDelphiFunction('Function URLSuffixToCodePage( urlSuffix : string) : Integer');
 CL.AddDelphiFunction('Procedure GetCharsetNames( sl : TStrings)');
 CL.AddDelphiFunction('Function TrimEx( const S : string) : string');
 CL.AddDelphiFunction('Function IsWideCharAlpha( ch : WideChar) : Boolean');
 CL.AddDelphiFunction('Function IsWideCharAlnum( ch : WideChar) : Boolean');
 CL.AddDelphiFunction('Procedure FontToCharFormat( font : TFont; codePage : Integer; var Format : TCharFormat)');
 CL.AddDelphiFunction('Function WideStringToUTF8( const ws : WideString) : AnsiString');
 CL.AddDelphiFunction('Function UTF8ToWideString( const st : AnsiString) : WideString');
 CL.AddDelphiFunction('Function UTF8ToString2( const st : AnsiString) : WideString');
procedure SetTempStatusMessage(const msg: string; pos, max: word);

 CL.AddDelphiFunction('Function RawCodepageToMIMECharsetName( codepage : Integer) : RawByteString');
  CL.AddClassN(CL.FindClass('TOBJECT'),'TCountryCodes');
  SIRegister_TCountryCode(CL);
  SIRegister_TCountryCodes(CL);
end;

procedure SIRegister_uWebUIMiscFunctions(CL: TPSPascalCompiler);
begin
 CL.AddConstantN('SHLWAPIDLL','String').SetString( 'shlwapi.dll');
 CL.AddDelphiFunction('Procedure OutputDebugMessage( const aMessage : string)');
 CL.AddDelphiFunction('Function CustomExceptionHandler( const aFunctionName : string; const aException : exception) : boolean');
 CL.AddDelphiFunction('Function CustomPathIsRelative( const aPath : string) : boolean');
 CL.AddDelphiFunction('Function CustomPathCanonicalize( const aOriginalPath : string; var aCanonicalPath : string) : boolean');
 CL.AddDelphiFunction('Function CustomAbsolutePath( const aPath : string; aMustExist : boolean) : string');
 CL.AddDelphiFunction('Function CustomPathIsURL( const aPath : string) : boolean');
 CL.AddDelphiFunction('Function CustomPathIsUNC( const aPath : string) : boolean');
 CL.AddDelphiFunction('Function GetModulePath2 : string');
 CL.AddDelphiFunction('Function ExecuteFile2( const filename, Params, DefaultDir : string; ShowCmd : integer) : THandle');
 CL.AddDelphiFunction('Function CopyWebUIFramework( const aSrcPath, aDstPath : string) : boolean');
 CL.AddDelphiFunction('Function LibraryExists( const aPath : string) : boolean');
 //CL.AddDelphiFunction('Function StringToPWebUIChar( const aSrcString : string; var aRsltLength : integer) : PWebUIChar');
end;

function rotl(lhs, rhs: Uint32): Uint32;
const
  Bits = sizeof(Uint32);
begin
  var k := rhs and (Bits - 1);
  if k = 0 then exit(lhs);
  Result := (lhs shl k) or (lhs shr (Bits - k));
end;

function rotr(lhs, rhs: Uint32): Uint32;
const
  Bits = sizeof(Uint32);
begin
  var k := rhs and (Bits - 1);
  if k = 0 then exit(lhs);
  Result := (lhs shr k) or (lhs shl (Bits - k));
end;

function ApplyStringVariables(const str : TFilename; const variables : TStrings; const delimiter : String = '%') : TFilename;

function StrCountString(const haystack, needle : String) : Integer;

procedure StringBytesToWords(var buf : UnicodeString; swap : Boolean);
procedure StringWordsToBytes(var buf : UnicodeString; swap : Boolean);

function CheckIfNumericKey(Key: Word; isDecimalPoint: Boolean): Boolean;

https://github.com/EricGrange/DWScript/blob/master/Source/dwsUtils.pas#L1087


procedure SIRegister_TIdSimpleWebSocketClient(CL: TPSPascalCompiler);
begin
  //with RegClassS(CL,'TIdTCPClient', 'TIdSimpleWebSocketClient') do
  with CL.AddClassN(CL.FindClass('TIdTCPClient'),'TIdSimpleWebSocketClient') do
  begin
    RegisterProperty('onDataEvent', 'TSWSCDataEvent', iptrw);
    RegisterProperty('onConnectionDataEvent', 'TSWSCDataEvent', iptrw);
    RegisterProperty('onPing', 'TSWSCDataEvent', iptrw);
    RegisterProperty('onError', 'TSWSCErrorEvent', iptrw);
    RegisterProperty('onHeartBeatTimer', 'TNotifyEvent', iptrw);
    RegisterProperty('OnUpgrade', 'TnotifyEvent', iptrw);
    RegisterProperty('HeartBeatInterval', 'Cardinal', iptrw);
    RegisterProperty('AutoCreateHandler', 'Boolean', iptrw);
    RegisterProperty('URL', 'String', iptrw);
    RegisterMethod('Procedure Connect( pURL : String)');
    RegisterMethod('Procedure Close');
    RegisterMethod('Function Connected : Boolean');
    RegisterProperty('Upgraded', 'Boolean', iptr);
    RegisterMethod('Procedure writeText( pMsg : String)');
    RegisterMethod('Procedure writeTextSync( pMsg : String; pTriggerFunction : TFunc)');
    RegisterMethod('Constructor Create( AOwner : TComponent)');
    RegisterMethod('Procedure Free');
  end;
end;
https://github.com/arvanus/Indy/blob/WebSocketImpl/Lib/Core/IdWebSocketSimpleClient.pas

https://github.com/IndySockets/Indy/issues/201
https://github.com/tothpaul/Delphi/blob/master/AsciiShape/Main.pas

procedure SIRegister_TWebSocket(CL: TPSPascalCompiler);
begin
  //with RegClassS(CL,'TOBJECT', 'TWebSocket') do
  with CL.AddClassN(CL.FindClass('TOBJECT'),'TWebSocket') do
  begin
    RegisterMethod('Constructor Create( const Key : string; AContext : TIdContext; AResponseInfo : TIdHTTPResponseInfo)');
    RegisterMethod('Procedure SendMessage( const Str : string)');
    RegisterMethod('Procedure ReadLoop( )');
    RegisterMethod('Procedure Close');
    RegisterMethod('Function IsWebSocket( AContext : TIdContext; ARequestInfo : TIdHTTPRequestInfo; AResponseInfo : TIdHTTPResponseInfo; out WebSocket : TWebSocket) : Boolean');
    RegisterProperty('OnData', 'TWebSocketDataEvent', iptrw);
    RegisterProperty('OnMessage', 'TWebSocketMessageEvent', iptrw);
  end;
end;

function glxCompileShader(shaderType: Integer; const Source: AnsiString; var Shader: Cardinal): Boolean;
function glxCompileProgram(const VertexShader, FragmentShader: AnsiString): Cardinal;

type
  TGLPanel = class(TFrame)
  private
    { Déclarations privées }
    FDC     : THandle;
    FGL     : THandle;
    FOnSetup: TNotifyEvent;
    FOnPaint: TNotifyEvent;
    procedure WMEraseBkGnd(var Msg: TMessage); message WM_ERASEBKGND;
    procedure WMPaint(var Msg: TMessage); message WM_PAINT;
    procedure ResizeGL;
  protected
    procedure CreateWnd; override;
    procedure Resize; override;
    procedure DestroyWnd; override;
  public
    { Déclarations publiques }
    property OnSetup:TNotifyEvent read FOnSetup write FOnSetup;
    property OnPaint:TNotifyEvent read FOnPaint write FOnPaint;
  end;

  
Diff from 5.1.4.90 to 5.1.4.95

Comparing files units1.txt and UNITS2.TXT
***** units1.txt
DBPlatform
DBXCharDecoder_
DBXCustomDataGenerator
***** UNITS2.TXT
DBPlatform
DBXCustomDataGenerator
*****

***** units1.txt
IdMIMETypes
IdModBusClient
IdModBusServer
IdMultipartFormData
***** UNITS2.TXT
IdMIMETypes
IdMultipartFormData
*****

***** units1.txt
IdStrings
IdStrings9
IdStruct
***** UNITS2.TXT
IdStrings
IdStruct
*****

***** units1.txt
JclGraphUtils
JclGraphUtils_
JclHookExcept
***** UNITS2.TXT
JclGraphUtils
JclHookExcept
*****

***** units1.txt
JvSearchFiles
JvSegmentedLEDDisplay
JvSegmentedLEDDisplayMapperFrame
JvSerialMaker
***** UNITS2.TXT
JvSearchFiles
JvSerialMaker
*****

***** units1.txt
mimepart
ModbusConsts
ModbusTypes
ModbusUtils
***** UNITS2.TXT
mimepart
ModbusUtils
*****

***** units1.txt
SynCompletionProposal
SynCrtSock
SynDBEdit
***** UNITS2.TXT
SynCompletionProposal
SynDBEdit
*****

***** units1.txt
SynURIOpener
SynWinSock
synwrap1
***** UNITS2.TXT
SynURIOpener
synwrap1
*****

***** units1.txt
uPSI_DBWeb
uPSI_DBXCharDecoder
uPSI_DBXClient
***** UNITS2.TXT
uPSI_DBWeb
uPSI_DBXClient
*****

***** units1.txt
uPSI_IdMIMETypes
uPSI_IdModBusClient
uPSI_IdModBusServer
uPSI_IdMultipartFormData
***** UNITS2.TXT
uPSI_IdMIMETypes
uPSI_IdMultipartFormData
*****

***** units1.txt
uPSI_JvSearchFiles
uPSI_JvSegmentedLEDDisplayMapperFrame
uPSI_JvSerialMaker
***** UNITS2.TXT
uPSI_JvSearchFiles
uPSI_JvSerialMaker
*****

***** units1.txt
uPSI_SynCompletionProposal
uPSI_SynCrtSock
uPSI_SynDBEdit
***** UNITS2.TXT
uPSI_SynCompletionProposal
uPSI_SynDBEdit
*****

***** units1.txt
uPSI_xrtl_util_COMUtils
uPSI_xrtl_util_CPUUtils
uPSI_xrtl_util_Exception
***** UNITS2.TXT
uPSI_xrtl_util_COMUtils
uPSI_xrtl_util_Exception
*****
1 DBXCharDecoder_
2 IdModBusClient
3 IdModBusServer
4 IdStrings9
5 JclGraphUtils_
6 JvSegmentedLEDDisplay
7 JvSegmentedLEDDisplayMapperFrame
8 ModbusConsts
9 ModbusTypes
10 SynCrtSock
11 SynWinSock
12 uPSI_DBXCharDecoder
13 uPSI_IdModBusClient
14 uPSI_IdModBusServer
15 uPSI_JvSegmentedLEDDisplayMapperFrame
16 uPSI_SynCrtSock
17 uPSI_xrtl_util_CPUUtils


Diff from 5.0.2.28 to 5.0.2.30
------------------------------------------------------------------

C:\maxbox\maxbox4\maxbox4\examples>fc 52output.txt 50output.txt
Comparing files 52Output.txt and 50OUTPUT.TXT
***** 52Output.txt
CommonTools
CompFileIo
Compilers.URunner
***** 50OUTPUT.TXT
CommonTools
Compilers.URunner
*****

***** 52Output.txt
IdIPAddress
IdIPMCastBase
IdIPMCastClient
IdIPWatch
IdLogBase
***** 50OUTPUT.TXT
IdIPAddress
IdLogBase
*****

***** 52Output.txt
IdLPR
IdMailBox
IdMappedPortUDP
***** 50OUTPUT.TXT
IdLPR
IdMappedPortUDP
*****

***** 52Output.txt
IdMessageCoderXXE
IdMessageCollection
IdMessageParts
***** 50OUTPUT.TXT
IdMessageCoderXXE
IdMessageParts
*****

***** 52Output.txt
IdQotd
IdQotdServer
IdQOTDUDP
***** 50OUTPUT.TXT
IdQotd
IdQOTDUDP
*****

***** 52Output.txt
uPSI_ComObjOleDB_utils
uPSI_CompFileIo
uPSI_CompilersURunner
***** 50OUTPUT.TXT
uPSI_ComObjOleDB_utils
uPSI_CompilersURunner
*****

***** 52Output.txt
uPSI_IdIOHandlerStream
uPSI_IdIPMCastBase
uPSI_IdIPMCastClient
uPSI_IdIPWatch
uPSI_IdLogBase
***** 50OUTPUT.TXT
uPSI_IdIOHandlerStream
uPSI_IdLogBase
*****

***** 52Output.txt
uPSI_IdLPR
uPSI_IdMailBox
uPSI_IdMappedPortUDP
***** 50OUTPUT.TXT
uPSI_IdLPR
uPSI_IdMappedPortUDP
*****

***** 52Output.txt
uPSI_IdQotd
uPSI_IdQotdServer
uPSI_IdQOTDUDP
***** 50OUTPUT.TXT
uPSI_IdQotd
uPSI_IdQOTDUDP
*****

***** 52Output.txt
uPSI_JvHtmlParser
uPSI_JvImageDrawThread
uPSI_JvImageWindow
***** 50OUTPUT.TXT
uPSI_JvHtmlParser
uPSI_JvImageWindow
*****

***** 52Output.txt
ZURL
Contains ModulesCountEnd___: 3390

***** 50OUTPUT.TXT
ZURL
Contains ModulesCountEnd___: 3376
*****


C:\maxbox\maxbox4\maxbox4\examples>

type
  TTimeZoneMode = (zmError, zmIgnore, zmAsUTC, zmAsLocal);

   TTimeZoneInfo = record
    HourOff: Integer;
    MinOff: Integer;
    HasTimeZone: Boolean;
    IsUTC: Boolean;
  end;

function AdjustTimeZone(var DateTime: TDateTime; const TimeZone: TTimeZoneInfo;
  TimeZoneMode: TTimeZoneMode): Boolean;

  function AdjustTime(Value: TDateTime; HourOff, MinOff: Integer): TDateTime;

{ Expands environment variables }
function ExpandEnv(const S: string): string;
{ Surrounds string with quotes when it contains spaces and is not quoted }
function AddQuotesUnless(const S: string): string;
{ Prepares an application name or the command line parameters for execution }
function PrepareCommandLine(S: string): string;
function WideCharsInSet( wcstr:WideString; wcset:TBits):Boolean;
function JSONUnescape(const Source: string; CRLF: string{ = #13#10}): string;
function parseJsonvalue(jsonutf8: string): string;
procedure SaveBitmapToStream(ABitmap: TBitmap; AToStream: TStream);
 function LoadBitmapFromStream(AFromStream: TStream): TBitmap;
 procedure SaveStringToStreamUTF8(AString: string; AStream: TStream);
 function LoadStringFromStreamUTF8(AStream: TStream): string;
 function LoadSubStreamFromStream(const AFromStream, AToSubStream: TStream): boolean;');
procedure SaveSubStreamToStream(const AFromSubStream, AToStream: TStream);');
function Date8ToStringRFC822(Const Date8AAfficher: string): string;
Function TextMeters(AMeters: Single; DecPlace, MaxLen, PosPoint: Byte): String;
Function RealFrmDegreeText(AText:String):double;
function TextDegreeMinuteSecondFrmDec(Value: Double; AAccuracy: Integer): String;
procedure setdebugcheck(false);
function ResolveShellLink(const Path: string): string;
function IsCOMObjectActive2(const ClassName: string): Boolean;');
function IsCOMObjectAvailable(const ClassName: string): Boolean;');
function IndyToHex(const AValue: TIdBytes): string;
function BufToBytes(var buf: string; fromindex, len: integer): TBytes;');
function BufToString_ANSI(var buf: string; fromindex, len: integer): string;');
function BufToString_UNICODE(var buf: string; fromindex, len: integer; optsourcecodepage: integer): string;');
writeln(GetFinalURL('https://maxbox4.wordpress.com/2024/04/17/post-api-image-pipeline/'));
  
function GetGeoInfoMap5save(const lat,lon, zoom: double; asize: integer;
                                    const UrlGeoLookupInfo, apath: string; showfile: boolean): string;
function GetGeoInfoMap5(const lat,lon, zoom: double; asize: integer;
                                       UrlGeoLookupInfo, apath: string; showfile: boolean): string;

ex.call:  GetGeoInfoMap5(51.22,6.77,12,850, mapboxAPIEKONKey,
                              ExePath+'examples\667_roboline_outdoor_layer5.png', true);          
  
functions TAddressGeoCodeOSM5('Hauptbahnhof, Graz, Austria'): TLatlong;
function libCompilerString: string;
function DisplayTBytes(Buf: TBytes): String;
function EncodeURIComponent2('http://www.google.com/search?q=big%25%26little')
writeln(utf8decode(EncodeURIComponent2('http://www.google.com/search?q=big%25%26little')));
  {
  alatlong:=  TAddressGeoCodeOSM5('Hauptbahnhof, Graz, Austria');
  writeln('OSM5 res back_: '+alatlong.descript);
  //writeln('get geocoords: '+flots(latlong.lat)+'   '+flots(latlong.long));  
  writeln('get geocoords: '+format(' lat: %.4f - lon: %.4f',[alatlong.lat,alatlong.long])); 
     }
procedure maxform1.console;
procedure maxform1.setconsole;
function ConvertToNegative (const Bitmap: TBitmap): TBitmap;
procedure loadjpegresource3(_instance: cardinal; aimage: Timage; aresname: string);
procedure loadjpegresource4(_instance: cardinal; aimage: Timage; aresname, restyp: string);
function loadanyresource5(_instance: cardinal; aresname, restyp: string): TResourceStream;
function loadjpegresource5(_instance: cardinal; aresname: string): Graphics.TBitmap;

procedure loadjpegresource4(_instance: cardinal; aimage: Timage; aresname, restyp: string);
var
  RS: TResourceStream;
  JPGImage: TJPEGImage;
begin
  JPGImage := TJPEGImage.Create;
  //result:= Timage.Create(nil);
  try
    RS := TResourceStream.Create(_Instance, aresname, pwidechar(restyp));
    try
      JPGImage.LoadFromStream(RS);
      aimage.Picture.Graphic := JPGImage;
    finally
      RS.Free;
    end;
  finally
    JPGImage.Free;
  end;
end;


procedure saveasunicode; //v5.02.60
begin
    //to save contexr as unicode - append(Text(mycodestring))
    maxform1.memo1.lines.savetofile(maxform1.Act_Filename, TEncoding.UTF8);
    maxform1.memo2.lines.Add('----File saved as Unicode!----UTF8 😀');
    maxform1.memo1.Lines.LoadFromFile(maxform1.Act_Filename, TEncoding.UTF8);
end;

procedure saveasansi; //v5.02.60
begin
    //to save contexr as unicode - append(Text(mycodestring))
    maxform1.memo1.lines.savetofile(maxform1.Act_Filename, TEncoding.ansi);
    maxform1.memo2.lines.Add('----File saved as Ansi!----Ansi8');
end;

V.0.2.70

uPSI_flcUnicodeCodecs
procedure SIRegister_flcUnicodeCodecs(CL: TPSPascalCompiler);
begin
  CL.AddTypeS('TCodecErrorAction', '( eaException, eaStop, eaIgnore, eaSkip, eaReplace )');
  CL.AddTypeS('TCodecReadLFOption', '( lrPass, lrNormalize )');
  CL.AddTypeS('TCodecWriteLFOption', '( lwLF, lwCR, lwCRLF )');
  CL.AddTypeS('ByteChar','AnsiChar');
  CL.AddTypeS('TCodecReadEvent', 'Procedure ( Sender : TObject; var Buf, Count '
   +': Longint; var Ok : Boolean)');
  CL.AddTypeS('TCodecWriteEvent', 'Procedure ( Sender : TObject; const Buf, Count : Longint)');
  SIRegister_TCustomUnicodeCodec(CL);
  //&&&&&&CL.AddTypeS('TUnicodeCodecClass', 'class of TCustomUnicodeCodec');
  CL.AddTypeS('TUnicodeCodecClass', 'TCustomUnicodeCodec');
  SIRegister_EUnicodeCodecException(CL);
 CL.AddDelphiFunction('Procedure RegisterCodecs( const Codecs : array of TUnicodeCodecClass)');
 CL.AddDelphiFunction('Function GetCodecClassByAlias( const CodecAlias : String) : TUnicodeCodecClass');
 CL.AddDelphiFunction('Function GetCodecClassByAliasA( const CodecAlias : RawByteString) : TUnicodeCodecClass');
 CL.AddDelphiFunction('Function GetCodecClassByAliasU( const CodecAlias : UnicodeString) : TUnicodeCodecClass');
 CL.AddDelphiFunction('Function GetSystemEncodingName : String');
 CL.AddDelphiFunction('Function GetSystemEncodingCodecClass : TUnicodeCodecClass');
 CL.AddDelphiFunction('Function DetectUTFEncoding(const Buf: __Pointer; const BufSize:Integer;out BOMSize : Integer): TUnicodeCodecClass');
 CL.AddDelphiFunction('Function EncodingToUTF16U(const CodecClass : TUnicodeCodecClass; const Buf : __Pointer; const BufSize : Integer) : UnicodeString;');
 CL.AddDelphiFunction('Function EncodingToUTF16U1(const CodecClass : TUnicodeCodecClass; const S : RawByteString) : UnicodeString;');
 CL.AddDelphiFunction('Function EncodingToUTF16U2(const CodecAlias : String; const Buf : __Pointer; const BufSize : Integer) : UnicodeString;');
 CL.AddDelphiFunction('Function EncodingToUTF16U3(const CodecAlias:String;const S:RawByteString):UnicodeString;');
 CL.AddDelphiFunction('Function UTF16ToEncodingU( const CodecClass : TUnicodeCodecClass; const S : UnicodeString) : RawByteString;');
 CL.AddDelphiFunction('Function UTF16ToEncodingU1(const CodecAlias:String;const S:UnicodeString):RawByteString;');
  SIRegister_TUTF8Codec(CL);
  SIRegister_TUTF16LECodec(CL);
  SIRegister_TUTF16BECodec(CL);
  SIRegister_TUCS4BECodec(CL);
  SIRegister_TUCS4LECodec(CL);
  SIRegister_TUCS4_2143Codec(CL);
  SIRegister_TUCS4_3412Codec(CL);
  SIRegister_TUCS2Codec(CL);
  SIRegister_TCustomSingleByteCodec(CL);
  //CL.AddTypeS('TUnicodeSingleByteCodecClass', 'class of TCustomSingleByteCodec');
  SIRegister_TISO8859_1Codec(CL);
  SIRegister_TISO8859_2Codec(CL);
  SIRegister_TISO8859_3Codec(CL);
  SIRegister_TISO8859_4Codec(CL);
  SIRegister_TISO8859_5Codec(CL);
  SIRegister_TISO8859_6Codec(CL);
  SIRegister_TISO8859_7Codec(CL);
  SIRegister_TISO8859_8Codec(CL);
  SIRegister_TISO8859_9Codec(CL);
  SIRegister_TISO8859_10Codec(CL);
  SIRegister_TISO8859_13Codec(CL);
  SIRegister_TISO8859_14Codec(CL);
  SIRegister_TISO8859_15Codec(CL);
  SIRegister_TWindows37Codec(CL);
  SIRegister_TWindows437Codec(CL);
  SIRegister_TWindows500Codec(CL);
  SIRegister_TWindows708Codec(CL);
  SIRegister_TWindows737Codec(CL);
  SIRegister_TWindows775Codec(CL);
  SIRegister_TWindows850Codec(CL);
  SIRegister_TWindows852Codec(CL);
  SIRegister_TWindows855Codec(CL);
  SIRegister_TWindows857Codec(CL);
  SIRegister_TWindows858Codec(CL);
  SIRegister_TWindows861Codec(CL);
  SIRegister_TWindows862Codec(CL);
  SIRegister_TWindows863Codec(CL);
  SIRegister_TWindows864Codec(CL);
  SIRegister_TWindows865Codec(CL);
  SIRegister_TWindows866Codec(CL);
  SIRegister_TWindows869Codec(CL);
  SIRegister_TWindows870Codec(CL);
  SIRegister_TWindows874Codec(CL);
  SIRegister_TWindows875Codec(CL);
  SIRegister_TWindows1026Codec(CL);
  SIRegister_TWindows1047Codec(CL);
  SIRegister_TWindows1140Codec(CL);
  SIRegister_TWindows1141Codec(CL);
  SIRegister_TWindows1142Codec(CL);
  SIRegister_TWindows1143Codec(CL);
  SIRegister_TWindows1144Codec(CL);
  SIRegister_TWindows1145Codec(CL);
  SIRegister_TWindows1146Codec(CL);
  SIRegister_TWindows1147Codec(CL);
  SIRegister_TWindows1148Codec(CL);
  SIRegister_TWindows1149Codec(CL);
  SIRegister_TWindows1250Codec(CL);
  SIRegister_TWindows1251Codec(CL);
  SIRegister_TWindows1252Codec(CL);
  SIRegister_TWindows1253Codec(CL);
  SIRegister_TWindows1254Codec(CL);
  SIRegister_TWindows1255Codec(CL);
  SIRegister_TWindows1256Codec(CL);
  SIRegister_TWindows1257Codec(CL);
  SIRegister_TWindows1258Codec(CL);
  SIRegister_TIBM037Codec(CL);
  SIRegister_TIBM038Codec(CL);
  SIRegister_TIBM256Codec(CL);
  SIRegister_TIBM273Codec(CL);
  SIRegister_TIBM274Codec(CL);
  SIRegister_TIBM275Codec(CL);
  SIRegister_TIBM277Codec(CL);
  SIRegister_TIBM278Codec(CL);
  SIRegister_TIBM280Codec(CL);
  SIRegister_TIBM281Codec(CL);
  SIRegister_TIBM284Codec(CL);
  SIRegister_TIBM285Codec(CL);
  SIRegister_TIBM290Codec(CL);
  SIRegister_TIBM297Codec(CL);
  SIRegister_TIBM420Codec(CL);
  SIRegister_TIBM423Codec(CL);
  SIRegister_TIBM424Codec(CL);
  SIRegister_TIBM437Codec(CL);
  SIRegister_TIBM500Codec(CL);
  SIRegister_TIBM850Codec(CL);
  SIRegister_TIBM851Codec(CL);
  SIRegister_TIBM852Codec(CL);
  SIRegister_TIBM855Codec(CL);
  SIRegister_TIBM857Codec(CL);
  SIRegister_TIBM860Codec(CL);
  SIRegister_TIBM861Codec(CL);
  SIRegister_TIBM862Codec(CL);
  SIRegister_TIBM863Codec(CL);
  SIRegister_TIBM864Codec(CL);
  SIRegister_TIBM865Codec(CL);
  SIRegister_TIBM866Codec(CL);
  SIRegister_TIBM868Codec(CL);
  SIRegister_TIBM869Codec(CL);
  SIRegister_TIBM870Codec(CL);
  SIRegister_TIBM871Codec(CL);
  SIRegister_TIBM874Codec(CL);
  SIRegister_TIBM875Codec(CL);
  SIRegister_TIBM880Codec(CL);
  SIRegister_TIBM904Codec(CL);
  SIRegister_TIBM905Codec(CL);
  SIRegister_TIBM918Codec(CL);
  SIRegister_TIBM1004Codec(CL);
  SIRegister_TIBM1026Codec(CL);
  SIRegister_TIBM1047Codec(CL);
  SIRegister_TMacLatin2Codec(CL);
  SIRegister_TMacRomanCodec(CL);
  SIRegister_TMacCyrillicCodec(CL);
  SIRegister_TMacGreekCodec(CL);
  SIRegister_TMacIcelandicCodec(CL);
  SIRegister_TMacTurkishCodec(CL);
  SIRegister_TUSASCIICodec(CL);
  SIRegister_TEBCDIC_USCodec(CL);
  SIRegister_TKOI8_RCodec(CL);
  SIRegister_TJIS_X0201Codec(CL);
  SIRegister_TNextStepCodec(CL);
  CL.AddDelphiFunction('Procedure UnicodeCodecTest');
  CL.AddDelphiFunction('Procedure TestUnicodeCodecs');
end;

  {  Procedure PostMultipartFormData(const aUrl:AnsiString;
                                    const aRequestFields: TALStrings;
                                    const aRequestFiles: TALMultiPartFormDataContents;
                                    const aResponseContent: TStream;
                                    const aResponseHeader: TALHTTPResponseHeader2;
                                    const ARequestHeaderValues: TALNameValueArray = nil); overload;
       }

 LParamToSend: TIdMultiPartFormDataStream;   
  FHttp: TIDHTTP;   idformdaf: TIdFormDataField;
   

Doc:   https://www.fileformat.info/info/unicode/char/262e/index.htm

CL.AddDelphiFunction('function GetElementAtIndex(S: String; StrIdx : Integer): String;');
CL.AddDelphiFunction('function NormalizeText(Str: string): string; ');
function GetFirstCodepointSize(const S: UTF8String): Integer;
function Utf8ToUtf16( const sIn: AnsiString; iSrcCodePage: DWord): WideString;
procedure SaveString2(const AFile, AText: string);
procedure SaveString3(const AFile, AText: string; Append: Boolean);  //UTF8

function LoadFile3(const FileName: TFileName): string;
  var Stri: TStrings;  Stream: TStream;
   begin
     stream:=  TFileStream.Create(FileName, fmOpenRead or fmShareDenyWrite);
      Stri:= TStringlist.create;
      try
       try
         stri.LoadFromStream(Stream, TEncoding.UTF8);
         result:= stri.Text;
       except
         Result := '';  // Deallocates memory
         stream.Free;
         raise;
       end;
      finally
        stri.Free;
        stream.Free;
      end;
   end;

http://www.softwareschule.ch/download/maxbox_starter60_1.pdf

constructor TStreamWriter.Create(const Filename: string; Append: Boolean);
begin
  if not Append or not FileExists(Filename) then
    FStream := TFileStream.Create(Filename, fmCreate)
  else
  begin
    FStream := TFileStream.Create(Filename, fmOpenWrite);
    FStream.Seek(0, soEnd);
  end;
  Create(FStream);
  FOwnsStream := True;
end;

constructor TStreamWriter.Create(const Filename: string; Append: Boolean;
  Encoding: TEncoding; BufferSize: Integer);
begin
  if not Append or not FileExists(Filename) then
    FStream := TFileStream.Create(Filename, fmCreate)
  else
  begin
    FStream := TFileStream.Create(Filename, fmOpenWrite);
    FStream.Seek(0, soEnd);
  end;
  Create(FStream, Encoding, BufferSize);
  FOwnsStream := True;
end;


procedure SaveString3(const AFile, AText: string; Append: Boolean);
var
  Writer: TStreamWriter;   //, TEncoding.UTF8
begin
 //GetElementAtIndex
  { Create a new stream writer directly. }
  Writer := TStreamWriter.Create(Afile, append, TEncoding.UTF8);
  try
    Writer.Write(Atext);
  finally
  { Close and free the writer. }
    Writer.Free;
  end;
end;

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 8CF17E0D7519771801217DD3FD339F5E222DEB19E4FFC94667DB1E6C83A7913D

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Thu Jan 04 12:42:33 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

V5.0.2.80          Recode Tech

procedure SIRegister_RegularExpressions(CL: TPSPascalCompiler);
begin
  CL.AddTypeS('TRegExOption', '( rroNone, rroIgnoreCase, rroMultiLine, rroExplicitC'
   +'apture, rroCompiled, rroSingleLine, rroIgnorePatternSpace, rroNotEmpty )');
  CL.AddTypeS('TRegExOptions', 'set of TRegExOption');
  SIRegister_TGroup(CL);
  CL.AddClassN(CL.FindClass('TOBJECT'),'TGroupCollectionEnumerator');
  SIRegister_TGroupCollection(CL);
  SIRegister_TGroupCollectionEnumerator(CL);
  SIRegister_TMatch(CL);
  CL.AddClassN(CL.FindClass('TOBJECT'),'TMatchCollectionEnumerator');
  SIRegister_TMatchCollection(CL);
  SIRegister_TMatchCollectionEnumerator(CL);
  CL.AddTypeS('TMatchEvaluator', 'Function ( const Match : TMatch) : string');
  SIRegister_TRegEx(CL);
end;

with CL.AddClassN(CL.FindClass('TOBJECT'),'TRegEx') do
  begin
    RegisterMethod('Constructor Create( const Pattern : string; Options : TRegExOptions)');
    RegisterMethod('Constructor Create1( const Pattern : string)');

    RegisterMethod('Function IsMatch( const Input : string) : Boolean;');
    RegisterMethod('Function IsMatch1( const Input : string; StartPos : Integer) : Boolean;');
    RegisterMethod('Function IsMatch2( const Input, Pattern : string) : Boolean;');
    RegisterMethod('Function IsMatch3( const Input, Pattern : string; Options : TRegExOptions) : Boolean;');
    RegisterMethod('Function Escape( const Str : string; UseWildCards : Boolean) : string');
    RegisterMethod('Function Match( const Input : string) : TMatch;');
    RegisterMethod('Function Match1( const Input : string; StartPos : Integer) : TMatch;');
    RegisterMethod('Function Match2( const Input : string; StartPos, Length : Integer) : TMatch;');
    RegisterMethod('Function Match3( const Input, Pattern : string) : TMatch;');
    RegisterMethod('Function Match4( const Input, Pattern : string; Options : TRegExOptions) : TMatch;');
    RegisterMethod('Function Matches( const Input : string) : TMatchCollection;');
    RegisterMethod('Function Matches1( const Input : string; StartPos : Integer) : TMatchCollection;');
    RegisterMethod('Function Matches2( const Input, Pattern : string) : TMatchCollection;');
    RegisterMethod('Function Matches3(const Input,Pattern string; Options:TRegExOptions) : TMatchCollection;');
    RegisterMethod('Function Replace( const Input, Replacement : string) : string;');
    RegisterMethod('Function Replace1( const Input : string; Evaluator : TMatchEvaluator) : string;');
    RegisterMethod('Function Replace2( const Input, Replacement : string; Count : Integer) : string;');
    RegisterMethod('Function Replace3(const Input:string;Evaluator:TMatchEvaluator; Count : Integer) : string;');
    RegisterMethod('Function Replace4( const Input, Pattern, Replacement : string) : string;');
    RegisterMethod('Function Replace5( const Input, Pattern : string; Evaluator : TMatchEvaluator) : string;');
    RegisterMethod('Function Replaceall(const Input,Pattern,Replacement:string;Options:TRegExOptions) : string;');
    RegisterMethod('Function Replace7( const Input, Pattern : string; Evaluator : TMatchEvaluator; Options : TRegExOptions) : string;');
  end;
end;

 with TRegEx.Create1('<[^>]*>') do begin  
      writeln(Replace('<p>This is text.<br/> This is line 2</p>', ' '));                   
   end;
  with TRegEx.Create1('') do begin  
      writeln(Replaceall('<p>This is text.<br/> This is line 2</p>',
                          '<[^>]*>', ' ',[]));                   
   end;

function TBytesMerge(arr1, arr2: TBytes): TBytes;
var
  ofs: integer;
begin
  setlength(result, length(arr1) + length(arr2));
  ofs := 0;
  if length(arr1)>0 then
  begin
    Move(arr1[0], result[ofs], length(arr1));
    inc(ofs, length(arr1));
  end;
  if length(arr2)>0 then
  begin
    Move(arr2[0], result[ofs], length(arr2));
    inc(ofs, length(arr2));
  end;
end;

function parsejsonvalue2(JsonUTF8: string): string;
var
  LJSONValue: TJSONValue;
begin
 
   { convert String to JSON }
   LJSONValue:=TJSONObject.ParseJSONValue(TEncoding.UTF8.GetBytes(JsonUtf8),0);
    result:= LJSONValue.ToString;
end;

function Exit3(exitcode: integer): integer;
begin
   system.exit(exitcode);
end;

function StringToBytes_Encode(const s: string; destcodepage: integer; withBOM: boolean = true): TBytes;
function BytesToString_Decode(arr: TBytes; optsourcecodepage: integer = 0): string;
CL.AddDelphiFunction('Function SystemCodePage : Integer');
 CL.AddDelphiFunction('Function GetCodePage : Integer');
procedure BurrowsWheeler
procedure testUnicode(typ: byte);
const
  SMILEY_UTF8_SLIGHTLY_SMILING_FACE: TBytes = [$E2, $98, $BA]; // Unicode Code Point: U+263A
begin
  if typ = 1  then
     ShowMessage('hi unicode '+TEncoding.UTF8.GetString(SMILEY_UTF8_SLIGHTLY_SMILING_FACE));
  if typ= 2  then
    maxform1.memo2.lines.add(TEncoding.UTF8.GetString(SMILEY_UTF8_SLIGHTLY_SMILING_FACE));
  if typ= 3  then
    maxform1.caption:= maxform1.Caption +(TEncoding.UTF8.GetString(SMILEY_UTF8_SLIGHTLY_SMILING_FACE));
end;

TPathStatusProc = reference to procedure (const Path: string; var Stop: Boolean);
procedure GetSearchRecs2(const Path, Pattern: string; const Recursive: Boolean; PathStatusProc: TPathStatusProc);
 writeln(GetLocaleFormatSettings2string(LOCALE_SYSTEM_DEFAULT));  
result:= 'currstr-datesep-timesep-decsep-listsep-dateform-timeform-norm::: '
      GetSearchRecs2(exepath, '*.txt', false, nil);  
Ex.: 73: virtualconstructorlist.txt - 51638 - C:\maxbox\maxbox5\pascriptmaster2\pmaster2\

function ByteSizeToString(const size : Int64; const unitName : String) : String;
CL.AddDelphiFunction('procedure SetTempStatusMessage(const msg: string; pos, max: word);');
CL.AddDelphiFunction('function IndyFormat(const AFormat: string; const Args: array of const): string;');
CL.AddDelphiFunction('function StrToFloat_Universal( pText : string ): Extended;');
CL.AddDelphiFunction('function ConvertUTF16ToUTF8(const aUTF16String: UnicodeString): UTF8String;');
CL.AddDelphiFunction('function UTF16ToUTF8(const aUTF16String: UnicodeString): UTF8String;');
//CL.AddDelphiFunction('function getGetLocaleFormatSettings2: TFormatSettings;');
CL.AddDelphiFunction('procedure getGetLocaleFormatSettings2( var AFormatSettings: TFormatSettings);');

CL.AddDelphiFunction('procedure GetSearchRecs(const Path, Pattern: string; const Recursive: Boolean; PathStatusProc: TPathStatusProc; FileFoundProc: TFileFoundProc);');
CL.AddDelphiFunction('procedure GetSearchRecs2(const Path, Pattern: string; const Recursive: Boolean; PathStatusProc: TPathStatusProc);');
CL.AddDelphiFunction('function ByteSizeToString(const size : Int64; const unitName : String) : String;');
CL.AddDelphiFunction('function ByteSize2Str(const size : Int64; const unitName : String) : String;');


procedure SIRegister_TIdIOHandler(CL: TPSPascalCompiler);
begin
  //with RegClassS(CL,'TIdComponent', 'TIdIOHandler') do
  with CL.AddClassN(CL.FindClass('TIdComponent'),'TIdIOHandler') do begin
    RegisterMethod('Constructor Create( AOwner : TComponent)');
    RegisterMethod('Procedure Free;');
    RegisterMethod('Procedure AfterAccept');
    RegisterMethod('Function Connected : Boolean');
    RegisterMethod('Procedure CheckForDisconnect(ARaiseExceptionIfDisconnected:Boolean;AIgnoreBuffer:Boolean)');
    RegisterMethod('Function CheckForDataOnSource( ATimeout : Integer) : Boolean');
    RegisterMethod('Procedure Close');
    RegisterMethod('Procedure CloseGracefully');
    RegisterMethod('Function MakeDefaultIOHandler( AOwner : TComponent) : TIdIOHandler');
    RegisterMethod('Function MakeIOHandler( ABaseType: TIdIOHandlerClass; AOwner : TComponent) : TIdIOHandler');
    RegisterMethod('Function TryMakeIOHandler(ABaseType:TIdIOHandlerClass; AOwner:TComponent):TIdIOHandler');
    RegisterMethod('Procedure RegisterIOHandler');
    RegisterMethod('Procedure SetDefaultClass');
    RegisterMethod('Function WaitFor const AString: string; ARemoveFromBuffer:Boolean; AInclusive:Boolean; AByteEncoding: IIdTextEncoding; ATimeout : Integer; AAnsiEncoding : IIdTextEncoding) : string');
    RegisterMethod('Procedure Write(const ABuffer: TIdBytes;const ALength : Integer; const AOffset : Integer);');
    RegisterMethod('Procedure WriteDirect(const ABuffer:TIdBytes; const ALength:Integer;const AOffset:Integer)');
    RegisterMethod('Procedure Open');
    RegisterMethod('Function Readable( AMSec : Integer) : Boolean');
    RegisterMethod('Procedure Write1(const AOut:string;AByteEncoding:IIdTextEncoding;ASrcEncoding: IIdTextEncoding);');
    RegisterMethod('Procedure WriteLn2( AEncoding : IIdTextEncoding);');
    RegisterMethod('Procedure WriteLn3(const AOut:string;AByteEncoding:IIdTextEncoding;ASrcEncoding: IIdTextEncoding);');
  RegisterMethod('Procedure WriteLn1( const AOut : string);');

    RegisterMethod('Procedure WriteLnRFC(const AOut:string;AByteEncoding:IIdTextEncoding;ASrcEncoding: IIdTextEncoding)');
    RegisterMethod('Procedure Write4( AValue : TStrings; AWriteLinesCount : Boolean; AByteEncoding : IIdTextEncoding; ASrcEncoding : IIdTextEncoding);');
    RegisterMethod('Procedure Write5( AValue : Byte);');
    RegisterMethod('Procedure Write6(AValue:Char;AByteEncoding:IIdTextEncoding;ASrcEncoding: IIdTextEncoding);');
    RegisterMethod('Procedure Write7( AValue : Int16; AConvert : Boolean);');
    RegisterMethod('Procedure Write8( AValue : UInt16; AConvert : Boolean);');
    RegisterMethod('Procedure Write9( AValue : Int32; AConvert : Boolean);');
    RegisterMethod('Procedure Write10( AValue : UInt32; AConvert : Boolean);');
    RegisterMethod('Procedure Write11( AValue : Int64; AConvert : Boolean);');
    RegisterMethod('Procedure Write12( AValue : TIdUInt64; AConvert : Boolean);');
    RegisterMethod('Procedure Write13( AStream : TStream; ASize : TIdStreamSize; AWriteByteCount : Boolean);');
RegisterMethod('Procedure WriteStream( AStream : TStream; ASize : TIdStreamSize; AWriteByteCount : Boolean);');
    RegisterMethod('Procedure WriteStream2(AStream:TStream; ASize: TIdStreamSize;AWriteByteCount : Boolean);');

    RegisterMethod('Procedure WriteRFCStrings( AStrings : TStrings; AWriteTerminator : Boolean; AByteEncoding : IIdTextEncoding; ASrcEncoding : IIdTextEncoding)');
    RegisterMethod('Function WriteFile( const AFile : String; AEnableTransferFile : Boolean) : Int64');
    RegisterMethod('Function AllData( AByteEncoding:IIdTextEncoding; ADestEncoding : IIdTextEncoding) : string');
    RegisterMethod('Function InputLn( const AMask : string; AEcho : Boolean; ATabWidth : Integer; AMaxLineLength : Integer; AByteEncoding : IIdTextEncoding; AAnsiEncoding : IIdTextEncoding) : string');
    RegisterMethod('Procedure Capture14(ADest:TStream;AByteEncoding:IIdTextEncoding;ADestEncoding: IIdTextEncoding);');
    RegisterMethod('Procedure Capture15( ADest : TStream; ADelim : string; AUsesDotTransparency : Boolean; AByteEncoding : IIdTextEncoding; ADestEncoding : IIdTextEncoding);');
    RegisterMethod('Procedure Capture16( ADest : TStream; out VLineCount : Integer; const ADelim : string; AUsesDotTransparency : Boolean; AByteEncoding : IIdTextEncoding; ADestEncoding : IIdTextEncoding);');
    RegisterMethod('Procedure Capture17(ADest:TStrings;AByteEncoding:IIdTextEncoding;ADestEncoding: IIdTextEncoding);');
    RegisterMethod('Procedure Capture18( ADest : TStrings; const ADelim : string; AUsesDotTransparency : Boolean; AByteEncoding : IIdTextEncoding; ADestEncoding : IIdTextEncoding);');
    RegisterMethod('Procedure Capture19( ADest : TStrings; out VLineCount : Integer; const ADelim : string; AUsesDotTransparency : Boolean; AByteEncoding : IIdTextEncoding; ADestEncoding : IIdTextEncoding);');
    RegisterMethod('Procedure ReadBytes( var VBuffer : TIdBytes; AByteCount : Integer; AAppend : Boolean)');
    RegisterMethod('Function ReadLn( AByteEncoding: IIdTextEncoding; ADestEncoding: IIdTextEncoding) : string;');
RegisterMethod('Function ReadLn1: string;');
    RegisterMethod('Function ReadLn21( ATerminator:string; AByteEncoding:IIdTextEncoding;ADestEncoding : IIdTextEncoding): string;');
    RegisterMethod('Function ReadLn22( ATerminator : string; ATimeout : Integer; AMaxLineLength : Integer; AByteEncoding : IIdTextEncoding; ADestEncoding : IIdTextEncoding) : string;');
    RegisterMethod('Function ReadLnRFC23(var VMsgEnd:Boolean;AByteEncoding:IIdTextEncoding;ADestEncoding : IIdTextEncoding):string;');
    RegisterMethod('Function ReadLnRFC24( var VMsgEnd : Boolean; const ALineTerminator : string; const ADelim : string; AByteEncoding : IIdTextEncoding; ADestEncoding : IIdTextEncoding) : string;');
    RegisterMethod('Function ReadLnWait( AFailCount:Integer;AByteEncoding:IIdTextEncoding;ADestEncoding: IIdTextEncoding):string');
    RegisterMethod('Function ReadLnSplit( var AWasSplit : Boolean; ATerminator : string; ATimeout : Integer; AMaxLineLength : Integer; AByteEncoding : IIdTextEncoding; ADestEncoding : IIdTextEncoding) : string');
    RegisterMethod('Function ReadChar( AByteEncoding : IIdTextEncoding; ADestEncoding : IIdTextEncoding) : Char');
    RegisterMethod('Function ReadByte : Byte');
    RegisterMethod('Function ReadString(ABytes:Integer;AByteEncoding:IIdTextEncoding;ADestEncoding : IIdTextEncoding):string');
    RegisterMethod('Function ReadInt16( AConvert : Boolean) : Int16');
    RegisterMethod('Function ReadUInt16( AConvert : Boolean) : UInt16');
    RegisterMethod('Function ReadInt32( AConvert : Boolean) : Int32');
    RegisterMethod('Function ReadUInt32( AConvert : Boolean) : UInt32');
    RegisterMethod('Function ReadInt64( AConvert : Boolean) : Int64');
    RegisterMethod('Function ReadUInt64( AConvert : Boolean) : TIdUInt64');
    RegisterMethod('Procedure ReadStream(AStream:TStream;AByteCount:TIdStreamSize;AReadUntilDisconnect: Boolean);
    RegisterMethod('Procedure ReadStrings( ADest: TStrings; AReadLinesCount: Integer; AByteEncoding : IIdTextEncoding; ADestEncoding: IIdTextEncoding)');
    RegisterMethod('Procedure Discard( AByteCount : Int64)');
    RegisterMethod('Procedure DiscardAll');
    RegisterMethod('Procedure WriteBufferCancel');
    RegisterMethod('Procedure WriteBufferClear');
    RegisterMethod('Procedure WriteBufferClose');
    RegisterMethod('Procedure WriteBufferFlush25;');
    RegisterMethod('Procedure WriteBufferFlush26( AByteCount : Integer);');
    RegisterMethod('Procedure WriteBufferOpen27;');
    RegisterMethod('Procedure WriteBufferOpen28( AThreshold : Integer);');
    RegisterMethod('Function WriteBufferingActive : Boolean');
    RegisterMethod('Function InputBufferIsEmpty : Boolean');
    RegisterMethod('Procedure InputBufferToStream( AStream : TStream; AByteCount : Integer)');
    RegisterMethod('Function InputBufferAsString(AByteEncoding:IIdTextEncoding;ADestEncoding:IIdTextEncoding): string');
    RegisterProperty('ConnectTimeout', 'Integer', iptrw);
    RegisterProperty('ClosedGracefully', 'Boolean', iptr);
    RegisterProperty('InputBuffer', 'TIdBuffer', iptr);
    RegisterProperty('LargeStream', 'Boolean', iptrw);
    RegisterProperty('MaxCapturedLines', 'Integer', iptrw);
    RegisterProperty('Opened', 'Boolean', iptr);
    RegisterProperty('ReadTimeout', 'Integer', iptrw);
    RegisterProperty('ReadLnTimedout', 'Boolean', iptr);
    RegisterProperty('WriteBufferThreshold', 'Integer', iptr);
    RegisterProperty('DefStringEncoding', 'IIdTextEncoding', iptrw);
    RegisterProperty('DefAnsiEncoding', 'IIdTextEncoding', iptrw);
    RegisterProperty('Destination', 'string', iptrw);
    RegisterProperty('Host', 'string', iptrw);
    RegisterProperty('Intercept', 'TIdConnectionIntercept', iptrw);
    RegisterProperty('MaxLineLength', 'Integer', iptrw);
    RegisterProperty('MaxLineAction', 'TIdMaxLineAction', iptrw);
    RegisterProperty('Port', 'Integer', iptrw);
    RegisterProperty('RecvBufferSize', 'Integer', iptrw);
    RegisterProperty('SendBufferSize', 'Integer', iptrw);
  end;
end;

function PointsAdd(const A, B: TPoint): TPoint;
function PointsDec(const A, B: TPoint): TPoint;
function PointsAbs(const P: TPoint): TPoint;

procedure SIRegister_uWebUIMiscFunctions(CL: TPSPascalCompiler);
begin
 CL.AddConstantN('SHLWAPIDLL','String').SetString( 'shlwapi.dll');
 CL.AddDelphiFunction('Procedure OutputDebugMessage( const aMessage : string)');
 CL.AddDelphiFunction('Function CustomExceptionHandler(const aFunctionName:string;const aException:exception): boolean');
 CL.AddDelphiFunction('Function CustomPathIsRelative( const aPath : string) : boolean');
 CL.AddDelphiFunction('Function CustomPathCanonicalize(const aOriginalPath:string; var aCanonicalPath:string) : boolean');
 CL.AddDelphiFunction('Function CustomAbsolutePath( const aPath : string; aMustExist : boolean) : string');
 CL.AddDelphiFunction('Function CustomPathIsURL( const aPath : string) : boolean');
 CL.AddDelphiFunction('Function CustomPathIsUNC( const aPath : string) : boolean');
 CL.AddDelphiFunction('Function GetModulePath2 : string');
 CL.AddDelphiFunction('Function ExecuteFile2( const filename, Params, DefaultDir : string; ShowCmd : integer) : THandle');
 CL.AddDelphiFunction('Function CopyWebUIFramework( const aSrcPath, aDstPath : string) : boolean');
 CL.AddDelphiFunction('Function LibraryExists( const aPath : string) : boolean');
 //CL.AddDelphiFunction('Function StringToPWebUIChar( const aSrcString : string; var aRsltLength : integer) : PWebUIChar');
end;

function rotl(lhs, rhs: Uint32): Uint32;
const
  Bits = sizeof(Uint32);
begin
  var k := rhs and (Bits - 1);
  if k = 0 then exit(lhs);
  Result := (lhs shl k) or (lhs shr (Bits - k));
end;

function rotr(lhs, rhs: Uint32): Uint32;
const
  Bits = sizeof(Uint32);
begin
  var k := rhs and (Bits - 1);
  if k = 0 then exit(lhs);
  Result := (lhs shr k) or (lhs shl (Bits - k));
end;

function ApplyStringVariables(const str:TFilename;const variables:TStrings;const delimiter:String= '%'): TFilename;
function StrCountString(const haystack, needle : String) : Integer;
procedure StringBytesToWords(var buf : UnicodeString; swap : Boolean);
procedure StringWordsToBytes(var buf : UnicodeString; swap : Boolean);

https://github.com/EricGrange/DWScript/blob/master/Source/dwsUtils.pas#L1087


procedure SIRegister_TIdSimpleWebSocketClient(CL: TPSPascalCompiler);
begin
  //with RegClassS(CL,'TIdTCPClient', 'TIdSimpleWebSocketClient') do
  with CL.AddClassN(CL.FindClass('TIdTCPClient'),'TIdSimpleWebSocketClient') do begin
    RegisterProperty('onDataEvent', 'TSWSCDataEvent', iptrw);
    RegisterProperty('onConnectionDataEvent', 'TSWSCDataEvent', iptrw);
    RegisterProperty('onPing', 'TSWSCDataEvent', iptrw);
    RegisterProperty('onError', 'TSWSCErrorEvent', iptrw);
    RegisterProperty('onHeartBeatTimer', 'TNotifyEvent', iptrw);
    RegisterProperty('OnUpgrade', 'TnotifyEvent', iptrw);
    RegisterProperty('HeartBeatInterval', 'Cardinal', iptrw);
    RegisterProperty('AutoCreateHandler', 'Boolean', iptrw);
    RegisterProperty('URL', 'String', iptrw);
    RegisterMethod('Procedure Connect( pURL : String)');
    RegisterMethod('Procedure Close');
    RegisterMethod('Function Connected : Boolean');
    RegisterProperty('Upgraded', 'Boolean', iptr);
    RegisterMethod('Procedure writeText( pMsg : String)');
    RegisterMethod('Procedure writeTextSync( pMsg : String; pTriggerFunction : TFunc)');
    RegisterMethod('Constructor Create( AOwner : TComponent)');
    RegisterMethod('Procedure Free');
  end;
end;
https://github.com/arvanus/Indy/blob/WebSocketImpl/Lib/Core/IdWebSocketSimpleClient.pas

https://github.com/IndySockets/Indy/issues/201
https://github.com/tothpaul/Delphi/blob/master/AsciiShape/Main.pas


Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 5FFFCCDAC0A0E1D6E142F8825BD1DFF1E16A5C71F1BBEA17FD926BCF255D9E31

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Wed Jan 17 12:02:12 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 69E63032FCFC5CC3B8F99C1549D8F220680B10B67468FE906568D22111501C7E

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Fri Jan 26 13:45:38 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): F2F10CF05229735E4A22538B1634CC90AE23AF4EEAFDAFAB749E7D84718C7116

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Fri Jan 26 21:18:13 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 2164D7CFD4D4AC8A30960EF5DD033B871BDE9136AA3C8AF9A656E6CA0822B464

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sun Jan 28 20:04:53 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 621EEB523ABA49E248D624F4DC59ACFB331142818BBBC80F6E1C07C931BF6030

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Thu Feb 01 13:25:23 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 963F55F4A882BC556BBEB18A41DFC859B7D34745BA94FF25611F5C8E5FD47940

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sun Feb 04 21:22:38 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

502 UNICODE Test
maXbox Version Check File

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 479B45D4FCFFB1DE46B05F1A6848DFA39456DB3A3DA887EC22381C2D0071C28D

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Mon Feb 12 13:55:55 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 2AE50D60BF9FF5ACB11AC66F6F43DF35A9E9F58262626D6748F82950A722CA76

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Thu Feb 15 11:50:07 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): C56226F60CABD03C55B419B8743646A992284A40FC25C9D5B1CCF651782F91E6

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Fri Feb 16 20:45:20 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): E9624C37690A21765B6AC006B408294D336F1B17CD9ACB36FAC6789517ABB959

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sun Feb 18 15:20:04 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 3B8B55ECA0451796D5209D8E3390006C87C9D59F36840C6B9E33B9BB6606F723

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sat Feb 24 16:02:15 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): CD6C8BB37F8D06425107871E6C072E57974D2ED4D1FC48FC83E6E9517DEEE405

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sun Feb 25 17:51:02 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): AE01859E2DD1B4747F8B27AF7F6A8C489B9068B68C2FB2B0C02F7FCBE7D0C970

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Fri Mar 01 14:15:10 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 2BA3FC897177C0BD31FF85ECF37878F8E72D5B187004A875FD2397B3E944C627

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sun Mar 03 13:16:41 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): B0A191126ABDAA2CFC338449B19A348F05286BCEAB52ADDFECE13177E5C2097B

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sun Mar 03 15:38:51 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 960253943271DF2AA7DD0369C1DC4F8B11DF0704E2AE523A3930EC4C6EE160E1

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Thu Mar 07 18:12:18 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0


(*----------------------------------------------------------------------------*)
procedure SIRegister_RNavigateLongLat(CL: TPSPascalCompiler);
begin
  //with RegClassS(CL,'TOBJECT', 'RNavigateLongLat') do
  with CL.AddClassN(CL.FindClass('TOBJECT'),'RNavigateLongLat') do begin
    RegisterMethod('Procedure GoGoogle');
    RegisterMethod('Procedure GoGoogleDirectionsTo( ADestination : RNavigateLongLat; AMapLoc : Integer)');
    RegisterMethod('Procedure SetToNull');
    RegisterMethod('Procedure CreateDec( ADecLong, ADecLatt : Double)');
    RegisterMethod('Procedure Create( ALongRad, ALatRad : Double)');
    RegisterMethod('Procedure GoogleScaleByMeters( AMeters : Double)');
    RegisterMethod('Function LocatationText( ASecDecPlaces : Integer) : String');
    RegisterMethod('Function LocatationCsv( ADecPlaces : Integer) : String');
    RegisterMethod('Function LongitudeText( ASecDecPlaces : Integer) : String');
    RegisterMethod('Function LatitudeText( ASecDecPlaces : Integer) : String');
    RegisterMethod('Function MetresFrom( AStart : RNavigateLongLat) : Double');
    RegisterMethod('Function MetresFromPrecision( AStart : RNavigateLongLat; out ARadiansToStart, ARadiansFromStart : Double; AAllowPolarRoute : Boolean) : Double');
    RegisterMethod('Function LocationAtMtrsRad( AMeters, ATrueHeadingRadians : Double) : RNavigateLongLat');
    RegisterMethod('Function LocationAt( AMeters, ATrueHeadingDegrees : Double) : RNavigateLongLat');
    RegisterMethod('Function HeadingFrom( AStart : RNavigateLongLat) : Double');
    RegisterMethod('Function HeadingInRadFrom( AStart : RNavigateLongLat) : Double');
    RegisterMethod('Function GoogleLink : String');
    RegisterMethod('Function GoogleLinkDirectionsTo(ADestination:RNavigateLongLat; AMapLoc: Integer) : String');
    RegisterMethod('Function IsValid : Boolean');
    RegisterMethod('Function NotNull : Boolean');
    RegisterMethod('Function HeadingFromAsText( AStart : RNavigateLongLat; ADecPlace : Integer) : String');
    RegisterProperty('Longitude', 'Double', iptrw);
    RegisterProperty('Latitude', 'Double', iptrw);
    RegisterProperty('LongAsRad', 'Double', iptr);
    RegisterProperty('LatAsRad', 'Double', iptr);
    RegisterProperty('GoogleScale', 'Integer', iptrw);
  end;
end;

(*----------------------------------------------------------------------------*)
procedure SIRegister_IsNavUtils2(CL: TPSPascalCompiler);
begin
  SIRegister_RNavigateLongLat(CL);
 CL.AddDelphiFunction('Function TextMeters2( AMeters : Single; DecPlace, MaxLen, PosPoint : Byte) : String');
 CL.AddDelphiFunction('Function AngleDecFrmDegreeMinuteSecond(ADegrees,AMinutes:Integer;ASeconds:Double): Double;');
 CL.AddDelphiFunction('Function TextDegreeMinuteSecond( ARadians : Double; AAccuracy : Integer) : String;');
 CL.AddDelphiFunction('Function TextDegreeMinuteSecondFrmDec2( Value : Double; AAccuracy : Integer) : String');
 CL.AddDelphiFunction('Procedure CalNewDoubleAverageAndSumOfSquares( ANewSample : Double; var ARunningAveage, ARunningAveageSumOfSqrs : Double; ANoOfSamples : Integer)');
 CL.AddDelphiFunction('Procedure CalNewRationalAngleDegreesAverageAndSumOfSquares( ANewSample : Double; var ARunningAngleAve, RunningAngleSumOfSquares : Double; ANoOfSamples : Integer; AReturn0to360 : Boolean)');
 CL.AddDelphiFunction('Procedure CalNewRationalAngleRadiansAverageAndSumOfSquares( ANewSample : Double; var RunningAngleSumOfSquares, ARunningAngleAve : Double; ANoOfSamples : Integer)');
 CL.AddDelphiFunction('Function CalDoubleStdDevFromSumOfSquares(ARunningAveageSumOfSqrs Double; ANoOfSamples : Integer): Double');
 CL.AddDelphiFunction('Function MtrsPerDegreeLongAdjustForLatitude( ALatitudeDegree : Double) : Double');
 CL.AddDelphiFunction('Function RealFrmDegreeText2( AText : String) : double');
 CL.AddConstantN('EarthRad','Double').setExtended( 6371008.8);
 CL.AddConstantN('MtrsPerDegree','Double').setExtended( Pi * 6371008.8 / 180);
 CL.AddConstantN('AngleDegreeChar','String').SetString( '°');
 CL.AddConstantN('AngleMins','String').SetString( '''');
 CL.AddConstantN('AngleSecs','String').SetString( '"');
 CL.AddConstantN('EffectiveZero','Extended').setExtended( 0.0000000001);
end;

procedure SIRegister_TAChartUtils(CL: TPSPascalCompiler);
begin
 CL.AddConstantN('CHART_COMPONENT_IDE_PAGE','String').SetString( 'Chart');
 CL.AddConstantN('taPERCENT','Extended').setExtended( 0.01);
 CL.AddConstantN('clTAColor','LongWord').SetUInt( $20000000);
 CL.AddConstantN('DEFAULT_FONT_SIZE','LongInt').SetInt( 10);
  CL.AddClassN(CL.FindClass('TOBJECT'),'EChartError');
  CL.AddClassN(CL.FindClass('TOBJECT'),'EChartIntervalError');
  CL.AddClassN(CL.FindClass('TOBJECT'),'EListenerError');
  CL.AddClassN(CL.FindClass('TOBJECT'),'EDrawDataError');
  CL.AddTypeS('TDoublePoint', 'record X : Double; Y : Double; end');
  CL.AddTypeS('TATPointArray', 'array of TPoint');
  CL.AddTypeS('TDoublePointArray', 'array of TDoublepoint');
  CL.AddTypeS('TChartDistance', 'Integer');
  CL.AddTypeS('TATPercent', 'Integer');
  CL.AddTypeS('TTransformFunc', 'Function ( A : Double) : Double');
  CL.AddTypeS('TImageToGraphFunc', 'Function ( AX : Integer) : Double');
  CL.AddTypeS('TGraphToImageFunc', 'Function ( AX : Double) : Integer');
  CL.AddTypeS('TChartUnits', '( cuPercent, cuAxis, cuGraph, cuPixel )');
  CL.AddTypeS('TOverrideColor', '( ocBrush, ocPen )');
  CL.AddTypeS('TOverrideColors', 'set of TOverrideColor');
 // CL.AddTypeS('TSeriesMarksStyle', '( smsCustom, smsNone, smsValue, smsPercent,'
 //  +' smsLabel, smsLabelPercent, smsLabelValue, smsLegend, smsPercentTotal, sms'
 //  +'LabelPercentTotal, smsXValue )');
  CL.AddTypeS('TDoubleInterval', 'record FStart : Double; FEnd : Double; end');
  CL.AddTypeS('TNearestPointTarget', '( nptPoint, nptXList, nptYList, nptCustom)');
  CL.AddTypeS('TNearestPointTargets', 'set of TNearestPointTarget');
  SIRegister_TIntervalList(CL);
  CL.AddTypeS('TCaseOfTwo', '( cotNone, cotFirst, cotSecond, cotBoth )');
 // SIRegister_TIndexedComponent(CL);
//  SIRegister_TTypedFPListEnumerator(CL);
 // SIRegister_TIndexedComponentList(CL);
  CL.AddClassN(CL.FindClass('TOBJECT'),'TBroadcaster');
  //SIRegister_TListener(CL);
  //SIRegister_TBroadcaster(CL);
  //SIRegister_TDrawDataItem(CL);
  //CL.AddTypeS('TDrawDataItemClass', 'class of TDrawDataItem');
  //SIRegister_TDrawDataRegistry(CL);
  //SIRegister_TPublishedIntegerSet(CL);
  //SIRegister_THistory(CL);
  //CL.AddTypeS('PStr', '^String // will not work');
  //SIRegister_TClassRegistryItem(CL);
  //SIRegister_TClassRegistry(CL);
 CL.AddConstantN('PUB_INT_SET_ALL','String').SetString( '');
 CL.AddConstantN('PUB_INT_SET_EMPTY','String').SetString( '-');
 CL.AddConstantN('ORIENTATION_UNITS_PER_DEG','LongInt').SetInt( 10);
 CL.AddDelphiFunction('Function BoundsSize( ALeft, ATop : Integer; ASize : TSize) : TRect');
 CL.AddDelphiFunction('Function Deg16ToRad( ADeg16 : Integer) : Double');
 CL.AddDelphiFunction('Function DoubleInterval( AStart, AEnd : Double) : TDoubleInterval');
 CL.AddDelphiFunction('Procedure Exchange0( var A, B : Integer);');
 CL.AddDelphiFunction('Procedure Exchange1( var A, B : Double);');
 CL.AddDelphiFunction('Procedure Exchange2( var A, B : TDoublePoint);');
 CL.AddDelphiFunction('Procedure Exchange3( var A, B : String);');
 CL.AddDelphiFunction('Function FormatIfNotEmpty( AFormat, AStr : String) : String');
 CL.AddDelphiFunction('Function IfThen4( ACond : Boolean; ATrue, AFalse : TObject) : TObject;');
 CL.AddDelphiFunction('Function TAInterpolateRGB( AColor1, AColor2 : Integer; ACoeff : Double) : Integer');
 CL.AddDelphiFunction('Function IntToColorHex( AColor : Integer) : String');
 CL.AddDelphiFunction('Function IsEquivalent( const A1, A2 : Double) : Boolean');
 CL.AddDelphiFunction('Function IsNan5( const APoint : TDoublePoint) : Boolean;');
 CL.AddDelphiFunction('Function NumberOr( ANum : Double; ADefault : Double) : Double');
 CL.AddDelphiFunction('Function OrientToRad( AOrient : Integer) : Double');
 CL.AddDelphiFunction('Function RadToDeg16( ARad : Double) : Integer');
 CL.AddDelphiFunction('Function RadToOrient( ARad : Double) : Integer');
 CL.AddDelphiFunction('Function RoundChecked( A : Double) : Integer');
 CL.AddDelphiFunction('Procedure TASetPropDefaults( AObject : TPersistent; APropNames : array of String)');
 CL.AddDelphiFunction('Function TASplit( AString : String; ADest : TStrings; ADelimiter : Char) : TStrings');
 CL.AddDelphiFunction('Function StrToFloatDefSep( const AStr : String) : Double');
 //CL.AddDelphiFunction('Procedure Unused( const A1)');
 //CL.AddDelphiFunction('Procedure Unused( const A1, A2)');
 //CL.AddDelphiFunction('Procedure Unused( const A1, A2, A3)');
 CL.AddDelphiFunction('Procedure UpdateMinMax6( AValue : Double; var AMin, AMax : Double);');
 CL.AddDelphiFunction('Procedure UpdateMinMax7( AValue : Integer; var AMin, AMax : Integer);');
 CL.AddDelphiFunction('Function WeightedAverage( AX1, AX2, ACoeff : Double) : Double');
end;

function TestHTTPClassComponentAPIDetection(AURL, askstream: string; aApikey: string): string;
var HttpRequest1: THttpRequestC;
    Body: TMultipartFormBody;
    Body2: TUrlEncodedFormBody;
begin
  {Body2 := TUrlEncodedFormBody.Create;
  Body2.ReleaseAfterSend := True;
  Body2.Add('code', '1');
  Body2.Add('name', 'John');   }
  Body:= TMultipartFormBody.Create;
  Body.ReleaseAfterSend:= True;
  Body.Add('code', '2', 'application/octet-stream');
  Body.AddFromFile('image', exepath+'randimage0cop.jpg');
  HttpRequest1:= THttpRequestC.create(self);
  HttpRequest1.headers.add('X-Api-Key:'+AAPIKEY);
  HttpRequest1.headers.add('Accept:application/json');
   //if HttpRequest1.Get('https://httpbin.org/get') then
   //if HttpRequest1.Post2('https://httpbin.org/post', 'testing a POST') then 
    //if HttpRequest1.Post1('https://httpbin.org/post', body) then 
    if HttpRequest1.Post1Multipart(AURL, body) then 
       writeln(HttpRequest1.Response.ContentAsString)
   
  else
    Writeln('ERROR ' + inttostr(HttpRequest1.Response.StatusCode2));
     writeln('status2: '+itoa(HttpRequest1.Response.statuscode2))
     writeln('status3: '+gethttpcod(HttpRequest1.Response.statuscode2))
    //   if assigned(body) then body.free;
  HttpRequest1.Free;  
  sleep(500)
    //if assigned(body) then body.free;
  //body2.free;
end;

 In this code snippet:
    
    {
  "args": {},
  "data": "",
  "files": {},
  "form": {},
  "headers": {
    "Accept": "application/json",
    "Accept-Encoding": "gzip, deflate, br, zstd",
    "Accept-Language": "de,de-DE;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6",
    "Content-Length": "0",
    "Host": "httpbin.org",
    "Origin": "https://httpbin.org",
    "Referer": "https://httpbin.org/",
    "Sec-Ch-Ua": "\"Microsoft Edge\";v=\"123\", \"Not:A-Brand\";v=\"8\", \"Chromium\";v=\"123\"",
    "Sec-Ch-Ua-Mobile": "?0",
    "Sec-Ch-Ua-Platform": "\"Windows\"",
    "Sec-Fetch-Dest": "empty",
    "Sec-Fetch-Mode": "cors",
    "Sec-Fetch-Site": "same-origin",
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0",
    "X-Amzn-Trace-Id": "Root=1-6629138a-30ccdbda63321bda3a813217"
  },
  "json": null,
  "origin": "46.127.119.188",
  "url": "https://httpbin.org/post"
}

procedure SIRegister_TMultiPartFormAttachment(CL: TPSPascalCompiler);
begin
  //with RegClassS(CL,'TOBJECT', 'TMultiPartFormAttachment') do
  with CL.AddClassN(CL.FindClass('TOBJECT'),'TMultiPartFormAttachment') do
  begin
    RegisterMethod('Constructor Create41( MimeType, FileName : string);');
    RegisterMethod('Constructor Create42( Source : TStream; MimeType, FileName : string);');
    RegisterMethod('Constructor Create43( FilePath, MimeType, FileName : string);');
    RegisterMethod('Constructor Create1( MimeType, FileName : string);');
    RegisterMethod('Constructor Create2( Source : TStream; MimeType, FileName : string);');
    RegisterMethod('Constructor Create3( FilePath, MimeType, FileName : string);');

    RegisterProperty('Content', 'TStringStream', iptrw);
    RegisterProperty('MimeType', 'string', iptrw);
    RegisterProperty('FileName', 'string', iptrw);
  end;
end;

procedure SIRegister_HttpUtils(CL: TPSPascalCompiler);
begin
 CL.AddDelphiFunction('Function PathEncode( const ASrc : String) : String');
 CL.AddDelphiFunction('Function RPos5( const ASub, AIn : String; AStart : Integer) : Integer');
 CL.AddDelphiFunction('Function Fetch5( var AInput : String; const ADelim : String) : String');
 CL.AddDelphiFunction('Function GetErrorDescription( AErrorCode : Integer) : String');
 CL.AddDelphiFunction('Function AppendBytes5( ABytes1, ABytes2 : TBytes) : TBytes');
 CL.AddDelphiFunction('Function RandomHex5 : String');
 CL.AddDelphiFunction('Procedure WriteBytes5( const AStream : TStream; const ABytes : TBytes)');
 CL.AddDelphiFunction('Procedure WriteString5( const AStream : TStream; const AString : String)');
 CL.AddDelphiFunction('Function GetMimeType5( const AMemory : TMemoryStream; const ASize : Integer) : String');
 CL.AddDelphiFunction('function GetBitCount(num: integer): integer');
 CL.AddDelphiFunction('function popCount64(num: integer): integer');
end;

https://github.com/marcieldeg/HttpComponent/blob/main/README.md

procedure SIRegister_THttpRequestC(CL: TPSPascalCompiler);
begin
  //with RegClassS(CL,'TComponent', 'THttpRequest') do
  with CL.AddClassN(CL.FindClass('TComponent'),'THttpRequestC') do
  begin
    RegisterMethod('Constructor Create( AOwner : TComponent)');
     RegisterMethod('Procedure Free');
    RegisterMethod('Function Delete( AUrl : String) : Boolean;');
    RegisterMethod('Function Delete1( AUrl : String; ABody : TBody) : Boolean;');
    RegisterMethod('Function Delete2( AUrl : String; ABody : String) : Boolean;');
    RegisterMethod('Function Get( AUrl : String) : Boolean');
    RegisterMethod('Function Head( AUrl : String) : Boolean');
    RegisterMethod('Function Options( AUrl : String) : Boolean');
    RegisterMethod('Function Patch( AUrl : String) : Boolean;');
    RegisterMethod('Function Patch1( AUrl : String; ABody : TBody) : Boolean;');
    RegisterMethod('Function Patch2( AUrl : String; ABody : String) : Boolean;');
    RegisterMethod('Function Post( AUrl : String) : Boolean;');
    RegisterMethod('Function Post1( AUrl : String; ABody : TBody) : Boolean;');
    RegisterMethod('Function Post1Multipart( AUrl : String; ABody : TBody) : Boolean;');
    RegisterMethod('Function Post2( AUrl : String; ABody : String) : Boolean;');
    RegisterMethod('Function Put( AUrl : String) : Boolean;');
    RegisterMethod('Function Put1( AUrl : String; ABody : TBody) : Boolean;');
    RegisterMethod('Function Put2( AUrl : String; ABody : String) : Boolean;');
    RegisterMethod('Function Trace( AUrl : String) : Boolean');
    RegisterProperty('Cookies', 'TCookiesC', iptr);
    RegisterProperty('Response', 'THttpResponseC', iptr);
    RegisterProperty('Headers', 'THeaders', iptrw);
    RegisterProperty('UseCookies', 'Boolean', iptrw);
    RegisterProperty('AutoRedirect', 'Boolean', iptrw);
    RegisterProperty('SecurityOptions', 'TSecurityOptions', iptrw);
    RegisterProperty('UserAgent', 'String', iptrw);
    RegisterProperty('HttpVersion', 'THttpVersionComp', iptrw);
    RegisterProperty('Username', 'String', iptrw);
    RegisterProperty('Password', 'String', iptrw);
    RegisterProperty('OnProgress', 'THttpOnProgress', iptrw);
  end;
end;

THttpResponseC = class(TComponent)
  private
    FStatusCode: THttpStatus;
     FStatusCode2: cardinal;
    FHeaders: THeaders;
    FData: TBytes;
    function GetContentLength: Integer;
    function GetContentType: String;
    function GetContentAsString: String;
  public
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
    procedure SaveToFile(AFileName: String);
    property StatusCode: THttpStatus read FStatusCode;
     property StatusCode2: cardinal read FStatusCode2;
    property Content: TBytes read FData;
    property ContentAsString: String read GetContentAsString;
    property ContentAsAnsiString: String read GetContentAsAnsiString;
    property ContentAsUTF8String: String read GetContentAsUTF8String;
    property ContentType: String read GetContentType;
    property ContentLength: Integer read GetContentLength;
    property Headers: THeaders read FHeaders;
  end;


Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 7C748DEED176EE303716240DA8ACA9C8D6676EF713C4EE6EE7ED337F0D40160D

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Thu Mar 07 20:56:56 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): A32B3BECFEA379F1474702D1C80ADE0DDADBC0645BD6E72189D58EDAB422E872

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Fri Mar 08 13:42:13 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 2955B78E468DA665BA818E9346C946B067ABFEEBEB44333FF47A1E0A8EE84F51

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sun Mar 10 16:51:04 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): D0B4D0A01596445DABB47A9A2D1A4A43176F06EA18BEB7AEBCA8EDAFA5F16F11

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Fri Mar 15 15:05:51 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 4E70FD061CDCF6929559E7E09C94FD80484DF9B2C586935F4F18A6988E9675A9

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Wed Mar 20 08:21:56 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Signature Index: 0 (Primary Signature)
Hash of file (sha256): D85C1B5A864E6E95B5F6A32892D33577979832BA9B1207D0CEDCCB80FDA0A347

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 00:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 00:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 00:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Thu Mar 21 16:25:12 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 01:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 01:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sun May 08 08:45:38 2033
            SHA1 hash: CA3E8CFD7CFD329A99359A9A38F86185F0B01C4A


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): E1159C29D2773248FFD9D0C7A36789D3F14C8A56DF08B08AAD346C3A420BADBF

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Tue Apr 16 15:55:47 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 8F874F811D15C5DE3FCB323B18A07E43AC16965772277D057DA0C05130FB3818

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Fri Apr 19 13:50:47 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): E60E2AAC09146449C6105A37CF918F70C47A10C0C99927BF26A982ACBB87E2D8

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Fri Apr 26 09:32:23 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 161B71FB52EC55E18539115D236F32D013E2EA70E25053411274069E4F6F230C

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Tue Apr 30 08:06:25 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): EB602B2701AFEE46404471821E6DF8BD8892357343E86F714AD2C83B0ECC0A98

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Fri May 03 16:05:17 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 5B317038BAF7E96EA6C4F9EFFAC251948E37CF5728C17F8DF032351E168A0A46

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Mon May 06 13:31:54 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): E3E8657FD19F4FDE72D742BF390290C870E08C63171320021C1CD9C1F3B46320

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Tue May 07 14:02:10 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 5E4B334B68B858A0413660A52232654F12AD6C16E196BBDFA620FAF6B8721692

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Mon May 13 11:43:22 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 001EAF0AB8AF6E7A313C0CB416462D22DD04291C62DB76BC03552A8E41BB74D4

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Wed May 15 14:21:59 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 182F4727E6D357577A60DD36FE1ABEDFF9817610D5DEFE0241BD5EF6BB249959

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Fri May 24 14:30:07 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 2520A3B01A428890FCA8B4E51AC34DF9FF6A7CDD9249B04A558FC7FC7D8E65CC

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sat May 25 13:42:47 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0


Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): DE5B9F7F5A75BF9C03D43EB9F08D0F15DBD4AC239C6308E52AB3B27779443E86

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sat Jun 08 13:30:47 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 8701BA91817EC8B1DEE9AA3629B5C82B71281E8871B64F0D248E081F30F1D560

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sun Jun 09 19:54:08 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0


Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): F8CC3E6C738B84057D09965CC28CD518A6265E955C62879743A10C1C37A8A92D

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sun Jun 16 11:50:05 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 162750776A3F5DFB7C09728FC8453E0F8CC3A3CA60467F76639D2F559172FDF0

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sun Jun 16 21:25:41 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 36EB7B98A4C27CDFB91EF7ED00081A68085C80142C08F7E8D03FE610B440A365

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Wed Jun 26 11:13:01 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): B59EE49835290BCAC566814F038FA4189CAC4519F7D1DF93E673CCF8D53EE242

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Sun Jun 30 14:35:07 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0

Verifying: maXbox5.exe

Signature Index: 0 (Primary Signature)
Hash of file (sha256): 3B48E32C0FD63F332C3E6EEB531D933D63FC08CFC56913819C7EAF2AE7528541

Signing Certificate Chain:
    Issued to: maXboxCertAuth
    Issued by: maXboxCertAuth
    Expires:   Sun Jan 01 01:59:59 2040
    SHA1 hash: 6F83207B500DCC0E32A719599CBC6BD7E6B2A04D

        Issued to: maXbox4signer
        Issued by: maXboxCertAuth
        Expires:   Sun Jan 01 01:59:59 2040
        SHA1 hash: 6A89501B76D47C189A60BF1070BAA2FBFD38D7D7

            Issued to: maXbox4exe
            Issued by: maXbox4signer
            Expires:   Sun Jan 01 01:59:59 2040
            SHA1 hash: F0EB0CA218C5707FAC78921F81092CECA12AD0E9

The signature is timestamped: Mon Jul 22 11:08:16 2024
Timestamp Verified by:
    Issued to: GlobalSign
    Issued by: GlobalSign
    Expires:   Sun Dec 10 02:00:00 2034
    SHA1 hash: 8094640EB5A7A1CA119C1FDDD59F810263A7FBD1

        Issued to: GlobalSign Timestamping CA - SHA384 - G4
        Issued by: GlobalSign
        Expires:   Sun Dec 10 02:00:00 2034
        SHA1 hash: F585500925786F88E721D235240A2452AE3D23F9

            Issued to: Globalsign TSA for CodeSign1 - R6 - 202311
            Issued by: GlobalSign Timestamping CA - SHA384 - G4
            Expires:   Sat Dec 09 19:13:40 2034
            SHA1 hash: B39F0BD99E6437DB70F4FB7D0E3A8CE5FFF5165B


Successfully verified: maXbox5.exe

Number of files successfully Verified: 1
Number of warnings: 0
Number of errors: 0


Zodiacal symbols
See also Asian zodiacal symbols among the animal symbols
in the range 1F400-1F418.
2648 ♈ ARIES
→ 1F40F 🐏  ram
2649 ♉ TAURUS
264A ♊ GEMINI
264B ♋ CANCER
→ 1F980 🦀  crab
264C ♌ LEO
→ 1F981 🦁  lion face
264D ♍ VIRGO
= minim (alternate glyph)
264E ♎ LIBRA
→ 2696 ⚖  scales
→ 1F75E 🝞  alchemical symbol for sublimation
264F ♏ SCORPIUS
= Scorpio
= minim, drop
→ 1F982 🦂  scorpion
2650 ♐ SAGITTARIUS
→ 1F3F9 🏹  bow and arro this end send2 plus: 㼿  this end send2 plus: ??

import requests

api_url = 'https://api.api-ninjas.com/v1/objectdetection'
image_file_descriptor = open('YOUR_IMAGE.jpeg', 'rb')
files = {'image': image_file_descriptor}
r = requests.post(api_url, files=files)
print(r.json())

var formData = new FormData();
formData.append('image', $('#YOUR_IMAGE_FILE')[0].files[0]);
$.ajax({
    method: 'POST',
    url: 'https://api.api-ninjas.com/v1/objectdetection',
    data: formData,
    enctype: 'multipart/form-data',
    processData: false,
    contentType: false, 
    success: function(result) {
        console.log(result);
    },
    error: function ajaxError(jqXHR, textStatus, errorThrown) {
        alert(jqXHR.responseText);
    }
});

Object Detection API
The Object Detection API provides fast and accurate image object recognition using advanced neural networks developed by machine learning experts.

/v1/objectdetection
HTTP POST
Given an input image, return a list of detected objects labels, confidence percentages and bounding boxes. Objects with confidence less than 0.3 (30%) are filtered out.

Files
image (required) - input image file. Must be either JPEG or PNG format and smaller than 2000 by 2000.

Headers
X-Api-Key (required) - API Key associated with your account.

Sample Request URLLive Demo!
https://api.api-ninjas.com/v1/objectdetection
https://github.com/maxkleiner/HttpComponent
https://github.com/maxkleiner/HttpComponent

https://httpbin.org/#/HTTP_Methods/post_post

httpbin.org
 0.9.2 
[ Base URL: httpbin.org/ ]
A simple HTTP Request & Response Service.

Run locally: $ docker run -p 80:80 kennethreitz/httpbin

the developer - Website
Send email to the developer
Schemes

HTTPS
HTTP Methods
Testing different HTTP verbs

DELETE
/delete
The request's DELETE parameters.
GET
/get
The request's query parameters.
PATCH
/patch
The request's PATCH parameters.
POST
/post
The request's POST parameters.
PUT
/put
The request's PUT parameters.
Auth
Auth methods

Status codes
Generates responses with given status code

Request inspection
Inspect the request data

Response inspection
Inspect the response data like caching and headers

Response formats
Returns responses in different data formats

Dynamic data
Generates random and dynamic data

Cookies
Creates, reads and deletes Cookies


Images
Returns different image formats

Redirects
Returns different redirect responses

Anything
Returns anything that is passed to request

[Powered by Flasgger]
Other Utilities
HTML form that posts to /post /forms/post
requests: An elegant and simple HTTP library for Python, built for human beings.

requests-html: Scraping the web as simply and intuitively as possible.

httpbin.org: A tool and website for inspecting and debugging HTTP client behavior.

The Hitchhiker's Guide to Python takes the journeyman Pythonista to true expertise. More than any other language, Python was created with the philosophy of simplicity and parsimony. Now 25 years old, Python has become the primary or secondary language (after SQL) for many business users. With popularity comes diversityâ??and possibly dilution.

This guide, collaboratively written by over a hundred members of the Python community, describes best practices currently used by package and application developers. Unlike other books for this audience, The Hitchhikerâ??s Guide is light on reusable code and heavier on design philosophy, directing the reader to excellent sources that already exist.


Source: README.txt, updated 2024-07-22