class AbsoluteLayout implements LayoutManager {
    @Override
    public TerminalSize getPreferredSize(List<Component> components) {<FILL_FUNCTION_BODY>}

    @Override
    public void doLayout(TerminalSize area, List<Component> components) {
        //Do nothing
    }

    @Override
    public boolean hasChanged() {
        return false;
    }
}

        TerminalSize size = TerminalSize.ZERO;
        for(Component component: components) {
            size = size.max(
                    new TerminalSize(
                            component.getPosition().getColumn() + component.getSize().getColumns(),
                            component.getPosition().getRow() + component.getSize().getRows()));
                    
        }
        return size;
    
<no_super_class>