still on design and modified func