semi-substate marked-react