add dimensions internal functions