refactored related work