https://softwarepatternslexicon.com/f-sharp/structural-patterns-in-f/proxy-pattern/
Proxy Pattern in F#: Controlling Access to Objects with Functional Programming