layout ported