Finally Works

This is a complete version can be used for large scale exp