updated uifactory