new design and fixes