Finished the first prototype, requires testing