Credits: ThinMatrix
You are free to copy & modify this project but please don't forget to give credits to ThinMatrix as this code as of now takes most from his work. You may also visit his youtube channel here (https://www.youtube.com/channel/UCUkRj4qoT1bsWpE_C8lZYoQ).