*: reorganize and implement macro segment-eval