Failover and 3 ISP

Good afternoon. There are 2 providers. Tuned balancing channels, everything works. But they fall (not at the same time) decided to do the filo. With one provider mostly and the second as a backup, there are no problems, but with the two main ones, I can not understand the logic.

192.168.0.0 - ISP1
192.168.1.0 - ISP2
192.168.2.0 - ISP3
10.0.0.0 - LAN
00.01_pppoe-ISP - ISP1 interface
00.02_pppoe-ISP - ISP2 interface

Load balancing

/ip firewall mangle add action=mark-connection chain=input in-interface=00.01_pppoe-ISP new-connection-mark=cin_ISP1
/ip firewall mangle add action=mark-connection chain=input in-interface=00.02_pppoe-ISP new-connection-mark=cin_ISP2
/ip firewall mangle add action=mark-routing chain=output connection-mark=cin_ISP1 new-routing-mark=rout_ISP1 passthrough=no
/ip firewall mangle add action=mark-routing chain=output connection-mark=cin_ISP2 new-routing-mark=rout_ISP2 passthrough=no
/ip route add distance=1 gateway=192.168.0.0 routing-mark=rout_ISP1 check-gateway=ping
/ip route add distance=1 gateway=192.168.1.0 routing-mark=rout_ISP2 check-gateway=ping
/ip firewall mangle add src-address=10.0.0.0/24 action=mark-routing chain=prerouting new-routing-mark=lan_out_ISP1 nth=2,1
/ip firewall mangle add src-address=10.0.0.0/24 action=mark-routing chain=prerouting new-routing-mark=lan_out_ISP2 nth=2,2
/ip route add distance=1 gateway=192.168.0.0 routing-mark=lan_out_ISP1 check-gateway=ping
/ip route add distance=1 gateway=192.168.1.0 routing-mark=lan_out_ISP2 check-gateway=ping
/ip route add distance=2 gateway=192.168.0.0 routing-mark=lan_out_ISP1 
/ip route add distance=2 gateway=192.168.1.0 routing-mark=lan_out_ISP2 

Failover

/ip firewall mangle
add action=mark-connection chain=input in-interface=00.01_pppoe-ISP \
    new-connection-mark=Input/ISP1
add action=mark-routing chain=output connection-mark=Input/ISP1 \
    new-routing-mark=ISP1 passthrough=no
add action=mark-connection chain=input in-interface=00.02_pppoe-ISP \
    new-connection-mark=Input/ISP2
add action=mark-routing chain=output connection-mark=Input/ISP2 \
    new-routing-mark=ISP2 passthrough=no
add action=mark-connection chain=input in-interface=09.02_pppoe-ISP \
    new-connection-mark=Input/ISP3
add action=mark-routing chain=output connection-mark=Input/ISP3 \
    new-routing-mark=ISP3 passthrough=no
/ip route rule
add action=lookup-only-in-table routing-mark=ISP1 table=ISP1
add action=lookup-only-in-table routing-mark=ISP2 table=ISP2
add action=lookup-only-in-table routing-mark=ISP2 table=ISP3
/ip route
add distance=1 gateway=192.168.0.0 routing-mark=ISP1
add distance=1 gateway=192.168.1.0 routing-mark=ISP2
add distance=1 gateway=192.168.3.0 routing-mark=ISP3
add distance=1 dst-address=8.8.4.4/32 gateway=1192.168.1.0 scope=10
add distance=1 dst-address=8.8.8.8/32 gateway=192.168.0.0 scope=10
add distance=1 dst-address=8.8.8.8/32 gateway=192.168.2.0 scope=10
add check-gateway=ping distance=1 gateway=8.8.8.8 target-scope=30
add check-gateway=ping distance=2 gateway=8.8.4.4 target-scope=30
add check-gateway=ping distance=3 gateway=8.8.4.4 target-scope=30
/ip firewall address-list
add list="BOGONS" address=0.0.0.0/8
add list="BOGONS" address=10.0.0.0/8
add list="BOGONS" address=100.64.0.0/10
add list="BOGONS" address=127.0.0.0/8
add list="BOGONS" address=169.254.0.0/16
add list="BOGONS" address=172.16.0.0/12
add list="BOGONS" address=192.0.0.0/24
add list="BOGONS" address=192.0.2.0/24
add list="BOGONS" address=192.168.0.0/16
add list="BOGONS" address=198.18.0.0/15
add list="BOGONS" address=203.0.113.0/24
add list="BOGONS" address=198.51.100.0/24 
add list="BOGONS" address=224.0.0.0/3
/ip firewall mangle
add action=mark-routing chain=output dst-address-list=!BOGONS \
    new-routing-mark=ISP1 src-address=10.0.0.1
add action=mark-routing chain=output dst-address-list=!BOGONS \
    new-routing-mark=ISP2 src-address=10.0.1.1
