Revert "Removed useless stuff we don't need"

This reverts commit 8febf2d8cff2f6815f1a84e69c5f8ad141d8e81f.
Revert "Removed old methods"

This reverts commit 83d5484a22cab906ea440988061a4d633dbba35b.
Updated