Andrew Cooke | Contents | Latest | RSS | Previous | Next

C[omp]ute

Welcome to my blog, which was once a mailing list of the same name and is still generated by mail. Please reply via the "comment" links.

Always interested in offers/projects/new ideas. Eclectic experience in fields like: numerical computing; Python web; Java enterprise; functional languages; GPGPU; SQL databases; etc. Based in Santiago, Chile; telecommute worldwide. CV; email.

Personal Projects

Choochoo Training Diary

Last 100 entries

=?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; =?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=; Surprise Paradox; [Books] Good Author List; [Computing] Efficient queries with grouping in Postgres; [Computing] Automatic Wake (Linux); [Computing] AWS CDK Aspects in Go; [Bike] Adidas Gravel Shoes; [Computing, Horror] Biological Chips; [Books] Weird Lit Recs; [Covid] Extended SIR Models; [Art] York-based Printmaker; [Physics] Quantum Transitions are not Instantaneous; [Computing] AI and Drum Machines; [Computing] Probabilities, Stopping Times, Martingales; bpftrace Intro Article; [Computing] Starlab Systems - Linux Laptops; [Computing] Extended Berkeley Packet Filter; [Green] Mainspring Linear Generator; Better Approach; Rummikub Solver; Chilean Poetry; Felicitations - Empowerment Grant; [Bike] Fixing Spyre Brakes (That Need Constant Adjustment); [Computing, Music] Raspberry Pi Media (Audio) Streamer; [Computing] Amazing Hack To Embed DSL In Python; [Bike] Ruta Del Condor (El Alfalfal); [Bike] Estimating Power On Climbs; [Computing] Applying Azure B2C Authentication To Function Apps; [Bike] Gearing On The Back Of An Envelope; [Computing] Okular and Postscript in OpenSuse; There's a fix!; [Computing] Fail2Ban on OpenSuse Leap 15.3 (NFTables); [Cycling, Computing] Power Calculation and Brakes; [Hardware, Computing] Amazing Pockit Computer; Bullying; How I Am - 3 Years Post Accident, 8+ Years With MS; [USA Politics] In America's Uncivil War Republicans Are The Aggressors; [Programming] Selenium and Python; Better Walking Data; [Bike] How Fast Before Walking More Efficient Than Cycling?; [COVID] Coronavirus And Cycling; [Programming] Docker on OpenSuse; Cadence v Speed; [Bike] Gearing For Real Cyclists; [Programming] React plotting - visx; [Programming] React Leaflet; AliExpress Independent Sellers; Applebaum - Twilight of Democracy; [Politics] Back + US Elections; [Programming,Exercise] Simple Timer Script; [News] 2019: The year revolt went global; [Politics] The world's most-surveilled cities

© 2006-2017 Andrew Cooke (site) / post authors (content).

Message Passing Concurrency in Python - Atom

From: "andrew cooke" <andrew@...>

Date: Wed, 11 Apr 2007 10:09:45 -0400 (CLT)

http://www.python.org/workshops/1997-10/proceedings/atom/atom.html

1997 is a bit old.  I guess it lost out to stackless?

http://www.stackless.com/
http://www.stackless.com/wiki/Channels

What I can't work out is whether Stackless is still in active development.
 What do people use at the moment for concurrent programming in Python?
Twisted seems to be mentioned in several places - I always thought of that
as more of a comms package (it says it is "event driven").

http://twistedmatrix.com/trac/

Andrew

Dead Atom

From: "andrew cooke" <andrew@...>

Date: Thu, 12 Apr 2007 09:50:24 -0400 (CLT)

Just for the record, the main author email address is dead and the second
author doesn't have the code and has lost contact with the first.

Current plan is to split the work into two separate parts - a web front
end using Django and Python, and a concurrent process engine using Erlang
(or possibly Oz).  Free time remains a small "issue".

Andrew

=?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=

From: Tina <freight@...-freight-global.com>

Date: Sat, 22 Jun 2024 19:20:23 +0800 (GMT+08:00)

