Copied some old comments to this class that may help implementing it