Much more complicated than it had to be. Instructions and code are on github.
The author marked this model as their own original creation.