CkhpCgoKCgpHcmVldGluZ3MgZnJvbSBFYXNlRnJlaWdodCEgSSdtIFRpbmEsIHRoZSBGcmVpZ2h0
IE1hbmFnZXIgYXQgRWFzZUZyZWlnaHQsIGFuIEFJIGZyZWlnaHQgYWdlbnQgbmV0d29yayBlc3Rh
Ymxpc2hlZCB1bmRlciBOZXRlYXNlLCBhIENoaW5lc2UgcHVibGljbHkgbGlzdGVkIGNvbXBhbnkg
aW4gMjAwMS4gV2l0aCAxNSB5ZWFycyBvZiBleHBlcmllbmNlIGluIHRoZSBpbXBvcnQgYW5kIGV4
cG9ydCBpbmR1c3RyeSwgd2UgaGF2ZSBnYXRoZXJlZCBvdmVyIDEwLDAwMCBDaGluZXNlIGZyZWln
aHQgYWdlbnRzIHRvIGVuc3VyZSBvdXIgY3VzdG9tZXJzIHJlY2VpdmUgZWZmaWNpZW50IGFuZCBj
b3N0LWVmZmVjdGl2ZSBmcmVpZ2h0IHNlcnZpY2VzLgoKCldlIHN1cHBvcnQgeW91OgoxLk11bHRp
cGxlIGZyZWlnaHQgcXVvdGF0aW9ucyB0byBlbnN1cmUgeW91IGNob29zZSB0aGUgYmVzdCBzb2x1
dGlvbi4KMi5UaGUgcXVvdGF0aW9uIGRldGFpbHMgYXJlIHNwZWNpZmljIGFuZCBjb21wcmVoZW5z
aXZlLCBwcm92aWRpbmcgYSBjbGVhciB1bmRlcnN0YW5kaW5nIG9mIGVhY2ggY29zdCBpbnZvbHZl
ZC4KMy5UcmFuc3BhcmVudCBwcmljaW5nLCBubyBtaWRkbGVtYW4gbWFya3Vwcy4KNC5PZmZlcmlu
ZyBhIHZhcmlldHkgb2Ygc2hpcHBpbmcgbWV0aG9kcyBmb3IgZmxleGlibGUgc2VsZWN0aW9uIGJh
c2VkIG9uIHNwZWNpZmljIG5lZWRzLgoKCgoKCldlIGJlbGlldmUgaW4gb3VyIGFiaWxpdHkgdG8g
cHJvdmlkZSB5b3Ugd2l0aCBjdXN0b21pemVkIHNlcnZpY2VzLCBlYXJuaW5nIHlvdXIgcmVjb2du
aXRpb24gdGhyb3VnaCBvdXIgcHJvZmVzc2lvbmFsaXNtLCBjYXBhYmlsaXRpZXMsIHNwZWVkLCBh
bmQgZWZmaWNpZW5jeSwgZW5zdXJpbmcgeW91IGVuam95IHRoZSBiZXN0IHNoaXBwaW5nIHNvbHV0
aW9ucy5QbGVhc2Uga2luZGx5IGNvbnRhY3QgdXMgbm93IGZvciBmcmVlIGNvbnRhaW5lciBzaGlw
cGluZyBxdW90ZSEKCgoKCkJlc3QgcmVnYXJkcywKVGluYSBYaWUKUHJvZHVjdCBPcGVyYXRpb25z
CgpFYXNlRnJlaWdodChOZXRFYXNlKQoKV2Vic2l0ZTpmcmVpZ2h0LmZhY3RvcnkuMTYzLmNvbQpF
LW1haWw6dGluYTAzQGVhc2VmcmllZ2h0aW5jLmNvbQoKCgpBZGRyZXNzOk5ldGVhc2XCreKAlDM5
OSBXYW5nc2hhbmcgUm9hZCwgQmluamlhbmcgRGlzdHJpY3QsIEhhbmd6aG91CgoKCgoKCgoKSWYg
eW91IGRvbid0IHdhbnQgdG8gcmVjZWl2ZSBvdXIgZW1haWxzLCB5b3UgY2FuIGVhc2lseSB1bnN1
YnNjcmliZSBoZXJlLgoKCg0KDQo=

=?UTF-8?B?RXhjbHVzaXZlIEVhc2VGcmVpZ2h0IEZyZWlnaHQgU2VydmljZXMgdGFpbG9yZWQganVzdCBmb3IgeW91?=

From: Tina <freight@...-freight-global.com>

Date: Wed, 26 Jun 2024 12:43:27 +0800 (GMT+08:00)

