plan functionality 2nd commit
Revert "plan functionality 2nd commit"

This reverts commit 42e658a273c12b6dd707ce4f964fe56e87289e79.
Revert "introduce plan functionality (huge)\"

This reverts commit 682356fff33d63a221b6fa6c99456392524f6dce.