Source: http://www.cs.utah.edu/~widanaga/papers/Widanagamaachchi.2008.Reconstruct.pdf