Basic research logic + some bug fixes