CkhpCgoKCgpIaSxuaWNlIHRvIGNvbnRhY3QgeW91IGFnYWluISBJJ20gVGluYSwgZnJlaWdodCBt
YW5hZ2VyIG9mIEVhc2VmcmVpZ2h0LCBmcm9tIHRoZSBBSSBmcmVpZ2h0IGFnZW50IG5ldHdvcmsg
b2YgTmV0RWFzZSwgYSBsaXN0ZWQgY29tcGFueSBpbiBDaGluYS5XZSBhcmUgbm90IGp1c3QgeW91
ciBwb2ludCBvZiBjb250YWN0IHdpdGggZnJlaWdodCBhZ2VudHMsIGJ1dCB5b3VyIGdsb2JhbCB0
cmFkZSBwYXJ0bmVyLCBvZmZlcmluZyBpbnNpZ2h0cyBhbmQgYWR2aWNlIHRvIG5hdmlnYXRlIHRo
ZSBjb21wbGV4aXRpZXMgb2YgaW50ZXJuYXRpb25hbCBzaGlwcGluZy4KCgpXZSBzdXBwb3J0IHlv
dToKIDEuT2ZmZXJzIGRlZGljYXRlZCBvbmUtb24tb25lIGN1c3RvbWVyIHNlcnZpY2UgcmVwcmVz
ZW50YXRpdmVzIGFuZCBwcm9tcHQgcXVvdGF0aW9ucwogMi5PZmZlciB0YWlsb3JlZCBmcmVpZ2h0
IHNvbHV0aW9ucyB0byBtZWV0IHRoZSB1bmlxdWUgcmVxdWlyZW1lbnRzIG9mIG91ciBjbGllbnRz
LgogMy5Qcm92aWRpbmcgcmVsaWFibGUgZnJlaWdodCBwYXJ0bmVycyBhbmQgaGF2ZSBvZmZpY2Vz
IGluIG1ham9yIHBvcnRzIGZvciBvbi1zaXRlIGF1ZGl0cwoKCk91ciBjdXN0b21lciBzdXBwb3J0
IHRlYW0gaXMgYWx3YXlzIHJlYWR5IHRvIGFzc2lzdCB3aXRoIGFueSBpbnF1aXJpZXMsIGVuc3Vy
aW5nIGEgc21vb3RoIGFuZCB3b3JyeS1mcmVlIGV4cGVyaWVuY2UuUGxlYXNlIGtpbmRseSByZXBs
eSB0byBnZXQgdGhlIGxhdGVzdCBmcmVlIG9mIGNoYXJnZSBDaGluYSBzaGlwcGluZyBxdW90ZXMh
CgoKCgoKQmVzdCByZWdhcmRzLApUaW5hIFhpZQpQcm9kdWN0IE9wZXJhdGlvbnMKCkVhc2VGcmVp
Z2h0KE5ldEVhc2UpCgpXZWJzaXRlOmZyZWlnaHQuZmFjdG9yeS4xNjMuY29tCkUtbWFpbDp0aW5h
MDNAZWFzZWZyaWVnaHRpbmMuY29tCgoKCkFkZHJlc3M6TmV0ZWFzZcKt4oCUMzk5IFdhbmdzaGFu
ZyBSb2FkLCBCaW5qaWFuZyBEaXN0cmljdCwgSGFuZ3pob3UKCgoKCgoKCgpJZiB5b3UgZG9uJ3Qg
d2FudCB0byByZWNlaXZlIG91ciBlbWFpbHMsIHlvdSBjYW4gZWFzaWx5IHVuc3Vic2NyaWJlIGhl
cmUuCgoKCuWcqDIwMjQtMDYtMjLvvIxUaW5hIDxmcmVpZ2h0QGVhc2UtZnJlaWdodC1nbG9iYWwu
Y29tPiDlhpnpgZM6LS0tLS3ljp/lp4vpgq7ku7YtLS0tLQog5Y+R5Lu25Lq677yaIFRpbmEgPGZy
ZWlnaHRAZWFzZS1mcmVpZ2h0LWdsb2JhbC5jb20+CiDlj5Hku7bml7bpl7Q6IDIwMjTlubQwNuac
iDIy5pelIOWRqOWFrQog5pS25Lu25Lq677yaIFtjb21wdXRlK21lc3NhZ2VwYXMwQGFjb29rZS5v
cmddCiDkuLvpopjvvJogVGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20g
RWFzZSBmcmVpZ2h0CgoKSGkKCgoKCkdyZWV0aW5ncyBmcm9tIEVhc2VGcmVpZ2h0ISBJJ20gVGlu
YSwgdGhlIEZyZWlnaHQgTWFuYWdlciBhdCBFYXNlRnJlaWdodCwgYW4gQUkgZnJlaWdodCBhZ2Vu
dCBuZXR3b3JrIGVzdGFibGlzaGVkIHVuZGVyIE5ldGVhc2UsIGEgQ2hpbmVzZSBwdWJsaWNseSBs
aXN0ZWQgY29tcGFueSBpbiAyMDAxLiBXaXRoIDE1IHllYXJzIG9mIGV4cGVyaWVuY2UgaW4gdGhl
IGltcG9ydCBhbmQgZXhwb3J0IGluZHVzdHJ5LCB3ZSBoYXZlIGdhdGhlcmVkIG92ZXIgMTAsMDAw
IENoaW5lc2UgZnJlaWdodCBhZ2VudHMgdG8gZW5zdXJlIG91ciBjdXN0b21lcnMgcmVjZWl2ZSBl
ZmZpY2llbnQgYW5kIGNvc3QtZWZmZWN0aXZlIGZyZWlnaHQgc2VydmljZXMuCgoKV2Ugc3VwcG9y
dCB5b3U6CiAxLk11bHRpcGxlIGZyZWlnaHQgcXVvdGF0aW9ucyB0byBlbnN1cmUgeW91IGNob29z
ZSB0aGUgYmVzdCBzb2x1dGlvbi4KIDIuVGhlIHF1b3RhdGlvbiBkZXRhaWxzIGFyZSBzcGVjaWZp
YyBhbmQgY29tcHJlaGVuc2l2ZSwgcHJvdmlkaW5nIGEgY2xlYXIgdW5kZXJzdGFuZGluZyBvZiBl
YWNoIGNvc3QgaW52b2x2ZWQuCiAzLlRyYW5zcGFyZW50IHByaWNpbmcsIG5vIG1pZGRsZW1hbiBt
YXJrdXBzLgogNC5PZmZlcmluZyBhIHZhcmlldHkgb2Ygc2hpcHBpbmcgbWV0aG9kcyBmb3IgZmxl
eGlibGUgc2VsZWN0aW9uIGJhc2VkIG9uIHNwZWNpZmljIG5lZWRzLgoKCgoKCldlIGJlbGlldmUg
aW4gb3VyIGFiaWxpdHkgdG8gcHJvdmlkZSB5b3Ugd2l0aCBjdXN0b21pemVkIHNlcnZpY2VzLCBl
YXJuaW5nIHlvdXIgcmVjb2duaXRpb24gdGhyb3VnaCBvdXIgcHJvZmVzc2lvbmFsaXNtLCBjYXBh
YmlsaXRpZXMsIHNwZWVkLCBhbmQgZWZmaWNpZW5jeSwgZW5zdXJpbmcgeW91IGVuam95IHRoZSBi
ZXN0IHNoaXBwaW5nIHNvbHV0aW9ucy5QbGVhc2Uga2luZGx5IGNvbnRhY3QgdXMgbm93IGZvciBm
cmVlIGNvbnRhaW5lciBzaGlwcGluZyBxdW90ZSEKCgoKCkJlc3QgcmVnYXJkcywKVGluYSBYaWUK
UHJvZHVjdCBPcGVyYXRpb25zCgpFYXNlRnJlaWdodChOZXRFYXNlKQoKV2Vic2l0ZTpmcmVpZ2h0
LmZhY3RvcnkuMTYzLmNvbQpFLW1haWw6dGluYTAzQGVhc2VmcmllZ2h0aW5jLmNvbQoKCgpBZGRy
ZXNzOk5ldGVhc2XCreKAlDM5OSBXYW5nc2hhbmcgUm9hZCwgQmluamlhbmcgRGlzdHJpY3QsIEhh
bmd6aG91CgoKCgoKCgoKSWYgeW91IGRvbid0IHdhbnQgdG8gcmVjZWl2ZSBvdXIgZW1haWxzLCB5
b3UgY2FuIGVhc2lseSB1bnN1YnNjcmliZSBoZXJlLgoKCgoKDQoNCg==

