https://www.technotification.com/2018/08/dynamic-arrays-python-programming.html