I'm sure you guys know the situation... creating software for different platforms requires multiple computers. Not only do you need a Mac and PC, but you need multiple versions to test different operating systems and software updates. A few years back, I got tired of switching between multiple computers to get the job done, so I created triple boot PC/Hack/Linux machine. It works well. No complaints. Then I decided to upgrade my GPU to an RTX3090 for faster 3D rendering. It's quite a beast! The issue is MacOS does not work with Nvidia chips, so every time I wanted to boot up macos, I had to unplug my GPU. I also started to get annoyed by not being able to use multiple OS at one time. Powering down MacOS to use Windows can quickly get old.
Since I'm relying heavily on virtualization to run my mini datacenter, I took a shot at creating a virtualized workstation. The result?
One computer that simultaneously runs Monterey, BigSur, Win10, Win11, Linux desktop and Ubuntu server!
I'm still in the testing stages, but it's working wonderfully. I've successfully exported plugins from HISE on each platform.
The system is running on Proxmox. Not to be confused with things like VirtualBox or Parallels (which are type 2 hypervisors that run on top of an existing OS), Proxmox is a type 1 hypervisor. That means that your computer's actual hardware is divided up and given to each virtual machine.
Since the allocation of hardware is sectioned off and given to a Virtual Machine, that means you need a computer with a bit of horsepower to use multiple operating systems at the same time, but you may already have what you need. Or worst case, You only run 1 OS at a time with full resources.
By using some utilities like VirtualHere (share usb over ethernet) and Barriers (use one mouse/keyboard to control multiple computers) I'm able to use one set of hardware resources (usb sound card, dongles, etc) and share them with each computer. Each system sees the devices as if they are actually attached to the computer. No layer in between. The only downfall is since it's "directly attached", you can't share your sound card with multiple machines simultaneously.... I'm mean, that sounds like a nightmare anyway! hahahh
Right now, the Mac virtual machines feel like they have a little bit of lag, so I'm going to have to install a GPU for those machines to use.
If you guys are interested, I can post some details on building a machine like this.
Posts
-
The ultimate multi-platform workstation
-
RE: vu meter
It looks like you're trying to hook up a gain reduction meter to a dynamics module.
here ya go! in 13 easy steps
I'm using "right click" auto complete as much as possible.#1 - Add Dynamics module
#2 - Create a reference to the module
#3 - Create a slider and add reference
#4 - create a timer
#5 - Create function for timer
#6 - create variable to hold a reference of gain reduction
#7 - convert reduction to dB
#8 - set value of slider to gain reduction
#9 - set slider mode to decibel
#10 - Start Timer
#11 - test that reduction meter is working
#12 - set slider image to your strip
#13 - test that strip is working
-
RE: The definitive feature request & bug fix roadmap
I would love to have SideChain inputs available in the bus routing.
https://docs.juce.com/master/tutorial_audio_bus_layouts.html
-
RE: Linking parameters to SNEX
Finally had a second to make a quick video. I apologize for the poor quality and zero planning... but you get the idea
-
RE: Simple ML neural network
@Christoph-Hart oh shit! There goes my weekend plans. R.I.P my marriage
-
RE: Still getting heap space problems
I just ran into this when opening older projects on my new rig. Images and binary are way below 50mb.
Did a little searching and found that this may happen if Visual Studio doesn't use the 64 bit toolset. I think it's some kind of global change between VS2017 and 2019.
Manually setting the architecture in Environmental Variables fixed the problem for me.
https://phoenixnap.com/kb/windows-set-environment-variable -
RE: Happy New Year Everyone!
:person_cartwheeling_medium-light_skin_tone: :person_cartwheeling_light_skin_tone:
-
RE: Hard Clipper
@DanH Here ya go! I've been playing with a bunch of different clipping circuits, including a more advanced one that does some creative EQ to the "overs", but this simple clipping circuit with a variable "soft/hard" control is pretty nice.
https://hub.korneffaudio.com/index.php/s/AHJtWRTRaMjnmGf
template <int NumVoices> struct snex_shaper { SNEX_NODE(snex_shaper); float amount = 0.0; float getSample(float input) { return Math.sign(input) * Math.pow(Math.atan(Math.pow(Math.abs(input), 1 / amount)), amount); //return input; } // These functions are the glue code that call the function above template <typename T> void process(T& data) { for(auto ch: data) { for(auto& s: data.toChannelData(ch)) { s = getSample(s); } } } template <typename T> void processFrame(T& data) { for(auto& s: data) s = getSample(s); } void reset() { } void prepare(PrepareSpecs ps) { } void setExternalData(const ExternalData& d, int index) { } template <int P> void setParameter(double v) { if(P == 0) // soft/hard value amount = v; } };
If you want a straight up Hard clipper, try something like:
f_hard(x, threshold, ceiling) = (abs(x) >= threshold) ? (min(threshold * sign(x), ceiling)) : x
-
RE: Compiling for Mac Intel and Mac M1
@d-healey I'll return the favor and make a video :beaming_face_with_smiling_eyes:
-
RE: Linking parameters to SNEX
@orange it could be a bunch of things. Did you wrap the SNEX node in a DSP network? Also, remove any unused parameters from the main container.
I'll try to make a full video on how to implement this dsp tonight. -
RE: Starting to use HISE is one of the biggest pains in the neck I've ever had
@Win-Conway said in Starting to use HISE is one of the biggest pains in the neck I've ever had:
The one thing that HISE does really well, force you to give up and go back to using Kontakt
I started tinkering with HISE in 2016ish and had to move on cause I didn't fully understand what I was doing. Ended up making my library in Kontakt. After that, I started playing with C++ & JUCE and eventually found my way back to HISE.
Now that I know it's more of an extension of JUCE, I'm very thankful for the effort @Christoph-Hart puts into HISE. -
RE: Mac Installer issue that effects (I think) all of us
Ok! Finally sorted out.
Apparently, you can't use ~/ in a pre or post-installation script of a package. I had to use $HOME instead. -
RE: Hardcoded Neural Network does not work as expected
If anyone wants to start learning about RTneural, here's a snip that contains a model of the ProCo Rat pedal:
HiseSnippet 20992.3oc6810imccdcmUKp1Rh1dlDj.ja4vqjAnXN6226XXXY8VFgQThPjQSBBLLJ0cQwBpYWDcWTxLF494qPta9ZL24OR4avLqeO+qlc2h7+dQqoRPvfoSfEqpN0oN+2m89400yZ89O6lGc0ye9MO6hG7c9vO+Su5hG7m8vO3ye5se7O7iu75mdwO8GcwCdyG9K+ve9Ue1yt7IW7C97O8xm+7qd7EO3Auw+V94O367MuH92+0+5evkO4xm9nqd425hK9U2b8it5mc8mb8su7699e++2t9IO4mb4iu5Cu9Sdkqt98+oO5lm9Cu4I27Y5Y4Md3wEe5kO52d4u4pe9kbYeiGdwC9S9wO95au4YevsWd6UO+hG7M+A273O+C93a98O8z0+qt94W+qexU7EoK9.ciN8s+I27jGySLe2K9ge70O4wu+K9L+7Kzc48e4JvabZE3e4Ceuqe70ew2+kqD+yheva8xeiWc83AeiW+w6MdsGuzq93c7JOdeEORO3Udj9lmdj9m+vO3QO65O81W9S344O8g+zmd6UO6itTK6u5ixoq8h23c9QO3g+vazk7zae2O4xe6U+jmou3K9U9t8ii24sz+m+h+x27M0Z+yu8sdue1mbyiu5Iu0e0a8O7luk92ae8S+6d9Ge4md0a+u4s9OFeG92S+rm7j24LeUJ9u9aO8Md6mb4me0yd9q8K+O7E+WwUb6mG2729IO+1O4semW+mc4it85e2k2d8MOkq3O7m9ket9peh1+cyGu125u8O3Oxu+pq+Me7sO+q7OyW96b9uK+66c7tGkUtTGqY8H0V0T+c1c04dt1x4Zczl8i1ZyUe7ty0QZpKO0GszwZs6ZSkYstJiiYOczzCztK9n2F0xnsxiZclGkcWbNmFqbpj58boOG6uy4wPOtY8aLJ4Qps8CXdpqMsFoiYV2451qM0Si9fG21n0mau3RtcTOJ0iZtz1eooZN0Z0kdB547QZ6qui7pNzMMUFrdm1sLykenGidq0FirdRzh81OgG5faunG67penm68uUpGsQOUmGkh9Lr+khVaSixPqccsuqs888QYrzF4wT+Os7rl19XzyiiUaNlo3SnY4nmV5QdoCASciyqsWdR6+mq0TapSCcVor8pG5Ey7PuQz6whd12u+uVV04ZNR4dQuiN+EmdWsWt06Is+b1zG08qzMssuLKozgd2zq411qNMz67RoUq5by7X+6kj1Tu5q0pdzmo5tsGrVOa8iZSux0C+w3nue8XoscsiVJqUOYFa+9CYynMJU8njvt29S37Zt0z0ps+ks2XttZIos+ZuzpX1bn2wZcanih85Z3Vm05VKw0ejMKyG5SmLMOl8o19mOLKyIcCWxhfVoWklrPt2ViNhmq8UsVko28Kyozb1X0qO65guaVmO57.26qCYo7XuWnCsk93HkKSYbrk1+JjMGU8pqvowg7Ds8VuzVzVQO0itN3l1usaVkIwp7VUzqHsBd9KN+tyRWaPJxH8bjkEuc2XsyWGsWyoV7ZGyoYmTopGDYXT2X8aV2e0st1fpKWqwEVr2ejUN1lM8bu5krwA2w.WlxBoBhPQTr+PXQVZjke4Ibsxa8vom4VtkOFUtT8Xu2Bl1ymlI8.mzle44e+MVGmj8bsQMszF5lwhTIul53hr9NKGi49McJPhCYBSFSGKsqd+sFK4Irun210xbqKq9Xpm2rLqO3HvduJE44NujIukdrMNNmyhNKUVxR97vsXnWeZy7XHic5xy62Yn6ltNEo4p14IZ+FZcPUduayTRwOdrx6eRvpqr6mzakjr6sOhTE0QgfZT3OGiQYsOvQEKSi.TNZxgQqXVQjcCYKPFSakb4HuOZ2YuWkwVs0P1kl6uyJl.EIn7Wn.i0YKS.rccma8ZUGTjivwdCoJ1NcxhfoUH54R1b.Pa90sOqjDj66TwDpYQqEXuSwtISz68rncQy4pMV3pifv2uCIqcdx2sdv0Yq59GjDGEU3IxlfL9m16fqKiRGGJIjgdxMAgUjo.cjUWormJqoFGsZ2TVVNVkDAyt2A.d.0Qrd3NrsO5XEKphCKIqB5s9XYhTRQ8HmEJ+iFI2nykekW7e6W56929N2KIaJaEJWL8mszORKWHREEbohKtqPHFaMdE1PaEk6He3jmyQs6dOqTZhbJTrOlnMzQUYVVwp0Tn70ism+zYzAwOSN0J3bW9XEseSIFlvekhMoXhQJcTwnn9m7rr8wfCRxMgxoubbrO7RkQuBjRtcx5wQ24lIaZ8zpHXjOYEcRs497oTtIYLY7Wa62Glq96qTeZXTTFy6ysWsN+qjYk8YxtWgqseqjhdnIm2Jz.E75gyfgBfI0zaQsZq8flMGJEBclV4XkWojoHGU9noWfJgod9nt2daRIeTvDvP6UU986C3HQTnJPhiAeDKi8gTor+6gsSYVpISi6OrjUzI5dqWl4CSHw5TxQVI5IicoxZ+yblzZ5IEEn100WtXjjaD4+VwyL6TAJi414XzKJ1jFgw2bWdQISqDjKDLwPaP1GEQknRT1RZW0vZESGCOV5TqVMpKyqbtw0tLbrj2yp4NKCiy7fsQTFLyYb4f+.yRxSgRFJMc9tWopN3JKoILBuOKnYUm.00qHR0B99BLn0V8zpz5U9aK8tbercGj.jrQO5ZIwX8fJbjx3SSFUMQarHyJ8JWVQIyPi8.Y4.W7knND6WLjUWEKfBNQqwXVZWgYTdwJ6CEFpBxsZLyHCRxrAqE5YHObamaxZgxDanDUZZO8buQIEnlLvz4bHQ5ZR4UgFoPNHEV8bu8NO5xPfhNQwjPov1ahVGN5J8iEATQob1uMR+kkGKk4aD1Zxj+gNrJO.0UTdHsdahjPIzqjjo3gqtLlse0S2yjBKVwuJaiqCSlr5dRIt0hcGCH6epKZmgbNqjlNvwgo1jYYetKKBUYPmJNt+XnLKlkmELSqHdM0LfJwoHz0t+j1qLcwznGkCYjQICwal8KeSk8u1mTZxQvZePwEkozwjG7l1R6JM4j24wqasDV2dnsp6pdZyr3sTJBlp.K2DZChhjXp0u0dKMxxemxQ2pzi.EhkYoSYHqUXEfU5zK+sqGZOsLipsQjae17fH6yT4B1gbLwT19c0KV0Hn2jNdkLmt3Ht7fJy4soRsX6ctwqQckUp7X1EJlNKp7BSxl2DOnlCLQo.z00p7bTMN4TFCjG9ZonB06njw0rdUKaXJX8V8Xs2JoRAnxGRLNPxd6MkM04uDkwTq0r8a+igdOt3PtL+REibdMnjfccDSOyq88I6PgSnzEzQQRwuadyjivITxbxed2UEpTjYwj5WWoHIku5jNem+omPo1DsTp8JCmbSd51aGKyCgBSWlQzaRSUnzAJYmgZnqOoJojsUNSgpOzAf0hpFzcUQgpfcPUtNZ819PuIPZkhwAkDojM9laDHs16ezHCijoTXxUThfCzehdsruNvZKDNvoCs3uauwTE6H9Wz0qT8Sl7PNzI7dUwaRFWlZyqqRKXZ0ntnTJFGhTiktVIh7szx3Xe8nUJYKNFRMdObYKvQPYuixynbXLowUUPdxHCa9qygqLQ57gx0ZrhTPUFZlfllc8BmLqa1Z1lj2Ppx1nePKqG6SymBYpDnTl6cWxVIRUoSqvIjkwXe4pj66nQ35UYQlab0Ydo7C408fCBl9BknBPKZipBSXauMhBGGOy4Zli3Glx4qzfV530rTUxElZ8I+Dc4jqF8sPQraJf8fd6slzpmw1acDa0jddoM02YIcysNwF0LVapGJn2owAGghQsD0ybZHiBllp0RMsnrHH7oyvK6kU5ExZpVFkCizdadYZxdOqDth9vY5yhhcSwHToYY48QtoSV.IkFqh5Lf4TKHXPVbnYVJgNiYL4yTu8T3aJJujocVTMbYZTAP1kOiZ20WAxNSuHGxxmRBNu2p9XQSbV3fKk22p.kXepq8PDPQqatuGTEwgNSoUttoPdYJ4QzhcE.oqCzsoxXmCVGipMHLEs6rSIlTFTJQfhs+k5QQoiH+97K12uUZLkwFEdfBQXPBAlxQ0oEX5AR1ZxtBYjT.0T6+N4pZaGXWlOzYqAsUPAfLLsYuRg+JzyNdR1uaRgMtFzYx5HRVb+mQ5VgrQlS.2jVeY5xWE7WP+pWGqrAgSfJkD8DQoAmxMiawDw3giiIKMi86nzknDbR5Mjx2JUSlh6Lq5nH.DSaDStdsqTEGxhdT29byzvrLUrmbn3nKfJaO.fzFZYnVldoEdlH6OTBnx1woZnsn78aiIiHazgfhLSpCYlvDTBc8njdqRQYxzbMXltbKOF5kY1rwNqblk+hlh1Rokj2+Pqc15n6nGkFXn.V150P1ZTTpYYEVYwX5XFH5QVH0x2jFtaBpfJwJ2gfKvkrEeX7wfkTZZGgIjLkgLpllV4T7aJ5y8EVTdKnojjM.Mqs41dDomEQmpzAL95XQtpiJMEXcu1sYQ0ItFRbP1Jc8tFKvSJ6KIaa5qKURSeD0Agi9Wi9zPoiJIveFs4pc+jTIcWNpbEwD1butUN3EhpgX12V9pDmqNHiqAU32UwMBfrh07FFUMQxp7aTHaKL.SraCa7GCpOHs+TmYml7nhmCf9BO3t3uU.JGjGmhnfnOL6M5zFXvclB1L6LyrJ4bQ9aI6gsdD0sRwLMoCWxMTdeMzTB1fZUY6Uqeq995YqMDJfIEiPZNTnxiU2jaaBO3.hE.WpYmTl5BHycf7EJ+895BT.3fkRsB1J7GAkEoC4bSmuR6KmsBFTOpS.VshYeeMBkc79Qk.NqSGDthZNpT3zZRgpLsOlFRSPeBa5QPwM02CGpNlP0qCBTwDXp9w.XCE7SbDee82oYRk.+h.mLCHrkmslh8Qoqj8c8WGMjmdsNC.OjMWSl3DVPKBRJf529npnRQZEICb9StG5wT65p.zk5p6NUoDw0IOclpRWoa6M0ovVIL8ohxzAAB7P0UHLoJ.hctG2FJsW.UDvrMYwsQI1DGKZyzvzw.EBZgVHloI9tF.qXuTXAJMtnWKEmc.siXFgUAfg12.wJf6n1K5tqmaClyxAxE0FZvnYeeoCHhDspoX9aJw819HSTJxJjj.OmYZFroawfejdoBTnnQQ6eLJMxApfKqzzTdvCYskMQzCelLDSUJO5TQIsGMqS.ltdNoX.x1I.ItVMcVPKWx7LuOFwdu8kRboczJ0I8Xqys6yBRgtzTNYM5ZbcKNLXiDERL.DeTug01Z+HahxyMspUI7s0F5IeDxaF.dDjn1G95nKerijbqQiDMk2hBhTAlGJ5jkaGcixF.fGU1oJ3ts1jZfLxL.zTaSJNjvB1Lo77M4Ij.e1WjxFnhD.zuXLi1tuqFEtSeHkisjqwqZKGkj.nkK+wi8mUNXbSHlwF1RMgDzwHPYIG7J5jwtTSSuqNlP80J5IG7et8imdOz.qPKp0lou7oIXJW4p2oB4lDdkwb42QAWpP8SDi49ifKhgADvImwKGNqvXQmYUHScQLglTxbBQl45ATHb8e6XLo7jo.CP66PafjTskVgyI6iFj6Jibr+LKC50gxQvLtP.jRkxc3s2hdjhreEy1VBj83K.fRqQ1Dz9+xXucTlXuor9qM9G66p7ozZj+OEy3g9EVyj4XkxjgqkCVSiciZfjYllqDPKZXlXtB0krCdWT5Gy6qDG0o0QA3.NlLsDl59efGM8RLCTTGJ108nMVwvbbvj.ModsIyMmy2UlQxCdsWMsQ5ftjon909jQLkVcSkYn6M3bgQFJs0lN8YQgXRyT4jvzLybU84rOiX1nnvtb25TCyTTxf49W5.3+9hjH0RxdCoLZjIldIhvLcXl9R.2mrLtNMslU25bEXxwrsIeg.i1817NXXOZfyUFgOWsIilXRJmZ0n6h8+fyW3CeICZtdP.BOxju2hdBtG5wT.tJNrnGvl1tpyeDRbixPPGtcvZaI2wqAQq.BZ2uIU9MYaJCrPIkZtHoST5+CJnE0ZvDSiV6XvgXTSWGMyPFUi4HIw3FpTA12B+HUVkkJ9tjEASixvzKotovzq19HwD.MIOOkZs1vlbFmRfC1FsObnjIc8zUly01iB.ly0lEFb0BnoWGCF6m0oLcWoEilaK0JlYWklfyXksZU4Kce3+D5i1gvXmDows+hKiwhvUTRmyUeeW0nTGEsmCr7NRNKBCZdNyIYSlQalouWWDivNn5T9QM4rHWs0zf5MhY8jYZrU3+xKqheSlyylCsKlryn94Z6+vflxkbornXi5YW+B6GdOkgmhPoRmFWMeu90GtJcjzEHMMDEPkNYVHvrt6jhhOHAZ.0yQd+P+ps6MFlKJ09X3Z.BMzf9U20xVFLHaFnxJkNjBH1sFG0xf9zAfJpLlVtQqQVzIOHJxdYu+vACENlAnoFUSc9ThE5EGENWgUqfNcwktX1PlTDEZ1jAeZMPJcIZHtbrzMmuo98EEVfbJa5VcO2.y1xIaK6liq5TQFPRY5AXteqQocB+53mntcGZjLTXyO0acRzwU4bYuWwXJGDLoSlw2PIvNntqxQKS1fqwh5eJB1Tfc7r4AoC170SPMSUAMYgnkYvllLSC9I2aI3f4seRaEi1O35+gb.obHi5aiEOS8TAvkx0irp6JcGnbQqxZwaE3evTfMR0KAcODyj218FAUOzjuXYs0fg3DY3QgZUvTZUouegSFhnOF8vV99xXRVxJ8.J3XotJlA+BxdfLTYzsKVnC.fohyILK688EPgt6JynLNdEfKa2hubvqRB13.H1tusof3BPBddF3AeqktFCiGvEQOMq8AeQ5Dz66DnzVuIuuxgLCFeJPPEAv9RNvAMFJEYkERoBNGMQO.CiHCiQIeFlXMhvaI.BPJ6QdXhoih2yctoGGSwFab56TG3gWTbM4sGsZSum0mxrqWWZmOlMj+dZhbY5nQBc4LWtx8c2fzrDNHVT0roLPOLnaQthitncp.5loSozYTZB.QtRNPQTTVMxkVT1+koCjLlnrH2F5guXVoasRLIYAafXPgNUhaxvO.jRYxNK1o0A3bnWkckmhYdlYxRSLAsin7+FXQLX.WWY4i63v0w4L4gANXxT.EGbAUbCMnoEZ0TpZ3nHhVToyWobDokgba.KlDWGwoQEg2e1Jc.MHP87oFM66daggjrAXH2GlKMSfVMKahc.2xzEwAU1lh8DDSxXt8Qlp82XNOz41Z0P7KYFIbYYhziqVXs.nFoG7GgW.SsjVv7QJrR.J6z31j5BoXuzaQvpWYOR6kQ5JnLiR4q216y8.xjgZEKiFohoEjJ7uXFLZLQ3CSPArIhtllGTuQCcBnjL6JCyocb.qLBu.lV.54bqGyXZFVAv4W4dv2OICFlzFtB9eNJlsmoblJW1BfjxfBa.oBSP.KGoSEKaerkLVX33l586ZlGUVTusiRxbTLr1fBAdvPJKyR4wxAtxFEfPtR3WvDOUh2IDvC8ez.giAtSxELKWMSiEAGQM4WyX90WlksfN+fVJVrE0E.3fSTxfAUnJaxpRgbob.ovaUNor2lObOBTjFCQSYenkGzaDYg6KFtOyjrAa5AzyqwzZrOdfC5vkLLulw7+ru.DSbPoqES3i8e9n4bv0ccY1nQgeMcemFjn.ifV0BdKzMr1JP.Jjp76XbmjWM53MrICC9ichvJrwWmpzuV2r8nvFHxPmdoIanlYWexz0dnbS6ksi0TBCRyUghUL.9GFbFovJUHALXZz6CC8VoXnRLqp.Y95djhAll6c.RXNXqCSb4GmJ1KXlyTVClNUJhbAJxvLYg5O+AdpBPzh698mtoEdfEZEThxk2P1DLuJz5fdLSQK2VTlC7N.OuPTtl4PDlTR14Z.bTlz2gicVht0zHiWEU79XKYbhBlN4X0N5lhZy.mxy7hsnirI545X.+VAVWqtRfqrGAs7cPg4w59J2Qf7qNTQh+YldL2fGQ5tJ5kDYRerbnfNSi8SfoDFpHSsHY5nGsX.C2lQSjOuNLUHePZLP2h4Ix4GXfNCxuX4HssnR+LywU1cah3moTB3DNXnYsT5DU7gptBH4SikCKSJGhUNZoMAPObSmLSt9QCXF.8gXXH0ghCTonrfWF1eu4Ve.Aop+uPnE.lBSCrljmP39xFo4AXHGnv.f1cPaLA0pAIslXbQllxZImVU5uITckqWWAcLNNf9KSmJhtgCGpm.3xRYhLbCyrNI.oHdvfZ1bkuPNwGiSkYS1dxFFBtfExQTLZGfZ6SL0.IEkgDSc8BRFFKzDMLRYLtqfzyT+W4Q.93zLBCGPIP7VuDC.mqaWLxaAyigoACkvA5YzBsrlcX1cHO9ZOwDxAhWglB4zo6l5bRgLec8BphILchpR2JMiTMwcOfEBHqnggIbl0iQ6.eWf8IGrivMaz0YJImClySJhItVjQohoSu4LznJ4LPFWFFaJvgr1fnyg0HaG2fNxPtynmV.3CFKdkfNWOHSmwb43rLlbbsCU1c0AVyr7ePsSzZgBlV+NCCodC7Xw3n9XhCOSkOKAikMho11fDffQWfAeYHFoLdtVwPB3ZKkxbQ1mZN1WUN7kSKlwbPZv9WiC.8FbuRUQ7MLLydp1NHNAfra0DNVhY97.N8dQuYWF3NbnnjILccXeZnTUJzdA+4G7733xBlflF37D5A1MI3LBaUlAJRYsalMG3vhgdajYHPlq8nvEjIoyq3CGNIu3KPeAKHEhGxgIYcBb.2xjoIR08jyKEfRAd.EfWA6oNmKL13v4ovLNNXb1xf5Nl53AXnzToFP2tVRnKKPXqFloJnLVnnHk1pAKv8f0UZMP.UZ4x3BPz0w7O8CzX8.Nm3DBJmTDlsl0UzozJT4RlheX5+8QLvHJUtAb3+d2xoXx0k8fYLjUK6fR2G3VFFmF1tL6RDV96YN.mkijglQhwpMSgfOBkGXeUlY6l7MulC9m408PIwQEt50bMa1abPzO.SD4OuZRaNGP9l4MCPPYF3FfW.6hHPBkUogygn4XvsM5t2gjpMgVoyoZKM8axHHFAW+VpPW3Pr168YoXHRASjyHjA5uu2HXGT8AFrhIHXqaPuILC..YUFTsvJOSt8nJGwrLL2Oa4sns1MDcgRtLc.qMJF.vXBU4vDqzhfGkKVnpdavfcpfMzQR3J2zifns1vE4ClrBSO.mXFRd4YxsX5hLHTMwLi.HoNFlzNgzIA5bkjN15D3BXxfEKFvNENtJi9oCjj0SA4MahaDNZpMQqCTNjcSDXJSc.nJoltboXkSwFiAL4nRgxQWq5SVE3pbP1PtLg.+p.ZyT.Kyoq6hInUAYN5fZ.sG6EvoTP2P5+Kj1TwzmEFeelOU.sUStCSF1pYAwXojQR3t2PfgvlAf4NslCtsbtuSjWeTgbmFdTBVbGdESVnU3ltgGdPJNDmNbthIbWF7MDxfXR2c8aUgvPlVsf890yuYCUARPCEaAuFCybofX5PJskI7QhKnM4IdQtYfai0vAnUHmZxFmAhpXncwbm4yDPERQhalTytqaK85QLXVlAXTuEA0tTogQ2L5MTg0dPjVLY21wmu.5wTNkn+Ti847w1hX8fLRlN1wk93TigCSgU2ptguFsLPohzBUaXY.zcANdUuqyxNh4nXFBPMPUKwIXYS5AM7QFpaQOOLrgCGRVcFsNXWroiCrWSlMF41BZP8nZbHAdW3jH0.BaqaixaAKALXN0HbOmutnp5A25wjPXxaQO1JVVV+PiS1e5RFFKT36AyEhLVt8pgo2BkIPN0gyZLyvBCIFPdYkc78VllJOhtbyrhYjxfYvhVSZQB3OyLtD.C2dPB7yb2Plz.LMbMuVv9tsjY+QNWBhgiQxHsubCmXsL3TLny7AosZr+x.X.MmAe+Xh0qH+bYF7EN8VZNhILiB.UomQsso8Ey3Az0GiSFPFxLEKifG.6HlSTMO2f8.kSvvUfGCljbWPYLtIL1zYp.Sw4gFrqCOcIydEqpioyfL9rLJz52XXvFbmp0jPzi56krmTHlGAW6ehbALmBpALjnfkEhC2X+MgZkzXFAVl1WHeJmpe1hA8qV6N.oivjAbZvWiYJBGETVvH.enfNCcWkhoiDpm.vS3XpwFsjl1nmQ8TbyjJTzBv0F5TrmbZ5z.gaT9kPJGRtAmPlGUbdyfd9cE6BJ2R6S0acHFDkEy8FNWwBCykEpPPos2aDBNSPMmXFyIjdMDPhBy0OvzbYkYN38H.0hRGXkcZTYCYcBZlBSqlPkQDKnnyybBAPp5X3rDLdBmdcBMWgDofvmUh9xb1vMIWLamJABF1alxh8oCiElCbAzspoDMGAw.EJCfIRxodhGSBgiNYbfao8JyHGsAsCLI2Td38nHjDmYCMvRPKNNLixgWD4CFEggijofXKpn9dJDt84KBqyAM+Q0tZoCW2.jwN8Tz6D0Bhmv90ZJJ0Au4g0CbjpHQIvjxC5cZEC9Sfxl5.mxBvxwza+Bi3bJjhMPEgAE40fB7T7oT2lV0QrDCZ.0nFDX7wduhxMDnNedPZiSWUHIZ1XbD.AHFTlBgBsv5Nrc49TzJPc7nFIDKoi3aWAUDGZ2Sd3XMiIjs.gvdRyZ2utEX9P2RTJIL0rOKJrIsBtRep+m8mqTjOX1sAMEYFdODSIHXInEAj4MiLBMAOkPsRvvYtPSAWHfoK8eLLEOJUiBfFDHmdo3RyAhqGw0.BdolmtFzncmAzBn8cllNRdYZurbY.hmLgKgrtQwrgJTIAImcW1d1fq9X1cL7BB5YQv74Jti1dKXP0sTqDtVkkcxzHcftceAhSHGQCs+i7NzCTPX.kJA8.8p1AH1JP1rYbaAGKAQomLbUAibIDdKCIBkSaZIWoNEvcFRMminCoAoDfxL3hOm29BCdYm20c1T6vOWEYnMna1iPALLDACZiUuEONKq9UAbu6f37YHUFtrUyP..vMnGIq3egHLw.2lNA2n8o80YoH5hNM+2DaEPVlgV9qQ+bhDaBcrNpZuYL.BdwMCmjoPNbi8THF5.SdFbf8ZPV5cQitwxDVz2y7C3ChhQo3i4.iB8XO9XgONQitkQuQ0oMPYHEDFiC4jStEsF7Tn+MfHHzmgiW7gwtwZJQtMllBElwqBHohcI48.VfgKEbGRwqzy8dKBvBSqPD4iAKt53DbpeKMh8zrqseqDC9gBPtyt08xf.Bd+DIaZAnVL8EDhPXTgrQnh1IaenH9HPWWfYXW7ZJfwLMfB1nr4TGRzh5vcKhEV1pUACxrlxo.Fzb5f.puph9OXklZ5di0cNhAA.DWWBRDwnQ8qPPCnJg0poPCXRhOgsriGGBtTg.GOIVHtyIAUYP42Y1MKldWGzPfhGFtqrX3PpVP7J7DP5aMC40rXeOLELCIQ03ERmWgfwnaN0pis0ZQ6BlcJb.rwggc8XrvYvCKnrAFvqRFjsJRSMfxvoA4mpSJBLHiU+xPuqLSGPnivcMFVC.M9kQCeDdhLMqRw0AWzRZY5HqSFdh.yancJNFhnGy9AOFS3MCCHIAQ6TGmFZeWwIDIxKUEHskzqbfAjozpnPAny5582b5t2H.HrEMPrVyMJ4LfAvmJztijQpIBoYov3NbXnU9P1smmDdiAbLoYtyIWH4SC3aP4NLHrC9SKJtTqD7.79I1phn3BJpzY2joHrAzbQz1Tj2to1j1ARMenrDjkpq23jrWYFDBkqKof9FHoK4weA52GFjuP4H.LYMhlNa.USsFJ58HTRTCGRQFKfrg.24rSc+5mrGn2hvWoPkOlys.nXTP8JfdxjgyjoQ.rEnbVLa7zSg1ssnQ9PsoUKKwizDA4aUbDNHwowX.HeVZky06oA0xADhkwVpSplXLGfnRQcMalJkhJWyvicRX5bcC4HpiChSZYTbCBID+yJj.jQ0zCGniR3cQ89V46YfFBE2cgPxnfdQ+s2WXjNwzkvv6XczVVH3Py7kOeXJTCTmPyJ.K6PMA08NvkArLHN+HGLrpwyYnPkjiPnM.FgPGRrlJnqn.gGObTxQLS3GHt2L4vNdrENcrPgRUT5zYg8Y2fnfBNVfq8bp4gNfPF3T.pR2vnIgjeQxP7V2VzXY5B8TfAJ+vPUiSTuKL2BFwNpN8CsCL1gj+ykkSDjoXzAuSCMz2cXwlZtvnHhNYiLSXFnbv3ZDK1dlMJJYbTnVFHLXs9ioC2FgpeMgNaMH0rGjzabiaN49hTZ5vCwLnJGlKtG4UEphALPjA.UPB+5Uhdz2OlfgEIHozLcPp.poMI8xgDvTQdzcrcfRdDsAoSvwSpfm64fgcC1+Idku+4nfZthnPxBhwXNjsXNxeDvwuxNSRg9Nm0d4kipOZPmVx1QKgfg6.+.++Pf5AMR5Y59CiqxarhI4ELciiEJo2N0.9w.RFSETlTg4Q.xOvkkYJ9TzIbiAaXzAZmHITPrfB010zlhRjLQ8DWN5zAzSBWCnFG4kn0cU9T26NVQiwJ7vvXQYkDKCV1D4OH6qpZ3HpfV5IaelNpUPBPIRsP4frv0D44So8hSK4.0MNlSzZ2F3Iah2q8mtPqcqH1EGfNECAJOYljOBlOe3hnWlBzdCZEOAnOM0mDNpqybRUgSoc5bDMLIxLrx7.3jVVTIsgdRXDHsLZPv9AT4ZZ7zzznyV4DIdPwQLCPJHPBDLh4lhIKAH0kkLfEzPmY5aavMyUDXYTQzpCpKfxpYve+UCGbw.9K6h.krZfGZya6JUHchS7Q3XzzDIvqGjZBP3d4HxPzmRHvyFM4vTxpNg4x.Zvc1wlGJblLlYNw6nFgEjdT2qnmeqokLvzFznBJP9u1g.NeBOf0.I4EmHmmCosEzy1C4Ry8JOQ005f7RTZQiNc2nonjaHogu2RcB4rBT2fBFUMpa3ASiIEVhp0Zh7ngtWNlQkCbrgL7Rdvi.LNNl4+pfbkTIuWPUee+bnwmeJHRkr6aFicP3FDwQzO249RggVHoSI5cWlbKJlI.FU+lAM5fgD2XhYA7W0qD5Aw9abCd8FxSBBvp5H.Hkk9fAnRKCybyoHXL9YP70GL7saKYVBZl8..1hdaLcrOh1+F5TBEpZeCPNwMtHPALH9xfpgiDOXp9QmBnI+tZj1.eMnuCcHNr1dbKpnzHbd4cSQHOMRm2fvuVmDQ0lo5qL4uCjdNciYXLMxH3hAyhZj1sDY3AgXRv4kkqo8Q+DnY1czggf6JLuTvrUlQlYBgot+fBJKMv84DpDLr3jbTxnk9E5YiI4sAC1o7fCS663KHkdiLGF4J.SKmrDSKb0MrIcCQ3bZ.jdmQmKliDsBtO5DZNF8tm1OyP2sOcuwLnyZTVpiTx0xDvD+pgoQlysrw8M58B4tQBCN4KBpKuFc5WgHObX.jXFolRwbEaPYdMHY4IYblnfUtASp.htCAXt3lyBbHSlMzu2ilC5hXgFPlQydBf2XV9.jACv0Zv29MiXqjg5hCIlCYt8dKYRpSKMZQVq47hAdxLYY813zv2tWQTOAS5fMcgtpsyTHz5FTeKiRRuYBYCdRIzF6AfM2P+g.PevdGMaU6vMMrHlzIlbektUo3T3pNQVUok0Mi1.bZROF.ubHuEyMtBm9N5wyx3qA77YNtOfrFPJq6VgbIlr.XQ.5OpatIGyN7L.PiukcZwCGWaXNiRisbjhAfhmIRCpQ1.0EnFcvfJp9UwUpgLyEBJJPA8N0AoHpQCvtohHblrrbAB3NPtjViZ9.hxofoClDWGPUKYFqLkdZBjTZNHJyy.5M4I.BxqaR6j5vByUrhQLyo3WHNF55JfOYGvvXpxh5RCsI1bzcLQLETwakQC0pABKX6.Neo2JFNepQSHfVVQiJ6F9JjRZBqbUxZmc027W5Xc.IKXsv8gxpLEvT8AYmYfEODDckQHMEpqPwUsCfh3hFOUbpNOvEDJzGEzZTMwLgnlC9zpLUskCGFSRDPOhfvxvqmvXFqVkNXdLYxBLBmB7+4XMF4fQybe.Q9HfWG34wT6ezwCD4AJC1dDJ78xuanA0vy70XZO1ycFT7N.H2QfHd2DySciQzboKsGYm.xufEcvWKx1tozALHszaOPeW2ILp0v.lr0L51tfq0AhKsQlKcSkR6Xs.t8B.XzM0fBpmHC7MWvBn6aDXeFTOHUtHaF7Fj9P3t6.6eYCJsWL5fJJSfpTu3nl7UL+aPuuSbXYPHD06OFyIFMQCcgFSWRvMaLs7FIjT1a0FSF2.F9Qiw49o19B00nsc6KitrrnK+HDM6wV1sSV4x4AxFZ8NzRYdLfcATtjYlNxlSn.CX4zY9pgT5MP.IGLzFcNcQONL8OEx9S16YBpnjel4hMT8CR+svKRi5kpsyjuNy.GvVr6xpf0sxfYDywKGJk1ZH01mPUmKO7YnTB4fp1x6G.BznVrYPShYWpQ23zBbJz6QXPCSgcg4GxPQyHDUYC+0vL2rB3REBn3V5xE79KOxw7rSygbjEcLvYMX7ugi4MIGxHMkixWC9biPs0VCzyrfMobZj7f1tRGg.a4lQbEYJjJufin8QPyv2M01zfqfV6GSAFm3BEFAd+.iG2a.ZE3lBihRGVRtlfSKQAFcnbhJdFS1G5zcGMPrnysfsi8A1QYqgG7PfcZFnHBObDScYi3dVNmazkQlbpf7LFFnnfF7Ps1XFYZNldhQHfPni1a3vshxNXvrlSU+Ln8OyNeXHzJhDdwjVCjpAD8WEV8zkAIgQsfRDfB+RFFMm5CQ89ALXIPpv9n9AfF74Dz8YK3B9dzJQhfSxNJ.f19FSN9jj6SF5rhmTzZHFQLpnoQ+TxP6+Po3b0tAMAkwfsed5cI3IkAD6L8qCI3zwYuLDrCjJCJdfgXc0QqRzqGYkt3HaX8R4T5RvsEJ9NimY4qJivIxPqlFl3kPtWBicLqUcaqEFAeGWOk.tgrDAE358dL7dU3OXGaMuz8GCBAFCMb7KkrkrNY96MmcoBrcDBw0jQ4xTQG3MrFsDIvcYwQkNDeEC+k93QPNlFqQqEv.R35na4AK5SUHuZIC506Hg6T0aPr5x0EZzucvxChipi5pYjekYZpsuh6crepWXFq.SqPaQf838PNHH+mLPnmpqVM5BDyVAN4TdNGaSaIQYokoQDxEZjoCz3KDcrNs.FNow.aPJY1fdNgT9tLUCKR6TajVLncH.E66svgbvP47Y3NSlrTkYIv7bMfvnhsv7RLwJbHI50XLG1WjlHfZnT1CHPImNXfBcyNCpOR1Y+.tBfRlx.WYZFG86eQiHfi0Mpn.8Ul1xr.UVGNwjjZRThB3Av+yUSvaA6qQvGxbvQw7LGdUnGl.iQmPbRMGw8BR43zpHzUFSsECZdjW9vnYSQMDC5BbOW2Q8OKrOMCvoVl2JxdKcU6PQRNYRnMaSglW0ZV8HJkgCnPof0iWA0X6TPmAXCFRAFrRXxcmt.xr1tf6LxkpooVoXxZ.zWGtwKEc2isQEfR+vf6xLL9JJxo7Asp1YjD79FzjUfh9CSetSQyIkSYferBsMYUIHlPlZGDuzbpXM3akFXy1ilQPUY33GYBauMJqtiRfqXqAhBTwbl2GPVjGhx3BRPeZxOCFGAyXAio2coFEsLtbhdz3bqovzJ4SfdyLXqsCyruW4sNrncFFV2H3gnulXQsTMCd0IgqkvpyHTOzcs6urJQ3ggFthQz0XDSuji3umHLZ8tKdof5RgiQg6qLAtUBxRjHTgfFLXjg51lH1mUn7a6yCXNH0cRGVI5jb8gSNgHVI8xFD6zrqG7+KXo0w9BNbTBEQPIBvr3H6MlkiBg9PkooMQFpXmn0ZyPauTh7lgWBtCgoNLTfamrc.c7jwpAYY2byuALKVPDR.8LyJGJ3vhI9.LEWcRULfiufZzFL6rgs+fxMgBF6.gcWt9MPJwQLr7Jph1zIn8ZuWFIYWuGMd.NxQVYArdXZPccOm.kV5kXO3x97drKE.C.NgrcTc9kOhlRBUttNZFRQXw4ouVJ+K0YnfFenUOsqauaV4QApPU2SGkudZN1ksQX5dnE08NfFTspB.t5vB1QF.Zc65z0hZ0.HJP9VDYBr5oUrhZAgpqTZmvVXFuDGHcsfEDp2wgY9ajEQZEubroGjoatu.aXvnWHZx6WLlAoeBf8PjTJVdGZgKdFS+kA45L6V5UBpJdlrKbCAmdNICqf5TyMig.HNgNC6pd8kWl9OSX4f0QHlJWmsIGYlEJzrbXmGCn8ffI6ckn.5Db01GBZ..C9KcKyQJlo.5+jdOCt5xM8YfyvBvtYTlFYngICV9cHwhx5vhKQZuG5iHnzwQHHUNtB8eQ+6Kld.P4jHvXFYFj0z8O1PGqJH2Rv9DUmSVvfG7Y6Dofce0DQFqWjujxTtc3HARFD0JJAFn01X6.RoWm+TT2TUroQNKj2JrFTONBkkyPRc.M.BOutbzkd3HjmAze9tYzFB09oP5rGwnU2brnbL78ZaJndzs6.oVqdD3FYJu.FLlTHJd8pQqFGGolknRqAuqPiIWVsgHiZvRAj0lI2TRRJm.upYjxrY4SVkV46FUee8iosBLpBTZPsCzQ8CA6.gDfwXOser2QKnVLKR.BupgVuP5dBIWGtlesmvQXLTaIPeWMTYu8lZXbTgY56ouFfLL52O5C+XYlmwP+DX5DQ3TA0pFpAOHi64H31qkcXtzVelicxBA4fz0UWhpih1B8KZl+9f0gPIvCVkX+5rdqg7XIa6zKLyTBGYRWo7c0ho8ngR0S2glL2n2aL1Jz59PInDLqwxhzWY3pSbUjEzvoLViX36kKH5l6V5P96cBA6v2x4X7nZlJFbPgHXPRzhWYMr.pKXjGsXCRhaVv6RtwM.SLcq0jAoRLrCy6xic2vz8LlXZwf2jEGBJkeM.UTFu9c27MPqUfmJNJg5EOM34eBQGBsVTLjkD0MgVxf56Ry72GNCiVTCVDZEx7poQOxgEEp5TOmLXRochzs5nMWPlaFjpRFMqPnjFkpqfAJHS3BMXbGLc3X2LHkj.R56EY7SjsihaT2cEnoRFxARTlEJkkNz.OsneueB43b1HBI5OpahqPdM4PKQJE30aukwE8ujonJl.TS+GFfsHFCAvQy9vplLaET3I3wvxvnSRzY.xSWuyg4+MM+k8aknWctNUzwCeBAbiQraeDGGg5tQAiw9uQxEUbLZqIHWoAcVYXXVDmHEaGFORltl2BQlSm.lfp0gorqAAKCkP64Pw9INT+.McmdgXjNBj7hIcSNse5mOITYyS18Yxg.ugF.TpjDP+35AaR6DLvv28.hXhXG2uYldMAecCAR6BQBxzFdQoFfBvji.mRYjCTzknd4lx1Qix6YFDnNfqyvIOGLL8uPSkLFcAW9TNBvQLwP6B3Po6B2xTf6gbtMWAy8nksXTr22imDR02AJzEzYjQp9fSTfX6olDfdcWKQKmjkNBlOcXLQqf5nZ6A0T0MTzUEZtB3PIadNa+502.g+Mnv1rYVBhwzQl4xsVrydeLw.vwVfhX.htSU.Jz8kJHCnZ55PBxum9KArkL3rGVWIDV46XA+pi7WRzaSxvJcXTQ8DECePLzHfJYmNVWH8eZ4KLgA7tkC35893jlQvvNY7TrB9BWIfS8ZKlJ9S0sUbDS5VQwX7Pg+Aor24z8xTAEbwBVbQJYT3GlZ5NgKg34Fz9t0HstonP2TlEFBIWGNQ2Olc8ZAP2avdDb2VLfIo.flltcc27hR.Dsdyk68A1PYJqBxHyPalTTjCxMENcwrxgx6DkErQ5o6SONgLGUCDfLKFF1rBe5CcUBaRTM.LDBZggCKTFwrASBHJXgFho..2GwQTRqCxRAkQTFy2u+DVoHdcnc+Lpv2aSF4AkXAHMA6VdjlV.TxXXSelPJOLSZauQtzJJIF4ktSsYBUK7.gJClG1xItn9TEXp90gi6bPvb04T4Oo.m33zGa5ZTvhDLBIUKe0bDvdNEr8ooyCc1tI2gxeXae0kOUCXlVATzOpjhSCEkMFD4SNIheHSrAsDz0WB090z24ShURCcYW9gHiRGzmaPA3QswoHQcSiHKvdOGrMYkbPG.kvhlJBkHC81sOxJ4kqtBEBtasOlyAgHjfxj0Boo.hJCxB1lVgybGGlvHrLYryF9AWRlj53Em3zCkIxD4ARB.SI4hW4FzV1fHsxUXmVzUUGs0njj60XxSV6Ilv6JdWdDiBjVH0yiChgMJnICCDsLyAelZzQ1.K3NiHmDaI.vKCH09JoT.Mec5FCBIWywX2vRPnyswrjXfbrhuLBjNDAMSigRA64bPtB5Ptczi6HDKH7FEnyDCfKQiJgHgdgAaiMUEY0jOekV10PFXMifpCBBdwnKnoTn2LfFW8JLuOd5D.+XVhYCYrryNQnDWj2IL7heNuqzA7NvQoLLHLrhhPOARvwD93lUepjYNpfGXTtapePvz94CuXVGRmBsnBUbdYfhBlMlHbh3WZKXsSAyZGkph.BMb1JvmD+DGnqf4halLZn71SFS.Rzww65Lo9HvlCf8oiM4fDCUTabd0OCZjI6LjdxSRvS01o3L.CdxzUa5SFR+Tuy3hw3Olb9xAe4CFPqrVYRlbnxAszxrJnfbVtAOTGUI72Uvv7cWQAH.DDV9I0eznOzYN.v7n1o3bt.kwYeYgsFGuldRAuf3honlkXrMcoxgZqimYJnc0pH3CjgAJimrpZJDD875fXxnzsSCHqBDG2GgzrPwRLleCwBlReSklpoCmxwRybRnYIKzVuriNLB++DYc0n6EGTbNH8MnCltgRO4rNZ7cMTJu8CPDjhVcw5L3fJYUxbNEnyVfQktiA+.hiQGqkgJGIGkkMZ5nDE+KiWcqnVqqEV6hdyXp0kRFtDo4y4QWbjIH6aksOpUYrMwQQyTYGZOJ4i5l7D37oTKbFrrMPuGMepEU4YOw6DXBYFEyXh8IBQ7dSQIGLcMy.xDy4zEiEzNEGYqLN0NZ1FknErIR2hbI0w7vQph.UgpUJDZvlZKRVrZXHpPvslQgdUH3oQ0pufDcpLqWkgxILWgIpBDVXc2Kv6lykqPqvM3c8+OA+RXXLBHC6CpEitsMSG7Pv.QndgRQ5MS8PoVFn6KYnj2toCkn1hA43DjZtyj.K1gzq.9TFla8AkalQeAwVqrLEpCsbGGtAWrm6l1ovAFn2cP1+gsuiJtZLTNNNw0bl7A.tNUHB2IvI1.2VEHDhvTvoYZyc1T9zAcoOQ8PlVq0LnrGLJt.RPCI.EwIyDlkPqj5l.qGLvc.mrScgYeWcZLhpY.0ucRwQ3NQYRYZbY4aXH48VDGIiwgrvu1qFHs.+AKXQ3tiXmQK5AoSCxAc+0J+DHFfv+IoU2IMPQW7KjsXFsHy33Rt7qD5ag2fI2xLPBjRe0fIapNPxPbaJrCk879XYYf8o8qZc.fLlMu+nV1KjUFlinkSYTzGwFMuNPSukP3CE2sCusLMgKAe9f3OBwcMxF89AZMjn0GJsR4HvA9LZyPv4Z8PuVqNkQg9rES03xkkM08qVXNvxfREKfqfksg0dowXohCvNqBvHoFLj+p3nhNHoPkqnR.b+vveBxsmFALPwZYO8xoOhnVlkYTUHCVtRITjbftsd1KtfOfA6U7+A.0WTIDCO.gVOPDHgXBk2knMyGKv7f8F4h6sRtCt2YV2PjMLsE.AmCYXVoxofDllQ4lj9PMUz9ZsX6J0ek5pyjKyHL6RuEbqBAqvvZsLM1gyfz2wIVTatQBBR0L5F6fnjaNkgFgLBU.fpJWbZsSJ3pbfTbPUSNfSSiawdmbrPkkMs5ZFgbTyySPzvz2nvyBMIzHtpQESv9zB15uB2FXT.o95HXSChnsYlo7B8bfQySK4FswUtsjII.2L6VsCX4.EnYDXgArt4nQLriQAd.e5FuhLxqCjgrAQ7suAjTHYnstlbd0W1abJmhzxXv+FNIRAMhDB4JEvzxzPkAt3VgxMoXO1ZySwPLw4LPCDz7s2yEYwAj3nZ0CCyTJGsIlVXFC8zdOygnmBN4oL7Fw+MloEJpMTnQ69iBdNNMamiDjelgiBY9NYX44fJjPU2rrAOuvb6CZmpUqp0fIN4IRuNlCCCaEvHtE67Uf8caANwADDdvcTxksRFK7zBg7hPV4TW.nscphAbdmShRymFS3X7Olly2MLiCkio8+8dwTwsDrLMnrfirVNEGAOr.Uni7IXZ7RvrCUj+zwI0p17QrS4kF.AKcN20+LZRzHnuTF8aSjrMHJjiXV..dbl1zrHA.k5IEjeXF5hFrNKZDWnkgFwH.zdj.uQz2aW+lKn05znnET4kQOqOIrpAidqsraeIB38nOuZQI21mZXCY5CVzlV0OVNt9JnFGXhzDs9duwNPPnNxlfU5L7dOj1tRJaEZhqb0ZFjIDmKFInPZk1emgvuGzz.YeTlmxlBovTcASZp68b+AknmKji.T71vUo4AEfsA4sx1YydHFNkVH2tTtHGBqoT8npqDm9dmULB4bttx+iq8BCZqLDh.D4TaOHBykP9MPmHYGhAvZPgS.yhSjJ8zndBGon1wsthH.BBaOMJb.ZCYQtPjUlBuSCZwNdFhxsazrl5oVPjZHPVkpSS8voBV4XjBMCY8BDAchMaASP6qZPLX3qCXeJjMCSwLo7ELv.inON6esP+GnJengIyrIsvN0OOsHANqVqSOb3D3DngObrn.5EkrFv4Pro6nM6AC00KEUdm0YFW+EZo3n3XYdLKWh5Rz5GNZFHvfwjRWPkDMAQv3VvQf4jpJ0LhYM0PTuIgQYqi99PWozHGoEB7g1iZnbD3jUsgiY3qlMz4LCwA0QQGzQQNrTNxXdZP.RJRoihi35HhG34CT5C24PnN3JIAoLgJgHluu9EmXRgIgaHu2qsz.ZGlirEgcWcvmivdPSAlfyslUojz6iCnoJDxAyD.CJwPXyP9UJFmrxjQCZqg4M0fByLxsdIHiWJLmoTsTswRvtRXq1D4JBFhdOCjPIdaCveI7AZy8ji4NVze.NwNn+MHdTGFOKkXnAfEVTTz5biICRszU6LnyPz7cmSKnw7HD5AEBcOkgNGnulTxrB3tcOpWPjryA7MlJvFSeWW0PjhGPccN.VDjNNR6cVg9rxGlLNkIWpaGSxsdpu25HIopbppOvvcF0egIZAMEqBOOs1mVOvdf9stTvqorozSUT1OlDydOFlOiQWTZWn4O.i2gov+AgpqadGIFzcXg15AKQmB3HmcZPF35L3TKZTvvgyZEGJElAzxOcRPYnMjElcmSLr698nT3DnxsD3Qx.1azfIPJLLahoN.T0DDh4Jpna0wekTqc.JGS0X1AQRXNMjrIsFuP7zLLtFCVlhPIwxxzPtiY5vtV0Bx+eezcrimn96.3k8TTBJXZGN3kqNahSJA3b..iInenxzUSDZQvjQTLynwYJpKSfYhA1GH.Uy1nY.fII5+WSuV12+sJ5EK57F5W9QZ5fsGzjRBQ8kVKaZEoxSYhVNFJW1dWrzzW3GAHuf79f4CAbIQ+ll.VXC+5cRtUjmP1MumQZjgwEcKryC89JRByQokKp5DL5uaLZmnQk5sRj3axv0fCxqAhCtB7YctiYuCU8sPK6KlNQBEoW95ftjSTJArW0ZAzDxlJolngrE3ksE7.libWlmTDW5X9.xi7cLLDWfpIjVfQduNOm.eAL4IDGZYO5fSPHfTMP.SIBx496L91.CC8RLUUFISF16HF1NH6CCOuxfL1Y1syfxDyLyD3bf2JHfgYmayhxCCIatJCXZSkCZ0DqAUslYynjcceVlixTbuCJrz9B4bDylJJrLjXukaNgJXoqam3icC850Km3MInwaWsnw8st3B8MGS0l4mf9TfvBfDpXl26LRtHhmaCVVxPpPMvMSLJ6XPvjXChrNSVbf1KGADgxpgGqBT82dUD86EJfb.tO8Nj4Ss5.eArVrxvoCI3YRXAQP.7+y+jkLyrVHyFcT5pIvN6vb0Ltxglj.oYe33FJziMRFBdcH7yYZwY7ZGbSKeRl9PF.TFqXjXQ1b5ZDuEgiYfedNL3CB7F2QAtAZ+6qGNx5mrHAWXvr.aVo6kXzgzoKxrvAPH1DACvw.jZFb4L3ASAORfDi5JatyrSslCTjYlT8BLti7dmCcXM4GCAnBuiPnLlkxxIjcoP4qUTr75wQ++xyUGjRAxbmlrHWGA+6JaXECEySV2nsS5bXKzH28CBI.j.p2cPgOMhNDL0xAzOZfJg6OPsxfBK2EwPebXxrAP6VYj5SYPfQ2z1HkVSJZ4qWO3P83pfxrxcI2ajVvjL5qMbPDL8gSfH6g7rbnnqVyokDVfyVUzXLn.IyfKWXljThEJ7CkcQ0b5dfFSAcKu.7JlhjNgKegoyX.eMrNRAdigCUPls5ffgaIzUefL1MQDjLppwogTQ4OsN.AMtravXGi5uNa2qty2nU3wvhUfalMdgNo1PHP6cXOOShx5uNCPBJoap6lbtRO536frk2+FjJrQIk5zLFmdLSPcPs1Pqo5U9gy4lrNB.k.Zlk8412vgbRaOKdVXYAYNPM9X5dSNgMirwNnZHGMCE92GknYofpvpcZWyn1EncCHE308c.gItoDZ0TTR7zdayXOT6LOPX.Nbj+.86d.ZU3Ovd30.m3h6AniL7JuuZY0.xxLar5yoY79IHdE0EipY1Pzfk9AwjS8hOb0NIfr.yD.3+BN.yIs3JZtEeJQ.qL5P9oAHP15j0fUxPOCzJzJzBMX6Z4nSqXvvSsvLdd+RGSMHHrjgTaXPaJTxI4nDEkYb3pa9.Fdd.4uerLjLHQdtZz4MXpaOCktBJVCwPu.UAYo.LDdOfn8fAZ2oWmDKvLHet1zgxgEX1Gdvi3bylJ9zYPugQbJzkXiWPDyIsapwDvuLUW63HjDaH9JEQU5vNlDAukWhCWIijCiadFt4.DyCGoin8oUpdwHT7JyPR.7u3rcHFtFDFSxqHQ8HtlbrwMXyo.pjKHjx19TlhonQuRTjqn+S58ui22XBWNNwUD5sigtr4vchYvGxY1HAC3FrDfhSl1qKWv4sI0xbR.PKmN0CuuAP3gQqgOmc7+.0wO5rM4.XJeALlmLmxfRffqXHeWXXbDS6nzAltmRg3.FSz8xikaJxm.qKn6iTALXs8pqfXkIBMMO9FNyag9sOn97KO2UBT7I9bEKsR8ranHzIiqGjURF0dy33pOQrXGAJZZNgFJzlTF1vE8YzonMfG.fjL.XASI64csLYtgTJ1vefQRCZM.qN.PBxA2TMyPLGOPKzgT0MFTUL+JSY7hqP21u1ovLkYrjL+NPn7btLhYBGqAAhV26TrDB9Kh3aGL6d+Q8NKFLGfhUHpMlDPH1iLnboS3al5qkinQA6e60OWpAVI3JxTBntb3BSQGPfJDRgnikrchIXSZXXF3Qp887pDDn4LXTWjyt8GXGxAqdCFVdMrnFU9ZBR5BtiwTRvCHUaf7WBtpxDKA0tDXjyhsREyN9.vocUh+f1q6ZaR4NRlLpmZcOzYZARUjAWHb48OzDIHnyfxPSJCNd9iw+Ke.lLqF91AAHDAFJit3ZRJDc7.9rV9AYWm63JbmlBPIAM8.D92mv4A5g6LqTafkUchqL0QZwneBleFlXMq.wLYDf9WVn7R62kp0iFxSOxnwxpDJEhhczBJKXr+VSJrxkUfob3A.yPOnL8HlzfKZNbwgEv2jJXzidfaTlBHcM3dQhFqYDvNV6H1jIDLSypL0vo7sPwp1C6zHvJPrKCCXGNowjR6JHh0FSuxQtsbBoGH4C.rALNmtDJkw4.Uzw06xJZBXNB97rNcJ2LSRDTWIcGczMOEZGGeznijGtRagVyLgMvALVtJtjfxS3..oJrbQRipFCYpLltfv3EdPrQZ4XwDPubhCoBwEFdri7Ys5tHGWHYn.qii.Zeto+jjrRHC8xSmiiO3YEl3kVQGtRMbyObSx7twOxTMEh73DymvXPa1TC8xPMiA9oECHNY.vgGAg7M0tEST5k.XB5PnLA2RslSg.PyDYL4FlY6NEiTp1fPsAJYGst.e1xfi.98aK2n8Ekabg.UzAqPFOLfGYJd1DtSn3v7I8heh5RovAU.9SGp2Rftcs+lLybXJBZ6ErBxHSWcCzCgwhPOqOscSSnKfPOPECDlkw.4ALWC1YfOeN12y0LhVd.WpQxM0rPkVU5zeGo+a3nGSF.azvNNFVbQzGTYnBdrMcDGBCaYEHrP3a6MOdJOKvvOhmhg07NgqIEyQHJzDc+9Pw.d6y.CFxrmolsJP2A5rEhpTfZbyXg0BWrv0HolQsSyf2.zQLDI9dwMIAMnxh9f4edsbytEQRirh.dFN5F34PSSFjJ9Wigwh7gFgHWo21YSLdj045fzYQEUaNKoYpLGGqA+7FjtP68oiuPy1vjDF5MfIOkTTCQT43LoR9leMRt7qNwR4ynB7sP66jWoyxEAeuz6RebAiggrSb15BiBuEi3HRW9LeVdSHB+mZ9f2Gpn94rNGaNCxKT13Hm814.7idFYh.RKFvczrs0YuiM3LqR+D19OqjG.hmTbsjQihpjzpN6MDDOpM3LlVHYEm+IbfZwhNDzCF4ndtUmBcopUhoIABQ5rqhkVzqmwKXOmyegIp6XiPUFsypEa2c7FHOzfEIFmsvfeuLbbRPRSC5K5YgMOsfeET93hIc9rVDCYqqRfC.YYF7myccTeyDj3HVXOKMMvryEzPzodIrNWaOhYkIPgZE9FqbV.TgqqPeaynseLocm40W9cYbIf41ox6mkaSSXjVICUOQpA0yc3K8tvFsPT0HyCswY+7Nwq.0rFPne1XRRuKUIlTzo0Cy95rWGRGhdkUN8mue1GO.QLdQoEums3J51AXlohJv1Gmkx0RHhCLXQbpaVJaLKzSznEbOOlmCh6gke3kPXztFExXd9kuI43gJfdzVm+sAjOLge1C0e9bmjzwiBzfDR0S5rU9JXi.DvvCc9HDCoyuom7IQhFAfa41F6kLziUvOEShync1yQPfP3AGDJP0UN61TbCgklZBilm89wHAD+KC8kbVr1DSiB58WiwoKyrqe1Ozxlu9yhTKAUpe1EG.qObSsBYHSxim2RchJTEg8k1QycALpfP4gYl1fxzu2oRSEFpavlZmK1onmlfm.XtZ33ty16XhCBnnyP8qC8Dhy4MXxbyJapob.Xzy5SlgqZA0XvnJrN+iHMWDbjlkG77liJIBEEVuAuimcdYi44aEXAkGyy2NineuPQI4f3qym8rLX5oDLJeP.E4ytuQgzLh.xJq5Y6DVTCgDn5g5khZSc16GLuKtsoK2iy4A6NdRGzSB6CTYRyO6J3DP1qrMKniRm89AmZhZlAcY1Wm6Cr7PzCAFF4SEJW+7VafrUA7prvbVRXIZILyykxGPwntFmUdnAsZ.wnZnlIkyJK555zlZfwBBOz3r34j8pDoPFNP.s.47u5BLjxjFBk7b1I++DySC7NxbYkylIjVq0YSvVEgdTNqrRECnPHgwToaHC4448Qw.p1NI0DnjFme+eElaRAfCPS6k5Fudv47X7nbZxIO6FLjzTH1wfYhOR4y+9KjZGc.f7Rxm+8B0yIPBQGiMm8HZgkvP383s2YykLBwsBKvC00hPH+l6yq4ke0+4WdG+GdsK4su8y+zqd6+Mu0a+3qd5yu5se8+vu8kO51q+cWd6027Ttj+ve5y+3Kie2ubdRO8ydxSdmule2zatIMr292e00+lO91m+U9W4+3eLJwAEMSYaTQxeXrhum5zXG+tibjpJyhZ6pu2Q6diTdzSsNNfUJpR+w8nxVBqPPdx5nNhvx8WeWyHpMCkeECPBCG68ysNgj0.xQjuLlWmw79i4ilAN9OP2.WxJ981hLIiCD6SLb0G2aHjN5dYTzclYtYZcuciY7cYpfy.9TBv3d6NOwTGqwAVdl2eRrSOKmtSEXRnUSiw8H.BXBqPLHzBACHy81ctx7jJG1cFrUE9+80hLzvaAcUKzgs6sC0Aj2PgCmvAlLHi2aqD.BkL8zSgHCXhx2a2YXqWEI3Dny2XKx82YDFv8fp5GK8ne+cDYLfMalHSSAt.tuqeYT8UXWGpY.AHqPm95GGwad5q+O+W9lu4+5+0+u7Ve3O9m+A+he4O4m8K9e+sduewO5G+ydq+p6q+8lu4it4oO+1252c4ydqa+n25u5s9wO82b8Su5cezyt5xau5me0m8rKexO+pa+827re628s+PE7xMO6m7ja9828sd6+h+R8Dd6G8tO4lKe7K+ou2MO9pm7ceue1mv+6egthO5yd5iH7l25lm9yu41q9EO869W7l+Cu424M0my+vezG8Qek+re3MO81mcySdxUO6q7G+gW+Im4mb2u328oe1m7qu5Yui9f9jO6pu3Bu3Aeye7iu91ad1Gbq9397KdvC+A273O+C93a98O8hG7FOLcwu55me8u9IWc5K9fadxM7ecbgVzt8pmd6qbg27ze5Su91ewmd0ce8E+vO95m732+Y27nqdtVVd9E56b5W5BcA28To+KBL7hG7+zC+fG8rq+za+fmb8iu5YWb8iu3AeqG9Se5m9Y2dQ7.ewC9NeyKdw+9Z7K+se3u3yt8+W7a+ie5k7o9O329+5e8E+69o+nKu8R8Q3A28oQeB+zqd1sWyh2C9QW86t9QW8gw8867vezUO+2d6MeZ7w8S9zadJe1evel8C7e+K+C9e36+4u7Kt96+IW+3G+jqd+ad907x8k+j7+3yu8pO8Ct9+zKdV++7+x+k+u9q+jqekK4+v+3mb4e+qtN77O6i9nq024gO7sd7O3B1od5Q9QW+qu5IW7ou381OUOX+Y28r9V+j+8oK9zKe1kexU2d0c+j3Q9mc0uS+NW705S4W7l4kOMe+O6+A+i4e9cOye4OmeK+dnW4w4ouxmy+wm88+C9zDav9Z9D8l2c2+ke3EW7Emwzg4Sa89m8PYA5ydxk5b8O7iuTqO+zeDey+s5+7te.qq+fO+Su74O+Jc2dva7SYurVu+7W8Y4AeiW21vabdaCGuhsguhS9eMeD+m+v2+5aezG+U+L9M9JdF04v+awy3ab5Y7O+g+3O5it5Q29xGvu4C+I+6es0s6s+7O3Ae40n27tW+5uI+wescCu5Cwou8EO3+iG9RC+e5ytRaXt5Cu48exke9284W9Iep1rnmw24s90O4lG8aYa2W1awca99AbEe2G8wW9zmd0Sd9eLNU9S9Zupj1+R4Wdymc60O827dWd6yhSw+7O6S9fa9rm8nq9g28zou2C9FXU+zWevWy9hO3pm933K9+V+6teXhu9A28CSu3G9R2RWbmW830wc+25H9o09ezy+zW7s9UW8rmGFl9VOTAR8tGW727D4zGqBWe21V8RI9du+MO4y+zO9lmd8i3ac5Jdwi9eymbymgIjSO++ud4y+vKu9IrO+C9rmKunO9W7zOPW7SezUw9rG7yCSWeqexkORKre96e4seLmWvOr1bd0yd2G8EaResm0WtOgU3etrf7GbA7Z48egokme5UB+s9g50xm8rWrbpG8OIL38MdntD94rH8Fmdn9S3u5exC+M7.7ZOe+o546YW8twO3q5A4teGyetuwq73oe6u3qzu+6c8S+UmbQ+se32Kcv6h26x+969VOj2NW7AegQ1+kO7DbX3egRGk5Z22u8pe+om4Kdv+hG1d2ZP2xn8yUPk+Em9ngkyK9a9rau4SzF5GeW.Ne0OHm9q9xmhu8C4u4+zdP3Bn6xEcAvVnqwQJdR9Se3G7I2byserNRbwc2++jGl4tew+8eY4O6g+xqd9U2d519Z27Kdkfht3hWYSxe9Ce9Mezs+c+5XuvquW4e0qrW9Uunup8Mu9swsa8UeXzloSekbh7M3I5+4WthRLzu3yw2TqpewGiWbsJZmm+q3N8nKexKtPc38EmFdvq7A8a+vmFoN75eF+yen1+7wu6c+nupOYewum8Lwq9g5A+AOneqGFYf7hmw+EO7Kk3xqreI788pewq7w3aEGPS+S6T8K9k9++X8+e5i0m+02cmUdYlA+29G7W6dE4l8zqhfUd9Eu1WpscrsjPnuy4y6+pgUe2VhK9C+z75I.7+P9w4Em5bed9l744URe37awe3CS5qu6KHTmUe907g40MP+9udlKegMiK1ZD6LVa+iIA7+6RXjexkO5Y2728nSQFyGnuc7czYimFlE+NO783qeqzWtlDJg2q+6dzid8a0W5WL+G6uX4O1ew5er+hs+X+E6+w9KN9i8Wb5+EeO8024kfs4Wbw689+3XS3CdvoiQQVXW7+CvggePC
I'm still working out the details of the training scripts for my own models. It's mostly working, but seems to stop training before my desired threshold of tolerance is reached.
I'll post more when the script is working. -
RE: 3D Knobs
It took me over 2 years to learn in my free time, but I can complete a full design in a few days now.
Maybe I could make a tutorial on some basics.