Feel free to use this solution to showcase my full solution instead, if the original solution is too laggy.