Functionality update. Not complete