New style and small refactoting