(*If[$VersionNumber>=2.,$Messages=OutputStream["",1],$Messages={}]*) BeginPackage["Contig`q`"] Begin["`Private`"] (*Belegen von Module durch Block fr Versionen 1.?*) If[$VersionNumber<2.,Module=Block] simplify[x_]:=(Simplify[x]/.Hyp`q`Expandq) MComplement[x__]:=Module[{ZwErg={},i,j}, For[i=1,i<=Length[{x}[[1]]],i++, If[!MemberQ[ZwErg,{x}[[1,i]]], ZwErg=Join[ZwErg,Table[{x}[[1,i]], {Count[{x}[[1]],{x}[[1,i]]]- Max[Table[Count[{x}[[j]],{x}[[1,i]]],{j,2,Length[{x}]}]]}]] ] ]; ZwErg ] (*Two-term relations*) C01:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> 1+z*Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2]]/Hyp`q`pq[q,1,q]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{q},q*List1],Join[{q^2},q*List2],q,q^(1+Length[List2]-Length[List1])*z] ); C02:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Rest1}, Rest1=MComplement[List1,{q}]; 1/z/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{q},Rest1/q],List2/q,q,z/q^(1+Length[List2]-Length[List1])]- 1/z/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1]) ]/;MemberQ[List1,q]); (*Three-term relations with no parameters*) C11:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Hyp`q`ph[List1,List2,q,q*z]+ z*Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[q*List1,q*List2,q,q^(1+Length[List2]-Length[List1])*z]); C12:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Hyp`q`ph[List1,List2,q,z/q]- z/q*Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[q*List1,q*List2,q,q^(1+Length[List2]-Length[List1])*z/q]); C13:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2/q]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1/q]]/z* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[List1/q,List2/q,q,z/q^(1+Length[List2]-Length[List1])]- Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2/q]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1/q]]/z* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[List1/q,List2/q,q,q*z/q^(1+Length[List2]-Length[List1])]); (*Three-term relations with one parameter*) C14[n1_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,Rest1}, El1=List1[[n1]]; Rest1=Drop[List1,{n1,n1}]; El1/q*z*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1},Rest1*q],List2*q,q,q^(1+Length[List2]-Length[List1])*z]+ Hyp`q`ph[Join[{El1/q},Rest1],List2,q,z] ]); C15[n1_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,Rest1}, El1=List1[[n1]]; Rest1=Drop[List1,{n1,n1}]; Hyp`q`ph[Join[{El1*q},Rest1],List2,q,z]- El1*z*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q},Rest1*q],List2*q,q,q^(1+Length[List2]-Length[List1])*z] ]); C16[n1_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,Rest1}, El1=List1[[n1]]; Rest1=Drop[List1,{n1,n1}]; q/El1/z/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1},Rest1/q],List2/q,q,z/q^(1+Length[List2]-Length[List1])]- q/El1/z/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1/q},Rest1/q],List2/q,q,z/q^(1+Length[List2]-Length[List1])] ]); C17[n1_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,Rest1}, El1=List1[[n1]]; Rest1=Drop[List1,{n1,n1}]; z*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1},Rest1*q],List2*q,q,q^(1+Length[List2]-Length[List1])*z]+ Hyp`q`ph[Join[{El1/q},Rest1],List2,q,q*z] ]); C18[n1_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,Rest1}, El1=List1[[n1]]; Rest1=Drop[List1,{n1,n1}]; Hyp`q`ph[Join[{El1*q},Rest1],List2,q,z/q]- z/q*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q},Rest1*q],List2*q,q,q^(1+Length[List2]-Length[List1])*z/q] ]); C19[n1_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,Rest1}, El1=List1[[n1]]; Rest1=Drop[List1,{n1,n1}]; 1/z/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1},Rest1/q],List2/q,q,z/q^(1+Length[List2]-Length[List1])]- 1/z/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1/q},Rest1/q],List2/q,q,q*z/q^(1+Length[List2]-Length[List1])] ]); C20[n1_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El2,Rest2}, El2=List2[[n1]]; Rest2=Drop[List2,{n1,n1}]; El2*z/(Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[List1*q,Join[{El2*q^2},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z]+ Hyp`q`ph[List1,Join[{El2*q},Rest2],q,z] ]); C21[n1_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El2,Rest2}, El2=List2[[n1]]; Rest2=Drop[List2,{n1,n1}]; Hyp`q`ph[List1,Join[{El2/q},Rest2],q,z]- El2/q*z/(Hyp`q`pq[El2/q,1,q]*Hyp`q`pq[El2,1,q])*Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1]]/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[List1*q,Join[{El2*q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]); C22[n1_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El2,Rest2}, El2=List2[[n1]]; Rest2=Drop[List2,{n1,n1}]; q^2/El2/z*(Hyp`q`pq[El2/q^2,1,q]*Hyp`q`pq[El2/q,1,q])/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1/q]]* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[List1/q,Join[{El2/q^2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])]- q^2/El2/z*(Hyp`q`pq[El2/q^2,1,q]*Hyp`q`pq[El2/q,1,q])/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1/q]]* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[List1/q,Join[{El2/q},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])] ]); C23[n1_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El2,Rest2}, El2=List2[[n1]]; Rest2=Drop[List2,{n1,n1}]; z/(Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q])*Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1]]/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[List1*q,Join[{El2*q^2},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z]+ Hyp`q`ph[List1,Join[{El2*q},Rest2],q,q*z] ]); C24[n1_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El2,Rest2}, El2=List2[[n1]]; Rest2=Drop[List2,{n1,n1}]; Hyp`q`ph[List1,Join[{El2/q},Rest2],q,z/q]- z/q/(Hyp`q`pq[El2/q,1,q]*Hyp`q`pq[El2,1,q])*Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1]]/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[List1*q,Join[{El2*q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z/q] ]); C25[n1_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El2,Rest2}, El2=List2[[n1]]; Rest2=Drop[List2,{n1,n1}]; 1/z*(Hyp`q`pq[El2/q^2,1,q]*Hyp`q`pq[El2/q,1,q])/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1/q]]* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[List1/q,Join[{El2/q^2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])]- 1/z*(Hyp`q`pq[El2/q^2,1,q]*Hyp`q`pq[El2/q,1,q])/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1/q]]* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[List1/q,Join[{El2/q},Rest2/q],q,q*z/q^(1+Length[List2]-Length[List1])] ]); (*Three-term relations with two parameters*) C26[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1}, El1=List1[[n1]]; El2=List1[[n2]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Hyp`q`pq[El2,1,q]/(El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`ph[Join[{El1,El2*q},Rest1],List2,q,z/q]+ Hyp`q`pq[El1,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`ph[Join[{El1*q,El2},Rest1],List2,q,z/q] ]); C27[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1}, El1=List1[[n1]]; El2=List1[[n2]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Hyp`q`pq[El2,1,q]/Hyp`q`pq[El1/q,1,q]*Hyp`q`ph[Join[{El1/q,El2*q},Rest1],List2,q,z]+ (El2*Hyp`q`pq[(El1/q)/(El2),1,q])/Hyp`q`pq[El1/q,1,q]* Hyp`q`ph[Join[{El1/q,El2},Rest1],List2,q,q*z] ]); C28[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1}, El1=List1[[n1]]; El2=List1[[n2]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; El1*Hyp`q`pq[El2,1,q]/(El1*Hyp`q`pq[(El2)/(El1),1,q])* Hyp`q`ph[Join[{El1,El2*q},Rest1],List2,q,z]+ El2*Hyp`q`pq[El1,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])* Hyp`q`ph[Join[{El1*q,El2},Rest1],List2,q,z] ]); C29[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1}, El1=List1[[n1]]; El2=List1[[n2]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; El1/q/El2*Hyp`q`pq[El2,1,q]/Hyp`q`pq[El1/q,1,q]*Hyp`q`ph[Join[{El1/q,El2*q},Rest1],List2,q,z]+ (El2*Hyp`q`pq[(El1/q)/(El2),1,q])/El2/Hyp`q`pq[El1/q,1,q]* Hyp`q`ph[Join[{El1/q,El2},Rest1],List2,q,z] ]); C30[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1}, El1=List1[[n1]]; El2=List1[[n2]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Hyp`q`ph[Join[{El1/q,El2*q},Rest1],List2,q,z]+ z*(El1/q*Hyp`q`pq[(El2)/(El1/q),1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1,El2*q},Rest1*q],List2*q,q,q^(1+Length[List2]-Length[List1])*z] ]); C31[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1}, El1=List1[[n1]]; El2=List1[[n2]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; 1/z/(El1/q*Hyp`q`pq[(El2/q)/(El1/q),1,q])/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]* Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1,El2/q},Rest1/q],List2/q,q,z/q^(1+Length[List2]-Length[List1])]- 1/z/(El1/q*Hyp`q`pq[(El2/q)/(El1/q),1,q])/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]* Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1/q,El2},Rest1/q],List2/q,q,z/q^(1+Length[List2]-Length[List1])] ]); C32[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1}, El1=List1[[n1]]; El2=List1[[n2]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Hyp`q`ph[Join[{El1/q,El2/q},Rest1],List2,q,q*z]+ z*Hyp`q`pq[El1*El2/q,1,q]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1,El2,El1*El2},Rest1*q], Join[{El1*El2/q},List2*q],q,q^(1+Length[List2]-Length[List1])*z] ]); C33[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1}, El1=List1[[n1]]; El2=List1[[n2]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Hyp`q`ph[Join[{El1*q,El2*q},Rest1],List2,q,z/q]- z/q*Hyp`q`pq[El1*El2*q,1,q]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El2*q,El1*El2*q^2},Rest1*q], Join[{El1*El2*q},List2*q],q,q^(1+Length[List2]-Length[List1])*z/q] ]); C34[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n2]]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{n2,n2}]; Hyp`q`pq[El2/q,1,q]/(El1*Hyp`q`pq[(El2/q)/(El1),1,q])* Hyp`q`ph[Join[{El1},Rest1],Join[{El2/q},Rest2],q,z/q]+ Hyp`q`pq[El1,1,q]/(El2/q*Hyp`q`pq[(El1)/(El2/q),1,q])* Hyp`q`ph[Join[{El1*q},Rest1],Join[{El2},Rest2],q,z/q] ]); C35[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n2]]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{n2,n2}]; Hyp`q`pq[El2/q,1,q]/Hyp`q`pq[El1/q,1,q]*Hyp`q`ph[Join[{El1/q},Rest1],Join[{El2/q},Rest2],q,z]+ (El2*Hyp`q`pq[(El1)/(El2),1,q])/q/Hyp`q`pq[El1/q,1,q]*Hyp`q`ph[Join[{El1/q},Rest1],Join[{El2},Rest2],q,q*z] ]); C36[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n2]]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{n2,n2}]; (El1*Hyp`q`pq[(El2)/(El1),1,q])/Hyp`q`pq[El2,1,q]*Hyp`q`ph[Join[{El1},Rest1],Join[{El2*q},Rest2],q,q*z]+ Hyp`q`pq[El1,1,q]/Hyp`q`pq[El2,1,q]*Hyp`q`ph[Join[{El1*q},Rest1],Join[{El2*q},Rest2],q,z] ]); C37[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n2]]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{n2,n2}]; El1*Hyp`q`pq[El2/q,1,q]/(El1*Hyp`q`pq[(El2/q)/(El1),1,q])*Hyp`q`ph[Join[{El1},Rest1],Join[{El2/q},Rest2],q,z]+ El2*Hyp`q`pq[El1,1,q]/q/(El2/q*Hyp`q`pq[(El1)/(El2/q),1,q])* Hyp`q`ph[Join[{El1*q},Rest1],Join[{El2},Rest2],q,z] ]); C38[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n2]]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{n2,n2}]; El1*Hyp`q`pq[El2/q,1,q]/El2/Hyp`q`pq[El1/q,1,q]*Hyp`q`ph[Join[{El1/q},Rest1],Join[{El2/q},Rest2],q,z]+ (El2*Hyp`q`pq[(El1)/(El2),1,q])/El2/Hyp`q`pq[El1/q,1,q]* Hyp`q`ph[Join[{El1/q},Rest1],Join[{El2},Rest2],q,z] ]); C39[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n2]]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{n2,n2}]; (El1*Hyp`q`pq[(El2)/(El1),1,q])/El1/Hyp`q`pq[El2,1,q]*Hyp`q`ph[Join[{El1},Rest1],Join[{El2*q},Rest2],q,z]+ El2*Hyp`q`pq[El1,1,q]/El1/Hyp`q`pq[El2,1,q]*Hyp`q`ph[Join[{El1*q},Rest1],Join[{El2*q},Rest2],q,z] ]); C40[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n2]]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{n2,n2}]; Hyp`q`ph[Join[{El1/q},Rest1],Join[{El2/q},Rest2],q,z]+ z*(El1/q*Hyp`q`pq[(El2/q)/(El1/q),1,q])/(Hyp`q`pq[El2/q,1,q]*Hyp`q`pq[El2,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1},Rest1*q],Join[{El2*q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]); C41[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n2]]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{n2,n2}]; Hyp`q`ph[Join[{El1*q},Rest1],Join[{El2*q},Rest2],q,z]- z*(El1*Hyp`q`pq[(El2)/(El1),1,q])/(Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q},Rest1*q],Join[{El2*q^2},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]); C42[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n2]]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{n2,n2}]; 1/z/(El1/q*Hyp`q`pq[(El2/q^2)/(El1/q),1,q])*(Hyp`q`pq[El2/q^2,1,q]*Hyp`q`pq[El2/q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1},Rest1/q],Join[{El2/q},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])]- 1/z/(El1/q*Hyp`q`pq[(El2/q^2)/(El1/q),1,q])*(Hyp`q`pq[El2/q^2,1,q]*Hyp`q`pq[El2/q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1/q},Rest1/q],Join[{El2/q^2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])] ]); C43[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n2]]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{n2,n2}]; Hyp`q`ph[Join[{El1/q},Rest1],Join[{El2*q},Rest2],q,q*z]+ z*Hyp`q`pq[El1*El2,1,q]/(Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1,El1*El2*q},Rest1*q],Join[{El2*q^2,El1*El2},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]); C44[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n2]]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{n2,n2}]; Hyp`q`ph[Join[{El1*q},Rest1],Join[{El2/q},Rest2],q,z/q]- z/q*Hyp`q`pq[El1*El2,1,q]/(Hyp`q`pq[El2/q,1,q]*Hyp`q`pq[El2,1,q])*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El1*El2*q},Rest1*q],Join[{El2*q,El1*El2},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z/q] ]); C45[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest2}, El1=List2[[n1]]; El2=List2[[n2]]; Rest2=Drop[List2,{Max[n1,n2],Max[n1,n2]}]; Rest2=Drop[Rest2,{Min[n1,n2],Min[n1,n2]}]; Hyp`q`pq[El2/q,1,q]*q/(El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`ph[List1,Join[{El1,El2/q},Rest2],q,z/q]+ Hyp`q`pq[El1/q,1,q]*q/(El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`ph[List1,Join[{El1/q,El2},Rest2],q,z/q] ]); C46[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest2}, El1=List2[[n1]]; El2=List2[[n2]]; Rest2=Drop[List2,{Max[n1,n2],Max[n1,n2]}]; Rest2=Drop[Rest2,{Min[n1,n2],Min[n1,n2]}]; Hyp`q`pq[El2/q,1,q]/Hyp`q`pq[El1,1,q]*Hyp`q`ph[List1,Join[{El1*q,El2/q},Rest2],q,z]+ (El2/q*Hyp`q`pq[(El1)/(El2/q),1,q])/Hyp`q`pq[El1,1,q]*Hyp`q`ph[List1,Join[{El1*q,El2},Rest2],q,q*z] ]); C47[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest2}, El1=List2[[n1]]; El2=List2[[n2]]; Rest2=Drop[List2,{Max[n1,n2],Max[n1,n2]}]; Rest2=Drop[Rest2,{Min[n1,n2],Min[n1,n2]}]; El1*Hyp`q`pq[El2/q,1,q]/(El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`ph[List1,Join[{El1,El2/q},Rest2],q,z]+ El2*Hyp`q`pq[El1/q,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`ph[List1,Join[{El1/q,El2},Rest2],q,z] ]); C48[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest2}, El1=List2[[n1]]; El2=List2[[n2]]; Rest2=Drop[List2,{Max[n1,n2],Max[n1,n2]}]; Rest2=Drop[Rest2,{Min[n1,n2],Min[n1,n2]}]; El1*q*Hyp`q`pq[El2/q,1,q]/El2/Hyp`q`pq[El1,1,q]*Hyp`q`ph[List1,Join[{El1*q,El2/q},Rest2],q,z]+ (El2/q*Hyp`q`pq[(El1)/(El2/q),1,q])*q/El2/Hyp`q`pq[El1,1,q]*Hyp`q`ph[List1,Join[{El1*q,El2},Rest2],q,z] ]); C49[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest2}, El1=List2[[n1]]; El2=List2[[n2]]; Rest2=Drop[List2,{Max[n1,n2],Max[n1,n2]}]; Rest2=Drop[Rest2,{Min[n1,n2],Min[n1,n2]}]; Hyp`q`ph[List1,Join[{El1*q,El2/q},Rest2],q,z]+ z*(El1*Hyp`q`pq[(El2/q)/(El1),1,q])/(Hyp`q`pq[El1,1,q]*Hyp`q`pq[El1*q,1,q]*Hyp`q`pq[El2/q,1,q]*Hyp`q`pq[El2,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[List1*q,Join[{El1*q^2,El2*q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]); C50[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest2}, El1=List2[[n1]]; El2=List2[[n2]]; Rest2=Drop[List2,{Max[n1,n2],Max[n1,n2]}]; Rest2=Drop[Rest2,{Min[n1,n2],Min[n1,n2]}]; 1/z*(Hyp`q`pq[El1/q^2,1,q]*Hyp`q`pq[El1/q,1,q]*Hyp`q`pq[El2/q^2,1,q]* Hyp`q`pq[El2/q,1,q])/(El1/q^2*Hyp`q`pq[(El2/q^2)/(El1/q^2),1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[List1/q,Join[{El1/q^2,El2/q},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])]- 1/z*(Hyp`q`pq[El1/q^2,1,q]*Hyp`q`pq[El1/q,1,q]*Hyp`q`pq[El2/q^2,1,q]*Hyp`q`pq[El2/q,1,q])/ (El1/q^2*Hyp`q`pq[(El2/q^2)/(El1/q^2),1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[List1/q,Join[{El1/q,El2/q^2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])] ]); C51[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest2}, El1=List2[[n1]]; El2=List2[[n2]]; Rest2=Drop[List2,{Max[n1,n2],Max[n1,n2]}]; Rest2=Drop[Rest2,{Min[n1,n2],Min[n1,n2]}]; Hyp`q`ph[List1,Join[{El1*q,El2*q},Rest2],q,q*z]+ z*Hyp`q`pq[El1*El2*q,1,q]/(Hyp`q`pq[El1,1,q]*Hyp`q`pq[El1*q,1,q]*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*El2*q^2},List1*q], Join[{El1*q^2,El2*q^2,El1*El2*q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]); C52[n1_,n2_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1}, El1=List2[[n1]]; El2=List2[[n2]]; Rest2=Drop[List2,{Max[n1,n2],Max[n1,n2]}]; Rest2=Drop[Rest2,{Min[n1,n2],Min[n1,n2]}]; Hyp`q`ph[List1,Join[{El1/q,El2/q},Rest2],q,z/q]- z/q*Hyp`q`pq[El1*El2/q,1,q]/(Hyp`q`pq[El1/q,1,q]*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2/q,1,q]*Hyp`q`pq[El2,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,List1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*El2},List1*q], Join[{El1*q,El2*q,El1*El2/q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z/q] ]); (*Three-term relations with three parameters*) C53[n1_,n2_,n3_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,El3,Rest1}, El1=List1[[n1]]; El2=List1[[n2]]; El3=List1[[n3]]; Els=Sort[{n1,n2,n3}]; Rest1=Drop[List1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; (El2*Hyp`q`pq[(El3/q)/(El2),1,q])*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]/ ((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/q,1,q])* Hyp`q`ph[Join[{El1*q,El2,El3/q},Rest1],List2,q,z]+ (El1*Hyp`q`pq[(El3/q)/(El1),1,q])*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]/ ((El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/q,1,q])* Hyp`q`ph[Join[{El1,El2*q,El3/q},Rest1],List2,q,z] ]); C54[n1_,n2_,n3_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n2]]; El3=List2[[n3]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{n3,n3}]; (El2*Hyp`q`pq[(El3)/(El2),1,q])*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]/ ((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3,1,q])* Hyp`q`ph[Join[{El1*q,El2},Rest1],Join[{El3*q},Rest2],q,z]+ (El1*Hyp`q`pq[(El3)/(El1),1,q])*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]/ ((El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3,1,q])* Hyp`q`ph[Join[{El1,El2*q},Rest1],Join[{El3*q},Rest2],q,z] ]); C55[n1_,n2_,n3_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n2]]; El3=List2[[n3]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{n3,n3}]; (El1/q*Hyp`q`pq[(El2)/(El1/q),1,q])*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/q,1,q]/ ((El3/q*Hyp`q`pq[(El2)/(El3/q),1,q])*Hyp`q`pq[El1/q,1,q]*Hyp`q`pq[El2,1,q])* Hyp`q`ph[Join[{El1/q,El2},Rest1],Join[{El3/q},Rest2],q,z]+ (El1/q*Hyp`q`pq[(El3/q)/(El1/q),1,q])*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/q,1,q]/ ((El2*Hyp`q`pq[(El3/q)/(El2),1,q])*Hyp`q`pq[El1/q,1,q]*Hyp`q`pq[El3/q,1,q])* Hyp`q`ph[Join[{El1/q,El2*q},Rest1],Join[{El3},Rest2],q,z] ]); C56[n1_,n2_,n3_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n2]]; El3=List2[[n3]]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{Max[n2,n3],Max[n2,n3]}]; Rest2=Drop[Rest2,{Min[n2,n3],Min[n2,n3]}]; (El2/q*Hyp`q`pq[(El3)/(El2/q),1,q])*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2/q,1,q]/ ((El2/q*Hyp`q`pq[(El1)/(El2/q),1,q])*Hyp`q`pq[El2/q,1,q]*Hyp`q`pq[El3,1,q])* Hyp`q`ph[Join[{El1*q},Rest1],Join[{El2,El3*q},Rest2],q,z]+ (El1*Hyp`q`pq[(El3)/(El1),1,q])*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2/q,1,q]/ ((El1*Hyp`q`pq[(El2/q)/(El1),1,q])*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3,1,q])* Hyp`q`ph[Join[{El1},Rest1],Join[{El2/q,El3*q},Rest2],q,z] ]); C57[n1_,n2_,n3_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n2]]; El3=List2[[n3]]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{Max[n2,n3],Max[n2,n3]}]; Rest2=Drop[Rest2,{Min[n2,n3],Min[n2,n3]}]; (El1/q*Hyp`q`pq[(El2/q)/(El1/q),1,q])*Hyp`q`pq[El2/q,1,q]*Hyp`q`pq[El3/q,1,q]/ ((El3/q*Hyp`q`pq[(El2/q)/(El3/q),1,q])*Hyp`q`pq[El1/q,1,q]*Hyp`q`pq[El2/q,1,q])* Hyp`q`ph[Join[{El1/q},Rest1],Join[{El2,El3/q},Rest2],q,z]+ (El1/q*Hyp`q`pq[(El3/q)/(El1/q),1,q])*Hyp`q`pq[El2/q,1,q]*Hyp`q`pq[El3/q,1,q]/ ((El2/q*Hyp`q`pq[(El3/q)/(El2/q),1,q])*Hyp`q`pq[El1/q,1,q]*Hyp`q`pq[El3/q,1,q])* Hyp`q`ph[Join[{El1/q},Rest1],Join[{El2/q,El3},Rest2],q,z] ]); C58[n1_,n2_,n3_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,El3,Rest2}, El1=List2[[n1]]; El2=List2[[n2]]; El3=List2[[n3]]; Els=Sort[{n1,n2,n3}]; Rest2=Drop[List2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; (El2/q*Hyp`q`pq[(El3)/(El2/q),1,q])*Hyp`q`pq[El1/q,1,q]*Hyp`q`pq[El2/q,1,q]/ ((El2/q*Hyp`q`pq[(El1/q)/(El2/q),1,q])*Hyp`q`pq[El2/q,1,q]*Hyp`q`pq[El3,1,q])* Hyp`q`ph[List1,Join[{El1/q,El2,El3*q},Rest2],q,z]+ (El1/q*Hyp`q`pq[(El3)/(El1/q),1,q])*Hyp`q`pq[El1/q,1,q]*Hyp`q`pq[El2/q,1,q]/ ((El1/q*Hyp`q`pq[(El2/q)/(El1/q),1,q])*Hyp`q`pq[El1/q,1,q]*Hyp`q`pq[El3,1,q])* Hyp`q`ph[List1,Join[{El1,El2/q,El3*q},Rest2],q,z] ]); (*Three-term relations with four parameters*) C59[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List1[[n3]]; El3=List1[[n3]]*List1[[n4]]; Els=Sort[{n1,n2,n3,n4}]; Rest1=Drop[List1,{Els[[4]],Els[[4]]}]; Rest1=Drop[Rest1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2*q,El3*q/El2},Rest1],List2,q,z]+ (El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2,El3/El2},Rest1],List2,q,q*z] ]/;Factor[List1[[n1]]*List1[[n2]]-q^2*List1[[n3]]*List1[[n4]]]===0); C60[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n3]]; El3=List1[[n3]]*List1[[n4]]; Els=Sort[{n1,n2,n3,n4}]; Rest1=Drop[List1,{Els[[4]],Els[[4]]}]; Rest1=Drop[Rest1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])/Hyp`q`pq[El3/El1/El2,1,q]* Hyp`q`ph[Join[{El1*q,El3*q/El1,El2,El3/El2},Rest1],List2,q,z/q]- Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])/Hyp`q`pq[El3/El1/El2,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2*q,El3*q/El2},Rest1],List2,q,z/q] ]/;Factor[List1[[n1]]*List1[[n2]]-List1[[n3]]*List1[[n4]]]===0); C61[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n3]]; El3=List1[[n1]]*List1[[n2]]/q; Els=Sort[{n1,n2,n3,n4}]; Rest1=Drop[List1,{Els[[4]],Els[[4]]}]; Rest1=Drop[Rest1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3/(El1*El2*Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q])* Hyp`q`ph[Join[{El1*q,El3/El1,El2*q,El3/El2},Rest1],List2,q,z]+ Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q]/(Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q])* Hyp`q`ph[Join[{q*Sqrt[El3],-q*Sqrt[El3],El1,El3/El1,El2,El3/El2},Rest1], Join[{Sqrt[El3],-Sqrt[El3]},List2],q,z] ]/;Factor[List1[[n1]]*List1[[n2]]-List1[[n3]]*List1[[n4]]]===0); C62[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n3]]/q; El3=List1[[n1]]*List1[[n2]]; Els=Sort[{n1,n2,n3,n4}]; Rest1=Drop[List1,{Els[[4]],Els[[4]]}]; Rest1=Drop[Rest1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Hyp`q`ph[Join[{El1*q,El3*q/El1,El2,El3/El2},Rest1],List2,q,z]+ z*(El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q]* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,List2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El3*q/El1,El2*q,El3*q/El2,El3*q^2},Rest1*q], Join[{El3*q},List2*q],q,q^(1+Length[List2]-Length[List1])*z] ]/;Factor[q^2*List1[[n1]]*List1[[n2]]-List1[[n3]]*List1[[n4]]]===0); C63[n1_,n2_,n3_,n4_,d_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List1[[n3]]; El3=List1[[n3]]*List1[[n4]]; Els=Sort[{n1,n2,n3,n4}]; Rest1=Drop[List1,{Els[[4]],Els[[4]]}]; Rest1=Drop[Rest1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El1/d,1,q]*Hyp`q`pq[El3/El1/d,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/Hyp`q`pq[El2/d,1,q]/Hyp`q`pq[El3/El2/d,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2*q,El3*q/El2},Rest1],List2,q,z]+ (El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]/ d*Hyp`q`pq[d,1,q]*Hyp`q`pq[El3/d,1,q]/Hyp`q`pq[El2/d,1,q]/Hyp`q`pq[El3/El2/d,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2,El3/El2,d*q,El3*q/d},Rest1],Join[{d,El3/d},List2],q,z] ]/;Factor[List1[[n1]]*List1[[n2]]-q^2*List1[[n3]]*List1[[n4]]]===0); C64[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List1[[n3]]; El3=List1[[n3]]*List2[[n4]]/q; Els=Sort[{n1,n2,n3}]; Rest1=Drop[List1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{n4,n4}]; Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2*q},Rest1],Join[{El3/El2},Rest2],q,z]+ (El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2},Rest1],Join[{El3*q/El2},Rest2],q,q*z] ]/;Factor[List1[[n1]]*List1[[n2]]-q*List1[[n3]]*List2[[n4]]]===0); C65[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n3]]/q; El3=List1[[n3]]*List2[[n4]]/q; Els=Sort[{n1,n2,n3}]; Rest1=Drop[List1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{n4,n4}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]/Hyp`q`pq[El2,1,q]/Hyp`q`pq[El3/El2,1,q]* Hyp`q`ph[Join[{El1*q,El3*q/El1,El2},Rest1],Join[{El3*q/El2},Rest2],q,z]- (El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El2,1,q]/Hyp`q`pq[El3/El2,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2},Rest1],Join[{El3*q/El2},Rest2],q,q*z] ]/;Factor[q*List1[[n1]]*List1[[n2]]-List1[[n3]]*List2[[n4]]]===0); C66[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n3]]; El3=List1[[n3]]*List2[[n4]]/q; Els=Sort[{n1,n2,n3}]; Rest1=Drop[List1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{n4,n4}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])/Hyp`q`pq[El3/El1/El2,1,q]* Hyp`q`ph[Join[{El1*q,El3*q/El1,El2},Rest1],Join[{El3*q/El2},Rest2],q,z/q]- Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])/Hyp`q`pq[El3/El1/El2,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2*q},Rest1],Join[{El3/El2},Rest2],q,z/q] ]/;Factor[q*List1[[n1]]*List1[[n2]]-List1[[n3]]*List2[[n4]]]===0); C67[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n3]]; El3=List1[[n1]]*List1[[n2]]/q; Els=Sort[{n1,n2,n3}]; Rest1=Drop[List1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{n4,n4}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3/(El1*El2*Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q])* Hyp`q`ph[Join[{El1*q,El3/El1,El2*q},Rest1],Join[{El3*q/El2},Rest2],q,z]+ Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q]/(Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q])* Hyp`q`ph[Join[{q*Sqrt[El3],-q*Sqrt[El3],El1,El3/El1,El2},Rest1], Join[{Sqrt[El3],-Sqrt[El3],El3*q/El2},Rest2],q,z] ]/;Factor[List1[[n1]]*List1[[n2]]-q*List1[[n3]]*List2[[n4]]]===0); C68[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List1[[n3]]/q; El3=List1[[n1]]*List1[[n2]]/q; Els=Sort[{n1,n2,n3}]; Rest1=Drop[List1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{n4,n4}]; Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q]*El1*El2/(Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3)* Hyp`q`ph[Join[{El1,El3*q/El1,El2},Rest1],Join[{El3/El2},Rest2],q,z]- Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q]*El1*El2/(Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3)* Hyp`q`ph[Join[{q*Sqrt[El3],-q*Sqrt[El3],El1,El3/El1,El2},Rest1], Join[{Sqrt[El3],-Sqrt[El3],El3*q/El2},Rest2],q,z] ]/;Factor[q*List1[[n1]]*List1[[n2]]-List1[[n3]]*List2[[n4]]]===0); C69[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n3]]/q; El3=List1[[n1]]*List1[[n2]]; Els=Sort[{n1,n2,n3}]; Rest1=Drop[List1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{n4,n4}]; Hyp`q`ph[Join[{El1*q,El3*q/El1,El2},Rest1],Join[{El3*q/El2},Rest2],q,z]+ z*(El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q]/ (Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El3*q/El1,El2*q,El3*q^2},Rest1*q], Join[{El3*q^2/El2,El3*q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]/;Factor[q*List1[[n1]]*List1[[n2]]-List1[[n3]]*List2[[n4]]]===0); C70[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List1[[n3]]; El3=List1[[n1]]*List1[[n2]]/q^2; Els=Sort[{n1,n2,n3}]; Rest1=Drop[List1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{n4,n4}]; Hyp`q`ph[Join[{El1,El3/El1,El2*q},Rest1],Join[{El3/El2},Rest2],q,z]- z*(El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q]/ (Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El3*q/El1,El2*q,El3*q^2},Rest1*q], Join[{El3*q^2/El2,El3*q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]/;Factor[List1[[n1]]*List1[[n2]]-q*List1[[n3]]*List2[[n4]]]===0); C71[n1_,n2_,n3_,n4_,d_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List1[[n3]]; El3=List1[[n3]]*List2[[n4]]/q; Els=Sort[{n1,n2,n3}]; Rest1=Drop[List1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{n4,n4}]; Hyp`q`pq[El1/d,1,q]*Hyp`q`pq[El3/El1/d,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/Hyp`q`pq[El2/d,1,q]/Hyp`q`pq[El3/El2/d,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2*q},Rest1],Join[{El3/El2},Rest2],q,z]+ (El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]/ d*Hyp`q`pq[d,1,q]*Hyp`q`pq[El3/d,1,q]/Hyp`q`pq[El2/d,1,q]/Hyp`q`pq[El3/El2/d,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2,d*q,El3*q/d},Rest1],Join[{El3*q/El2,d,El3/d},Rest2],q,z] ]/;Factor[List1[[n1]]*List1[[n2]]-q*List1[[n3]]*List2[[n4]]]===0); C72[n1_,n2_,n3_,n4_,d_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n3]]/q; El3=List1[[n3]]*List2[[n4]]/q; Els=Sort[{n1,n2,n3}]; Rest1=Drop[List1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{n4,n4}]; Hyp`q`pq[El2/d,1,q]*Hyp`q`pq[El3/El2/d,1,q]/Hyp`q`pq[El2,1,q]/Hyp`q`pq[El3/El2,1,q]* Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]/Hyp`q`pq[El1/d,1,q]/Hyp`q`pq[El3/El1/d,1,q]* Hyp`q`ph[Join[{El1*q,El3*q/El1,El2},Rest1],Join[{El3*q/El2},Rest2],q,z]- (El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El2,1,q]/Hyp`q`pq[El3/El2,1,q]/ d*Hyp`q`pq[d,1,q]*Hyp`q`pq[El3/d,1,q]/Hyp`q`pq[El1/d,1,q]/Hyp`q`pq[El3/El1/d,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2,d*q,El3*q/d},Rest1],Join[{El3*q/El2,d,El3/d},Rest2],q,z] ]/;Factor[q*List1[[n1]]*List1[[n2]]-List1[[n3]]*List2[[n4]]]===0); C73[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n2]]; Els=Sort[{n1,n2,n3}]; Rest1=Drop[List1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{n4,n4}]; 1/z/Hyp`q`pq[El1*El2/q,1,q]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1,El2},Rest1/q],Rest2/q,q,z/q^(1+Length[List2]-Length[List1])]- 1/z/Hyp`q`pq[El1*El2/q,1,q]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1/q,El2/q},Rest1/q],Rest2/q,q,q*z/q^(1+Length[List2]-Length[List1])] ]/;Factor[List1[[n3]]-List1[[n1]]*List1[[n2]]]===0&& Factor[List2[[n4]]*q-List1[[n3]]]===0); C74[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List1[[n2]]; El3=List1[[n1]]*List2[[n3]]/q; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1,El2*q},Rest1],Join[{El3*q/El1,El3/El2},Rest2],q,z]+ (El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1,El2},Rest1],Join[{El3*q/El1,El3*q/El2},Rest2],q,q*z] ]/;Factor[List1[[n1]]*List2[[n3]]-List1[[n2]]*List2[[n4]]]===0); C75[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n2]]; El3=List1[[n1]]*List2[[n3]]/q; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])/Hyp`q`pq[El3/El1/El2,1,q]* Hyp`q`ph[Join[{El1*q,El2},Rest1],Join[{El3/El1,El3*q/El2},Rest2],q,z/q]- Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])/Hyp`q`pq[El3/El1/El2,1,q]* Hyp`q`ph[Join[{El1,El2*q},Rest1],Join[{El3*q/El1,El3/El2},Rest2],q,z/q] ]/;Factor[List1[[n1]]*List2[[n3]]-List1[[n2]]*List2[[n4]]]===0); C76[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n2]]; El3=List1[[n1]]*List2[[n3]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3/(El1*El2*Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q])* Hyp`q`ph[Join[{El1*q,El2*q},Rest1],Join[{El3*q/El1,El3*q/El2},Rest2],q,z]+ Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q]/(Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q])* Hyp`q`ph[Join[{q*Sqrt[El3],-q*Sqrt[El3],El1,El2},Rest1], Join[{Sqrt[El3],-Sqrt[El3],El3*q/El1,El3*q/El2},Rest2],q,z] ]/;Factor[List1[[n1]]*List2[[n3]]-List1[[n2]]*List2[[n4]]]===0); C77[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List1[[n2]]/q; El3=List1[[n1]]*List2[[n3]]/q^2; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q]*El1*El2/(Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3)* Hyp`q`ph[Join[{El1,El2},Rest1],Join[{El3/El1,El3/El2},Rest2],q,z]- Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q]*El1*El2/(Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3)* Hyp`q`ph[Join[{q*Sqrt[El3],-q*Sqrt[El3],El1,El2},Rest1], Join[{Sqrt[El3],-Sqrt[El3],El3*q/El1,El3*q/El2},Rest2],q,z] ]/;Factor[List1[[n1]]*List2[[n3]]-List1[[n2]]*List2[[n4]]]===0); C78[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n2]]/q; El3=List1[[n1]]*List2[[n3]]/q; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`ph[Join[{El1*q,El2},Rest1],Join[{El3/El1,El3*q/El2},Rest2],q,z]+ z*(El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q]/ (Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3*q/El1,1,q]*Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El2*q,El3*q^2},Rest1*q], Join[{El3*q^2/El1,El3*q^2/El2,El3*q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]/;Factor[List1[[n1]]*List2[[n3]]-List1[[n2]]*List2[[n4]]]===0); C79[n1_,n2_,n3_,n4_,d_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List1[[n2]]; El3=List1[[n1]]*List2[[n3]]/q; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`pq[El1/d,1,q]*Hyp`q`pq[El3/El1/d,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/Hyp`q`pq[El2/d,1,q]/Hyp`q`pq[El3/El2/d,1,q]* Hyp`q`ph[Join[{El1,El2*q},Rest1],Join[{El3*q/El1,El3/El2},Rest2],q,z]+ (El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]/ d*Hyp`q`pq[d,1,q]*Hyp`q`pq[El3/d,1,q]/Hyp`q`pq[El2/d,1,q]/Hyp`q`pq[El3/El2/d,1,q]* Hyp`q`ph[Join[{El1,El2,d*q,El3*q/d},Rest1],Join[{El3*q/El1,El3*q/El2,d,El3/d},Rest2],q,z] ]/;Factor[List1[[n1]]*List2[[n3]]-List1[[n2]]*List2[[n4]]]===0); C80[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List2[[n3]]/q; El3=List1[[n1]]*List1[[n2]]/q^2; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1,El3/El1},Rest1],Join[{El2,El3/El2},Rest2],q,z]+ (El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1,El3/El1},Rest1],Join[{El2*q,El3*q/El2},Rest2],q,q*z] ]/;Factor[List1[[n1]]*List1[[n2]]-List2[[n3]]*List2[[n4]]]===0); C81[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n3]]; El3=List1[[n1]]*List1[[n2]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]/Hyp`q`pq[El2,1,q]/Hyp`q`pq[El3/El2,1,q]* Hyp`q`ph[Join[{El1*q,El3*q/El1},Rest1],Join[{El2*q,El3*q/El2},Rest2],q,z]- (El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El2,1,q]/Hyp`q`pq[El3/El2,1,q]* Hyp`q`ph[Join[{El1,El3/El1},Rest1],Join[{El2*q,El3*q/El2},Rest2],q,q*z] ]/;Factor[List1[[n1]]*List1[[n2]]-List2[[n3]]*List2[[n4]]]===0); C82[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n3]]/q; El3=List1[[n1]]*List1[[n2]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])/Hyp`q`pq[El3/El1/El2,1,q]* Hyp`q`ph[Join[{El1*q,El3*q/El1},Rest1],Join[{El2*q,El3*q/El2},Rest2],q,z/q]- Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])/Hyp`q`pq[El3/El1/El2,1,q]* Hyp`q`ph[Join[{El1,El3/El1},Rest1],Join[{El2,El3/El2},Rest2],q,z/q] ]/;Factor[q^2*List1[[n1]]*List1[[n2]]-List2[[n3]]*List2[[n4]]]===0); C83[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n3]]/q; El3=List1[[n1]]*List1[[n2]]/q; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3/(El1*El2*Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q])* Hyp`q`ph[Join[{El1*q,El3/El1},Rest1],Join[{El2,El3*q/El2},Rest2],q,z]+ Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q]/(Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q])* Hyp`q`ph[Join[{q*Sqrt[El3],-q*Sqrt[El3],El1,El3/El1},Rest1], Join[{Sqrt[El3],-Sqrt[El3],El2*q,El3*q/El2},Rest2],q,z] ]/;Factor[List1[[n1]]*List1[[n2]]-List2[[n3]]*List2[[n4]]]===0); C84[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n3]]; El3=List1[[n1]]*List1[[n2]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`ph[Join[{El1*q,El3*q/El1},Rest1],Join[{q*El2,El3*q/El2},Rest2],q,z]+ z*(El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q]/ (Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q]*Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El3*q/El1,El3*q^2},Rest1*q], Join[{El2*q^2,El3*q^2/El2,El3*q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]/;Factor[List1[[n1]]*List1[[n2]]-List2[[n3]]*List2[[n4]]]===0); C85[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List2[[n3]]/q; El3=List1[[n1]]*List1[[n2]]/q^2; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`ph[Join[{El1,El3/El1},Rest1],Join[{El2,El3/El2},Rest2],q,z]- z*(El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q]/ (Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q]*Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El3*q/El1,El3*q^2},Rest1*q], Join[{El2*q^2,El3*q^2/El2,El3*q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]/;Factor[List1[[n1]]*List1[[n2]]-List2[[n3]]*List2[[n4]]]===0); C86[n1_,n2_,n3_,n4_,d_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List2[[n3]]/q; El3=List1[[n1]]*List1[[n2]]/q^2; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`pq[El1/d,1,q]*Hyp`q`pq[El3/El1/d,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/Hyp`q`pq[El2/d,1,q]/Hyp`q`pq[El3/El2/d,1,q]* Hyp`q`ph[Join[{El1,El3/El1},Rest1],Join[{El2,El3/El2},Rest2],q,z]+ (El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]/ d*Hyp`q`pq[d,1,q]*Hyp`q`pq[El3/d,1,q]/Hyp`q`pq[El2/d,1,q]/Hyp`q`pq[El3/El2/d,1,q]* Hyp`q`ph[Join[{El1,El3/El1,d*q,El3*q/d},Rest1],Join[{El2*q,El3*q/El2,d,El3/d},Rest2],q,z] ]/;Factor[List1[[n1]]*List1[[n2]]-List2[[n3]]*List2[[n4]]]===0); C87[n1_,n2_,n3_,n4_,d_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n3]]; El3=List1[[n1]]*List1[[n2]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; Hyp`q`pq[El2/d,1,q]*Hyp`q`pq[El3/El2/d,1,q]/Hyp`q`pq[El2,1,q]/Hyp`q`pq[El3/El2,1,q]* Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]/Hyp`q`pq[El1/d,1,q]/Hyp`q`pq[El3/El1/d,1,q]* Hyp`q`ph[Join[{El1*q,El3*q/El1},Rest1],Join[{El2*q,El3*q/El2},Rest2],q,z]- (El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El2,1,q]/Hyp`q`pq[El3/El2,1,q]/ d*Hyp`q`pq[d,1,q]*Hyp`q`pq[El3/d,1,q]/Hyp`q`pq[El1/d,1,q]/Hyp`q`pq[El3/El1/d,1,q]* Hyp`q`ph[Join[{El1,El3/El1,d*q,El3*q/d},Rest1],Join[{El2*q,El3*q/El2,d,El3/d},Rest2],q,z] ]/;Factor[List1[[n1]]*List1[[n2]]-List2[[n3]]*List2[[n4]]]===0); C88[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{El1,El2,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n3]]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Max[n3,n4],Max[n3,n4]}]; Rest2=Drop[Rest2,{Min[n3,n4],Min[n3,n4]}]; 1/z/Hyp`q`pq[El1*El2/q^2,1,q]*(Hyp`q`pq[El2/q^2,1,q]*Hyp`q`pq[El2/q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1},Rest1/q],Join[{El2/q^2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])]- 1/z/Hyp`q`pq[El1*El2/q^2,1,q]*(Hyp`q`pq[El2/q^2,1,q]*Hyp`q`pq[El2/q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1/q},Rest1/q],Join[{El2/q},Rest2/q],q,q*z/q^(1+Length[List2]-Length[List1])] ]/;Factor[List1[[n1]]*List2[[n3]]-q*List1[[n2]]]===0&& Factor[List2[[n4]]*q-List1[[n2]]]===0); C89[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List2[[n3]]/q; El3=List1[[n1]]*List2[[n2]]/q; Els=Sort[{n2,n3,n4}]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1},Rest1],Join[{El3*q/El1,El2,El3/El2},Rest2],q,z]+ (El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1},Rest1],Join[{El3*q/El1,El2*q,El3*q/El2},Rest2],q,q*z] ]/;Factor[q*List1[[n1]]*List2[[n2]]-List2[[n3]]*List2[[n4]]]===0); C90[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n3]]; El3=List1[[n1]]*List2[[n2]]/q; Els=Sort[{n2,n3,n4}]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]/Hyp`q`pq[El2,1,q]/Hyp`q`pq[El3/El2,1,q]* Hyp`q`ph[Join[{El1*q},Rest1],Join[{El3/El1,El2*q,El3*q/El2},Rest2],q,z]- (El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El2,1,q]/Hyp`q`pq[El3/El2,1,q]* Hyp`q`ph[Join[{El1},Rest1],Join[{El3*q/El1,El2*q,El3*q/El2},Rest2],q,q*z] ]/;Factor[List1[[n1]]*List2[[n2]]-q*List2[[n3]]*List2[[n4]]]===0); C91[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n3]]/q; El3=List1[[n1]]*List2[[n2]]/q; Els=Sort[{n2,n3,n4}]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])/Hyp`q`pq[El3/El1/El2,1,q]* Hyp`q`ph[Join[{El1*q},Rest1],Join[{El3/El1,El2*q,El3*q/El2},Rest2],q,z/q]- Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])/Hyp`q`pq[El3/El1/El2,1,q]* Hyp`q`ph[Join[{El1},Rest1],Join[{El3*q/El1,El2,El3/El2},Rest2],q,z/q] ]/;Factor[q*List1[[n1]]*List2[[n2]]-List2[[n3]]*List2[[n4]]]===0); C92[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n3]]/q; El3=List1[[n1]]*List2[[n2]]; Els=Sort[{n2,n3,n4}]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3/(El1*El2*Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q])* Hyp`q`ph[Join[{El1*q},Rest1],Join[{El3/El1*q,El2,El3*q/El2},Rest2],q,z]+ Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q]/(Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q])* Hyp`q`ph[Join[{q*Sqrt[El3],-q*Sqrt[El3],El1},Rest1], Join[{Sqrt[El3],-Sqrt[El3],El3/El1*q,El2*q,El3*q/El2},Rest2],q,z] ]/;Factor[q*List1[[n1]]*List2[[n2]]-List2[[n3]]*List2[[n4]]]===0); C93[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List2[[n3]]; El3=List1[[n1]]*List2[[n2]]/q^2; Els=Sort[{n2,n3,n4}]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q]*El1*El2/(Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3)* Hyp`q`ph[Join[{El1},Rest1],Join[{El3/El1,El2*q,El3/El2},Rest2],q,z]- Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q]*El1*El2/(Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3)* Hyp`q`ph[Join[{q*Sqrt[El3],-q*Sqrt[El3],El1},Rest1], Join[{Sqrt[El3],-Sqrt[El3],El3*q/El1,El2*q,El3*q/El2},Rest2],q,z] ]/;Factor[List1[[n1]]*List2[[n2]]-q*List2[[n3]]*List2[[n4]]]===0); C94[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n3]]; El3=List1[[n1]]*List2[[n2]]/q; Els=Sort[{n2,n3,n4}]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`ph[Join[{El1*q},Rest1],Join[{El3/El1,q*El2,El3*q/El2},Rest2],q,z]+ z*(El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q]/ (Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3*q/El1,1,q]*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q]* Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El3*q^2},Rest1*q], Join[{El3*q^2/El1,El2*q^2,El3*q^2/El2,El3*q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]/;Factor[List1[[n1]]*List2[[n2]]-q*List2[[n3]]*List2[[n4]]]===0); C95[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List2[[n3]]/q; El3=List1[[n1]]*List2[[n2]]/q; Els=Sort[{n2,n3,n4}]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`ph[Join[{El1},Rest1],Join[{El3*q/El1,El2,El3/El2},Rest2],q,z]- z*(El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q]/ (Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3*q/El1,1,q]*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q]* Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El3*q^2},Rest1*q], Join[{El3*q^2/El1,El2*q^2,El3*q^2/El2,El3*q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]/;Factor[q*List1[[n1]]*List2[[n2]]-List2[[n3]]*List2[[n4]]]===0); C96[n1_,n2_,n3_,n4_,d_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List2[[n3]]/q; El3=List1[[n1]]*List2[[n2]]/q; Els=Sort[{n2,n3,n4}]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El1/d,1,q]*Hyp`q`pq[El3/El1/d,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/Hyp`q`pq[El2/d,1,q]/Hyp`q`pq[El3/El2/d,1,q]* Hyp`q`ph[Join[{El1},Rest1],Join[{El3*q/El1,El2,El3/El2},Rest2],q,z]+ (El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]/ d*Hyp`q`pq[d,1,q]*Hyp`q`pq[El3/d,1,q]/Hyp`q`pq[El2/d,1,q]/Hyp`q`pq[El3/El2/d,1,q]* Hyp`q`ph[Join[{El1,d*q,El3*q/d},Rest1],Join[{El3*q/El1,El2*q,El3*q/El2,d,El3/d},Rest2],q,z] ]/;Factor[q*List1[[n1]]*List2[[n2]]-List2[[n3]]*List2[[n4]]]===0); C97[n1_,n2_,n3_,n4_,d_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n3]]; El3=List1[[n1]]*List2[[n2]]/q; Els=Sort[{n2,n3,n4}]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El2/d,1,q]*Hyp`q`pq[El3/El2/d,1,q]/Hyp`q`pq[El2,1,q]/Hyp`q`pq[El3/El2,1,q]* Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]/Hyp`q`pq[El1/d,1,q]/Hyp`q`pq[El3/El1/d,1,q]* Hyp`q`ph[Join[{El1*q},Rest1],Join[{El3/El1,El2*q,El3*q/El2},Rest2],q,z]- (El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El2,1,q]/Hyp`q`pq[El3/El2,1,q]/ d*Hyp`q`pq[d,1,q]*Hyp`q`pq[El3/d,1,q]/Hyp`q`pq[El1/d,1,q]/Hyp`q`pq[El3/El1/d,1,q]* Hyp`q`ph[Join[{El1,d*q,El3*q/d},Rest1],Join[{El3*q/El1,El2*q,El3*q/El2,d,El3/d},Rest2],q,z] ]/;Factor[List1[[n1]]*List2[[n2]]-q*List2[[n3]]*List2[[n4]]]===0); C98[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,Rest1,Rest2}, El1=List2[[n2]]; El2=List2[[n3]]; Rest1=Drop[List1,{n1,n1}]; Els=Sort[{n2,n3,n4}]; Rest2=Drop[List2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; 1/z*(Hyp`q`pq[El1/q^2,1,q]*Hyp`q`pq[El1/q,1,q]*Hyp`q`pq[El2/q^2,1,q]*Hyp`q`pq[El2/q,1,q])/Hyp`q`pq[El1*El2/q^3,1,q]/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Rest1/q,Join[{El1/q^2,El2/q^2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])]- 1/z*(Hyp`q`pq[El1/q^2,1,q]*Hyp`q`pq[El1/q,1,q]*Hyp`q`pq[El2/q^2,1,q]*Hyp`q`pq[El2/q,1,q])/Hyp`q`pq[El1*El2/q^3,1,q]/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Rest1/q,Join[{El1/q,El2/q},Rest2/q],q,q*z/q^(1+Length[List2]-Length[List1])] ]/;Factor[List1[[n1]]*q^2-List2[[n2]]*List2[[n3]]]===0&& Factor[List2[[n4]]*q-List1[[n1]]]===0); C99[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List2[[n1]]; El2=List2[[n3]]/q; El3=List2[[n1]]*List2[[n2]]; Els=Sort[{n1,n2,n3,n4}]; Rest2=Drop[List2,{Els[[4]],Els[[4]]}]; Rest2=Drop[Rest2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[List1,Join[{El1*q,El3*q/El1,El2,El3/El2},Rest2],q,z]+ (El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[List1,Join[{El1*q,El3*q/El1,El2*q,El3*q/El2},Rest2],q,q*z] ]/;Factor[q^2*List2[[n1]]*List2[[n2]]-List2[[n3]]*List2[[n4]]]===0); C100[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List2[[n1]]/q; El2=List2[[n3]]/q; El3=List2[[n1]]*List2[[n2]]/q^2; Els=Sort[{n1,n2,n3,n4}]; Rest2=Drop[List2,{Els[[4]],Els[[4]]}]; Rest2=Drop[Rest2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])/Hyp`q`pq[El3/El1/El2,1,q]* Hyp`q`ph[List1,Join[{El1,El3/El1,El2*q,El3*q/El2},Rest2],q,z/q]- Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/(El2*Hyp`q`pq[(El1)/(El2),1,q])/Hyp`q`pq[El3/El1/El2,1,q]* Hyp`q`ph[List1,Join[{El1*q,El3*q/El1,El2,El3/El2},Rest2],q,z/q] ]/;Factor[List2[[n1]]*List2[[n2]]-List2[[n3]]*List2[[n4]]]===0); C101[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List2[[n1]]/q; El2=List2[[n3]]/q; El3=List2[[n1]]*List2[[n2]]/q; Els=Sort[{n1,n2,n3,n4}]; Rest1=List1; Rest2=Drop[List2,{Els[[4]],Els[[4]]}]; Rest2=Drop[Rest2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3/(El1*El2*Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q])* Hyp`q`ph[Rest1,Join[{El1,El3/El1*q,El2,El3*q/El2},Rest2],q,z]+ Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q]/(Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q])* Hyp`q`ph[Join[{q*Sqrt[El3],-q*Sqrt[El3]},Rest1], Join[{Sqrt[El3],-Sqrt[El3],El1*q,El3/El1*q,El2*q,El3*q/El2},Rest2],q,z] ]/;Factor[List2[[n1]]*List2[[n2]]-List2[[n3]]*List2[[n4]]]===0); C102[n1_,n2_,n3_,n4_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List2[[n1]]/q; El2=List2[[n3]]; El3=List2[[n1]]*List2[[n2]]/q^2; Els=Sort[{n1,n2,n3,n4}]; Rest1=List1; Rest2=Drop[List2,{Els[[4]],Els[[4]]}]; Rest2=Drop[Rest2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`ph[Rest1,Join[{El1,El3/El1,q*El2,El3*q/El2},Rest2],q,z]+ z*(El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q]/ (Hyp`q`pq[El1,1,q]*Hyp`q`pq[El1*q,1,q]*Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3*q/El1,1,q]* Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q]*Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q])* Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1]]/Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2]]* (-1)^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El3*q^2},Rest1*q], Join[{El1*q^2,El3*q^2/El1,El2*q^2,El3*q^2/El2,El3*q},Rest2*q],q,q^(1+Length[List2]-Length[List1])*z] ]/;Factor[List2[[n1]]*List2[[n2]]-q^2*List2[[n3]]*List2[[n4]]]===0); C103[n1_,n2_,n3_,n4_,d_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List2[[n1]]; El2=List2[[n3]]/q; El3=List2[[n1]]*List2[[n2]]; Els=Sort[{n1,n2,n3,n4}]; Rest2=Drop[List2,{Els[[4]],Els[[4]]}]; Rest2=Drop[Rest2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; Hyp`q`pq[El1/d,1,q]*Hyp`q`pq[El3/El1/d,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]* Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]/Hyp`q`pq[El2/d,1,q]/Hyp`q`pq[El3/El2/d,1,q]* Hyp`q`ph[List1,Join[{El1*q,El3*q/El1,El2,El3/El2},Rest2],q,z]+ (El1*Hyp`q`pq[(El2)/(El1),1,q])*Hyp`q`pq[El3/El1/El2,1,q]/Hyp`q`pq[El1,1,q]/Hyp`q`pq[El3/El1,1,q]/ d*Hyp`q`pq[d,1,q]*Hyp`q`pq[El3/d,1,q]/Hyp`q`pq[El2/d,1,q]/Hyp`q`pq[El3/El2/d,1,q]* Hyp`q`ph[Join[{d*q,El3*q/d},List1],Join[{El1*q,El3*q/El1,El2*q,El3*q/El2,d,El3/d},Rest2],q,z] ]/;Factor[q^2*List2[[n1]]*List2[[n2]]-List2[[n3]]*List2[[n4]]]===0); (*Three-term relations with six parameters*) C104[n1_,n2_,n3_,n4_,n5_,n6_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List1[[n3]]/q; El3=List1[[n1]]*List1[[n2]]/q^2; Els=Sort[{n1,n2,n3,n4,n5}]; Rest1=Drop[List1,{Els[[5]],Els[[5]]}]; Rest1=Drop[Rest1,{Els[[4]],Els[[4]]}]; Rest1=Drop[Rest1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{n6,n6}]; 1/z/((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1,El3/El1,El2*q,El3*q/El2},Rest1/q],Rest2/q,q,z/q^(1+Length[List2]-Length[List1])]- 1/z/((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El3*q/El1,El2,El3/El2},Rest1/q],Rest2/q,q,z/q^(1+Length[List2]-Length[List1])] ]/;Factor[List1[[n1]]*List1[[n2]]-List1[[n3]]*List1[[n4]]]===0&& Factor[List1[[n1]]*List1[[n2]]-List1[[n5]]]===0&& Factor[List1[[n5]]/q-List2[[n6]]]===0); C105[n1_,n2_,n3_,n4_,n5_,n6_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List1[[n3]]/q; El3=List1[[n1]]*List1[[n2]]/q^2; Els=Sort[{n1,n2,n3,n4}]; Rest1=Drop[List1,{Els[[4]],Els[[4]]}]; Rest1=Drop[Rest1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{Max[n5,n6],Max[n5,n6]}]; Rest2=Drop[Rest2,{Min[n5,n6],Min[n5,n6]}]; 1/z*Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q]/ ((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1,El3/El1,El2*q},Rest1/q],Join[{El3/El2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])]- 1/z*Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q]/ ((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El3*q/El1,El2},Rest1/q],Join[{El3*q/El2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])] ]/;Factor[q*List1[[n1]]*List1[[n2]]-List1[[n3]]*List2[[n5]]]===0&& Factor[List1[[n1]]*List1[[n2]]-List1[[n4]]]===0&& Factor[List1[[n4]]/q-List2[[n6]]]===0); C106[n1_,n2_,n3_,n4_,n5_,n6_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els1,Els2,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List1[[n2]]/q; El3=List1[[n3]]/q^2; Els1=Sort[{n1,n2,n3}]; Els2=Sort[{n4,n5,n6}]; Rest1=Drop[List1,{Els1[[3]],Els1[[3]]}]; Rest1=Drop[Rest1,{Els1[[2]],Els1[[2]]}]; Rest1=Drop[Rest1,{Els1[[1]],Els1[[1]]}]; Rest2=Drop[List2,{Els2[[3]],Els2[[3]]}]; Rest2=Drop[Rest2,{Els2[[2]],Els2[[2]]}]; Rest2=Drop[Rest2,{Els2[[1]],Els2[[1]]}]; 1/z*Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3*q/El1,1,q]*Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q]/ ((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1,El2*q},Rest1/q],Join[{El3*q/El1,El3/El2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])]- 1/z*Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3*q/El1,1,q]*Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q]/ ((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El2},Rest1/q],Join[{El3/El1,El3*q/El2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])] ]/;Factor[List1[[n1]]*List2[[n4]]-List1[[n2]]*List2[[n5]]]===0&& Factor[List1[[n1]]*List2[[n4]]/q-List1[[n3]]]===0&& Factor[List1[[n3]]/q-List2[[n6]]]===0); C107[n1_,n2_,n3_,n4_,n5_,n6_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els1,Els2,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List2[[n4]]/q^2; El3=List1[[n1]]*List1[[n2]]/q^2; Els1=Sort[{n1,n2,n3}]; Els2=Sort[{n4,n5,n6}]; Rest1=Drop[List1,{Els1[[3]],Els1[[3]]}]; Rest1=Drop[Rest1,{Els1[[2]],Els1[[2]]}]; Rest1=Drop[Rest1,{Els1[[1]],Els1[[1]]}]; Rest2=Drop[List2,{Els2[[3]],Els2[[3]]}]; Rest2=Drop[Rest2,{Els2[[2]],Els2[[2]]}]; Rest2=Drop[Rest2,{Els2[[1]],Els2[[1]]}]; 1/z*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q]*Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q]/ ((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1,El3/El1},Rest1/q],Join[{El2,El3/El2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])]- 1/z*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q]*Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q]/ ((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q,El3*q/El1},Rest1/q], Join[{El2*q,El3*q/El2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])] ]/;Factor[q^2*List1[[n1]]*List1[[n2]]-List2[[n4]]*List2[[n5]]]===0&& Factor[List1[[n1]]*List1[[n2]]-List1[[n3]]]===0&& Factor[List1[[n3]]/q-List2[[n6]]]===0); C108[n1_,n2_,n3_,n4_,n5_,n6_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]/q; El2=List2[[n4]]/q^2; El3=List1[[n1]]*List2[[n3]]/q^3; Els=Sort[{n3,n4,n5,n6}]; Rest1=Drop[List1,{Max[n1,n2],Max[n1,n2]}]; Rest1=Drop[Rest1,{Min[n1,n2],Min[n1,n2]}]; Rest2=Drop[List2,{Els[[4]],Els[[4]]}]; Rest2=Drop[Rest2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; 1/z*Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3*q/El1,1,q]*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q]* Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q]/ ((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1},Rest1/q],Join[{El3*q/El1,El2,El3/El2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])]- 1/z*Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3*q/El1,1,q]*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q]* Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q]/ ((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Join[{El1*q},Rest1/q],Join[{El3/El1,El2*q,El3*q/El2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])] ]/;Factor[q*List1[[n1]]*List2[[n3]]-List2[[n4]]*List2[[n5]]]===0&& Factor[List1[[n1]]*List2[[n3]]/q-List1[[n2]]]===0&& Factor[List1[[n2]]/q-List2[[n6]]]===0); C109[n1_,n2_,n3_,n4_,n5_,n6_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List2[[n2]]/q^2; El2=List2[[n4]]/q^2; El3=List2[[n2]]*List2[[n3]]/q^4; Els=Sort[{n2,n3,n4,n5,n6}]; Rest1=Drop[List1,{n1,n1}]; Rest2=Drop[List2,{Els[[5]],Els[[5]]}]; Rest2=Drop[Rest2,{Els[[4]],Els[[4]]}]; Rest2=Drop[Rest2,{Els[[3]],Els[[3]]}]; Rest2=Drop[Rest2,{Els[[2]],Els[[2]]}]; Rest2=Drop[Rest2,{Els[[1]],Els[[1]]}]; 1/z*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El1*q,1,q]*Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3*q/El1,1,q]*Hyp`q`pq[El2,1,q]* Hyp`q`pq[El2*q,1,q]*Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q]/ ((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Rest1/q,Join[{El1*q,El3*q/El1,El2,El3/El2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])]- 1/z*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El1*q,1,q]*Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3*q/El1,1,q]* Hyp`q`pq[El2,1,q]*Hyp`q`pq[El2*q,1,q]*Hyp`q`pq[El3/El2,1,q]*Hyp`q`pq[El3*q/El2,1,q]/ ((El2*Hyp`q`pq[(El1)/(El2),1,q])*Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El3*q,1,q])/ Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest1/q]]*Apply[Times,Map[Hyp`q`pq[#,1,q]&,Rest2/q]]* (-1)^(1+Length[List2]-Length[List1])*q^(1+Length[List2]-Length[List1])* Hyp`q`ph[Rest1/q,Join[{El1,El3/El1,El2*q,El3*q/El2},Rest2/q],q,z/q^(1+Length[List2]-Length[List1])] ]/;Factor[List2[[n2]]*List2[[n3]]-List2[[n4]]*List2[[n5]]]===0&& Factor[List2[[n2]]*List2[[n3]]/q^2-List1[[n1]]]===0&& Factor[List1[[n1]]/q-List2[[n6]]]===0); (*Three-term relations with eight parameters*) C110[n1_,n2_,n3_,n4_,n5_,n6_,n7_,n8_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,Rest1,Rest2}, El1=List1[[n3]]; El2=List1[[n5]]; El3=List1[[n3]]*List1[[n4]]; Els=Sort[{n1,n2,n3,n4,n5,n6}]; Rest1=Drop[List1,{Els[[6]],Els[[6]]}]; Rest1=Drop[Rest1,{Els[[5]],Els[[5]]}]; Rest1=Drop[Rest1,{Els[[4]],Els[[4]]}]; Rest1=Drop[Rest1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{Max[n7,n8],Max[n7,n8]}]; Rest2=Drop[Rest2,{Min[n7,n8],Min[n7,n8]}]; Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q]/(Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q])* Hyp`q`ph[Join[{El1,El3*q/El1,El2,El3*q/El2},Rest1],Rest2,q,z]- Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3/(El1*El2*Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q])* Hyp`q`ph[Join[{El1*q,El3/El1,El2*q,El3/El2},Rest1],Rest2,q,z] ]/;Factor[List1[[n3]]*List1[[n4]]-List1[[n5]]*List1[[n6]]]===0&& Factor[List1[[n3]]*List1[[n4]]-List2[[n7]]^2]===0&& Factor[List1[[n1]]/q-List2[[n7]]]===0&& Factor[List1[[n1]]+List1[[n2]]]===0&& Factor[List2[[n7]]+List2[[n8]]]===0); C111[n1_,n2_,n3_,n4_,n5_,n6_,n7_,n8_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els,El1,El2,El3,El4,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n3]]; El3=List1[[n3]]*List1[[n4]]; El4=List1[[n5]]/q; Els=Sort[{n1,n2,n3,n4,n5,n6}]; Rest1=Drop[List1,{Els[[6]],Els[[6]]}]; Rest1=Drop[Rest1,{Els[[5]],Els[[5]]}]; Rest1=Drop[Rest1,{Els[[4]],Els[[4]]}]; Rest1=Drop[Rest1,{Els[[3]],Els[[3]]}]; Rest1=Drop[Rest1,{Els[[2]],Els[[2]]}]; Rest1=Drop[Rest1,{Els[[1]],Els[[1]]}]; Rest2=Drop[List2,{Max[n7,n8],Max[n7,n8]}]; Rest2=Drop[Rest2,{Min[n7,n8],Min[n7,n8]}]; Hyp`q`pq[El2/El4,1,q]*Hyp`q`pq[El3/El2/El4,1,q]*El4/Hyp`q`pq[El4,1,q]/Hyp`q`pq[El3/El4,1,q]/ (El1*Hyp`q`pq[(El2)/(El1),1,q])/Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1*q,El3*q/El1,El2,El3/El2},Rest1],Rest2,q,z]- Hyp`q`pq[El1/El4,1,q]*Hyp`q`pq[El3/El1/El4,1,q]*El4/Hyp`q`pq[El4,1,q]/Hyp`q`pq[El3/El4,1,q]/ (El1*Hyp`q`pq[(El2)/(El1),1,q])/Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2*q,El3*q/El2},Rest1],Rest2,q,z] ]/;Factor[List1[[n1]]*List1[[n2]]-List1[[n3]]*List1[[n4]]]===0&& Factor[List1[[n5]]/q-List2[[n7]]]===0&& Factor[List1[[n6]]/q-List2[[n8]]]===0&& Factor[List1[[n1]]*List1[[n2]]-List2[[n7]]*List2[[n8]]]===0); C112[n1_,n2_,n3_,n4_,n5_,n6_,n7_,n8_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els1,Els2,El1,El2,El3,Rest1,Rest2}, El1=List1[[n3]]; El2=List1[[n5]]; El3=List1[[n3]]*List1[[n4]]; Els1=Sort[{n1,n2,n3,n4,n5}]; Els2=Sort[{n6,n7,n8}]; Rest1=Drop[List1,{Els1[[5]],Els1[[5]]}]; Rest1=Drop[Rest1,{Els1[[4]],Els1[[4]]}]; Rest1=Drop[Rest1,{Els1[[3]],Els1[[3]]}]; Rest1=Drop[Rest1,{Els1[[2]],Els1[[2]]}]; Rest1=Drop[Rest1,{Els1[[1]],Els1[[1]]}]; Rest2=Drop[List2,{Els2[[3]],Els2[[3]]}]; Rest2=Drop[Rest2,{Els2[[2]],Els2[[2]]}]; Rest2=Drop[Rest2,{Els2[[1]],Els2[[1]]}]; Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q]/(Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q])* Hyp`q`ph[Join[{El1,El3*q/El1,El2},Rest1],Join[{El3/El2},Rest2],q,z]- Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3/(El1*El2*Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q])* Hyp`q`ph[Join[{El1*q,El3/El1,El2*q},Rest1],Join[{El3*q/El2},Rest2],q,z] ]/;Factor[q*List1[[n3]]*List1[[n4]]-List1[[n5]]*List2[[n8]]]===0&& Factor[List1[[n3]]*List1[[n4]]-List2[[n6]]^2]===0&& Factor[List1[[n1]]/q-List2[[n6]]]===0&& Factor[List1[[n1]]+List1[[n2]]]===0&& Factor[List2[[n6]]+List2[[n7]]]===0); C113[n1_,n2_,n3_,n4_,n5_,n6_,n7_,n8_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els1,Els2,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n3]]; El3=List1[[n3]]*List2[[n6]]/q; El4=List1[[n4]]/q; Els1=Sort[{n1,n2,n3,n4,n5}]; Els2=Sort[{n6,n7,n8}]; Rest1=Drop[List1,{Els1[[5]],Els1[[5]]}]; Rest1=Drop[Rest1,{Els1[[4]],Els1[[4]]}]; Rest1=Drop[Rest1,{Els1[[3]],Els1[[3]]}]; Rest1=Drop[Rest1,{Els1[[2]],Els1[[2]]}]; Rest1=Drop[Rest1,{Els1[[1]],Els1[[1]]}]; Rest2=Drop[List2,{Els2[[3]],Els2[[3]]}]; Rest2=Drop[Rest2,{Els2[[2]],Els2[[2]]}]; Rest2=Drop[Rest2,{Els2[[1]],Els2[[1]]}]; Hyp`q`pq[El2/El4,1,q]*Hyp`q`pq[El3/El2/El4,1,q]*El4/Hyp`q`pq[El4,1,q]/Hyp`q`pq[El3/El4,1,q]/ (El1*Hyp`q`pq[(El2)/(El1),1,q])/Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1*q,El3*q/El1,El2},Rest1],Join[{El3*q/El2},Rest2],q,z]- Hyp`q`pq[El1/El4,1,q]*Hyp`q`pq[El3/El1/El4,1,q]*El4/Hyp`q`pq[El4,1,q]/Hyp`q`pq[El3/El4,1,q]/ (El1*Hyp`q`pq[(El2)/(El1),1,q])/Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]* Hyp`q`ph[Join[{El1,El3/El1,El2*q},Rest1],Join[{El3/El2},Rest2],q,z] ]/;Factor[q*List1[[n1]]*List1[[n2]]-List1[[n3]]*List2[[n6]]]===0&& Factor[List1[[n4]]/q-List2[[n7]]]===0&& Factor[List1[[n5]]/q-List2[[n8]]]===0&& Factor[List1[[n1]]*List1[[n2]]-List2[[n7]]*List2[[n8]]]===0); C114[n1_,n2_,n3_,n4_,n5_,n6_,n7_,n8_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els1,Els2,El1,El2,El3,Rest1,Rest2}, El1=List1[[n3]]; El2=List1[[n4]]; El3=List1[[n3]]*List2[[n7]]/q; Els1=Sort[{n1,n2,n3,n4}]; Els2=Sort[{n5,n6,n7,n8}]; Rest1=Drop[List1,{Els1[[4]],Els1[[4]]}]; Rest1=Drop[Rest1,{Els1[[3]],Els1[[3]]}]; Rest1=Drop[Rest1,{Els1[[2]],Els1[[2]]}]; Rest1=Drop[Rest1,{Els1[[1]],Els1[[1]]}]; Rest2=Drop[List2,{Els2[[4]],Els2[[4]]}]; Rest2=Drop[Rest2,{Els2[[3]],Els2[[3]]}]; Rest2=Drop[Rest2,{Els2[[2]],Els2[[2]]}]; Rest2=Drop[Rest2,{Els2[[1]],Els2[[1]]}]; Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q]/(Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q])* Hyp`q`ph[Join[{El1,El2},Rest1],Join[{El3/El1,El3/El2},Rest2],q,z]- Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3/(El1*El2*Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q])* Hyp`q`ph[Join[{El1*q,El2*q},Rest1],Join[{El3*q/El1,El3*q/El2},Rest2],q,z] ]/;Factor[List1[[n3]]*List2[[n7]]-List1[[n4]]*List2[[n8]]]===0&& Factor[List1[[n3]]*List2[[n7]]-q*List2[[n5]]^2]===0&& Factor[List1[[n1]]/q-List2[[n5]]]===0&& Factor[List1[[n1]]+List1[[n2]]]===0&& Factor[List2[[n5]]+List2[[n6]]]===0); C115[n1_,n2_,n3_,n4_,n5_,n6_,n7_,n8_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els1,Els2,El1,El2,El3,Rest1,Rest2}, El1=List1[[n3]]; El2=List2[[n7]]/q; El3=List1[[n3]]*List1[[n4]]; Els1=Sort[{n1,n2,n3,n4}]; Els2=Sort[{n5,n6,n7,n8}]; Rest1=Drop[List1,{Els1[[4]],Els1[[4]]}]; Rest1=Drop[Rest1,{Els1[[3]],Els1[[3]]}]; Rest1=Drop[Rest1,{Els1[[2]],Els1[[2]]}]; Rest1=Drop[Rest1,{Els1[[1]],Els1[[1]]}]; Rest2=Drop[List2,{Els2[[4]],Els2[[4]]}]; Rest2=Drop[Rest2,{Els2[[3]],Els2[[3]]}]; Rest2=Drop[Rest2,{Els2[[2]],Els2[[2]]}]; Rest2=Drop[Rest2,{Els2[[1]],Els2[[1]]}]; Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q]/(Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q])* Hyp`q`ph[Join[{El1,El3*q/El1},Rest1],Join[{El2*q,El3/El2},Rest2],q,z]- Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3/(El1*El2*Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q])* Hyp`q`ph[Join[{El1*q,El3/El1},Rest1],Join[{El2,El3*q/El2},Rest2],q,z] ]/;Factor[q^2*List1[[n3]]*List1[[n4]]-List2[[n7]]*List2[[n8]]]===0&& Factor[List1[[n3]]*List1[[n4]]-List2[[n5]]^2]===0&& Factor[List1[[n1]]/q-List2[[n5]]]===0&& Factor[List1[[n1]]+List1[[n2]]]===0&& Factor[List2[[n5]]+List2[[n6]]]===0); C116[n1_,n2_,n3_,n4_,n5_,n6_,n7_,n8_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els1,Els2,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List1[[n2]]; El3=List1[[n1]]*List2[[n5]]/q; El4=List1[[n3]]/q; Els1=Sort[{n1,n2,n3,n4}]; Els2=Sort[{n5,n6,n7,n8}]; Rest1=Drop[List1,{Els1[[4]],Els1[[4]]}]; Rest1=Drop[Rest1,{Els1[[3]],Els1[[3]]}]; Rest1=Drop[Rest1,{Els1[[2]],Els1[[2]]}]; Rest1=Drop[Rest1,{Els1[[1]],Els1[[1]]}]; Rest2=Drop[List2,{Els2[[4]],Els2[[4]]}]; Rest2=Drop[Rest2,{Els2[[3]],Els2[[3]]}]; Rest2=Drop[Rest2,{Els2[[2]],Els2[[2]]}]; Rest2=Drop[Rest2,{Els2[[1]],Els2[[1]]}]; Hyp`q`pq[El2/El4,1,q]*Hyp`q`pq[El3/El2/El4,1,q]*El4/Hyp`q`pq[El4,1,q]/Hyp`q`pq[El3/El4,1,q]/ (El1*Hyp`q`pq[(El2)/(El1),1,q])/Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1*q,El2},Rest1],Join[{El3/El1,El3*q/El2},Rest2],q,z]- Hyp`q`pq[El1/El4,1,q]*Hyp`q`pq[El3/El1/El4,1,q]*El4/Hyp`q`pq[El4,1,q]/Hyp`q`pq[El3/El4,1,q]/ (El1*Hyp`q`pq[(El2)/(El1),1,q])/Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]* Hyp`q`ph[Join[{El1,El2*q},Rest1],Join[{El3*q/El1,El3/El2},Rest2],q,z] ]/;Factor[List1[[n1]]*List2[[n5]]-List1[[n2]]*List2[[n6]]]===0&& Factor[List1[[n3]]/q-List2[[n7]]]===0&& Factor[List1[[n4]]/q-List2[[n8]]]===0&& Factor[List1[[n1]]*List2[[n5]]-q*List2[[n7]]*List2[[n8]]]===0); C117[n1_,n2_,n3_,n4_,n5_,n6_,n7_,n8_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els1,Els2,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n5]]/q; El3=List1[[n1]]*List1[[n2]]; El4=List1[[n3]]/q; Els1=Sort[{n1,n2,n3,n4}]; Els2=Sort[{n5,n6,n7,n8}]; Rest1=Drop[List1,{Els1[[4]],Els1[[4]]}]; Rest1=Drop[Rest1,{Els1[[3]],Els1[[3]]}]; Rest1=Drop[Rest1,{Els1[[2]],Els1[[2]]}]; Rest1=Drop[Rest1,{Els1[[1]],Els1[[1]]}]; Rest2=Drop[List2,{Els2[[4]],Els2[[4]]}]; Rest2=Drop[Rest2,{Els2[[3]],Els2[[3]]}]; Rest2=Drop[Rest2,{Els2[[2]],Els2[[2]]}]; Rest2=Drop[Rest2,{Els2[[1]],Els2[[1]]}]; Hyp`q`pq[El2/El4,1,q]*Hyp`q`pq[El3/El2/El4,1,q]*El4/Hyp`q`pq[El4,1,q]/Hyp`q`pq[El3/El4,1,q]/ (El1*Hyp`q`pq[(El2)/(El1),1,q])/Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1*q,El3*q/El1},Rest1],Join[{El2*q,El3*q/El2},Rest2],q,z]- Hyp`q`pq[El1/El4,1,q]*Hyp`q`pq[El3/El1/El4,1,q]*El4/Hyp`q`pq[El4,1,q]/Hyp`q`pq[El3/El4,1,q]/ (El1*Hyp`q`pq[(El2)/(El1),1,q])/Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]* Hyp`q`ph[Join[{El1,El3/El1},Rest1],Join[{El2,El3/El2},Rest2],q,z] ]/;Factor[q^2*List1[[n1]]*List1[[n2]]-List2[[n5]]*List2[[n6]]]===0&& Factor[List1[[n3]]/q-List2[[n7]]]===0&& Factor[List1[[n4]]/q-List2[[n8]]]===0&& Factor[List1[[n1]]*List1[[n2]]-List2[[n7]]*List2[[n8]]]===0); C118[n1_,n2_,n3_,n4_,n5_,n6_,n7_,n8_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els1,Els2,El1,El2,El3,Rest1,Rest2}, El1=List1[[n3]]; El2=List2[[n7]]/q; El3=List1[[n3]]*List2[[n6]]/q; Els1=Sort[{n1,n2,n3}]; Els2=Sort[{n4,n5,n6,n7,n8}]; Rest1=Drop[List1,{Els1[[3]],Els1[[3]]}]; Rest1=Drop[Rest1,{Els1[[2]],Els1[[2]]}]; Rest1=Drop[Rest1,{Els1[[1]],Els1[[1]]}]; Rest2=Drop[List2,{Els2[[5]],Els2[[5]]}]; Rest2=Drop[Rest2,{Els2[[4]],Els2[[4]]}]; Rest2=Drop[Rest2,{Els2[[3]],Els2[[3]]}]; Rest2=Drop[Rest2,{Els2[[2]],Els2[[2]]}]; Rest2=Drop[Rest2,{Els2[[1]],Els2[[1]]}]; Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q]/(Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q])* Hyp`q`ph[Join[{El1},Rest1],Join[{El3/El1,El2*q,El3/El2},Rest2],q,z]- Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3/(El1*El2*Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q])* Hyp`q`ph[Join[{El1*q},Rest1],Join[{El3*q/El1,El2,El3*q/El2},Rest2],q,z] ]/;Factor[q*List1[[n3]]*List2[[n6]]-List2[[n7]]*List2[[n8]]]===0&& Factor[List1[[n3]]*List2[[n6]]-q*List2[[n4]]^2]===0&& Factor[List1[[n1]]/q-List2[[n4]]]===0&& Factor[List1[[n1]]+List1[[n2]]]===0&& Factor[List2[[n4]]+List2[[n5]]]===0); C119[n1_,n2_,n3_,n4_,n5_,n6_,n7_,n8_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els1,Els2,El1,El2,El3,Rest1,Rest2}, El1=List1[[n1]]; El2=List2[[n5]]/q; El3=List1[[n1]]*List2[[n4]]/q; El4=List1[[n2]]/q; Els1=Sort[{n1,n2,n3}]; Els2=Sort[{n4,n5,n6,n7,n8}]; Rest1=Drop[List1,{Els1[[3]],Els1[[3]]}]; Rest1=Drop[Rest1,{Els1[[2]],Els1[[2]]}]; Rest1=Drop[Rest1,{Els1[[1]],Els1[[1]]}]; Rest2=Drop[List2,{Els2[[5]],Els2[[5]]}]; Rest2=Drop[Rest2,{Els2[[4]],Els2[[4]]}]; Rest2=Drop[Rest2,{Els2[[3]],Els2[[3]]}]; Rest2=Drop[Rest2,{Els2[[2]],Els2[[2]]}]; Rest2=Drop[Rest2,{Els2[[1]],Els2[[1]]}]; Hyp`q`pq[El2/El4,1,q]*Hyp`q`pq[El3/El2/El4,1,q]*El4/Hyp`q`pq[El4,1,q]/Hyp`q`pq[El3/El4,1,q]/ (El1*Hyp`q`pq[(El2)/(El1),1,q])/Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Join[{El1*q},Rest1],Join[{El3/El1,El2*q,El3*q/El2},Rest2],q,z]- Hyp`q`pq[El1/El4,1,q]*Hyp`q`pq[El3/El1/El4,1,q]*El4/Hyp`q`pq[El4,1,q]/Hyp`q`pq[El3/El4,1,q]/ (El1*Hyp`q`pq[(El2)/(El1),1,q])/Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]* Hyp`q`ph[Join[{El1},Rest1],Join[{El3*q/El1,El2,El3/El2},Rest2],q,z] ]/;Factor[q*List1[[n1]]*List2[[n4]]-List2[[n5]]*List2[[n6]]]===0&& Factor[List1[[n2]]/q-List2[[n7]]]===0&& Factor[List1[[n3]]/q-List2[[n8]]]===0&& Factor[List1[[n1]]*List2[[n4]]-q*List2[[n7]]*List2[[n8]]]===0); C120[n1_,n2_,n3_,n4_,n5_,n6_,n7_,n8_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els1,Els2,El1,El2,El3,Rest1,Rest2}, El1=List2[[n5]]/q; El2=List2[[n7]]/q; El3=List2[[n5]]*List2[[n6]]/q^2; Els1=Sort[{n1,n2}]; Els2=Sort[{n3,n4,n5,n6,n7,n8}]; Rest1=Drop[List1,{Els1[[2]],Els1[[2]]}]; Rest1=Drop[Rest1,{Els1[[1]],Els1[[1]]}]; Rest2=Drop[List2,{Els2[[6]],Els2[[6]]}]; Rest2=Drop[Rest2,{Els2[[5]],Els2[[5]]}]; Rest2=Drop[Rest2,{Els2[[4]],Els2[[4]]}]; Rest2=Drop[Rest2,{Els2[[3]],Els2[[3]]}]; Rest2=Drop[Rest2,{Els2[[2]],Els2[[2]]}]; Rest2=Drop[Rest2,{Els2[[1]],Els2[[1]]}]; Hyp`q`pq[El3/El1,1,q]*Hyp`q`pq[El3/El2,1,q]/(Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q])* Hyp`q`ph[Rest1,Join[{El1*q,El3/El1,El2*q,El3/El2},Rest2],q,z]- Hyp`q`pq[El1,1,q]*Hyp`q`pq[El2,1,q]*El3/(El1*El2*Hyp`q`pq[El3,1,q]*Hyp`q`pq[El3/El1/El2,1,q])* Hyp`q`ph[Rest1,Join[{El1,El3*q/El1,El2,El3*q/El2},Rest2],q,z] ]/;Factor[List2[[n5]]*List2[[n6]]-List2[[n7]]*List2[[n8]]]===0&& Factor[List2[[n5]]*List2[[n6]]-q^2*List2[[n3]]^2]===0&& Factor[List1[[n1]]/q-List2[[n3]]]===0&& Factor[List1[[n1]]+List1[[n2]]]===0&& Factor[List2[[n3]]+List2[[n4]]]===0); C121[n1_,n2_,n3_,n4_,n5_,n6_,n7_,n8_]:= (Hyp`q`ph[List1_List,List2_List,q_,z_]:> Module[{Els1,Els2,El1,El2,El3,Rest1,Rest2}, El1=List2[[n3]]/q; El2=List2[[n5]]/q; El3=List2[[n3]]*List2[[n4]]/q^2; El4=List1[[n1]]/q; Els1=Sort[{n1,n2}]; Els2=Sort[{n3,n4,n5,n6,n7,n8}]; Rest1=Drop[List1,{Els1[[2]],Els1[[2]]}]; Rest1=Drop[Rest1,{Els1[[1]],Els1[[1]]}]; Rest2=Drop[List2,{Els2[[6]],Els2[[6]]}]; Rest2=Drop[Rest2,{Els2[[5]],Els2[[5]]}]; Rest2=Drop[Rest2,{Els2[[4]],Els2[[4]]}]; Rest2=Drop[Rest2,{Els2[[3]],Els2[[3]]}]; Rest2=Drop[Rest2,{Els2[[2]],Els2[[2]]}]; Rest2=Drop[Rest2,{Els2[[1]],Els2[[1]]}]; Hyp`q`pq[El2/El4,1,q]*Hyp`q`pq[El3/El2/El4,1,q]*El4/Hyp`q`pq[El4,1,q]/Hyp`q`pq[El3/El4,1,q]/ (El1*Hyp`q`pq[(El2)/(El1),1,q])/Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El1,1,q]*Hyp`q`pq[El3/El1,1,q]* Hyp`q`ph[Rest1,Join[{El1,El3/El1,El2*q,El3*q/El2},Rest2],q,z]- Hyp`q`pq[El1/El4,1,q]*Hyp`q`pq[El3/El1/El4,1,q]*El4/Hyp`q`pq[El4,1,q]/Hyp`q`pq[El3/El4,1,q]/ (El1*Hyp`q`pq[(El2)/(El1),1,q])/Hyp`q`pq[El3/El1/El2,1,q]*Hyp`q`pq[El2,1,q]*Hyp`q`pq[El3/El2,1,q]* Hyp`q`ph[Rest1,Join[{El1*q,El3*q/El1,El2,El3/El2},Rest2],q,z] ]/;Factor[List2[[n3]]*List2[[n4]]-List2[[n5]]*List2[[n6]]]===0&& Factor[List1[[n1]]/q-List2[[n7]]]===0&& Factor[List1[[n2]]/q-List2[[n8]]]===0&& Factor[List2[[n3]]*List2[[n4]]-q^2*List2[[n7]]*List2[[n8]]]===0); End[] Protect[ C01, C02, C11, C12, C13, C14, C15, C16, C17, C18, C19, C20, C21, C22, C23, C24, C25, C26, C27, C28, C29, C30, C31, C32, C33, C34, C35, C36, C37, C38, C39, C40, C41, C42, C43, C44, C45, C46, C47, C48, C49, C50, C51, C52, C53, C54, C55, C56, C57, C58, C59, C60, C61, C62, C63, C64, C65, C66, C67, C68, C69, C70, C71, C72, C73, C74, C75, C76, C77, C78, C79, C80, C81, C82, C83, C84, C85, C86, C87, C88, C89, C90, C91, C92, C93, C94, C95, C96, C97, C98, C99, C100, C101, C102, C103, C104, C105, C106, C107, C108, C109, C110, C111, C112, C113, C114, C115, C116, C117, C118, C119, C120, C121 ] EndPackage[] If[$VersionNumber>=2.,$Messages=OutputStream["stdout",1],$Messages={"stdout"}]; If[$VersionNumber>=5.,$Messages={OutputStream["stdout",1]},Null];