Refactor & take serverExtend event logic out to generateAfter event