refactored reactive-transport