Refactoring some, adding back in hostile