https://idontstink.com/2010/06/3d-solution/
3D Solution