Credit to ScratchU8 for the project base. Comments are off because I had to report 2 of them already.