add action=mark-routing chain=output dst-address-list=!BOGONS \
    new-routing-mark=ISP3 src-address=10.0.2.1
    /ip firewall mangle
add action=mark-connection chain=prerouting in-interface=00.01_pppoe-ISP \
    new-connection-mark=Forward/ISP1
add action=mark-routing chain=prerouting connection-mark=Forward/ISP1 \
    in-interface=!00.01_ppoe-ISP new-routing-mark=ISP1 passthrough=no
add action=mark-connection chain=prerouting in-interface=00.02_pppoe-ISP \
    new-connection-mark=Forward/ISP2
add action=mark-routing chain=prerouting connection-mark=Forward/ISP2 \
    in-interface=!00.02_ppoe-ISP new-routing-mark=ISP2 passthrough=no
add action=mark-connection chain=prerouting in-interface=00.03_pppoe-ISP \
    new-connection-mark=Forward/ISP3
add action=mark-routing chain=prerouting connection-mark=Forward/ISP3 \
    in-interface=!09.SXT new-routing-mark=ISP3 passthrough=no

Will this scheme work? Or where am I wrong?

answer myself

interface 00.01_pppoe-ISP1 - Dinamic IP over pppoe
interface 00.02_pppoe-ISP2 - Dinamic IP over pppoe
inteface BACKUP - static ip over ethernet - 198.51.100.254

/ip firewall mangle
add action=mark-connection chain=input connection-state=new in-interface=00.01_pppoe-ISP1 new-connection-mark=conn_isp_01 disabled=yes
add action=mark-connection chain=input connection-state=new in-interface=00.02_pppoe-ISP2 new-connection-mark=conn_isp_02 disabled=yes
add action=mark-connection chain=input connection-state=new in-interface=BACKUP new-connection-mark=conn_backup disabled=yes
add action=mark-connection chain=prerouting connection-state=related in-interface=00.01_pppoe-ISP1 new-connection-mark=conn_isp_01 disabled=yes
add action=mark-connection chain=prerouting connection-state=related in-interface=00.02_pppoe-ISP2 new-connection-mark=conn_isp_02 disabled=yes
add action=mark-connection chain=prerouting connection-state=related in-interface=BAKUP new-connection-mark=conn_backup disabled=yes
add action=mark-routing chain=output connection-mark=conn_isp_01 new-routing-mark=route_isp_01 disabled=yes
add action=mark-routing chain=output connection-mark=conn_isp_02 new-routing-mark=route_isp_02 disabled=yes
add action=mark-routing chain=output connection-mark=conn_backup new-routing-mark=route_backup disabled=yes
add action=mark-connection chain=prerouting dst-address-type=!local new-connection-mark=IT39_PCC_1 per-connection-classifier=both-addresses:2/0 src-address-list=BOGONS disabled=yes
add action=mark-connection chain=prerouting dst-address-type=!local new-connection-mark=IT39_PCC_2 per-connection-classifier=both-addresses:2/1 src-address-list=BOGONS disabled=yes
add action=mark-routing chain=prerouting connection-mark=IT39_PCC_1 new-routing-mark=IT39_1 src-address-list=BOGONS disabled=yes
add action=mark-routing chain=prerouting connection-mark=IT39_PCC_2 new-routing-mark=IT39_2 src-address-list=BOGONS disabled=yes
add action=mark-connection chain=prerouting connection-mark=no-mark new-connection-mark=oTher disabled=yes
/ip route
add check-gateway=ping distance=1 gateway=00.01_pppoe-ISP1 routing-mark=route_isp_01 disabled=yes
add check-gateway=ping distance=1 gateway=00.02_pppoe-ISP2 routing-mark=route_isp_02 disabled=yes
add check-gateway=ping comment=BACKUP distance=1 gateway=198.51.100.1 routing-mark=route_backup disabled=yes
add check-gateway=arp distance=1 gateway=00.01_pppoe-ISP1 routing-mark=IT39_1 disabled=yes
add check-gateway=arp distance=2 gateway=00.02_pppoe-ISP2 routing-mark=IT39_1 disabled=yes
add check-gateway=arp comment=BACKUP distance=3 gateway=198.51.100.1 routing-mark=IT39_1 disabled=yes
add check-gateway=arp distance=1 gateway=00.02_pppoe-ISP2 routing-mark=IT39_2 disabled=yes
add check-gateway=arp distance=2 gateway=00.01_pppoe-ISP1 routing-mark=IT39_2 disabled=yes
add check-gateway=arp comment=BACKUP distance=3 gateway=198.51.100.1 routing-mark=IT39_2 disabled=yes
add check-gateway=arp distance=1 gateway=00.01_pppoe-ISP1 disabled=yes
add check-gateway=arp distance=2 gateway=00.02_pppoe-ISP2 disabled=yes
add check-gateway=arp distance=3 gateway=198.51.100.1 disabled=yes

All works fine