How to simplify this huge expression to get a known smaller expression?

THIS IS AN EXTENDED COMMENT RATHER THAN AN ANSWER

A = ((8 - 2 Sqrt[(8 - 7 q) q] + 
        q (-6 + 3 Sqrt[(8 - 7 q) q] + q (-17 + 12 q - 4 Sqrt[(8 - 7 q) q])))/
      Sqrt[(8 - 7 q) q] + (Sqrt[
         2] (24 + 2 Sqrt[(8 - 7 q) q] + 
          q (-5 (10 + 3 Sqrt[(8 - 7 q) q]) + 
             q (-95 + 7 Sqrt[(8 - 7 q) q] + 
                q (323 - 196 q + 12 Sqrt[(8 - 7 q) q])))))/
      Sqrt[-q (-8 + 7 q) (2 + 2 Sqrt[(8 - 7 q) q] + 
          q (-10 + 21 q - 7 Sqrt[(8 - 7 q) q]))])/(8 (-1 + q) (-1 + 2 q));

B = (4 - 16 q^2)/(3 q - 4 Sqrt[8 - 7 q] q^(3/2) + Sqrt[(8 - 7 q) q]);

Both A and B have almost the same domain, differing only at q == 8/7

FunctionDomain[#, q] & /@ {A, B}

(* {0 < q < 1/2 || 1/2 < q < 1 || 1 < q < 8/7, 
    0 < q < 1/2 || 1/2 < q < 1 || 1 < q <= 8/7} *)

Plot[{A, B}, {q, 0, 8/7},
 Exclusions -> {0, 1/2, 1, 8/7},
 PlotStyle -> {Thick, Dashed},
 PlotPoints -> 200,
 PlotLegends -> Placed[{"A", "B"}, {.25, .2}]]

enter image description here

As seen in the plot above, A and B are equal in the restricted domain 0 < q < 1/2

A == B // FullSimplify[#, 0 < q < 1/2] &

(* True *)