refactored
removed old version