feature: added regimes
split merge into 2 functions