changed structure to be more independent from dom-layout