https://shikhalev.github.io/1996/08/cell.html