introduced ChartLayout class