no more joining public projects - bad performance
removes duplicate code
rewrites scope with lambda