restruction + ai routing