attempting to decrease complexity