Reworked based on the feedback from PR: https://github.com/BenriJS/Draw/pull/2