updated features (still needs fixes) and proof