There's a few minor flaws, I'll try to upload a fixed version later, but right now the computer hates me.