R U' R2 B2 U2 F2 R U F2 B U' R2 F2 R2 L2 D' F2 U' R2 L2 D'
I tried some random moves at the start and found something promising for the first block.
F2 R2 U B' R2 L' D' //FB
U R U R' U2 S R' S' U2 R//SB
L F U F' U' L'//CMLL
M U' M U M' U2 M U' M2//L6E (which was basically, insert the F2L edges, M2 U2 M2, then U perm with tons of cancellations)
alternatively, non matching blocks could be used.
F2 R2 U B' R2 L' D' //FB
U R U R' U2 S R' S' //non matching SB
L U L' U' L' B L B'//CMLL
U M' U2 M U M2 U' M2 //why can't I just do L6E the normal way
S' L F' L' S L F M//commutator +adjust non matching blocks