Split algorithms to multiple modules