add Dimension trait