refactor i3