Disclaimer: Although this has been tested extensively, assume that it’s not free from defects/bugs etc.  No assumption of warranty should be taken, and you accept any / all risks that come with building your own version and any outcome that may arise from that.   Per the licensing agreements you must retain credits and related info at the top including reference to this blog.