extracted the top three logic to another method so evaluate could start to be seen a agregation of evaluations.