fix design and functional