[HN Gopher] Bespoke Synth 1.0 - open-source software modular syn...
___________________________________________________________________
Bespoke Synth 1.0 - open-source software modular synthesizer
Author : paulshen
Score : 232 points
Date : 2021-09-14 19:21 UTC (3 hours ago)
(HTM) web link (www.bespokesynth.com)
(TXT) w3m dump (www.bespokesynth.com)
| Jenz wrote:
| Haha this is the most amazing feature matrix I've ever seen.
|
| On a more serious note, modular music is an extremely interesting
| and growing area and just about every module is surprisingly
| expensive; I'm curious to how well this translates to virtual
| racks.
| 41209 wrote:
| Agreed.
|
| That alone makes me want to donate.
|
| Can it work as a VST plugin ?
| yellowapple wrote:
| If there's a plugin version of this I can see it giving
| ZynAddSubFx a run for its money in my workflow.
| 41209 wrote:
| It's GPL so you can always create your own.
|
| I wouldn't mind feature bounties for a project like this.
| armchairhacker wrote:
| I've never heard about modular music, but I know must VSTs are
| extremely expensive. And they're expensive to even seriously
| try.
|
| I want to get into music production but a barrier is that
| Omnisphere and FL Studio are $500 and have a super-limited
| trial version. As a grad student I'm not going to spend $500
| for a piece of software I _might_ be interested in using.
|
| I would much rather have it be like software development where
| almost everything is free. And instead of paying upfront,
| synths / effects can make money by taking a cut of your revenue
| (I don't think that's like software development but it means
| synth producers still make revenue).
| strenholme wrote:
| I used to have a synth buying guide. For people just starting
| out I would go for:
|
| * Get Reaper. It's a mainstream DAW, is fully functional, a
| free download, and only $60 to register after 90 days.
|
| * Valhalla Supermassive for reverb:
| https://valhalladsp.com/shop/reverb/valhalla-supermassive/
|
| * The VST fork of VCVrack for a modular synth:
| https://github.com/bsp2/VeeSeeVSTRack#downloads
|
| I would get a keyboard controller with full sized keys and a
| 5-pin DIN MIDI out for just over $200, but that can come
| later.
|
| One thing to avoid is the rabbit hole of concentrating on
| what gear to buy over actually making music with the gear.
| jasondoty wrote:
| If you're not going to make money off it, my opinion is you
| can use cracked VSTs without any concerns of "is it right".
|
| In fact, as with a lot of pirated soft/media the experience
| is superior. Licensing and DRM of music software is a
| headache - dongles, software centers and other bloat. Scene
| groups like R2R even optimize performance and patch out bugs
| in addition to cracking protections, making their releases
| superior than that of the original developers.
|
| Otherwise have a look at Splice rent-to-own plugin licensing.
| munificent wrote:
| Take a look at Reaper, VCV Rack, Surge, Tyrell, Zebralette,
| Dexed, and Helm.
| yummypaint wrote:
| Second for vcv rack. Waveform free has been working well as
| a DAW for me recently, and it has a linux version.
| quantified wrote:
| Pricing plan you can understand!
| 112233 wrote:
| Is there a modular audio environment like vcv/reaktor/max, where
| I could plug stuff together by typing text, instrad of mousing
| pips? I honestly tried to get into pd, but it felt like typing
| book using the character map.
| adriancooney wrote:
| I actually made something slightly like what you're looking
| for: https://noise.sh
|
| It's certainly not as powerful nor polished as Bespoke but
| might be worth a look.
| pierrec wrote:
| Yes, most audio programming languages allow you to create DSP
| graphs by connecting nodes together. This is often done with
| some kind of pipe operator (for example, ChucK has the "chuck
| operator", Faust has a bunch of operators for connecting
| batches of nodes in different ways).
|
| My favorite approach is in Sporth: because it's concatenative,
| you don't need any operator, you just type the things you want
| to connect. Shameless plug, I made a playground for it:
| https://audiomasher.org/browse
| kleer001 wrote:
| Second vocal vote for that. It'd make it a more powerful tool
| and be less of a pain at the same time.
|
| Or at the very least some kind of remedial hot key navigation
| would be great too.
| premek wrote:
| sonic pi is not exactly like modular but easier than pd
| lgas wrote:
| If you like Haskell you might like Tidal Cycles[1] and if you
| like Clojure you might like Overtone[2].
|
| [1] https://tidalcycles.org/
|
| [2] https://overtone.github.io/
| premek wrote:
| there's also ChucK
|
| https://chuck.cs.princeton.edu/doc/language/
| yata69420 wrote:
| There's quite a few actually. The term is "live coding".
|
| Supercollider sounds like what you're after. You can even use
| vim :)
|
| https://github.com/pjagielski/awesome-live-coding-music here's
| a list of related stuff
| dewert wrote:
| Saw a good talk at PyCon a couple of years ago about FoxDot,
| which is a wrapper around SuperCollider. Bit foggy on the
| details now, but it seemed like a good place to start.
| PaulDavisThe1st wrote:
| Here's a list/overview of all things "live coding":
| https://github.com/toplap/awesome-livecoding
| kennywinker wrote:
| This looks very interesting, checking it out now (download links
| were broken, but I found releases on github). For people new to
| this type of software, definitely also check out VCV Rack for a
| more skeuomorphic take on open source software modular.
| [deleted]
| pier25 wrote:
| > _In a way, Bespoke is like if I smashed Ableton to bits with a
| baseball bat, and asked you to put it back together._
|
| LOL
| rcarmo wrote:
| This seems awesome. I've been playing with Bitwig's Grid and VCV
| Rack, and it looks like something else to explore.
| ruph123 wrote:
| Another instance where "Linux == Ubuntu". At least regarding the
| dependency install script which is just a bunch of "apt-get"s.
| Sad that it has come to this.
| codetrotter wrote:
| Tbh I don't blame them all that much. Even as someone who is
| enthusiastic about Linux and has been a Linux user for many
| years I find it difficult to support other distros than the one
| I actually use. And lately I've been booting my main Linux box
| more and more rarely too, as my MBP M1 with macOS is suitable
| for almost everything of what I do.
|
| So for example when I recently went to describe in a README how
| to install some software that I'm workin on, I relied mostly on
| my memory and secondary sources in order to try and give a
| pointer to users on various distros for how to install the
| dependencies in question. And for example from what I could
| find for openSUSE Leap 15.3, both of the pieces of software
| are/were not in the official package repos at the time so I
| simply stated that, linking to the relevant pages under
| software.opensuse.org that told me this, but not having run
| openSUSE myself for years I am not sure the reason for it or
| indeed if it's even completely correct.
|
| I guess there'd be room for some CI service where instead of a
| specific Docker image like many use you'd instead list the
| dependencies in a kind of meta format and the service would
| install the corresponding packages and run the tests across
| many distros. Then the service could generate scripts or readme
| instructions for each distro.
|
| At the moment I think realistically in most cases it will need
| to be that people who run various distros take it upon
| themselves to sort it out and to submit pull requests to
| projects about how to install and use on any given distro.
|
| My own preferred Linux distro for desktop is Debian-based too.
| KDE Neon.
|
| But so, I think it may be worth it that you try and submit a PR
| to the OP for adding instructions or an install script adapted
| to your own distro of choice.
|
| Although ultimately, if the software grows big enough
| eventually someone will add it to the package repositories of
| each distro and then there will be no need for manually or
| scriptually installing the deps, because the deps will be
| specified in the package repos. And for example if you use Arch
| I guess someone is bound to add it to AUR if it's there
| already.
| whateveracct wrote:
| oh don't worry - someone will Nixify it at some point. Maybe
| even me!
| runjake wrote:
| Yeah, it's a bummer.
|
| But at least its a short install list [1] and its probably not
| too difficult to install the deps on your distro of choice and
| fire it up.
|
| 1. Deps: g++ libfreetype6-dev
| libx11-dev libxinerama-dev libxrandr-dev
| libxcursor-dev mesa-common-dev libasound2-dev
| freeglut3-dev libxcomposite-dev libcurl4
| libusb-1.0-0-dev libgtk-3-dev python3-dev
| libcurl4-openssl-dev libwebkit2gtk-4.0-dev libjack-
| dev
| tomxor wrote:
| I'm running Debian 11 and it still doesn't run.
|
| Thought I'd try build it and...
|
| > Use the "Projucer" from https://juce.com/ to generate
| solutions/project files/makefiles for building on your
| platform. [0]
|
| eh?
|
| https://juce.com/get-juce
|
| Is this really a FOSS project?
|
| [0] https://github.com/awwbees/BespokeSynth
| ejarzo wrote:
| Really well thought out interface, looks super easy to quickly
| make a bunch of edits -- The SHIFT+Touch to connect modules is
| nice and I love that you can always just export the last 30
| minutes. Looks like a ton of work went into the documentation as
| well -- can't wait to dive in!
| MrScruff wrote:
| So this is of course very cool, but I would say that one of the
| main appeals of a hardware modular is the tactile nature of it.
| It feels very different to experiment with vs plugging virtual
| cables in software.
| Lucasoato wrote:
| I'm a software developer right now but I've worked with DAWs as a
| producer for more than 5 years. You can't even imagine how
| frustrating is working with Digital Audio Workstation. One messy
| plug-in and you can lose hours and hours of work. Preset
| management is a nightmare, there are so many things that they
| could do to go forward, but the Sequencer market is stall and
| hasn't moved in years.
|
| Imagine if they applied something similar to a git versioning
| system to music projects.... I don't even know if the VST
| interface can be used or if it's licensed somehow from Steinberg.
|
| Also consider that there are no good audio drivers for Linux
| (like Asio for example) so you're almost forced to stay in
| windows or Mac...
|
| No plug-in or DAW has a CLI... I could go on for hours...
|
| I'm doing some digital audio processing for a startup idea and
| the only thing I've came up with is using sox trough a Python
| API.
| Minor49er wrote:
| > No plug-in or DAW has a CLI
|
| You might be interested in MrsWatson. Even though the
| development on it has been discontinued, there is still a lot
| of potential for its use:
|
| http://teragonaudio.com/MrsWatson
| PaulDavisThe1st wrote:
| > Also consider that there are no good audio drivers for Linux
| (like Asio for example) so you're almost forced to stay in
| windows or Mac...
|
| This is false.
|
| > Imagine if they applied something similar to a git versioning
| system to music projects.
|
| People have done this. Using git itself is a little problematic
| because it is very line-oriented and most project file formats
| for DAWs are not.
|
| Regarding plugins, I know that I'm not the only lead developer
| of a DAW who, if they possibly could, would refuse to support
| plugins entirely. The problem is that most users want more
| functionality than a DAW itself could feasibly provide (they
| also sometimes like to use the same functionality (plugin) in
| different DAWs or different workflows).
|
| There are things close to DAW functionality that have a CLI
| (such as ecasound). You can also run plugins from the command
| line by using standalone plugin hosts. You can use oscsend(1)
| to control plugins inside several different plugin hosts.
|
| It sounds to me as if you've worked with a relatively small
| number of DAWs on only Windows and macOS and are not really
| aware of the breadth or depth of the "field".
| dewert wrote:
| > > Also consider that there are no good audio drivers for
| Linux (like Asio for example) so you're almost forced to stay
| in windows or Mac...
|
| > This is false.
|
| This was my immediate thought as well. Not sure what level
| we're talking here, so sorry if I'm addressing the wrong part
| of the stack, but JACK on Linux has been a great experience
| for me in terms of latency and ease of use. I run into way
| more day-to-day problems on Windows.
|
| What feature specifically are you missing on Linux?
|
| Re: plugins, DAWs with VST sandboxing are great. I use
| Bitwig, and I've never lost work due to a plugin crash.
| stevefolta wrote:
| > Using git itself is a little problematic because it is very
| line-oriented and most project file formats for DAWs are not.
|
| Ardour and Reaper use plaintext project formats that work
| well with Git, at least for basic versioning.
|
| > Regarding plugins, I know that I'm not the only lead
| developer of a DAW who, if they possibly could, would refuse
| to support plugins entirely. The problem is that most users
| want more functionality than a DAW itself could feasibly
| provide (they also sometimes like to use the same
| functionality (plugin) in different DAWs or different
| workflows).
|
| I think the answer to this would be something like Reaper's
| "JS" plugins, which are written in a small compiled language
| and distributed as source code. Compared to "JS", it would
| need to: 1) be open source; 2) be a better language; and 3)
| support pretty skeuomorphic graphics ('cause people seem to
| really want that in their plugins). Ardour seems to be
| working on something like this using Lua (don't know about
| the graphics, or if the plugins could be supported in other
| DAWs).
| wwweston wrote:
| > This is false.
|
| Suffice it to say that it's non-obvious to me where to start
| to go about getting a stable and mobile (ie laptop)
| experience. I'd like nothing better than to receive a
| response that makes me feel sheepish for thinking that Linux
| is the problem, and if anyone can give out good pointers I'd
| imagine you can.
| PaulDavisThe1st wrote:
| Well, first of all let's start with noting that hardware
| can prevent you from ever getting a stable response. Some
| explanatory background on that here:
|
| https://manual.ardour.org/setting-up-your-system/the-
| right-c...
|
| On Linux you do not (as a rule) install device drivers for
| your devices. They come with the system or they (generally)
| don't exist. I know of only one audio interface
| manufacturer who ever maintained their own drivers outside
| of the kernel tree (i.e. not part of mainstream Linux) and
| even they have had their drivers integrated now.
|
| Next, since you're on a laptop, you're relieved of the
| unenviable task of figuring out whether to use a PCI(.) bus
| device or a USB interface. USB is your only option. The
| good news here is that any USB audio interface that works
| with an iPad also works on Linux. Why? Because iPad doesn't
| allow driver installs, and so manufacturers have been
| forced to make sure their devices work with a generic USB
| audio class device driver, just like they need to do on
| Linux. With very few exceptions, you can more or less buy
| any contemporary USB audio interface these days, just plug
| it into your Linux laptop (or desktop or whatever), and it
| will work.
|
| What can be an issue is a lack of ability to configure the
| internals of the device. Some manufacturers e.g. MOTU have
| taken the delightful step of doing this by putting an http
| server on the device, and thus allowing you to configure it
| from any browser on anything at all. Others have used just
| generic USB audio class features, allowing it to be
| controlled from the basic Linux utilities for this sort of
| thing. And still more continue to only provide
| Windows/macOS-native configuration utilities. For some
| devices, dedicated Linux equivalents exist. Best place to
| check on that would be to start at linuxmusicians.com and
| use their forums.
|
| Beyond the hardware, it's hard to give more advice because
| it depends on the experience/workflow you want to use. If
| you're looking for something Ableton Live-like, Bitwig is
| likely your best option. If you want a more traditional
| linear timeline-y DAW ala ProTools, Logic etc., then
| Reaper, Ardour or Mixbus would probably be good choices. If
| you want to do software modular, VCV Rack is head and
| shoulders above anything else (and runs on other platforms
| too).
|
| There's a very large suite of LV2 plugins on Linux. Stay
| away from CALF even though they look pretty. The others
| range from functional to excellent. Your rating will depend
| on your workflow and aesthetics. You will not find libre
| plugins that do what deeply-DSP-oriented proprietary
| plugins do (e.g. Izotope, Melodyne), though you may be
| satisfied with things in the same ballpark (e.g. Noise
| Repellent and AutoTalent).
|
| There's a growing body of VST3 plugins for Linux. If you're
| looking for amazing (non-libre) synths, U-he has all (?)
| their products available in a perpetual beta for Linux.
| Great stuff. There are plenty of libre synths too. There's
| an LV2 version of Vital called Vitalium which is more
| stable than the VST3 version; this synth has had rave
| reviews from many different reviewers.
|
| Sample libraries are a problem because most of them are
| created for Kontakt. You have a choice of running Kontakt
| inside a Windows VST adapter (e.g. yabridge) or using other
| formats such as SFZ or DecentSampler, both of which have
| both free and libre players. pianobook.co.uk has hundreds
| of somewhat interesting sample libraries, many (but
| definitely not even most) of them available in DS format.
|
| Hope this helps.
| rudenoise wrote:
| Things to check:
|
| For audio on linux: https://pipewire.org/
|
| For a more code oriented audio workflow (python lib to load VST
| and AU) https://github.com/spotify/pedalboard
| PaulDavisThe1st wrote:
| Pipewire is a layer above most of the really important stuff.
|
| Pedalboard is also _not_ a realtime audio environment (as was
| clarified by one of its developers here on the HN thread last
| week). In that sense it is extremely different from Bespoke
| (and nearly everything else).
| xbpx wrote:
| Since you're a software dev you may have explored supercollider
| and other environments where you can employ great tools. I've
| been looking for a hybrid UI/UX + Audio programming environment
| that would combine the freedom of code with the visual cues of
| a DAW but haven't found the ideal fit. So far I've been rolling
| my own with cl-collider, a common lisp client for Supercollider
| which uses some lisp tricks (macros) to good effect.
| WillEngler wrote:
| Can anyone in the know compare and contrast bespoke's feature set
| with Max for Live? (https://www.ableton.com/en/live/max-for-
| live/) It also has a circuit diagram-ish UI and supports
| scripting with Node. Put another way, does Ableton already offer
| Ableton smashed to bits with a baseball bat?
|
| (fwiw, you have to pay for the $1k suite version of Ableton to
| get Max, so Bespoke could still be a great alternative even if
| they do a lot of the same things)
| andrewmg wrote:
| Standalone Max is available for $10 / month.[0] And the similar
| Pure Data is open source.[1]
|
| [0] https://cycling74.com/shop
|
| [1] https://puredata.info
| zwegner wrote:
| I only found out about Bespoke a few minutes ago, but I will
| say using Max as a programmer can be incredibly frustrating.
| I've made a handful of nontrivial M4L devices and have run up
| into tons of weird decisions, limitations, bugs, and plenty of
| Ableton crashes. (Caveat: this information in this post is
| mostly from a couple years ago and might be out of date, I
| haven't gotten the latest Ableton)
|
| The JS support is really weird. It's only JS 1.6 (from 2005),
| and had weird glitches (like loading two instances of the same
| device causing the first device to stop working), and I
| couldn't get the timing tighter than about 30ms. Ideally you
| could write code that runs at audio rate.
|
| There's also "gen", which is a Max-specific scripting language
| that is presumably real-time suitable through a JIT.
| Unfortunately you need a separate Max license to use it, even
| the full Ableton Live Suite doesn't give you gen support. You
| can sorta hack around and use it by manually editing the
| .maxpat files (which are almost JSON), copying from a device
| that uses gen, but there are lots of weird glitches going this
| route.
|
| A list of a few annoying things about M4L:
|
| * Documentation is pretty sparse and/or low quality, and
| weirdly split into two (help and references).
|
| * All variables are global _across devices_ by default, local
| (device-specific) variables need the prefix "---", which is
| barely documented
|
| * Tons of annoying UX issues, like entering an invalid value in
| the inspector just reverts to the old value. You can't enter an
| empty string for parameter values, that reverts too (you need
| to enter a literal ""). Certain functionality is only available
| depending on whether the device is "locked", so you have to
| lock/unlock the view all the time if you're working with e.g.
| subpatchers
|
| * Abstraction is quite annoying to do. There's three different
| types of patches, and it's not really clear what the difference
| is between them. Creating subpatches and then duplicating them
| creates _two different_ subpatches--changes in one are not
| shared with others.
|
| * ...and a ton of other things. I have a big text document of
| these gripes I was intending to turn into a blog post, but
| haven't gotten around to it.
|
| Maybe I'm wrong and there's better ways to do some of these
| things, but overall my experience learning M4L was pretty bad.
| If it wasn't the only way to do certain advanced things in
| Ableton, I'd never touch it again.
| _eLRIC wrote:
| Discovered a few days ago another nice music studio of the same
| kind that I really liked : Sunvox
| https://warmplace.ru/soft/sunvox/
|
| I'll have to try Bespoke as well ...
| tlhunter wrote:
| Bespoke has some definite SunVox UI vibes going on.
| ericfrederich wrote:
| Never seen this warning from Windows before. Happened when I
| tried to download this .msi
|
| Windows protected your PC Microsoft Defender SmartScreen
| prevented an unrecognized app from starting. Running this app
| might put your PC at risk.
|
| App: Bespoke-Windows.msi Publisher: Unknown publisher
| serverholic wrote:
| One thing I'd love to see in a DAW someday is houdini-like
| functionality. It'd be cool if there was this node-based
| environment that went a step further than just generating sound
| and could generate midi clips, automation clips, etc. and have it
| integrated into the DAW. Like you could see what was generated in
| the arrangement view.
| jcelerier wrote:
| The sequencer I'm working on, https://ossia.io, has a plug-in
| API which allows that. But no interesting "meta-creation" plug-
| ins so far for it ^^' at some point I'd like to provide
| primitive composition-like tools like some of the OpenMusic
| objects for instance, and there has been work towards e.g.
| segmenting a sound file with audio improvisation algorithms by
| an intern.
| gavinray wrote:
| You can do this with scripts or native extensions in REAPER
| https://www.reaper.fm/sdk/reascript/reascript.php
| https://www.reaper.fm/sdk/plugin/plugin.php
| mejutoco wrote:
| Sounds a lot like Bitwig's grid.
|
| https://www.bitwig.com/learnings/getting-around-in-the-grid-...
| gtvwill wrote:
| Linked it to a mate...he had a wee geez :)
| https://www.youtube.com/watch?v=GFcGtq_dM8k
| [deleted]
| squarefoot wrote:
| Very interesting. A possible improvement could be some "knob
| linkable objects" (can't imagine the correct name) that could be
| tied to analog inputs (GPIOs, ADC connected to i2c or USB, etc).
| The purpose would be to be able to modify certain parameters live
| on the fly, should anyone want to create a physical synth out of
| this software and a *PI like small SBC.
|
| Also, I like a lot the way it links inputs and outputs just by
| dragging the mouse. Does anyone know if there is any general
| purpose library to do that? I mean, Ideally I create some list
| nodes, then use that library to link them in a certain order by
| using the mouse.
| capableweb wrote:
| > Very interesting. A possible improvement could be some "knob
| linkable objects" (can't imagine the correct name) that could
| be tied to analog inputs (GPIOs, ADC connected to i2c or USB,
| etc). The purpose would be to be able to modify certain
| parameters live on the fly, should anyone want to create a
| physical synth out of this software and a *PI like small SBC.
|
| This is usually called "MIDI mapping" or similar and is
| available in basically every DAW these days.
|
| > Also, I like a lot the way it links inputs and outputs just
| by dragging the mouse. Does anyone know if there is any general
| purpose library to do that? I mean, Ideally I create some list
| nodes, then use that library to link them in a certain order by
| using the mouse.
|
| Something like qjackctl (with Jack, obviously) could do this
| for you, as you can route things however you want in a drag-
| and-drop UI.
| marcodiego wrote:
| Love the feature matrix.
| PaulDavisThe1st wrote:
| "Five dollars less in your pocket". Brilliant!
| diskzero wrote:
| I like it, I bought it! Lot's of nice features and a tweaky graph
| UI. Added bonus for implementing the "kissing nodes" connection
| idiom.
|
| I would love see more prefabs, especially ones designed to
| emulate some classics synths.
|
| It also might be time to add undo. Everyone (especially me) likes
| to save it for last.
|
| Keep up the good work!
| detay wrote:
| Genius work. There are real UX gems here, very intuitive.
| smt923 wrote:
| damn, I've been looking for something similar to Max/PPOOLL but
| more accessible (especially on windows/linux) after reading about
| Tim Hecker using it and this seems like it could get to that
| point
| PaulDavisThe1st wrote:
| > I've been looking for something similar to Max/PPOOLL
|
| That would probably be PureData.
| operatorius wrote:
| > reading about Tim Hecker using it
|
| hey could you please share the link where you've read that.
| Thanks!
| Minor49er wrote:
| You can see it being used here at :22. The original title of
| this video is "Rewire - Studio Visit: Tim Hecker"
|
| https://scontent-
| frt3-1.xx.fbcdn.net/v/t66.36240-6/10000000_...
| fivre wrote:
| damn, the audio wave visualization on the wires in the thing
| that's like the Bitwig grid editor is just BRILLIANT.
|
| probably would be a bit much in a complex finished instrument but
| that's amazingly intuitive for the building phase, or for reading
| someone else's instrument.
|
| i wish there a way to translate old Reaktor library stuff into
| more modern synth GUIs. there's some amazing gold in there but it
| is nigh impossible to understand between Reaktor's uh...
| challenging UI and the total lack of documentation for the signal
| paths to try and explain them to a relative novice. you can very
| easily see _what's_ built, but god help you try to understand why
| on your own without adding a ton of scopes everywhere manually
| thenberlin wrote:
| This is incredibly cool. Looking forward to loading it up.
|
| Reminds me a bit of Reaktor's builder environment, but based on
| that demo video, it seems like a more useable, better thought out
| version (and you can't beat that price / feature matrix).
___________________________________________________________________
(page generated 2021-09-14 23:00 UTC)