separate out tick gen & dimension gen functions