https://medium.com/@theclickreader/numpy-array-indexing-and-slicing-numpy-for-scientific-computing-with-python-8ff5e0faf98e