fixed a design flaw