=?UTF-8?B?VGhlIGJlc3QgY3VzdG9taXplZCBmcmVpZ2h0IHNvbHV0aW9uIGZyb20gRWFzZSBmcmVpZ2h0?=

From: Tina <freight@...-freight-global.com>

Date: Fri, 26 Jul 2024 20:44:55 +0800 (GMT+08:00)

CkhpCgoKCgpHcmVldGluZ3MgZnJvbSBFYXNlRnJlaWdodCEgSSdtIFRpbmEsIHRoZSBGcmVpZ2h0
IE1hbmFnZXIgYXQgRWFzZUZyZWlnaHQsIGFuIEFJIGZyZWlnaHQgYWdlbnQgbmV0d29yayBlc3Rh
Ymxpc2hlZCB1bmRlciBOZXRlYXNlLCBhIENoaW5lc2UgcHVibGljbHkgbGlzdGVkIGNvbXBhbnkg
aW4gMjAwMS4gV2l0aCAxNSB5ZWFycyBvZiBleHBlcmllbmNlIGluIHRoZSBpbXBvcnQgYW5kIGV4
cG9ydCBpbmR1c3RyeSwgd2UgaGF2ZSBnYXRoZXJlZCBvdmVyIDEwLDAwMCBDaGluZXNlIGZyZWln
aHQgYWdlbnRzIHRvIGVuc3VyZSBvdXIgY3VzdG9tZXJzIHJlY2VpdmUgZWZmaWNpZW50IGFuZCBj
b3N0LWVmZmVjdGl2ZSBmcmVpZ2h0IHNlcnZpY2VzLgoKCldlIHN1cHBvcnQgeW91OgogMS5NdWx0
aXBsZSBmcmVpZ2h0IHF1b3RhdGlvbnMgdG8gZW5zdXJlIHlvdSBjaG9vc2UgdGhlIGJlc3Qgc29s
dXRpb24uCiAyLlRoZSBxdW90YXRpb24gZGV0YWlscyBhcmUgc3BlY2lmaWMgYW5kIGNvbXByZWhl
bnNpdmUsIHByb3ZpZGluZyBhIGNsZWFyIHVuZGVyc3RhbmRpbmcgb2YgZWFjaCBjb3N0IGludm9s
dmVkLgogMy5UcmFuc3BhcmVudCBwcmljaW5nLCBubyBtaWRkbGVtYW4gbWFya3Vwcy4KIDQuT2Zm
ZXJpbmcgYSB2YXJpZXR5IG9mIHNoaXBwaW5nIG1ldGhvZHMgZm9yIGZsZXhpYmxlIHNlbGVjdGlv
biBiYXNlZCBvbiBzcGVjaWZpYyBuZWVkcy4KCgoKCgpXZSBiZWxpZXZlIGluIG91ciBhYmlsaXR5
IHRvIHByb3ZpZGUgeW91IHdpdGggY3VzdG9taXplZCBzZXJ2aWNlcywgZWFybmluZyB5b3VyIHJl
Y29nbml0aW9uIHRocm91Z2ggb3VyIHByb2Zlc3Npb25hbGlzbSwgY2FwYWJpbGl0aWVzLCBzcGVl
ZCwgYW5kIGVmZmljaWVuY3ksIGVuc3VyaW5nIHlvdSBlbmpveSB0aGUgYmVzdCBzaGlwcGluZyBz
b2x1dGlvbnMuUGxlYXNlIGtpbmRseSBjb250YWN0IHVzIG5vdyBmb3IgZnJlZSBjb250YWluZXIg
c2hpcHBpbmcgcXVvdGUhCgoKCgpCZXN0IHJlZ2FyZHMsVGluYSBYaWUKQ3VzdG9tZXIgUmVwcmVz
ZW50YXRpdmUKCkVhc2VGcmVpZ2h0IChTdWJzaWRpYXJ5IG9mIE5ldEVhc2UpCgpXZWJzaXRlOiBl
YXNlLWZyZWlnaHQuY29tCkUtbWFpbDogdGluYUBlYXNlZnJlaWdodGluYy5jb20KCgoKQWRkcmVz
czogTmV0ZWFzZcKt4oCUMzk5IFdhbmdzaGFuZyBSb2FkLCBCaW5qaWFuZyBEaXN0cmljdCwgSGFu
Z3pob3UKCgoKCgoKCgoKCgoKCgrlnKgyMDI0LTA2LTIy77yMVGluYSA8ZnJlaWdodEBlYXNlLWZy
ZWlnaHQtZ2xvYmFsLmNvbT4g5YaZ6YGTOi0tLS0t5Y6f5aeL6YKu5Lu2LS0tLS0KIOWPkeS7tuS6
uu+8miBUaW5hIDxmcmVpZ2h0QGVhc2UtZnJlaWdodC1nbG9iYWwuY29tPgog5Y+R5Lu25pe26Ze0
OiAyMDI05bm0MDbmnIgyMuaXpSDlkajlha0KIOaUtuS7tuS6uu+8miBbY29tcHV0ZSttZXNzYWdl
cGFzMEBhY29va2Uub3JnXQog5Li76aKY77yaIFRoZSBiZXN0IGN1c3RvbWl6ZWQgZnJlaWdodCBz
b2x1dGlvbiBmcm9tIEVhc2UgZnJlaWdodAoKCkhpCgoKCgpHcmVldGluZ3MgZnJvbSBFYXNlRnJl
aWdodCEgSSdtIFRpbmEsIHRoZSBGcmVpZ2h0IE1hbmFnZXIgYXQgRWFzZUZyZWlnaHQsIGFuIEFJ
IGZyZWlnaHQgYWdlbnQgbmV0d29yayBlc3RhYmxpc2hlZCB1bmRlciBOZXRlYXNlLCBhIENoaW5l
c2UgcHVibGljbHkgbGlzdGVkIGNvbXBhbnkgaW4gMjAwMS4gV2l0aCAxNSB5ZWFycyBvZiBleHBl
cmllbmNlIGluIHRoZSBpbXBvcnQgYW5kIGV4cG9ydCBpbmR1c3RyeSwgd2UgaGF2ZSBnYXRoZXJl
ZCBvdmVyIDEwLDAwMCBDaGluZXNlIGZyZWlnaHQgYWdlbnRzIHRvIGVuc3VyZSBvdXIgY3VzdG9t
ZXJzIHJlY2VpdmUgZWZmaWNpZW50IGFuZCBjb3N0LWVmZmVjdGl2ZSBmcmVpZ2h0IHNlcnZpY2Vz
LgoKCldlIHN1cHBvcnQgeW91OgogMS5NdWx0aXBsZSBmcmVpZ2h0IHF1b3RhdGlvbnMgdG8gZW5z
dXJlIHlvdSBjaG9vc2UgdGhlIGJlc3Qgc29sdXRpb24uCiAyLlRoZSBxdW90YXRpb24gZGV0YWls
cyBhcmUgc3BlY2lmaWMgYW5kIGNvbXByZWhlbnNpdmUsIHByb3ZpZGluZyBhIGNsZWFyIHVuZGVy
c3RhbmRpbmcgb2YgZWFjaCBjb3N0IGludm9sdmVkLgogMy5UcmFuc3BhcmVudCBwcmljaW5nLCBu
byBtaWRkbGVtYW4gbWFya3Vwcy4KIDQuT2ZmZXJpbmcgYSB2YXJpZXR5IG9mIHNoaXBwaW5nIG1l
dGhvZHMgZm9yIGZsZXhpYmxlIHNlbGVjdGlvbiBiYXNlZCBvbiBzcGVjaWZpYyBuZWVkcy4KCgoK
CgpXZSBiZWxpZXZlIGluIG91ciBhYmlsaXR5IHRvIHByb3ZpZGUgeW91IHdpdGggY3VzdG9taXpl
ZCBzZXJ2aWNlcywgZWFybmluZyB5b3VyIHJlY29nbml0aW9uIHRocm91Z2ggb3VyIHByb2Zlc3Np
b25hbGlzbSwgY2FwYWJpbGl0aWVzLCBzcGVlZCwgYW5kIGVmZmljaWVuY3ksIGVuc3VyaW5nIHlv
dSBlbmpveSB0aGUgYmVzdCBzaGlwcGluZyBzb2x1dGlvbnMuUGxlYXNlIGtpbmRseSBjb250YWN0
IHVzIG5vdyBmb3IgZnJlZSBjb250YWluZXIgc2hpcHBpbmcgcXVvdGUhCgoKCgpCZXN0IHJlZ2Fy
ZHMsClRpbmEgWGllClByb2R1Y3QgT3BlcmF0aW9ucwoKRWFzZUZyZWlnaHQoTmV0RWFzZSkKCldl
YnNpdGU6ZnJlaWdodC5mYWN0b3J5LjE2My5jb20KRS1tYWlsOnRpbmEwM0BlYXNlZnJpZWdodGlu
Yy5jb20KCgoKQWRkcmVzczpOZXRlYXNlwq3igJQzOTkgV2FuZ3NoYW5nIFJvYWQsIEJpbmppYW5n
IERpc3RyaWN0LCBIYW5nemhvdQoKCgoKCgoKCklmIHlvdSBkb24ndCB3YW50IHRvIHJlY2VpdmUg
b3VyIGVtYWlscywgeW91IGNhbiBlYXNpbHkgdW5zdWJzY3JpYmUgaGVyZS4KCgoKCg0KDQo=

Comment on this post