/*
*
* Quantum Boolean Formula
* Author: Mohammad Javad Dousti
* University of Southern California (USC)
* Code is written based on GFI 1.2
*
*/
//Quantum primitive gates
//#include "gates.h"
#include <stdio.h>
#include <math.h>
//Definition of given constants
#define t 12 //size of the phase estimation register
#define m 6 //size of the direction register (!!!NEED TO UPDATE HEX() IF CHANGING THIS VALUE!!!)
#define x_max 2 //size of hex board in x direction
#define y_max 2 //size of hex board in y direction
#define s x_max*y_max //# of remaining moves; height of the tree
#define width (m*s)+2
#define pi 3.14159
/*-------------------------------------My helper functions-----------------------------------*/
const double PI = 3.141592654;
// Swaps 2 qubit states
scaff_module Swap (qbit q1[1], qbit q2[1]){
CNOT ( q1[0],q2[0]);
CNOT ( q2[0],q1[0]);
CNOT ( q1[0],q2[0]);
}
/*------------------Some helper functions borrowed from GSE implementation--------------------------*/
scaff_module controlledRz(qbit target[1], qbit control[1], double theta){
Rz(target[0],-1*theta/2);
CNOT(control[0],target[0]);
Rz(target[0],theta/2);
CNOT(control[0],target[0]);
}
scaff_module ctrlH(qbit *target, qbit *ctrl) {
S(*ctrl);
Rz(*target,pi);
Rz(*target,-pi/4);
CNOT( *ctrl,*target);
Rz(*target,pi/4);
Rz(*target,-pi/2);
CNOT( *ctrl,*target);
Rz(*target,-pi/2);
}
scaff_module ControlledRotationPiMinus (qbit target[1], qbit control[1], int j){
int k;
double power =1.0;
power=pow(2, j);
controlledRz (target, control, - (3*PI) / (2*power));
}
scaff_module inverseQFT (qbit* topregister, int length_topregister){
int i,j;
for (i =0;i<length_topregister;i++){
H(topregister [i]);
for (j =1;j <(length_topregister-i);j++){
ControlledRotationPiMinus (&topregister[i+j], &topregister[i],j);
}
}
for(i =0;i <(length_topregister/2);i++){ //forall
Swap (&topregister[i], &topregister[length_topregister-1-i]);
}
}
//Negative control CNOT; This implementation can change to a primitive if the underlying technology supports negative-controlled NOT
/*scaff_module NCNOT( qbit ctrl[1],qbit target[1]){
X(ctrl[0]);
CNOT( ctrl[0],target[0]);
X(ctrl[0]);
}
//n-control Toffoli; n>2
scaff_module nToffoli( int length_in, qbit* in,qbit target[1]){
//This should not lead to a compile error as long as the values are set in compile time.
qbit ancilla[length_in-2];
int i;
Toffoli ( ancilla[0], in[1],in[0]);
for(i=2; i<length_in-1; i++){ //forall
Toffoli ( ancilla[i-1], ancilla[i-2],in[i]);
}
Toffoli ( target[0], ancilla[length_in-3],in[length_in-1]);
//uncomputing ancilla
for(i=length_in-2; i>=2; i--){ //forall
Toffoli ( ancilla[i-1], ancilla[i-2],in[i]);
}
}
scaff_module AND(qbit target[1], qbit* in, int length_in){
PrepZ(target[0],0);
if (length_in == 1){
CNOT( in[0],target[0]);
}else if (length_in == 2){
Toffoli( target[0], in[1],in[0]);
}else{
nToffoli( length_in, target,in);
}
}
scaff_module NAND(qbit target[1], qbit* in, int length_in){
AND (&target[0], in, length_in);
X(target[0]);
}
scaff_module NOR(qbit target[1], qbit* in, int length_in){
int i;
for(i=0; i<length_in; i++){ //forall
X(in[i]);
}
AND(&target[1], in, length_in);
for(i=0; i<length_in; i++){ //forall
X(in[i]);
}
}
scaff_module OR(qbit target[1], qbit* in, int length_in){
NOR(&target[0], in, length_in);
X(target[0]);
}
*/
/*-------------------------------------------------------------------------------------------*/
/* IARPA - GFI Algorithm 13 */
/* Progress status: done */
/* Classical implementation: No */
/* begin ctqg
scaff_module C_TESTPOS(qbit ctrl[1], int pos, qbit bitmap[s], qbit maskmap[s], qbit newmap[s]){
//pos is a compile-time constant, so no mux is needed to be implemented explicitly
//No need to create a new ancilla each time; garbage collector will take care of "local" ancilla
qbit ancilla[1];
PrepZ(ancilla[0],1);
//ancilla[0] will get the old value of newmap[pos]; since newmap[pos] is a binary qubit, we can assume that it is possible to safely reset it to 0
if (maskmap[pos]==1 && bitmap[pos]==1 && ctrl[0]==1){
Swap(&newmap[pos], &ancilla[0]);
}
}
// end ctqg */
scaff_module C_TESTPOS(qbit ctrl[1], int pos, qbit bitmap[s], qbit maskmap[s], qbit newmap[s]){
qbit I00[1];
qbit I11[1];
qbit I1g[3];
qbit tof_anc[2];
CNOT ( I11[0] , maskmap[pos] );
CNOT ( I1g[0] , I11[0] );
CNOT ( I11[0] , maskmap[pos] );
Toffoli ( I11[0] , bitmap[pos] , I1g[0] );
Toffoli ( I1g[1] , I11[0] , I1g[0] );
Toffoli ( I11[0] , bitmap[pos] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , ctrl[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[0] ,tof_anc[0], ctrl[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I11[0] , I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I1g[2] ,tof_anc[0], I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , ctrl[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[0] ,tof_anc[0], ctrl[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[0] , newmap[pos] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( newmap[pos] ,tof_anc[1], I00[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , newmap[pos] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[0] ,tof_anc[1], newmap[pos] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[0] , newmap[pos] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( newmap[pos] ,tof_anc[1], I00[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
}
/* IARPA - GFI Algorithm 12 */
/* Classical implementation: No */
/*scaff_module FLOOD_FILL(qbit bitmap[s], qbit maskmap[s]){
//-------------Part 1: Initialization---------------
qbit stale[1];
qbit ancilla[4];
qbit newmap[s];
qbit ctrl[1];
qbit nctrl[1];
int index0, index1;
for(index0=0; index0<s; index0++){ //forall
PrepZ(newmap[index0],0);
//Note that the control-swap can be considered as a normal swap here because in case of bitmap[index0]==0, swapping does not change the values of bitmap[index0] and newmap[index0]. All of the swap gates can be done in parallel.
Swap(&newmap[index0], &bitmap[index0]);
}
//stale = 0 if at least one of the values in bitmap (which is already swapped to newmap) is 1, otherwise stale=1
NOR(&stale[0], newmap, s);
//-------------Part 2: While Loop---------------
//ancilla[1]
PrepZ(ctrl[0],0);
for (index1=0; index1<x_max; index1++){
PrepZ(ancilla[0],1);
NCNOT( &stale[0],&ctrl[0]);
Swap(&ancilla[0], stale);
//-------------Part 3: For Loop-----------------
for (index0=0; index0<s; index0++){
//note that since these are binary qubits, ideally, they will not be entangled and can be purified without uncomputation
PrepZ(nctrl[0],0);
PrepZ(ancilla[1],0);
PrepZ(ancilla[2],0);
PrepZ(ancilla[3],0);
X(ancilla[1]);
Toffoli( nctrl[0], ctrl[0],newmap[index0]);
Fredkin_decomp(ancilla[1], bitmap[index0], nctrl[0]);
//The conditions can be evaluated at compile time so they do not need to have multiple-control unitary
if (index0+x_max<s){
C_TESTPOS(&nctrl[0], index0+x_max, maskmap, bitmap, newmap);
}
if (index0-x_max>=0){
C_TESTPOS(&nctrl[0], index0-x_max, maskmap, bitmap, newmap);
}
if (index0 % x_max >0){
if (index0 -1 >= 0){
C_TESTPOS(&nctrl[0], index0-1, maskmap, bitmap, newmap);
}
if (index0 + x_max - 1 <s){
C_TESTPOS(&nctrl[0], index0+x_max-1, maskmap, bitmap, newmap);
}
}
if (index0 % x_max < x_max - 1){
if (index0 + 1 <s){
C_TESTPOS(&nctrl[0], index0+1, maskmap, bitmap, newmap);
}
if (index0 - x_max + 1 >= 0){
C_TESTPOS(&nctrl[0], index0 - x_max + 1, maskmap, bitmap, newmap);
}
}
Fredkin_decomp(ancilla[2], newmap[index0], nctrl[0]);
Fredkin_decomp(ancilla[3], stale[0], nctrl[0]);
}
CNOT( stale[0],ctrl[0]);
}
}
*/
/* IARPA - GFI Algorithm 11 */
/* Progress status: done */
/* Classical implementation: No */
/*scaff_module CHECKWIN_RED(qbit redboard[s], qbit outcome[1]){
int index0;
qbit blueboard[s];
//qbit outcome[1];
//initializing blueboard to 0
for(index0=0; index0<s; index0++){ //forall
PrepZ(blueboard[index0],0);
}
for(index0=0; index0<x_max; index0++){ //forall
//A negative controled CNOT
NCNOT( &redboard[index0],&blueboard[index0]); //note that this implementation does not need any MUX; because this gfor
//sequentially accesses the redboard vector
}
FLOOD_FILL(blueboard, redboard);
//if outcome==1 then red won; otherwise blue won
//NOR(outcome[0], blueboard[x_max*(y_max-1)..s]);
NOR(&outcome[0], &blueboard[x_max*(y_max-1)], s-(x_max*(y_max-1))+1);
}
*/
/* IARPA - GFI Algorithm 10 */
/* Progress status: done */
/* Classical implementation: No */
/*scaff_module HEX(qbit pos[width], qbit init_r[s], qbit init_b[s], qbit redState[1]){
qbit redboard[s];
qbit blueboard[s];
qbit player[1];
int i;
int select;
int move;
int shift=m*(s-1);
qbit address[m];
qbit blueState[1];
//qbit redState[1];
qbit ancilla[3];
PrepZ(player[0],0);
PrepZ(blueState[0],0);
PrepZ(redState[0],0);
for (i=0; i<m; i++){ //forall
PrepZ(address[i],0);
}
//initialization of redboard & blueboard
for(move=0; move<s; move++){ //forall
PrepZ(redboard[move],0);
PrepZ(blueboard[move],0);
CNOT( init_r[move],redboard[move]);
CNOT( init_b[move],blueboard[move]);
}
for (move=0; move<s; move++){ //forall
PrepZ(ancilla[0],1);
PrepZ(ancilla[1],1);
//address can be assigned during the loop unrolling; all the usages of address needs compiler help for adding a MUX; more info is presented in the report
//address = (pos>>shift) & (pow(2,m) -1);
// Address is a window into the position qbit register;
// we'll just swap the bits we want into the address ancilla bits
for (i=0; i<m; i++){ //forall
Swap(&address[i], &pos[shift+i]);
}
//CNOT( redboard[address],blueState[0]);
//Fredkin_decomp (redState[0], blueState[0], redboard[address]);
//CNOT( blueboard[address],redState[0]);
//Fredkin_decomp (redState[0], blueState[0], blueboard[address]);
//Fredkin_decomp (ancilla[0], blueboard[address], player[0]);
//X(player[0]);
//Fredkin_decomp (ancilla[1], redboard[address], player[0]);
// Can't address with qbits, but can used boolean controlled gates
// begin ctqg
for (select=0; select<pow(2,m); select++){ //forall
if ( (address[0] == (select & 1<<0) ) &&
(address[1] == (select & 1<<1) ) &&
(address[2] == (select & 1<<2) ) &&
(address[3] == (select & 1<<3) ) &&
(address[4] == (select & 1<<4) ) &&
(address[5] == (select & 1<<5) ) ){
CNOT( redboard[select],blueState[0]);
//Fredkin_decomp (redState[0], blueState[0], redboard[select]);
CNOT( blueState[0] , redboard[select]);
Toffoli ( redState[0], redboard[select],blueState[0]);
CNOT( blueState[0] , redboard[select]);
CNOT( blueboard[select],redState[0]);
//Fredkin_decomp (redState[0], blueState[0], blueboard[select]);
CNOT ( blueState[0],blueboard[select]);
Toffoli ( redState[0], blueboard[select],blueState[0]);
CNOT ( blueState[0],blueboard[select]);
//Fredkin_decomp (ancilla[0], blueboard[select], player[0]);
CNOT ( blueboard[select],player[0]);
Toffoli ( ancilla[0], player[0],blueboard[select]);
CNOT ( blueboard[select],player[0]);
X(player[0]);
//Fredkin_decomp (ancilla[1], redboard[select], player[0]);
CNOT ( redboard[select],player[0]);
Toffoli ( ancilla[1], player[0],redboard[select]);
CNOT ( redboard[select],player[0]);
}
}
// end ctqg
// Swap back; don't lose your bits!
for (i=0; i<m; i++){ //forall
Swap(&address[i], &pos[shift+i]);
}
//can be done in compile time
shift=shift-m;
}
//ancilla[2] is a reference only
CHECKWIN_RED(redboard, &ancilla[2]);
CNOT( ancilla[2],blueState[0]);
Fredkin_decomp(redState[0], blueState[0], ancilla[2]);
X(ancilla[2]);
CNOT( ancilla[2],redState[0]);
Fredkin_decomp(redState[0], blueState[0], ancilla[2]);
X(ancilla[2]);
}
*/
/* Partitioning Algorithm 9 to 2 sub-algorithms: Type -M and Type +M */
/* IARPA - GFI Algorithm 9; Type -M; */
/* Progress status: done */
/* Classical implementation: No */
/*scaff_module C_SHIFT_MINUS_M(qbit ctrl[1], qbit register1[width], int w){
int index0;
for(index0=0; index0<w+m; index0++){ //forall
Toffoli( register1[index0], ctrl[0],register1[index0-m]);
Toffoli( register1[index0-m], ctrl[0],register1[index0]);
}
}
*/
/* IARPA - GFI Algorithm 9; Type +M; */
/* Progress status: done */
/* Classical implementation: No */
/*scaff_module C_SHIFT_PLUS_M(qbit ctrl[1], qbit register1[width], int w){
int index0;
for(index0=w-1; index0>=m; index0--){ //forall
Toffoli( register1[index0], ctrl[0],register1[index0-m]);
Toffoli( register1[index0-m], ctrl[0],register1[index0]);
}
}
*/
/* IARPA - GFI Algorithm 8 */
/* Progress status: done */
/*scaff_module C_TOCHILD(qbit ctrl[1], qbit pos[width], qbit dir[m], int w){
C_SHIFT_PLUS_M(&ctrl[0], pos, m);
int qubit;
for(qubit=0; qubit<m; qubit++){ //forall
Toffoli( pos[qubit], ctrl[0],dir[qubit]);
Toffoli( dir[qubit], ctrl[0],pos[qubit]);
X(dir[qubit]);
}
}
*/
/* IARPA - GFI Algorithm 7 */
/* Progress status: done */
/* Classical implementation: No */
/*scaff_module C_TOPARENT(qbit ctrl[1], qbit pos[width], qbit dir[m], int w){
int qubit;
for(qubit=0; qubit<m; qubit++){ //forall
Toffoli( dir[qubit], ctrl[0],pos[qubit]);
X(dir[qubit]);
Toffoli( pos[qubit], ctrl[0],dir[qubit]);
}
C_SHIFT_MINUS_M(&ctrl[0], pos, -m);
}
*/
/* IARPA - GFI Algorithm 6 */
/* Progress status: done */
/* Classical implementation: No */
/* begin ctqg
scaff_module C_UNDO_ORACLE(qbit ctrl[1], qbit pos[width], qbit leaf[1], qbit paraleaf[1], qbit binary[1], qbit height1[1], qbit r[1], qbit rp[1], qbit rpp[1], qbit dir[m], qbit init_r[s], qbit init_b[s]){
int i;
qbit redState[1];
qbit nToffAnc[1];
qbit ancilla[3];
qbit pos_temp[s-2];
HEX(pos, init_r, init_b, redState);
//nToffoli(b.work.binary[0], {b.paraleaf, HEX(b.pos, init_r, init_b, redState), ctrl[0]}, 3);
Toffoli ( nToffAnc[0], redState[0],paraleaf[0]);
Toffoli ( binary[0], ctrl[0],nToffAnc[0]);
// Uncompute
Toffoli ( nToffAnc[0], redState[0],paraleaf[0]);
NAND (&ancilla[0], dir, m);
PrepZ(ancilla[1],1);
CNOT( ancilla[0],ancilla[1]); //ancilla[1]=X(ancilla[0])
//using pos_temp as a reference to pos[sm, (s-1)m, ..., 3m]
for (int i=3; i<=s; i++){
pos_temp[i-3]=pos[i*m];
}
NOR(&ancilla[2], pos_temp, s-2);
// begin ctqg
if (ctrl[0]==1){
if (pos[width-1]==0 && pos[width-2]==1 && dir[0]==0){
X(leaf[0]);
}else if (pos[width-1]==1 || (pos[width-1]==0 && pos[width-2]==1 && pos[width-2-m]==1 && ancilla[0]==1)){
X(binary[0]);
X(paraleaf[0]);
}else if (ancilla[2]==1){
if (ancilla[1]==1){
if (pos[2*m]==1){
X(height1[0]);
}else if (pos[m]==1){
X(r[0]);
}else if (pos[1]==1){
X(rp[0]);
X(binary[0]);
}
}else if (pos[2*m]==0 && pos[m]==0 && pos[1]==1){
X(height1[0]);
}else if (pos[2*m]==0 && pos[m]==0 && dir[0]==1){
X(rpp[0]);
}else if (pos[2*m]==0 && pos[m]==0 && pos[0]==1){
X(r[0]);
}else if (pos[2*m]==0 && pos[m]==0){
X(rp[0]);
X(binary[0]);
}
}
}
// end ctqg
}
end ctqg */
scaff_module C_UNDO_ORACLE(qbit ctrl[1], qbit pos[width], qbit leaf[1], qbit paraleaf[1], qbit binary[1], qbit height1[1], qbit r[1], qbit rp[1], qbit rpp[1], qbit dir[m], qbit init_r[s], qbit init_b[s]){
qbit I00[20];
qbit I0g[22];
qbit I11[11];
qbit I1g[163];
qbit tof_anc[7];
CNOT ( init_r[0] , I00[8] );
CNOT ( init_b[0] , I00[12] );
CNOT ( pos[18] , I00[2] );
CNOT ( I00[2] , pos[18] );
CNOT ( pos[18] , I00[2] );
CNOT ( pos[19] , I00[3] );
CNOT ( I00[3] , pos[19] );
CNOT ( pos[19] , I00[3] );
CNOT ( pos[20] , I00[4] );
CNOT ( I00[4] , pos[20] );
CNOT ( pos[20] , I00[4] );
CNOT ( pos[21] , I00[5] );
CNOT ( I00[5] , pos[21] );
CNOT ( pos[21] , I00[5] );
CNOT ( pos[22] , I00[6] );
CNOT ( I00[6] , pos[22] );
CNOT ( pos[22] , I00[6] );
CNOT ( pos[23] , I00[7] );
CNOT ( I00[7] , pos[23] );
CNOT ( pos[23] , I00[7] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
CNOT ( I1g[0] , I11[5] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
Toffoli ( I11[5] , I00[3] , I1g[0] );
CNOT ( I11[5] , I1g[0] );
Toffoli ( I1g[1] , I11[5] , I1g[0] );
Toffoli ( I11[5] , I00[3] , I1g[0] );
CNOT ( I11[5] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[5] , I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I11[5] , I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I1g[2] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[5] , I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[5] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[3] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[5] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I11[5] , I1g[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I1g[4] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I11[5] ,tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I11[5] , I1g[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( I1g[5] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I11[5] ,tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I00[1] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I00[8] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I00[1] ,tof_anc[4], I00[8] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I0g[1] , I00[1] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[8] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I00[1] ,tof_anc[4], I00[8] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I0g[1] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I00[12] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I00[1] ,tof_anc[4], I00[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I0g[1] , I00[1] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[12] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I00[1] ,tof_anc[4], I00[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I00[12] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I11[6] , I00[12] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[12] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I00[12] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( I00[0] ,tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I00[8] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I11[7] , I00[8] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[8] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I00[8] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
CNOT ( I11[5] , I00[2] );
CNOT ( I1g[6] , I11[5] );
CNOT ( I11[5] , I00[2] );
Toffoli ( I11[5] , I00[3] , I1g[6] );
CNOT ( I11[5] , I1g[6] );
Toffoli ( I1g[7] , I11[5] , I1g[6] );
Toffoli ( I11[5] , I00[3] , I1g[6] );
CNOT ( I11[5] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli ( I11[5] , I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I11[5] , I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli ( I1g[8] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli ( I11[5] , I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli ( I11[5] ,tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I11[5] , I1g[9] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli ( I1g[9] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli ( I11[5] ,tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli ( I11[5] ,tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I11[5] , I1g[10] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli ( I1g[10] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli ( I11[5] ,tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli ( I11[5] ,tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I11[5] , I1g[11] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli ( I1g[11] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I11[5] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli ( I11[5] ,tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I00[1] , I00[9] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I00[9] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I00[1] ,tof_anc[4], I00[9] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I0g[1] , I00[1] , I00[9] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[9] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I00[1] ,tof_anc[4], I00[9] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I0g[1] , I00[13] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I00[13] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I00[1] ,tof_anc[4], I00[13] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I0g[1] , I00[1] , I00[13] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[13] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I00[1] ,tof_anc[4], I00[13] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I00[13] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I11[6] , I00[13] , I00[0] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[13] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I00[13] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I00[0] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli ( I00[0] ,tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I00[9] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I11[7] , I00[9] , I00[0] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[9] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
// Toffoli ( I1g[6] , I1g[7] , I1g[8] , I1g[9] , I1g[10] , I1g[11] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I00[9] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[8] );
Toffoli (tof_anc[0], I1g[7] , I1g[6] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
CNOT ( I1g[12] , I11[5] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
Toffoli ( I11[5] , I00[3] , I1g[12] );
Toffoli ( I1g[13] , I11[5] , I1g[12] );
Toffoli ( I11[5] , I00[3] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli ( I11[5] , I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I11[5] , I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli ( I1g[14] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli ( I11[5] , I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli ( I11[5] ,tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I11[5] , I1g[15] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli ( I1g[15] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli ( I11[5] ,tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli ( I11[5] ,tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I11[5] , I1g[16] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli ( I1g[16] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli ( I11[5] ,tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli ( I11[5] ,tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I11[5] , I1g[17] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli ( I1g[17] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I11[5] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli ( I11[5] ,tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I00[1] , I00[10] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I00[10] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I00[1] ,tof_anc[4], I00[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I0g[1] , I00[1] , I00[10] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[10] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I00[1] ,tof_anc[4], I00[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I0g[1] , I00[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I00[14] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I00[1] ,tof_anc[4], I00[14] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I0g[1] , I00[1] , I00[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[14] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I00[1] ,tof_anc[4], I00[14] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I00[14] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I11[6] , I00[14] , I00[0] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[14] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I00[14] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I00[0] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli ( I00[0] ,tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I00[10] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I11[7] , I00[10] , I00[0] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[10] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
// Toffoli ( I1g[12] , I1g[13] , I1g[14] , I1g[15] , I1g[16] , I1g[17] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I00[10] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[14] );
Toffoli (tof_anc[0], I1g[13] , I1g[12] );
CNOT ( I11[5] , I00[2] );
CNOT ( I1g[18] , I11[5] );
CNOT ( I11[5] , I00[2] );
Toffoli ( I11[5] , I00[3] , I1g[18] );
Toffoli ( I1g[19] , I11[5] , I1g[18] );
Toffoli ( I11[5] , I00[3] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli ( I11[5] , I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I11[5] , I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli ( I1g[20] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli ( I11[5] , I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli ( I11[5] ,tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I11[5] , I1g[21] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli ( I1g[21] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli ( I11[5] ,tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli ( I11[5] ,tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I11[5] , I1g[22] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli ( I1g[22] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli ( I11[5] ,tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli ( I11[5] ,tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I11[5] , I1g[23] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli ( I1g[23] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I11[5] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli ( I11[5] ,tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I00[1] , I00[11] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I00[11] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I00[1] ,tof_anc[4], I00[11] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I0g[1] , I00[1] , I00[11] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[11] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I00[1] ,tof_anc[4], I00[11] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I0g[1] , I00[15] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I00[15] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I00[1] ,tof_anc[4], I00[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I0g[1] , I00[1] , I00[15] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[15] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I00[1] ,tof_anc[4], I00[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I00[15] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I11[6] , I00[15] , I00[0] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[15] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I00[15] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I00[0] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli ( I00[0] ,tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I00[11] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I11[7] , I00[11] , I00[0] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[11] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
// Toffoli ( I1g[18] , I1g[19] , I1g[20] , I1g[21] , I1g[22] , I1g[23] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I00[11] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[20] );
Toffoli (tof_anc[0], I1g[19] , I1g[18] );
CNOT ( pos[18] , I00[2] );
CNOT ( I00[2] , pos[18] );
CNOT ( pos[18] , I00[2] );
CNOT ( pos[19] , I00[3] );
CNOT ( I00[3] , pos[19] );
CNOT ( pos[19] , I00[3] );
CNOT ( pos[20] , I00[4] );
CNOT ( I00[4] , pos[20] );
CNOT ( pos[20] , I00[4] );
CNOT ( pos[21] , I00[5] );
CNOT ( I00[5] , pos[21] );
CNOT ( pos[21] , I00[5] );
CNOT ( pos[22] , I00[6] );
CNOT ( I00[6] , pos[22] );
CNOT ( pos[22] , I00[6] );
CNOT ( pos[23] , I00[7] );
CNOT ( I00[7] , pos[23] );
CNOT ( pos[23] , I00[7] );
CNOT ( init_r[1] , I00[9] );
CNOT ( init_b[1] , I00[13] );
CNOT ( pos[12] , I00[2] );
CNOT ( I00[2] , pos[12] );
CNOT ( pos[12] , I00[2] );
CNOT ( pos[13] , I00[3] );
CNOT ( I00[3] , pos[13] );
CNOT ( pos[13] , I00[3] );
CNOT ( pos[14] , I00[4] );
CNOT ( I00[4] , pos[14] );
CNOT ( pos[14] , I00[4] );
CNOT ( pos[15] , I00[5] );
CNOT ( I00[5] , pos[15] );
CNOT ( pos[15] , I00[5] );
CNOT ( pos[16] , I00[6] );
CNOT ( I00[6] , pos[16] );
CNOT ( pos[16] , I00[6] );
CNOT ( pos[17] , I00[7] );
CNOT ( I00[7] , pos[17] );
CNOT ( pos[17] , I00[7] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
CNOT ( I1g[24] , I11[5] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
Toffoli ( I11[5] , I00[3] , I1g[24] );
CNOT ( I11[5] , I1g[24] );
Toffoli ( I1g[25] , I11[5] , I1g[24] );
Toffoli ( I11[5] , I00[3] , I1g[24] );
CNOT ( I11[5] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli ( I11[5] , I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I11[5] , I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli ( I1g[26] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli ( I11[5] , I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli ( I11[5] ,tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I11[5] , I1g[27] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli ( I1g[27] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli ( I11[5] ,tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli ( I11[5] ,tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I11[5] , I1g[28] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli ( I1g[28] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli ( I11[5] ,tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli ( I11[5] ,tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I11[5] , I1g[29] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli ( I1g[29] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I11[5] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli ( I11[5] ,tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I00[1] , I00[8] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I00[8] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I00[1] ,tof_anc[4], I00[8] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I0g[1] , I00[1] , I00[8] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[8] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I00[1] ,tof_anc[4], I00[8] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I0g[1] , I00[12] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I00[12] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I00[1] ,tof_anc[4], I00[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I0g[1] , I00[1] , I00[12] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[12] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I00[1] ,tof_anc[4], I00[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I00[12] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I11[6] , I00[12] , I00[0] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[12] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I00[12] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I00[0] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli ( I00[0] ,tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I00[8] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I11[7] , I00[8] , I00[0] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[8] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
// Toffoli ( I1g[24] , I1g[25] , I1g[26] , I1g[27] , I1g[28] , I1g[29] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I00[8] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[26] );
Toffoli (tof_anc[0], I1g[25] , I1g[24] );
CNOT ( I11[5] , I00[2] );
CNOT ( I1g[30] , I11[5] );
CNOT ( I11[5] , I00[2] );
Toffoli ( I11[5] , I00[3] , I1g[30] );
CNOT ( I11[5] , I1g[30] );
Toffoli ( I1g[31] , I11[5] , I1g[30] );
Toffoli ( I11[5] , I00[3] , I1g[30] );
CNOT ( I11[5] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli ( I11[5] , I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I11[5] , I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli ( I1g[32] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli ( I11[5] , I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli ( I11[5] ,tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I11[5] , I1g[33] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli ( I1g[33] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli ( I11[5] ,tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli ( I11[5] ,tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I11[5] , I1g[34] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli ( I1g[34] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli ( I11[5] ,tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli ( I11[5] ,tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I11[5] , I1g[35] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli ( I1g[35] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I11[5] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli ( I11[5] ,tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I00[1] , I00[9] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I00[9] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I00[1] ,tof_anc[4], I00[9] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I0g[1] , I00[1] , I00[9] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[9] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I00[1] ,tof_anc[4], I00[9] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I0g[1] , I00[13] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I00[13] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I00[1] ,tof_anc[4], I00[13] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I0g[1] , I00[1] , I00[13] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[13] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I00[1] ,tof_anc[4], I00[13] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I00[13] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I11[6] , I00[13] , I00[0] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[13] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I00[13] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I00[0] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli ( I00[0] ,tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I00[9] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I11[7] , I00[9] , I00[0] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[9] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
// Toffoli ( I1g[30] , I1g[31] , I1g[32] , I1g[33] , I1g[34] , I1g[35] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I00[9] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[32] );
Toffoli (tof_anc[0], I1g[31] , I1g[30] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
CNOT ( I1g[36] , I11[5] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
Toffoli ( I11[5] , I00[3] , I1g[36] );
Toffoli ( I1g[37] , I11[5] , I1g[36] );
Toffoli ( I11[5] , I00[3] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli ( I11[5] , I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I11[5] , I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli ( I1g[38] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli ( I11[5] , I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli ( I11[5] ,tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I11[5] , I1g[39] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli ( I1g[39] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli ( I11[5] ,tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli ( I11[5] ,tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I11[5] , I1g[40] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli ( I1g[40] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli ( I11[5] ,tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli ( I11[5] ,tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I11[5] , I1g[41] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli ( I1g[41] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I11[5] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli ( I11[5] ,tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I00[1] , I00[10] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I00[10] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I00[1] ,tof_anc[4], I00[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I0g[1] , I00[1] , I00[10] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[10] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I00[1] ,tof_anc[4], I00[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I0g[1] , I00[14] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I00[14] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I00[1] ,tof_anc[4], I00[14] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I0g[1] , I00[1] , I00[14] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[14] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I00[1] ,tof_anc[4], I00[14] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I00[14] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I11[6] , I00[14] , I00[0] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[14] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I00[14] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I00[0] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli ( I00[0] ,tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I00[10] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I11[7] , I00[10] , I00[0] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[10] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
// Toffoli ( I1g[36] , I1g[37] , I1g[38] , I1g[39] , I1g[40] , I1g[41] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I00[10] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[38] );
Toffoli (tof_anc[0], I1g[37] , I1g[36] );
CNOT ( I11[5] , I00[2] );
CNOT ( I1g[42] , I11[5] );
CNOT ( I11[5] , I00[2] );
Toffoli ( I11[5] , I00[3] , I1g[42] );
Toffoli ( I1g[43] , I11[5] , I1g[42] );
Toffoli ( I11[5] , I00[3] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli ( I11[5] , I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I11[5] , I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli ( I1g[44] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli ( I11[5] , I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli ( I11[5] ,tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I11[5] , I1g[45] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli ( I1g[45] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli ( I11[5] ,tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli ( I11[5] ,tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I11[5] , I1g[46] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli ( I1g[46] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli ( I11[5] ,tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli ( I11[5] ,tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I11[5] , I1g[47] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli ( I1g[47] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I11[5] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli ( I11[5] ,tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I00[1] , I00[11] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I00[11] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I00[1] ,tof_anc[4], I00[11] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I0g[1] , I00[1] , I00[11] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[11] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I00[1] ,tof_anc[4], I00[11] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I0g[1] , I00[15] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I00[15] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I00[1] ,tof_anc[4], I00[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I0g[1] , I00[1] , I00[15] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[15] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I00[1] ,tof_anc[4], I00[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I00[15] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I11[6] , I00[15] , I00[0] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[15] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I00[15] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I00[0] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli ( I00[0] ,tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I00[11] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I11[7] , I00[11] , I00[0] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[11] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
// Toffoli ( I1g[42] , I1g[43] , I1g[44] , I1g[45] , I1g[46] , I1g[47] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I00[11] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[44] );
Toffoli (tof_anc[0], I1g[43] , I1g[42] );
CNOT ( pos[12] , I00[2] );
CNOT ( I00[2] , pos[12] );
CNOT ( pos[12] , I00[2] );
CNOT ( pos[13] , I00[3] );
CNOT ( I00[3] , pos[13] );
CNOT ( pos[13] , I00[3] );
CNOT ( pos[14] , I00[4] );
CNOT ( I00[4] , pos[14] );
CNOT ( pos[14] , I00[4] );
CNOT ( pos[15] , I00[5] );
CNOT ( I00[5] , pos[15] );
CNOT ( pos[15] , I00[5] );
CNOT ( pos[16] , I00[6] );
CNOT ( I00[6] , pos[16] );
CNOT ( pos[16] , I00[6] );
CNOT ( pos[17] , I00[7] );
CNOT ( I00[7] , pos[17] );
CNOT ( pos[17] , I00[7] );
CNOT ( init_r[2] , I00[10] );
CNOT ( init_b[2] , I00[14] );
CNOT ( pos[6] , I00[2] );
CNOT ( I00[2] , pos[6] );
CNOT ( pos[6] , I00[2] );
CNOT ( pos[7] , I00[3] );
CNOT ( I00[3] , pos[7] );
CNOT ( pos[7] , I00[3] );
CNOT ( pos[8] , I00[4] );
CNOT ( I00[4] , pos[8] );
CNOT ( pos[8] , I00[4] );
CNOT ( pos[9] , I00[5] );
CNOT ( I00[5] , pos[9] );
CNOT ( pos[9] , I00[5] );
CNOT ( pos[10] , I00[6] );
CNOT ( I00[6] , pos[10] );
CNOT ( pos[10] , I00[6] );
CNOT ( pos[11] , I00[7] );
CNOT ( I00[7] , pos[11] );
CNOT ( pos[11] , I00[7] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
CNOT ( I1g[48] , I11[5] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
Toffoli ( I11[5] , I00[3] , I1g[48] );
CNOT ( I11[5] , I1g[48] );
Toffoli ( I1g[49] , I11[5] , I1g[48] );
Toffoli ( I11[5] , I00[3] , I1g[48] );
CNOT ( I11[5] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli ( I11[5] , I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I11[5] , I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli ( I1g[50] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli ( I11[5] , I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli ( I11[5] ,tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I11[5] , I1g[51] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli ( I1g[51] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli ( I11[5] ,tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli ( I11[5] ,tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I11[5] , I1g[52] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli ( I1g[52] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli ( I11[5] ,tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli ( I11[5] ,tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I11[5] , I1g[53] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli ( I1g[53] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I11[5] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli ( I11[5] ,tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I00[1] , I00[8] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I00[8] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I00[1] ,tof_anc[4], I00[8] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I0g[1] , I00[1] , I00[8] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[8] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I00[1] ,tof_anc[4], I00[8] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I0g[1] , I00[12] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I00[12] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I00[1] ,tof_anc[4], I00[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I0g[1] , I00[1] , I00[12] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[12] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I00[1] ,tof_anc[4], I00[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I00[12] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I11[6] , I00[12] , I00[0] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[12] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I00[12] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I00[0] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli ( I00[0] ,tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I00[8] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I11[7] , I00[8] , I00[0] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[8] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
// Toffoli ( I1g[48] , I1g[49] , I1g[50] , I1g[51] , I1g[52] , I1g[53] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I00[8] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[50] );
Toffoli (tof_anc[0], I1g[49] , I1g[48] );
CNOT ( I11[5] , I00[2] );
CNOT ( I1g[54] , I11[5] );
CNOT ( I11[5] , I00[2] );
Toffoli ( I11[5] , I00[3] , I1g[54] );
CNOT ( I11[5] , I1g[54] );
Toffoli ( I1g[55] , I11[5] , I1g[54] );
Toffoli ( I11[5] , I00[3] , I1g[54] );
CNOT ( I11[5] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli ( I11[5] , I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I11[5] , I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli ( I1g[56] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli ( I11[5] , I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli ( I11[5] ,tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I11[5] , I1g[57] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli ( I1g[57] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli ( I11[5] ,tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli ( I11[5] ,tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I11[5] , I1g[58] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli ( I1g[58] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli ( I11[5] ,tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli ( I11[5] ,tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I11[5] , I1g[59] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli ( I1g[59] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I11[5] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli ( I11[5] ,tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I00[1] , I00[9] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I00[9] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I00[1] ,tof_anc[4], I00[9] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I0g[1] , I00[1] , I00[9] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[9] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I00[1] ,tof_anc[4], I00[9] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I0g[1] , I00[13] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I00[13] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I00[1] ,tof_anc[4], I00[13] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I0g[1] , I00[1] , I00[13] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[13] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I00[1] ,tof_anc[4], I00[13] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I00[13] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I11[6] , I00[13] , I00[0] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[13] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I00[13] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I00[0] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli ( I00[0] ,tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I00[9] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I11[7] , I00[9] , I00[0] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[9] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
// Toffoli ( I1g[54] , I1g[55] , I1g[56] , I1g[57] , I1g[58] , I1g[59] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I00[9] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[56] );
Toffoli (tof_anc[0], I1g[55] , I1g[54] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
CNOT ( I1g[60] , I11[5] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
Toffoli ( I11[5] , I00[3] , I1g[60] );
Toffoli ( I1g[61] , I11[5] , I1g[60] );
Toffoli ( I11[5] , I00[3] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli ( I11[5] , I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I11[5] , I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli ( I1g[62] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli ( I11[5] , I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli ( I11[5] ,tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I11[5] , I1g[63] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli ( I1g[63] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli ( I11[5] ,tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli ( I11[5] ,tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I11[5] , I1g[64] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli ( I1g[64] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli ( I11[5] ,tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli ( I11[5] ,tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I11[5] , I1g[65] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli ( I1g[65] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I11[5] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli ( I11[5] ,tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I00[1] , I00[10] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I00[10] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I00[1] ,tof_anc[4], I00[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I0g[1] , I00[1] , I00[10] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[10] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I00[1] ,tof_anc[4], I00[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I0g[1] , I00[14] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I00[14] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I00[1] ,tof_anc[4], I00[14] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I0g[1] , I00[1] , I00[14] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[14] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I00[1] ,tof_anc[4], I00[14] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I00[14] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I11[6] , I00[14] , I00[0] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[14] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I00[14] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I00[0] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli ( I00[0] ,tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I00[10] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I11[7] , I00[10] , I00[0] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[10] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
// Toffoli ( I1g[60] , I1g[61] , I1g[62] , I1g[63] , I1g[64] , I1g[65] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I00[10] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[62] );
Toffoli (tof_anc[0], I1g[61] , I1g[60] );
CNOT ( I11[5] , I00[2] );
CNOT ( I1g[66] , I11[5] );
CNOT ( I11[5] , I00[2] );
Toffoli ( I11[5] , I00[3] , I1g[66] );
Toffoli ( I1g[67] , I11[5] , I1g[66] );
Toffoli ( I11[5] , I00[3] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli ( I11[5] , I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I11[5] , I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli ( I1g[68] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli ( I11[5] , I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli ( I11[5] ,tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I11[5] , I1g[69] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli ( I1g[69] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli ( I11[5] ,tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli ( I11[5] ,tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I11[5] , I1g[70] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli ( I1g[70] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli ( I11[5] ,tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli ( I11[5] ,tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I11[5] , I1g[71] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli ( I1g[71] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I11[5] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli ( I11[5] ,tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I00[1] , I00[11] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I00[11] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I00[1] ,tof_anc[4], I00[11] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I0g[1] , I00[1] , I00[11] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[11] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I00[1] ,tof_anc[4], I00[11] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I0g[1] , I00[15] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I00[15] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I00[1] ,tof_anc[4], I00[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I0g[1] , I00[1] , I00[15] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[15] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I00[1] ,tof_anc[4], I00[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I00[15] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I11[6] , I00[15] , I00[0] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[15] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I00[15] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I00[0] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli ( I00[0] ,tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I00[11] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I11[7] , I00[11] , I00[0] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[11] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
// Toffoli ( I1g[66] , I1g[67] , I1g[68] , I1g[69] , I1g[70] , I1g[71] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I00[11] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[68] );
Toffoli (tof_anc[0], I1g[67] , I1g[66] );
CNOT ( pos[6] , I00[2] );
CNOT ( I00[2] , pos[6] );
CNOT ( pos[6] , I00[2] );
CNOT ( pos[7] , I00[3] );
CNOT ( I00[3] , pos[7] );
CNOT ( pos[7] , I00[3] );
CNOT ( pos[8] , I00[4] );
CNOT ( I00[4] , pos[8] );
CNOT ( pos[8] , I00[4] );
CNOT ( pos[9] , I00[5] );
CNOT ( I00[5] , pos[9] );
CNOT ( pos[9] , I00[5] );
CNOT ( pos[10] , I00[6] );
CNOT ( I00[6] , pos[10] );
CNOT ( pos[10] , I00[6] );
CNOT ( pos[11] , I00[7] );
CNOT ( I00[7] , pos[11] );
CNOT ( pos[11] , I00[7] );
CNOT ( init_r[3] , I00[11] );
CNOT ( init_b[3] , I00[15] );
CNOT ( pos[0] , I00[2] );
CNOT ( I00[2] , pos[0] );
CNOT ( pos[0] , I00[2] );
CNOT ( pos[1] , I00[3] );
CNOT ( I00[3] , pos[1] );
CNOT ( pos[1] , I00[3] );
CNOT ( pos[2] , I00[4] );
CNOT ( I00[4] , pos[2] );
CNOT ( pos[2] , I00[4] );
CNOT ( pos[3] , I00[5] );
CNOT ( I00[5] , pos[3] );
CNOT ( pos[3] , I00[5] );
CNOT ( pos[4] , I00[6] );
CNOT ( I00[6] , pos[4] );
CNOT ( pos[4] , I00[6] );
CNOT ( pos[5] , I00[7] );
CNOT ( I00[7] , pos[5] );
CNOT ( pos[5] , I00[7] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
CNOT ( I1g[72] , I11[5] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
Toffoli ( I11[5] , I00[3] , I1g[72] );
CNOT ( I11[5] , I1g[72] );
Toffoli ( I1g[73] , I11[5] , I1g[72] );
Toffoli ( I11[5] , I00[3] , I1g[72] );
CNOT ( I11[5] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli ( I11[5] , I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I11[5] , I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli ( I1g[74] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli ( I11[5] , I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli ( I11[5] ,tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I11[5] , I1g[75] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli ( I1g[75] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli ( I11[5] ,tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli ( I11[5] ,tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I11[5] , I1g[76] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli ( I1g[76] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli ( I11[5] ,tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli ( I11[5] ,tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I11[5] , I1g[77] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli ( I1g[77] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I11[5] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli ( I11[5] ,tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I00[1] , I00[8] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I00[8] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I00[1] ,tof_anc[4], I00[8] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I0g[1] , I00[1] , I00[8] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[8] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I00[1] ,tof_anc[4], I00[8] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I0g[1] , I00[12] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I00[12] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I00[1] ,tof_anc[4], I00[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I0g[1] , I00[1] , I00[12] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[12] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I00[1] ,tof_anc[4], I00[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I00[12] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I11[6] , I00[12] , I00[0] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[12] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I00[12] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I00[0] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli ( I00[0] ,tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I00[8] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I11[7] , I00[8] , I00[0] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[8] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
// Toffoli ( I1g[72] , I1g[73] , I1g[74] , I1g[75] , I1g[76] , I1g[77] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I00[8] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[74] );
Toffoli (tof_anc[0], I1g[73] , I1g[72] );
CNOT ( I11[5] , I00[2] );
CNOT ( I1g[78] , I11[5] );
CNOT ( I11[5] , I00[2] );
Toffoli ( I11[5] , I00[3] , I1g[78] );
CNOT ( I11[5] , I1g[78] );
Toffoli ( I1g[79] , I11[5] , I1g[78] );
Toffoli ( I11[5] , I00[3] , I1g[78] );
CNOT ( I11[5] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli ( I11[5] , I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I11[5] , I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli ( I1g[80] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli ( I11[5] , I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli ( I11[5] ,tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I11[5] , I1g[81] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli ( I1g[81] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli ( I11[5] ,tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli ( I11[5] ,tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I11[5] , I1g[82] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli ( I1g[82] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli ( I11[5] ,tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli ( I11[5] ,tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I11[5] , I1g[83] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli ( I1g[83] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I11[5] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli ( I11[5] ,tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I00[1] , I00[9] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I00[9] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I00[1] ,tof_anc[4], I00[9] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I0g[1] , I00[1] , I00[9] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[9] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I00[1] ,tof_anc[4], I00[9] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I0g[1] , I00[13] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I00[13] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I00[1] ,tof_anc[4], I00[13] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I0g[1] , I00[1] , I00[13] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[13] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I00[1] ,tof_anc[4], I00[13] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I00[13] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I11[6] , I00[13] , I00[0] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[13] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I00[13] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I00[0] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli ( I00[0] ,tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I00[9] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I11[7] , I00[9] , I00[0] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[9] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
// Toffoli ( I1g[78] , I1g[79] , I1g[80] , I1g[81] , I1g[82] , I1g[83] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I00[9] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[80] );
Toffoli (tof_anc[0], I1g[79] , I1g[78] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
CNOT ( I1g[84] , I11[5] );
CNOT ( I11[5] , I00[2] );
X ( I11[5] );
Toffoli ( I11[5] , I00[3] , I1g[84] );
Toffoli ( I1g[85] , I11[5] , I1g[84] );
Toffoli ( I11[5] , I00[3] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli ( I11[5] , I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I11[5] , I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli ( I1g[86] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli ( I11[5] , I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli ( I11[5] ,tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I11[5] , I1g[87] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli ( I1g[87] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli ( I11[5] ,tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli ( I11[5] ,tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I11[5] , I1g[88] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli ( I1g[88] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli ( I11[5] ,tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli ( I11[5] ,tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I11[5] , I1g[89] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli ( I1g[89] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I11[5] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli ( I11[5] ,tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I00[1] , I00[10] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I00[10] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I00[1] ,tof_anc[4], I00[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I0g[1] , I00[1] , I00[10] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[10] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I00[1] ,tof_anc[4], I00[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I0g[1] , I00[14] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I00[14] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I00[1] ,tof_anc[4], I00[14] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I0g[1] , I00[1] , I00[14] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[14] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I00[1] ,tof_anc[4], I00[14] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I00[14] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I11[6] , I00[14] , I00[0] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[14] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I00[14] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I00[0] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli ( I00[0] ,tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I00[10] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I11[7] , I00[10] , I00[0] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[10] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
// Toffoli ( I1g[84] , I1g[85] , I1g[86] , I1g[87] , I1g[88] , I1g[89] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I00[10] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[86] );
Toffoli (tof_anc[0], I1g[85] , I1g[84] );
CNOT ( I11[5] , I00[2] );
CNOT ( I1g[90] , I11[5] );
CNOT ( I11[5] , I00[2] );
Toffoli ( I11[5] , I00[3] , I1g[90] );
Toffoli ( I1g[91] , I11[5] , I1g[90] );
Toffoli ( I11[5] , I00[3] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli ( I11[5] , I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I11[5] , I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli ( I1g[92] ,tof_anc[0], I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I00[4] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli ( I11[5] ,tof_anc[0], I00[4] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli ( I11[5] , I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli ( I11[5] ,tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I11[5] , I1g[93] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli ( I1g[93] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I00[5] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli ( I11[5] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli ( I11[5] ,tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli ( I11[5] ,tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I11[5] , I1g[94] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli ( I1g[94] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I00[6] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli ( I11[5] ,tof_anc[2], I00[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli ( I11[5] ,tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli ( I11[5] ,tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I11[5] , I1g[95] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli ( I1g[95] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I00[7] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli ( I11[5] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I11[5] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli ( I11[5] ,tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I00[1] , I00[11] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I00[11] ,tof_anc[4], I00[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I00[1] ,tof_anc[4], I00[11] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I0g[1] , I00[1] , I00[11] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[11] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I00[1] ,tof_anc[4], I00[11] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I0g[1] , I00[15] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I00[15] ,tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I00[1] ,tof_anc[4], I00[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I0g[1] , I00[1] , I00[15] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli ( I00[15] ,tof_anc[5], I00[1] );
Toffoli (tof_anc[5],tof_anc[4], I0g[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I00[1] ,tof_anc[4], I00[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I00[15] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I11[6] , I00[15] , I00[0] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli ( I00[0] ,tof_anc[5], I00[15] );
Toffoli (tof_anc[5],tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I00[15] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I00[0] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli ( I00[0] ,tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I00[11] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I11[7] , I00[11] , I00[0] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli ( I00[0] ,tof_anc[5], I00[11] );
Toffoli (tof_anc[5],tof_anc[4], I11[7] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
// Toffoli ( I1g[90] , I1g[91] , I1g[92] , I1g[93] , I1g[94] , I1g[95] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I00[11] ,tof_anc[4], I00[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[92] );
Toffoli (tof_anc[0], I1g[91] , I1g[90] );
CNOT ( pos[0] , I00[2] );
CNOT ( I00[2] , pos[0] );
CNOT ( pos[0] , I00[2] );
CNOT ( pos[1] , I00[3] );
CNOT ( I00[3] , pos[1] );
CNOT ( pos[1] , I00[3] );
CNOT ( pos[2] , I00[4] );
CNOT ( I00[4] , pos[2] );
CNOT ( pos[2] , I00[4] );
CNOT ( pos[3] , I00[5] );
CNOT ( I00[5] , pos[3] );
CNOT ( pos[3] , I00[5] );
CNOT ( pos[4] , I00[6] );
CNOT ( I00[6] , pos[4] );
CNOT ( pos[4] , I00[6] );
CNOT ( pos[5] , I00[7] );
CNOT ( I00[7] , pos[5] );
CNOT ( pos[5] , I00[7] );
X ( I00[8] );
CNOT ( I00[8] , I00[16] );
X ( I00[8] );
X ( I00[9] );
CNOT ( I00[9] , I00[17] );
X ( I00[9] );
CNOT ( I00[16] , I0g[8] );
CNOT ( I0g[8] , I00[16] );
CNOT ( I00[16] , I0g[8] );
CNOT ( I00[17] , I0g[9] );
CNOT ( I0g[9] , I00[17] );
CNOT ( I00[17] , I0g[9] );
CNOT ( I00[18] , I0g[10] );
CNOT ( I0g[10] , I00[18] );
CNOT ( I00[18] , I0g[10] );
CNOT ( I00[19] , I0g[11] );
CNOT ( I0g[11] , I00[19] );
CNOT ( I00[19] , I0g[11] );
X ( I0g[8] );
X ( I0g[9] );
X ( I0g[10] );
X ( I0g[11] );
Toffoli ( I0g[9] , I0g[8] , I0g[14] );
Toffoli ( I0g[14] , I0g[10] , I0g[15] );
Toffoli ( I0g[15] , I0g[11] , I0g[4] );
Toffoli ( I0g[14] , I0g[10] , I0g[15] );
X ( I0g[8] );
X ( I0g[9] );
X ( I0g[10] );
X ( I0g[11] );
X ( I0g[4] );
CNOT ( I0g[4] , I0g[12] );
X ( I0g[4] );
CNOT ( I0g[4] , I1g[96] );
CNOT ( I1g[96] , I0g[4] );
CNOT ( I0g[4] , I1g[96] );
X ( I0g[5] );
Toffoli ( I0g[13] , I0g[12] , I0g[8] );
CNOT ( I0g[13] , I00[16] );
Toffoli ( I00[16] , I0g[13] , I0g[5] );
CNOT ( I0g[13] , I00[16] );
CNOT ( I11[9] , I00[18] );
CNOT ( I1g[97] , I11[9] );
CNOT ( I11[9] , I00[18] );
Toffoli ( I11[9] , I00[10] , I1g[97] );
Toffoli ( I1g[98] , I11[9] , I1g[97] );
Toffoli ( I11[9] , I00[10] , I1g[97] );
// Toffoli ( I1g[97] , I1g[98] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[98] , I1g[97] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[98] , I1g[97] );
// Toffoli ( I1g[97] , I1g[98] , I11[9] , I1g[99] );
Toffoli (tof_anc[0], I1g[98] , I1g[97] );
Toffoli ( I1g[99] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[98] , I1g[97] );
// Toffoli ( I1g[97] , I1g[98] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[98] , I1g[97] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[98] , I1g[97] );
// Toffoli ( I1g[97] , I1g[98] , I1g[99] , I11[10] , I0g[10] );
Toffoli (tof_anc[0], I1g[98] , I1g[97] );
Toffoli (tof_anc[1],tof_anc[0], I1g[99] );
Toffoli ( I0g[10] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[99] );
Toffoli (tof_anc[0], I1g[98] , I1g[97] );
// Toffoli ( I1g[97] , I1g[98] , I1g[99] , I0g[10] , I11[10] );
Toffoli (tof_anc[0], I1g[98] , I1g[97] );
Toffoli (tof_anc[1],tof_anc[0], I1g[99] );
Toffoli ( I11[10] ,tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[99] );
Toffoli (tof_anc[0], I1g[98] , I1g[97] );
// Toffoli ( I1g[97] , I1g[98] , I1g[99] , I11[10] , I0g[10] );
Toffoli (tof_anc[0], I1g[98] , I1g[97] );
Toffoli (tof_anc[1],tof_anc[0], I1g[99] );
Toffoli ( I0g[10] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[99] );
Toffoli (tof_anc[0], I1g[98] , I1g[97] );
CNOT ( I0g[13] , I0g[8] );
Toffoli ( I0g[8] , I0g[13] , I0g[6] );
CNOT ( I0g[13] , I0g[8] );
CNOT ( I0g[13] , I0g[4] );
Toffoli ( I0g[4] , I0g[13] , I0g[7] );
CNOT ( I0g[13] , I0g[4] );
X ( I0g[5] );
Toffoli ( I0g[13] , I0g[12] , I0g[9] );
CNOT ( I0g[13] , I00[17] );
Toffoli ( I00[17] , I0g[13] , I0g[5] );
CNOT ( I0g[13] , I00[17] );
CNOT ( I11[9] , I00[19] );
CNOT ( I1g[100] , I11[9] );
CNOT ( I11[9] , I00[19] );
Toffoli ( I11[9] , I00[11] , I1g[100] );
Toffoli ( I1g[101] , I11[9] , I1g[100] );
Toffoli ( I11[9] , I00[11] , I1g[100] );
// Toffoli ( I1g[100] , I1g[101] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[101] , I1g[100] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[101] , I1g[100] );
// Toffoli ( I1g[100] , I1g[101] , I11[9] , I1g[102] );
Toffoli (tof_anc[0], I1g[101] , I1g[100] );
Toffoli ( I1g[102] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[101] , I1g[100] );
// Toffoli ( I1g[100] , I1g[101] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[101] , I1g[100] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[101] , I1g[100] );
// Toffoli ( I1g[100] , I1g[101] , I1g[102] , I11[10] , I0g[11] );
Toffoli (tof_anc[0], I1g[101] , I1g[100] );
Toffoli (tof_anc[1],tof_anc[0], I1g[102] );
Toffoli ( I0g[11] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[102] );
Toffoli (tof_anc[0], I1g[101] , I1g[100] );
// Toffoli ( I1g[100] , I1g[101] , I1g[102] , I0g[11] , I11[10] );
Toffoli (tof_anc[0], I1g[101] , I1g[100] );
Toffoli (tof_anc[1],tof_anc[0], I1g[102] );
Toffoli ( I11[10] ,tof_anc[1], I0g[11] );
Toffoli (tof_anc[1],tof_anc[0], I1g[102] );
Toffoli (tof_anc[0], I1g[101] , I1g[100] );
// Toffoli ( I1g[100] , I1g[101] , I1g[102] , I11[10] , I0g[11] );
Toffoli (tof_anc[0], I1g[101] , I1g[100] );
Toffoli (tof_anc[1],tof_anc[0], I1g[102] );
Toffoli ( I0g[11] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[102] );
Toffoli (tof_anc[0], I1g[101] , I1g[100] );
CNOT ( I11[9] , I00[16] );
CNOT ( I1g[103] , I11[9] );
CNOT ( I11[9] , I00[16] );
Toffoli ( I11[9] , I00[8] , I1g[103] );
Toffoli ( I1g[104] , I11[9] , I1g[103] );
Toffoli ( I11[9] , I00[8] , I1g[103] );
// Toffoli ( I1g[103] , I1g[104] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[104] , I1g[103] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[104] , I1g[103] );
// Toffoli ( I1g[103] , I1g[104] , I11[9] , I1g[105] );
Toffoli (tof_anc[0], I1g[104] , I1g[103] );
Toffoli ( I1g[105] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[104] , I1g[103] );
// Toffoli ( I1g[103] , I1g[104] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[104] , I1g[103] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[104] , I1g[103] );
// Toffoli ( I1g[103] , I1g[104] , I1g[105] , I11[10] , I0g[8] );
Toffoli (tof_anc[0], I1g[104] , I1g[103] );
Toffoli (tof_anc[1],tof_anc[0], I1g[105] );
Toffoli ( I0g[8] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[105] );
Toffoli (tof_anc[0], I1g[104] , I1g[103] );
// Toffoli ( I1g[103] , I1g[104] , I1g[105] , I0g[8] , I11[10] );
Toffoli (tof_anc[0], I1g[104] , I1g[103] );
Toffoli (tof_anc[1],tof_anc[0], I1g[105] );
Toffoli ( I11[10] ,tof_anc[1], I0g[8] );
Toffoli (tof_anc[1],tof_anc[0], I1g[105] );
Toffoli (tof_anc[0], I1g[104] , I1g[103] );
// Toffoli ( I1g[103] , I1g[104] , I1g[105] , I11[10] , I0g[8] );
Toffoli (tof_anc[0], I1g[104] , I1g[103] );
Toffoli (tof_anc[1],tof_anc[0], I1g[105] );
Toffoli ( I0g[8] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[105] );
Toffoli (tof_anc[0], I1g[104] , I1g[103] );
CNOT ( I11[9] , I00[18] );
CNOT ( I1g[106] , I11[9] );
CNOT ( I11[9] , I00[18] );
Toffoli ( I11[9] , I00[10] , I1g[106] );
Toffoli ( I1g[107] , I11[9] , I1g[106] );
Toffoli ( I11[9] , I00[10] , I1g[106] );
// Toffoli ( I1g[106] , I1g[107] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[107] , I1g[106] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[107] , I1g[106] );
// Toffoli ( I1g[106] , I1g[107] , I11[9] , I1g[108] );
Toffoli (tof_anc[0], I1g[107] , I1g[106] );
Toffoli ( I1g[108] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[107] , I1g[106] );
// Toffoli ( I1g[106] , I1g[107] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[107] , I1g[106] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[107] , I1g[106] );
// Toffoli ( I1g[106] , I1g[107] , I1g[108] , I11[10] , I0g[10] );
Toffoli (tof_anc[0], I1g[107] , I1g[106] );
Toffoli (tof_anc[1],tof_anc[0], I1g[108] );
Toffoli ( I0g[10] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[108] );
Toffoli (tof_anc[0], I1g[107] , I1g[106] );
// Toffoli ( I1g[106] , I1g[107] , I1g[108] , I0g[10] , I11[10] );
Toffoli (tof_anc[0], I1g[107] , I1g[106] );
Toffoli (tof_anc[1],tof_anc[0], I1g[108] );
Toffoli ( I11[10] ,tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[108] );
Toffoli (tof_anc[0], I1g[107] , I1g[106] );
// Toffoli ( I1g[106] , I1g[107] , I1g[108] , I11[10] , I0g[10] );
Toffoli (tof_anc[0], I1g[107] , I1g[106] );
Toffoli (tof_anc[1],tof_anc[0], I1g[108] );
Toffoli ( I0g[10] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[108] );
Toffoli (tof_anc[0], I1g[107] , I1g[106] );
CNOT ( I0g[13] , I0g[9] );
Toffoli ( I0g[9] , I0g[13] , I0g[6] );
CNOT ( I0g[13] , I0g[9] );
CNOT ( I0g[13] , I0g[4] );
Toffoli ( I0g[4] , I0g[13] , I0g[7] );
CNOT ( I0g[13] , I0g[4] );
X ( I0g[5] );
Toffoli ( I0g[13] , I0g[12] , I0g[10] );
CNOT ( I0g[13] , I00[18] );
Toffoli ( I00[18] , I0g[13] , I0g[5] );
CNOT ( I0g[13] , I00[18] );
CNOT ( I11[9] , I00[16] );
CNOT ( I1g[109] , I11[9] );
CNOT ( I11[9] , I00[16] );
Toffoli ( I11[9] , I00[8] , I1g[109] );
Toffoli ( I1g[110] , I11[9] , I1g[109] );
Toffoli ( I11[9] , I00[8] , I1g[109] );
// Toffoli ( I1g[109] , I1g[110] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[110] , I1g[109] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[110] , I1g[109] );
// Toffoli ( I1g[109] , I1g[110] , I11[9] , I1g[111] );
Toffoli (tof_anc[0], I1g[110] , I1g[109] );
Toffoli ( I1g[111] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[110] , I1g[109] );
// Toffoli ( I1g[109] , I1g[110] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[110] , I1g[109] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[110] , I1g[109] );
// Toffoli ( I1g[109] , I1g[110] , I1g[111] , I11[10] , I0g[8] );
Toffoli (tof_anc[0], I1g[110] , I1g[109] );
Toffoli (tof_anc[1],tof_anc[0], I1g[111] );
Toffoli ( I0g[8] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[111] );
Toffoli (tof_anc[0], I1g[110] , I1g[109] );
// Toffoli ( I1g[109] , I1g[110] , I1g[111] , I0g[8] , I11[10] );
Toffoli (tof_anc[0], I1g[110] , I1g[109] );
Toffoli (tof_anc[1],tof_anc[0], I1g[111] );
Toffoli ( I11[10] ,tof_anc[1], I0g[8] );
Toffoli (tof_anc[1],tof_anc[0], I1g[111] );
Toffoli (tof_anc[0], I1g[110] , I1g[109] );
// Toffoli ( I1g[109] , I1g[110] , I1g[111] , I11[10] , I0g[8] );
Toffoli (tof_anc[0], I1g[110] , I1g[109] );
Toffoli (tof_anc[1],tof_anc[0], I1g[111] );
Toffoli ( I0g[8] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[111] );
Toffoli (tof_anc[0], I1g[110] , I1g[109] );
CNOT ( I0g[13] , I0g[10] );
Toffoli ( I0g[10] , I0g[13] , I0g[6] );
CNOT ( I0g[13] , I0g[10] );
CNOT ( I0g[13] , I0g[4] );
Toffoli ( I0g[4] , I0g[13] , I0g[7] );
CNOT ( I0g[13] , I0g[4] );
X ( I0g[5] );
Toffoli ( I0g[13] , I0g[12] , I0g[11] );
CNOT ( I0g[13] , I00[19] );
Toffoli ( I00[19] , I0g[13] , I0g[5] );
CNOT ( I0g[13] , I00[19] );
CNOT ( I11[9] , I00[17] );
CNOT ( I1g[112] , I11[9] );
CNOT ( I11[9] , I00[17] );
Toffoli ( I11[9] , I00[9] , I1g[112] );
Toffoli ( I1g[113] , I11[9] , I1g[112] );
Toffoli ( I11[9] , I00[9] , I1g[112] );
// Toffoli ( I1g[112] , I1g[113] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[113] , I1g[112] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[113] , I1g[112] );
// Toffoli ( I1g[112] , I1g[113] , I11[9] , I1g[114] );
Toffoli (tof_anc[0], I1g[113] , I1g[112] );
Toffoli ( I1g[114] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[113] , I1g[112] );
// Toffoli ( I1g[112] , I1g[113] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[113] , I1g[112] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[113] , I1g[112] );
// Toffoli ( I1g[112] , I1g[113] , I1g[114] , I11[10] , I0g[9] );
Toffoli (tof_anc[0], I1g[113] , I1g[112] );
Toffoli (tof_anc[1],tof_anc[0], I1g[114] );
Toffoli ( I0g[9] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[114] );
Toffoli (tof_anc[0], I1g[113] , I1g[112] );
// Toffoli ( I1g[112] , I1g[113] , I1g[114] , I0g[9] , I11[10] );
Toffoli (tof_anc[0], I1g[113] , I1g[112] );
Toffoli (tof_anc[1],tof_anc[0], I1g[114] );
Toffoli ( I11[10] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[114] );
Toffoli (tof_anc[0], I1g[113] , I1g[112] );
// Toffoli ( I1g[112] , I1g[113] , I1g[114] , I11[10] , I0g[9] );
Toffoli (tof_anc[0], I1g[113] , I1g[112] );
Toffoli (tof_anc[1],tof_anc[0], I1g[114] );
Toffoli ( I0g[9] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[114] );
Toffoli (tof_anc[0], I1g[113] , I1g[112] );
CNOT ( I11[9] , I00[18] );
CNOT ( I1g[115] , I11[9] );
CNOT ( I11[9] , I00[18] );
Toffoli ( I11[9] , I00[10] , I1g[115] );
Toffoli ( I1g[116] , I11[9] , I1g[115] );
Toffoli ( I11[9] , I00[10] , I1g[115] );
// Toffoli ( I1g[115] , I1g[116] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[116] , I1g[115] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[116] , I1g[115] );
// Toffoli ( I1g[115] , I1g[116] , I11[9] , I1g[117] );
Toffoli (tof_anc[0], I1g[116] , I1g[115] );
Toffoli ( I1g[117] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[116] , I1g[115] );
// Toffoli ( I1g[115] , I1g[116] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[116] , I1g[115] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[116] , I1g[115] );
// Toffoli ( I1g[115] , I1g[116] , I1g[117] , I11[10] , I0g[10] );
Toffoli (tof_anc[0], I1g[116] , I1g[115] );
Toffoli (tof_anc[1],tof_anc[0], I1g[117] );
Toffoli ( I0g[10] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[117] );
Toffoli (tof_anc[0], I1g[116] , I1g[115] );
// Toffoli ( I1g[115] , I1g[116] , I1g[117] , I0g[10] , I11[10] );
Toffoli (tof_anc[0], I1g[116] , I1g[115] );
Toffoli (tof_anc[1],tof_anc[0], I1g[117] );
Toffoli ( I11[10] ,tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[117] );
Toffoli (tof_anc[0], I1g[116] , I1g[115] );
// Toffoli ( I1g[115] , I1g[116] , I1g[117] , I11[10] , I0g[10] );
Toffoli (tof_anc[0], I1g[116] , I1g[115] );
Toffoli (tof_anc[1],tof_anc[0], I1g[117] );
Toffoli ( I0g[10] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[117] );
Toffoli (tof_anc[0], I1g[116] , I1g[115] );
CNOT ( I0g[13] , I0g[11] );
Toffoli ( I0g[11] , I0g[13] , I0g[6] );
CNOT ( I0g[13] , I0g[11] );
CNOT ( I0g[13] , I0g[4] );
Toffoli ( I0g[4] , I0g[13] , I0g[7] );
CNOT ( I0g[13] , I0g[4] );
CNOT ( I0g[4] , I0g[12] );
X ( I0g[4] );
CNOT ( I0g[4] , I0g[12] );
X ( I0g[4] );
CNOT ( I0g[4] , I1g[96] );
CNOT ( I1g[96] , I0g[4] );
CNOT ( I0g[4] , I1g[96] );
X ( I0g[5] );
Toffoli ( I0g[13] , I0g[12] , I0g[8] );
CNOT ( I0g[13] , I00[16] );
Toffoli ( I00[16] , I0g[13] , I0g[5] );
CNOT ( I0g[13] , I00[16] );
CNOT ( I11[9] , I00[18] );
CNOT ( I1g[118] , I11[9] );
CNOT ( I11[9] , I00[18] );
Toffoli ( I11[9] , I00[10] , I1g[118] );
Toffoli ( I1g[119] , I11[9] , I1g[118] );
Toffoli ( I11[9] , I00[10] , I1g[118] );
// Toffoli ( I1g[118] , I1g[119] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[119] , I1g[118] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[119] , I1g[118] );
// Toffoli ( I1g[118] , I1g[119] , I11[9] , I1g[120] );
Toffoli (tof_anc[0], I1g[119] , I1g[118] );
Toffoli ( I1g[120] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[119] , I1g[118] );
// Toffoli ( I1g[118] , I1g[119] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[119] , I1g[118] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[119] , I1g[118] );
// Toffoli ( I1g[118] , I1g[119] , I1g[120] , I11[10] , I0g[10] );
Toffoli (tof_anc[0], I1g[119] , I1g[118] );
Toffoli (tof_anc[1],tof_anc[0], I1g[120] );
Toffoli ( I0g[10] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[120] );
Toffoli (tof_anc[0], I1g[119] , I1g[118] );
// Toffoli ( I1g[118] , I1g[119] , I1g[120] , I0g[10] , I11[10] );
Toffoli (tof_anc[0], I1g[119] , I1g[118] );
Toffoli (tof_anc[1],tof_anc[0], I1g[120] );
Toffoli ( I11[10] ,tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[120] );
Toffoli (tof_anc[0], I1g[119] , I1g[118] );
// Toffoli ( I1g[118] , I1g[119] , I1g[120] , I11[10] , I0g[10] );
Toffoli (tof_anc[0], I1g[119] , I1g[118] );
Toffoli (tof_anc[1],tof_anc[0], I1g[120] );
Toffoli ( I0g[10] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[120] );
Toffoli (tof_anc[0], I1g[119] , I1g[118] );
CNOT ( I0g[13] , I0g[8] );
Toffoli ( I0g[8] , I0g[13] , I0g[6] );
CNOT ( I0g[13] , I0g[8] );
CNOT ( I0g[13] , I0g[4] );
Toffoli ( I0g[4] , I0g[13] , I0g[7] );
CNOT ( I0g[13] , I0g[4] );
X ( I0g[5] );
Toffoli ( I0g[13] , I0g[12] , I0g[9] );
CNOT ( I0g[13] , I00[17] );
Toffoli ( I00[17] , I0g[13] , I0g[5] );
CNOT ( I0g[13] , I00[17] );
CNOT ( I11[9] , I00[19] );
CNOT ( I1g[121] , I11[9] );
CNOT ( I11[9] , I00[19] );
Toffoli ( I11[9] , I00[11] , I1g[121] );
Toffoli ( I1g[122] , I11[9] , I1g[121] );
Toffoli ( I11[9] , I00[11] , I1g[121] );
// Toffoli ( I1g[121] , I1g[122] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[122] , I1g[121] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[122] , I1g[121] );
// Toffoli ( I1g[121] , I1g[122] , I11[9] , I1g[123] );
Toffoli (tof_anc[0], I1g[122] , I1g[121] );
Toffoli ( I1g[123] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[122] , I1g[121] );
// Toffoli ( I1g[121] , I1g[122] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[122] , I1g[121] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[122] , I1g[121] );
// Toffoli ( I1g[121] , I1g[122] , I1g[123] , I11[10] , I0g[11] );
Toffoli (tof_anc[0], I1g[122] , I1g[121] );
Toffoli (tof_anc[1],tof_anc[0], I1g[123] );
Toffoli ( I0g[11] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[123] );
Toffoli (tof_anc[0], I1g[122] , I1g[121] );
// Toffoli ( I1g[121] , I1g[122] , I1g[123] , I0g[11] , I11[10] );
Toffoli (tof_anc[0], I1g[122] , I1g[121] );
Toffoli (tof_anc[1],tof_anc[0], I1g[123] );
Toffoli ( I11[10] ,tof_anc[1], I0g[11] );
Toffoli (tof_anc[1],tof_anc[0], I1g[123] );
Toffoli (tof_anc[0], I1g[122] , I1g[121] );
// Toffoli ( I1g[121] , I1g[122] , I1g[123] , I11[10] , I0g[11] );
Toffoli (tof_anc[0], I1g[122] , I1g[121] );
Toffoli (tof_anc[1],tof_anc[0], I1g[123] );
Toffoli ( I0g[11] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[123] );
Toffoli (tof_anc[0], I1g[122] , I1g[121] );
CNOT ( I11[9] , I00[16] );
CNOT ( I1g[124] , I11[9] );
CNOT ( I11[9] , I00[16] );
Toffoli ( I11[9] , I00[8] , I1g[124] );
Toffoli ( I1g[125] , I11[9] , I1g[124] );
Toffoli ( I11[9] , I00[8] , I1g[124] );
// Toffoli ( I1g[124] , I1g[125] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[125] , I1g[124] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[125] , I1g[124] );
// Toffoli ( I1g[124] , I1g[125] , I11[9] , I1g[126] );
Toffoli (tof_anc[0], I1g[125] , I1g[124] );
Toffoli ( I1g[126] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[125] , I1g[124] );
// Toffoli ( I1g[124] , I1g[125] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[125] , I1g[124] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[125] , I1g[124] );
// Toffoli ( I1g[124] , I1g[125] , I1g[126] , I11[10] , I0g[8] );
Toffoli (tof_anc[0], I1g[125] , I1g[124] );
Toffoli (tof_anc[1],tof_anc[0], I1g[126] );
Toffoli ( I0g[8] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[126] );
Toffoli (tof_anc[0], I1g[125] , I1g[124] );
// Toffoli ( I1g[124] , I1g[125] , I1g[126] , I0g[8] , I11[10] );
Toffoli (tof_anc[0], I1g[125] , I1g[124] );
Toffoli (tof_anc[1],tof_anc[0], I1g[126] );
Toffoli ( I11[10] ,tof_anc[1], I0g[8] );
Toffoli (tof_anc[1],tof_anc[0], I1g[126] );
Toffoli (tof_anc[0], I1g[125] , I1g[124] );
// Toffoli ( I1g[124] , I1g[125] , I1g[126] , I11[10] , I0g[8] );
Toffoli (tof_anc[0], I1g[125] , I1g[124] );
Toffoli (tof_anc[1],tof_anc[0], I1g[126] );
Toffoli ( I0g[8] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[126] );
Toffoli (tof_anc[0], I1g[125] , I1g[124] );
CNOT ( I11[9] , I00[18] );
CNOT ( I1g[127] , I11[9] );
CNOT ( I11[9] , I00[18] );
Toffoli ( I11[9] , I00[10] , I1g[127] );
Toffoli ( I1g[128] , I11[9] , I1g[127] );
Toffoli ( I11[9] , I00[10] , I1g[127] );
// Toffoli ( I1g[127] , I1g[128] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[128] , I1g[127] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[128] , I1g[127] );
// Toffoli ( I1g[127] , I1g[128] , I11[9] , I1g[129] );
Toffoli (tof_anc[0], I1g[128] , I1g[127] );
Toffoli ( I1g[129] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[128] , I1g[127] );
// Toffoli ( I1g[127] , I1g[128] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[128] , I1g[127] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[128] , I1g[127] );
// Toffoli ( I1g[127] , I1g[128] , I1g[129] , I11[10] , I0g[10] );
Toffoli (tof_anc[0], I1g[128] , I1g[127] );
Toffoli (tof_anc[1],tof_anc[0], I1g[129] );
Toffoli ( I0g[10] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[129] );
Toffoli (tof_anc[0], I1g[128] , I1g[127] );
// Toffoli ( I1g[127] , I1g[128] , I1g[129] , I0g[10] , I11[10] );
Toffoli (tof_anc[0], I1g[128] , I1g[127] );
Toffoli (tof_anc[1],tof_anc[0], I1g[129] );
Toffoli ( I11[10] ,tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[129] );
Toffoli (tof_anc[0], I1g[128] , I1g[127] );
// Toffoli ( I1g[127] , I1g[128] , I1g[129] , I11[10] , I0g[10] );
Toffoli (tof_anc[0], I1g[128] , I1g[127] );
Toffoli (tof_anc[1],tof_anc[0], I1g[129] );
Toffoli ( I0g[10] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[129] );
Toffoli (tof_anc[0], I1g[128] , I1g[127] );
CNOT ( I0g[13] , I0g[9] );
Toffoli ( I0g[9] , I0g[13] , I0g[6] );
CNOT ( I0g[13] , I0g[9] );
CNOT ( I0g[13] , I0g[4] );
Toffoli ( I0g[4] , I0g[13] , I0g[7] );
CNOT ( I0g[13] , I0g[4] );
X ( I0g[5] );
Toffoli ( I0g[13] , I0g[12] , I0g[10] );
CNOT ( I0g[13] , I00[18] );
Toffoli ( I00[18] , I0g[13] , I0g[5] );
CNOT ( I0g[13] , I00[18] );
CNOT ( I11[9] , I00[16] );
CNOT ( I1g[130] , I11[9] );
CNOT ( I11[9] , I00[16] );
Toffoli ( I11[9] , I00[8] , I1g[130] );
Toffoli ( I1g[131] , I11[9] , I1g[130] );
Toffoli ( I11[9] , I00[8] , I1g[130] );
// Toffoli ( I1g[130] , I1g[131] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[131] , I1g[130] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[131] , I1g[130] );
// Toffoli ( I1g[130] , I1g[131] , I11[9] , I1g[132] );
Toffoli (tof_anc[0], I1g[131] , I1g[130] );
Toffoli ( I1g[132] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[131] , I1g[130] );
// Toffoli ( I1g[130] , I1g[131] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[131] , I1g[130] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[131] , I1g[130] );
// Toffoli ( I1g[130] , I1g[131] , I1g[132] , I11[10] , I0g[8] );
Toffoli (tof_anc[0], I1g[131] , I1g[130] );
Toffoli (tof_anc[1],tof_anc[0], I1g[132] );
Toffoli ( I0g[8] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[132] );
Toffoli (tof_anc[0], I1g[131] , I1g[130] );
// Toffoli ( I1g[130] , I1g[131] , I1g[132] , I0g[8] , I11[10] );
Toffoli (tof_anc[0], I1g[131] , I1g[130] );
Toffoli (tof_anc[1],tof_anc[0], I1g[132] );
Toffoli ( I11[10] ,tof_anc[1], I0g[8] );
Toffoli (tof_anc[1],tof_anc[0], I1g[132] );
Toffoli (tof_anc[0], I1g[131] , I1g[130] );
// Toffoli ( I1g[130] , I1g[131] , I1g[132] , I11[10] , I0g[8] );
Toffoli (tof_anc[0], I1g[131] , I1g[130] );
Toffoli (tof_anc[1],tof_anc[0], I1g[132] );
Toffoli ( I0g[8] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[132] );
Toffoli (tof_anc[0], I1g[131] , I1g[130] );
CNOT ( I0g[13] , I0g[10] );
Toffoli ( I0g[10] , I0g[13] , I0g[6] );
CNOT ( I0g[13] , I0g[10] );
CNOT ( I0g[13] , I0g[4] );
Toffoli ( I0g[4] , I0g[13] , I0g[7] );
CNOT ( I0g[13] , I0g[4] );
X ( I0g[5] );
Toffoli ( I0g[13] , I0g[12] , I0g[11] );
CNOT ( I0g[13] , I00[19] );
Toffoli ( I00[19] , I0g[13] , I0g[5] );
CNOT ( I0g[13] , I00[19] );
CNOT ( I11[9] , I00[17] );
CNOT ( I1g[133] , I11[9] );
CNOT ( I11[9] , I00[17] );
Toffoli ( I11[9] , I00[9] , I1g[133] );
Toffoli ( I1g[134] , I11[9] , I1g[133] );
Toffoli ( I11[9] , I00[9] , I1g[133] );
// Toffoli ( I1g[133] , I1g[134] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[134] , I1g[133] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[134] , I1g[133] );
// Toffoli ( I1g[133] , I1g[134] , I11[9] , I1g[135] );
Toffoli (tof_anc[0], I1g[134] , I1g[133] );
Toffoli ( I1g[135] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[134] , I1g[133] );
// Toffoli ( I1g[133] , I1g[134] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[134] , I1g[133] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[134] , I1g[133] );
// Toffoli ( I1g[133] , I1g[134] , I1g[135] , I11[10] , I0g[9] );
Toffoli (tof_anc[0], I1g[134] , I1g[133] );
Toffoli (tof_anc[1],tof_anc[0], I1g[135] );
Toffoli ( I0g[9] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[135] );
Toffoli (tof_anc[0], I1g[134] , I1g[133] );
// Toffoli ( I1g[133] , I1g[134] , I1g[135] , I0g[9] , I11[10] );
Toffoli (tof_anc[0], I1g[134] , I1g[133] );
Toffoli (tof_anc[1],tof_anc[0], I1g[135] );
Toffoli ( I11[10] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[135] );
Toffoli (tof_anc[0], I1g[134] , I1g[133] );
// Toffoli ( I1g[133] , I1g[134] , I1g[135] , I11[10] , I0g[9] );
Toffoli (tof_anc[0], I1g[134] , I1g[133] );
Toffoli (tof_anc[1],tof_anc[0], I1g[135] );
Toffoli ( I0g[9] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[135] );
Toffoli (tof_anc[0], I1g[134] , I1g[133] );
CNOT ( I11[9] , I00[18] );
CNOT ( I1g[136] , I11[9] );
CNOT ( I11[9] , I00[18] );
Toffoli ( I11[9] , I00[10] , I1g[136] );
Toffoli ( I1g[137] , I11[9] , I1g[136] );
Toffoli ( I11[9] , I00[10] , I1g[136] );
// Toffoli ( I1g[136] , I1g[137] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[137] , I1g[136] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[137] , I1g[136] );
// Toffoli ( I1g[136] , I1g[137] , I11[9] , I1g[138] );
Toffoli (tof_anc[0], I1g[137] , I1g[136] );
Toffoli ( I1g[138] ,tof_anc[0], I11[9] );
Toffoli (tof_anc[0], I1g[137] , I1g[136] );
// Toffoli ( I1g[136] , I1g[137] , I0g[13] , I11[9] );
Toffoli (tof_anc[0], I1g[137] , I1g[136] );
Toffoli ( I11[9] ,tof_anc[0], I0g[13] );
Toffoli (tof_anc[0], I1g[137] , I1g[136] );
// Toffoli ( I1g[136] , I1g[137] , I1g[138] , I11[10] , I0g[10] );
Toffoli (tof_anc[0], I1g[137] , I1g[136] );
Toffoli (tof_anc[1],tof_anc[0], I1g[138] );
Toffoli ( I0g[10] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[138] );
Toffoli (tof_anc[0], I1g[137] , I1g[136] );
// Toffoli ( I1g[136] , I1g[137] , I1g[138] , I0g[10] , I11[10] );
Toffoli (tof_anc[0], I1g[137] , I1g[136] );
Toffoli (tof_anc[1],tof_anc[0], I1g[138] );
Toffoli ( I11[10] ,tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[138] );
Toffoli (tof_anc[0], I1g[137] , I1g[136] );
// Toffoli ( I1g[136] , I1g[137] , I1g[138] , I11[10] , I0g[10] );
Toffoli (tof_anc[0], I1g[137] , I1g[136] );
Toffoli (tof_anc[1],tof_anc[0], I1g[138] );
Toffoli ( I0g[10] ,tof_anc[1], I11[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[138] );
Toffoli (tof_anc[0], I1g[137] , I1g[136] );
CNOT ( I0g[13] , I0g[11] );
Toffoli ( I0g[11] , I0g[13] , I0g[6] );
CNOT ( I0g[13] , I0g[11] );
CNOT ( I0g[13] , I0g[4] );
Toffoli ( I0g[4] , I0g[13] , I0g[7] );
CNOT ( I0g[13] , I0g[4] );
CNOT ( I0g[4] , I0g[12] );
X ( I00[18] );
X ( I00[19] );
Toffoli ( I00[19] , I00[18] , I11[8] );
X ( I00[18] );
X ( I00[19] );
CNOT ( I11[8] , I00[1] );
CNOT ( I11[8] , I00[1] );
Toffoli ( I00[1] , I11[8] , I0g[1] );
CNOT ( I11[8] , I00[1] );
X ( I11[8] );
CNOT ( I11[8] , I0g[1] );
CNOT ( I11[8] , I00[1] );
Toffoli ( I00[1] , I11[8] , I0g[1] );
CNOT ( I11[8] , I00[1] );
X ( I11[8] );
Toffoli ( I0g[1] , paraleaf[0] , I0g[0] );
Toffoli ( I0g[0] , binary[0] , ctrl[0] );
Toffoli ( I0g[1] , paraleaf[0] , I0g[0] );
Toffoli ( dir[1] , dir[0] , I0g[16] );
Toffoli ( I0g[16] , dir[2] , I0g[17] );
Toffoli ( I0g[17] , dir[3] , I0g[18] );
Toffoli ( I0g[18] , dir[4] , I0g[19] );
Toffoli ( I0g[19] , dir[5] , I11[2] );
Toffoli ( I0g[18] , dir[4] , I0g[19] );
Toffoli ( I0g[17] , dir[3] , I0g[18] );
Toffoli ( I0g[16] , dir[2] , I0g[17] );
X ( I11[2] );
CNOT ( I11[2] , I11[3] );
CNOT ( I0g[20] , I0g[2] );
CNOT ( I0g[2] , I0g[20] );
CNOT ( I0g[2] , pos[18] );
CNOT ( I0g[21] , I0g[3] );
CNOT ( I0g[3] , I0g[21] );
CNOT ( I0g[3] , pos[24] );
X ( I0g[2] );
X ( I0g[3] );
Toffoli ( I0g[3] , I0g[2] , I11[4] );
X ( I0g[2] );
X ( I0g[3] );
CNOT ( I11[0] , ctrl[0] );
CNOT ( I1g[139] , I11[0] );
CNOT ( I11[0] , ctrl[0] );
Toffoli ( I11[0] , pos[25] , I1g[139] );
CNOT ( I11[0] , I1g[139] );
Toffoli ( I1g[140] , I11[0] , I1g[139] );
Toffoli ( I11[0] , pos[25] , I1g[139] );
CNOT ( I11[0] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , pos[24] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli ( I11[0] ,tof_anc[0], pos[24] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I11[0] , I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli ( I1g[141] ,tof_anc[0], I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , pos[24] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli ( I11[0] ,tof_anc[0], pos[24] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , dir[0] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli ( I11[0] ,tof_anc[1], dir[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli ( I11[0] ,tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I11[0] , I1g[142] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli ( I1g[142] ,tof_anc[1], I11[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , dir[0] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli ( I11[0] ,tof_anc[1], dir[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli ( I11[0] ,tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , leaf[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli ( leaf[0] ,tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli ( I1g[142] ,tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , pos[25] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I11[0] ,tof_anc[2], pos[25] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , pos[25] , I11[1] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I11[1] ,tof_anc[2], pos[25] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I11[0] , I11[1] , I1g[143] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I11[0] );
Toffoli ( I1g[143] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I11[0] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , pos[25] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I11[0] ,tof_anc[2], pos[25] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , pos[25] , I11[1] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I11[1] ,tof_anc[2], pos[25] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , pos[25] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli ( I11[0] ,tof_anc[3], pos[25] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , pos[24] , I11[1] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli ( I11[1] ,tof_anc[3], pos[24] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , I11[0] , I11[1] , I1g[144] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I11[0] );
Toffoli ( I1g[144] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I11[0] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , pos[25] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli ( I11[0] ,tof_anc[3], pos[25] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , pos[24] , I11[1] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli ( I11[1] ,tof_anc[3], pos[24] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , I1g[144] , pos[25] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli ( I11[0] ,tof_anc[4], pos[25] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , I1g[144] , pos[18] , I11[1] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli ( I11[1] ,tof_anc[4], pos[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , I1g[144] , I11[0] , I11[1] , I1g[145] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[5],tof_anc[4], I11[0] );
Toffoli ( I1g[145] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I11[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , I1g[144] , pos[25] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli ( I11[0] ,tof_anc[4], pos[25] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , I1g[144] , pos[18] , I11[1] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli ( I11[1] ,tof_anc[4], pos[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , I1g[144] , I1g[145] , pos[25] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli ( I11[0] ,tof_anc[5], pos[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , I1g[144] , I1g[145] , I11[2] , I11[1] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli ( I11[1] ,tof_anc[5], I11[2] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , I1g[144] , I1g[145] , I11[0] , I11[1] , I1g[146] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli (tof_anc[6],tof_anc[5], I11[0] );
Toffoli ( I1g[146] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I11[0] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , I1g[144] , I1g[145] , pos[25] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli ( I11[0] ,tof_anc[5], pos[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , I1g[144] , I1g[145] , I11[2] , I11[1] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli ( I11[1] ,tof_anc[5], I11[2] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , I1g[144] , I1g[145] , I1g[146] , binary[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli ( binary[0] ,tof_anc[5], I1g[146] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[143] , I1g[144] , I1g[145] , I1g[146] , paraleaf[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli ( paraleaf[0] ,tof_anc[5], I1g[146] );
Toffoli (tof_anc[5],tof_anc[4], I1g[145] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli ( I1g[142] ,tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I11[4] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I11[0] ,tof_anc[2], I11[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I11[0] , I1g[147] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I1g[147] ,tof_anc[2], I11[0] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I11[4] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I11[0] ,tof_anc[2], I11[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I11[3] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli ( I11[0] ,tof_anc[3], I11[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I11[0] , I1g[148] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli ( I1g[148] ,tof_anc[3], I11[0] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I11[3] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli ( I11[0] ,tof_anc[3], I11[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , pos[12] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], pos[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I11[0] , I1g[149] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I1g[149] ,tof_anc[4], I11[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , pos[12] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], pos[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[149] , height1[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( height1[0] ,tof_anc[4], I1g[149] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[149] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli ( I1g[149] ,tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[149] , pos[6] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli ( I11[0] ,tof_anc[5], pos[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[149] , I11[0] , I1g[150] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli ( I1g[150] ,tof_anc[5], I11[0] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[149] , pos[6] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli ( I11[0] ,tof_anc[5], pos[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[149] , I1g[150] , r[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli ( r[0] ,tof_anc[5], I1g[150] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[149] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli ( I1g[149] ,tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[149] , pos[1] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli ( I11[0] ,tof_anc[5], pos[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[149] , I11[0] , I1g[151] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli ( I1g[151] ,tof_anc[5], I11[0] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[149] , pos[1] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli ( I11[0] ,tof_anc[5], pos[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[149] , I1g[151] , rp[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli ( rp[0] ,tof_anc[5], I1g[151] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[149] , I1g[151] , binary[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli ( binary[0] ,tof_anc[5], I1g[151] );
Toffoli (tof_anc[5],tof_anc[4], I1g[149] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I1g[148] ,tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , pos[12] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], pos[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli ( I11[0] ,tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I11[0] , I1g[152] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I1g[152] ,tof_anc[4], I11[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , pos[12] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], pos[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli ( I11[0] ,tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[152] , pos[6] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli ( I11[0] ,tof_anc[5], pos[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[152] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], I1g[152] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[152] , I11[0] , I1g[153] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli ( I1g[153] ,tof_anc[5], I11[0] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[152] , pos[6] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli ( I11[0] ,tof_anc[5], pos[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[152] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], I1g[152] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[152] , I1g[153] , pos[1] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli (tof_anc[6],tof_anc[5], I1g[153] );
Toffoli ( I11[0] ,tof_anc[6], pos[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[153] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[152] , I1g[153] , I11[0] , I1g[154] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli (tof_anc[6],tof_anc[5], I1g[153] );
Toffoli ( I1g[154] ,tof_anc[6], I11[0] );
Toffoli (tof_anc[6],tof_anc[5], I1g[153] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[152] , I1g[153] , pos[1] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli (tof_anc[6],tof_anc[5], I1g[153] );
Toffoli ( I11[0] ,tof_anc[6], pos[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[153] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[152] , I1g[153] , I1g[154] , height1[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli (tof_anc[6],tof_anc[5], I1g[153] );
Toffoli ( height1[0] ,tof_anc[6], I1g[154] );
Toffoli (tof_anc[6],tof_anc[5], I1g[153] );
Toffoli (tof_anc[5],tof_anc[4], I1g[152] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I1g[148] ,tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , pos[12] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], pos[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli ( I11[0] ,tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I11[0] , I1g[155] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I1g[155] ,tof_anc[4], I11[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , pos[12] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], pos[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli ( I11[0] ,tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[155] , pos[6] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli ( I11[0] ,tof_anc[5], pos[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[155] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], I1g[155] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[155] , I11[0] , I1g[156] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli ( I1g[156] ,tof_anc[5], I11[0] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[155] , pos[6] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli ( I11[0] ,tof_anc[5], pos[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[155] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], I1g[155] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[155] , I1g[156] , dir[0] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli (tof_anc[6],tof_anc[5], I1g[156] );
Toffoli ( I11[0] ,tof_anc[6], dir[0] );
Toffoli (tof_anc[6],tof_anc[5], I1g[156] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[155] , I1g[156] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli ( I11[0] ,tof_anc[5], I1g[156] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[155] , I1g[156] , I11[0] , I1g[157] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli (tof_anc[6],tof_anc[5], I1g[156] );
Toffoli ( I1g[157] ,tof_anc[6], I11[0] );
Toffoli (tof_anc[6],tof_anc[5], I1g[156] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[155] , I1g[156] , dir[0] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli (tof_anc[6],tof_anc[5], I1g[156] );
Toffoli ( I11[0] ,tof_anc[6], dir[0] );
Toffoli (tof_anc[6],tof_anc[5], I1g[156] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[155] , I1g[156] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli ( I11[0] ,tof_anc[5], I1g[156] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[155] , I1g[156] , I1g[157] , rpp[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli (tof_anc[6],tof_anc[5], I1g[156] );
Toffoli ( rpp[0] ,tof_anc[6], I1g[157] );
Toffoli (tof_anc[6],tof_anc[5], I1g[156] );
Toffoli (tof_anc[5],tof_anc[4], I1g[155] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I1g[148] ,tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , pos[12] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], pos[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli ( I11[0] ,tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I11[0] , I1g[158] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I1g[158] ,tof_anc[4], I11[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , pos[12] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], pos[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli ( I11[0] ,tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[158] , pos[6] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli ( I11[0] ,tof_anc[5], pos[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[158] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], I1g[158] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[158] , I11[0] , I1g[159] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli ( I1g[159] ,tof_anc[5], I11[0] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[158] , pos[6] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli ( I11[0] ,tof_anc[5], pos[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[158] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], I1g[158] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[158] , I1g[159] , pos[0] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli (tof_anc[6],tof_anc[5], I1g[159] );
Toffoli ( I11[0] ,tof_anc[6], pos[0] );
Toffoli (tof_anc[6],tof_anc[5], I1g[159] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[158] , I1g[159] , I11[0] , I1g[160] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli (tof_anc[6],tof_anc[5], I1g[159] );
Toffoli ( I1g[160] ,tof_anc[6], I11[0] );
Toffoli (tof_anc[6],tof_anc[5], I1g[159] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[158] , I1g[159] , pos[0] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli (tof_anc[6],tof_anc[5], I1g[159] );
Toffoli ( I11[0] ,tof_anc[6], pos[0] );
Toffoli (tof_anc[6],tof_anc[5], I1g[159] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[158] , I1g[159] , I1g[160] , r[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli (tof_anc[6],tof_anc[5], I1g[159] );
Toffoli ( r[0] ,tof_anc[6], I1g[160] );
Toffoli (tof_anc[6],tof_anc[5], I1g[159] );
Toffoli (tof_anc[5],tof_anc[4], I1g[158] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I1g[148] ,tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , pos[12] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], pos[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli ( I11[0] ,tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I11[0] , I1g[161] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I1g[161] ,tof_anc[4], I11[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , pos[12] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], pos[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli ( I11[0] ,tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[161] , pos[6] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[161] );
Toffoli ( I11[0] ,tof_anc[5], pos[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[161] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[161] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], I1g[161] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[161] , I11[0] , I1g[162] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[161] );
Toffoli ( I1g[162] ,tof_anc[5], I11[0] );
Toffoli (tof_anc[5],tof_anc[4], I1g[161] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[161] , pos[6] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[161] );
Toffoli ( I11[0] ,tof_anc[5], pos[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[161] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[161] , I11[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli ( I11[0] ,tof_anc[4], I1g[161] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[161] , I1g[162] , rp[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[161] );
Toffoli ( rp[0] ,tof_anc[5], I1g[162] );
Toffoli (tof_anc[5],tof_anc[4], I1g[161] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
// Toffoli ( I1g[139] , I1g[140] , I1g[141] , I1g[142] , I1g[147] , I1g[148] , I1g[161] , I1g[162] , binary[0] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[5],tof_anc[4], I1g[161] );
Toffoli ( binary[0] ,tof_anc[5], I1g[162] );
Toffoli (tof_anc[5],tof_anc[4], I1g[161] );
Toffoli (tof_anc[4],tof_anc[3], I1g[148] );
Toffoli (tof_anc[3],tof_anc[2], I1g[147] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[141] );
Toffoli (tof_anc[0], I1g[140] , I1g[139] );
}
/* IARPA - GFI Algorithm 5 */
/* Progress status: done */
/* Classical implementation: No */
//scaff_module C_WALK(qbit ctrl[1], qstruct B_qstruct b){
// ctqg
scaff_module C_WALK(qbit ctrl[1], qbit pos[width], qbit leaf[1], qbit paraleaf[1], qbit binary[1], qbit height1[1], qbit r[1], qbit rp[1], qbit rpp[1], qbit dir[m]){
qbit I00[12];
qbit I11[2];
qbit I1g[8];
qbit tof_anc[8];
X ( dir[0] );
Toffoli ( paraleaf[0] , I00[5] , dir[0] );
Toffoli ( rp[0] , I00[9] , dir[0] );
X ( dir[0] );
Toffoli ( rp[0] , I00[8] , dir[0] );
Toffoli ( paraleaf[0] , I00[6] , dir[0] );
Toffoli ( height1[0] , I00[7] , I00[0] );
Toffoli ( dir[0] , I00[1] , dir[1] );
Toffoli ( dir[2] , I00[2] , I00[1] );
Toffoli ( dir[3] , I00[3] , I00[2] );
Toffoli ( dir[4] , I00[4] , I00[3] );
Toffoli ( dir[5] , I00[0] , I00[4] );
Toffoli ( dir[4] , I00[4] , I00[3] );
Toffoli ( dir[3] , I00[3] , I00[2] );
Toffoli ( dir[2] , I00[2] , I00[1] );
Toffoli ( r[0] , I00[10] , I00[0] );
CNOT ( I11[0] , leaf[0] );
CNOT ( I11[1] , I00[5] );
Toffoli ( I1g[0] , I11[1] , I11[0] );
CNOT ( I11[0] , leaf[0] );
CNOT ( I11[1] , I00[5] );
Toffoli ( ctrl[0] , pos[25] , I1g[0] );
X ( I1g[0] );
Toffoli ( I11[0] , I00[6] , I1g[0] );
Toffoli ( I1g[1] , I11[0] , I1g[0] );
Toffoli ( I11[0] , I00[6] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , pos[0] , ctrl[0] , dir[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], pos[0] );
Toffoli ( dir[0] ,tof_anc[1], ctrl[0] );
Toffoli (tof_anc[1],tof_anc[0], pos[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( dir[0] , I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , dir[0] , ctrl[0] , pos[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], dir[0] );
Toffoli ( pos[0] ,tof_anc[1], ctrl[0] );
Toffoli (tof_anc[1],tof_anc[0], dir[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , pos[1] , ctrl[0] , dir[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], pos[1] );
Toffoli ( dir[1] ,tof_anc[1], ctrl[0] );
Toffoli (tof_anc[1],tof_anc[0], pos[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( dir[1] , I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , dir[1] , ctrl[0] , pos[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], dir[1] );
Toffoli ( pos[1] ,tof_anc[1], ctrl[0] );
Toffoli (tof_anc[1],tof_anc[0], dir[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , pos[2] , ctrl[0] , dir[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], pos[2] );
Toffoli ( dir[2] ,tof_anc[1], ctrl[0] );
Toffoli (tof_anc[1],tof_anc[0], pos[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( dir[2] , I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , dir[2] , ctrl[0] , pos[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], dir[2] );
Toffoli ( pos[2] ,tof_anc[1], ctrl[0] );
Toffoli (tof_anc[1],tof_anc[0], dir[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , pos[3] , ctrl[0] , dir[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], pos[3] );
Toffoli ( dir[3] ,tof_anc[1], ctrl[0] );
Toffoli (tof_anc[1],tof_anc[0], pos[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( dir[3] , I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , dir[3] , ctrl[0] , pos[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], dir[3] );
Toffoli ( pos[3] ,tof_anc[1], ctrl[0] );
Toffoli (tof_anc[1],tof_anc[0], dir[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , pos[4] , ctrl[0] , dir[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], pos[4] );
Toffoli ( dir[4] ,tof_anc[1], ctrl[0] );
Toffoli (tof_anc[1],tof_anc[0], pos[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( dir[4] , I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , dir[4] , ctrl[0] , pos[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], dir[4] );
Toffoli ( pos[4] ,tof_anc[1], ctrl[0] );
Toffoli (tof_anc[1],tof_anc[0], dir[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , pos[5] , ctrl[0] , dir[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], pos[5] );
Toffoli ( dir[5] ,tof_anc[1], ctrl[0] );
Toffoli (tof_anc[1],tof_anc[0], pos[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( dir[5] , I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , dir[5] , ctrl[0] , pos[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], dir[5] );
Toffoli ( pos[5] ,tof_anc[1], ctrl[0] );
Toffoli (tof_anc[1],tof_anc[0], dir[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
CNOT ( I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , rpp[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[0] ,tof_anc[0], rpp[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I00[8] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I11[0] , I11[1] , I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I11[0] );
Toffoli ( I1g[2] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , rpp[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[0] ,tof_anc[0], rpp[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I00[8] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[0] , ctrl[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( ctrl[0] ,tof_anc[1], pos[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I1g[2] , I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[9] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[0] ,tof_anc[1], I00[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[10] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[0] , I11[1] , I1g[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I11[0] );
Toffoli ( I1g[3] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I11[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[9] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[0] ,tof_anc[1], I00[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[10] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , pos[1] , ctrl[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( ctrl[0] ,tof_anc[2], pos[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I1g[3] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , r[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I11[0] ,tof_anc[2], r[0] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I11[0] , I1g[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I1g[4] ,tof_anc[2], I11[0] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , r[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I11[0] ,tof_anc[2], r[0] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , pos[1] , ctrl[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( ctrl[0] ,tof_anc[3], pos[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , dir[0] , ctrl[0] , pos[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], dir[0] );
Toffoli ( pos[0] ,tof_anc[4], ctrl[0] );
Toffoli (tof_anc[4],tof_anc[3], dir[0] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , pos[0] , ctrl[0] , dir[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], pos[0] );
Toffoli ( dir[0] ,tof_anc[4], ctrl[0] );
Toffoli (tof_anc[4],tof_anc[3], pos[0] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , dir[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( dir[0] ,tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , dir[1] , ctrl[0] , pos[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], dir[1] );
Toffoli ( pos[1] ,tof_anc[4], ctrl[0] );
Toffoli (tof_anc[4],tof_anc[3], dir[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , pos[1] , ctrl[0] , dir[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], pos[1] );
Toffoli ( dir[1] ,tof_anc[4], ctrl[0] );
Toffoli (tof_anc[4],tof_anc[3], pos[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , dir[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( dir[1] ,tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , dir[2] , ctrl[0] , pos[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], dir[2] );
Toffoli ( pos[2] ,tof_anc[4], ctrl[0] );
Toffoli (tof_anc[4],tof_anc[3], dir[2] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , pos[2] , ctrl[0] , dir[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], pos[2] );
Toffoli ( dir[2] ,tof_anc[4], ctrl[0] );
Toffoli (tof_anc[4],tof_anc[3], pos[2] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , dir[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( dir[2] ,tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , dir[3] , ctrl[0] , pos[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], dir[3] );
Toffoli ( pos[3] ,tof_anc[4], ctrl[0] );
Toffoli (tof_anc[4],tof_anc[3], dir[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , pos[3] , ctrl[0] , dir[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], pos[3] );
Toffoli ( dir[3] ,tof_anc[4], ctrl[0] );
Toffoli (tof_anc[4],tof_anc[3], pos[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , dir[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( dir[3] ,tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , dir[4] , ctrl[0] , pos[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], dir[4] );
Toffoli ( pos[4] ,tof_anc[4], ctrl[0] );
Toffoli (tof_anc[4],tof_anc[3], dir[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , pos[4] , ctrl[0] , dir[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], pos[4] );
Toffoli ( dir[4] ,tof_anc[4], ctrl[0] );
Toffoli (tof_anc[4],tof_anc[3], pos[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , dir[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( dir[4] ,tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , dir[5] , ctrl[0] , pos[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], dir[5] );
Toffoli ( pos[5] ,tof_anc[4], ctrl[0] );
Toffoli (tof_anc[4],tof_anc[3], dir[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , pos[5] , ctrl[0] , dir[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], pos[5] );
Toffoli ( dir[5] ,tof_anc[4], ctrl[0] );
Toffoli (tof_anc[4],tof_anc[3], pos[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , dir[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( dir[5] ,tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[4] ,tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I00[7] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( I11[0] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I11[0] , I1g[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( I1g[5] ,tof_anc[3], I11[0] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I00[7] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( I11[0] ,tof_anc[3], I00[7] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , pos[0] , ctrl[0] , dir[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], pos[0] );
Toffoli ( dir[0] ,tof_anc[5], ctrl[0] );
Toffoli (tof_anc[5],tof_anc[4], pos[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , dir[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( dir[0] ,tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , dir[0] , ctrl[0] , pos[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], dir[0] );
Toffoli ( pos[0] ,tof_anc[5], ctrl[0] );
Toffoli (tof_anc[5],tof_anc[4], dir[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , pos[1] , ctrl[0] , dir[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], pos[1] );
Toffoli ( dir[1] ,tof_anc[5], ctrl[0] );
Toffoli (tof_anc[5],tof_anc[4], pos[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , dir[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( dir[1] ,tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , dir[1] , ctrl[0] , pos[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], dir[1] );
Toffoli ( pos[1] ,tof_anc[5], ctrl[0] );
Toffoli (tof_anc[5],tof_anc[4], dir[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , pos[2] , ctrl[0] , dir[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], pos[2] );
Toffoli ( dir[2] ,tof_anc[5], ctrl[0] );
Toffoli (tof_anc[5],tof_anc[4], pos[2] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , dir[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( dir[2] ,tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , dir[2] , ctrl[0] , pos[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], dir[2] );
Toffoli ( pos[2] ,tof_anc[5], ctrl[0] );
Toffoli (tof_anc[5],tof_anc[4], dir[2] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , pos[3] , ctrl[0] , dir[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], pos[3] );
Toffoli ( dir[3] ,tof_anc[5], ctrl[0] );
Toffoli (tof_anc[5],tof_anc[4], pos[3] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , dir[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( dir[3] ,tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , dir[3] , ctrl[0] , pos[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], dir[3] );
Toffoli ( pos[3] ,tof_anc[5], ctrl[0] );
Toffoli (tof_anc[5],tof_anc[4], dir[3] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , pos[4] , ctrl[0] , dir[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], pos[4] );
Toffoli ( dir[4] ,tof_anc[5], ctrl[0] );
Toffoli (tof_anc[5],tof_anc[4], pos[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , dir[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( dir[4] ,tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , dir[4] , ctrl[0] , pos[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], dir[4] );
Toffoli ( pos[4] ,tof_anc[5], ctrl[0] );
Toffoli (tof_anc[5],tof_anc[4], dir[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , pos[5] , ctrl[0] , dir[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], pos[5] );
Toffoli ( dir[5] ,tof_anc[5], ctrl[0] );
Toffoli (tof_anc[5],tof_anc[4], pos[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , dir[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( dir[5] ,tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , dir[5] , ctrl[0] , pos[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], dir[5] );
Toffoli ( pos[5] ,tof_anc[5], ctrl[0] );
Toffoli (tof_anc[5],tof_anc[4], dir[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , pos[1] , ctrl[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( ctrl[0] ,tof_anc[4], pos[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I1g[5] ,tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , height1[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I11[0] ,tof_anc[4], height1[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I11[0] , I1g[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I1g[6] ,tof_anc[4], I11[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , height1[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I11[0] ,tof_anc[4], height1[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , dir[0] , ctrl[0] , pos[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], dir[0] );
Toffoli ( pos[0] ,tof_anc[6], ctrl[0] );
Toffoli (tof_anc[6],tof_anc[5], dir[0] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , pos[0] , ctrl[0] , dir[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], pos[0] );
Toffoli ( dir[0] ,tof_anc[6], ctrl[0] );
Toffoli (tof_anc[6],tof_anc[5], pos[0] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , dir[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( dir[0] ,tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , dir[1] , ctrl[0] , pos[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], dir[1] );
Toffoli ( pos[1] ,tof_anc[6], ctrl[0] );
Toffoli (tof_anc[6],tof_anc[5], dir[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , pos[1] , ctrl[0] , dir[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], pos[1] );
Toffoli ( dir[1] ,tof_anc[6], ctrl[0] );
Toffoli (tof_anc[6],tof_anc[5], pos[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , dir[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( dir[1] ,tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , dir[2] , ctrl[0] , pos[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], dir[2] );
Toffoli ( pos[2] ,tof_anc[6], ctrl[0] );
Toffoli (tof_anc[6],tof_anc[5], dir[2] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , pos[2] , ctrl[0] , dir[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], pos[2] );
Toffoli ( dir[2] ,tof_anc[6], ctrl[0] );
Toffoli (tof_anc[6],tof_anc[5], pos[2] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , dir[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( dir[2] ,tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , dir[3] , ctrl[0] , pos[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], dir[3] );
Toffoli ( pos[3] ,tof_anc[6], ctrl[0] );
Toffoli (tof_anc[6],tof_anc[5], dir[3] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , pos[3] , ctrl[0] , dir[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], pos[3] );
Toffoli ( dir[3] ,tof_anc[6], ctrl[0] );
Toffoli (tof_anc[6],tof_anc[5], pos[3] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , dir[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( dir[3] ,tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , dir[4] , ctrl[0] , pos[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], dir[4] );
Toffoli ( pos[4] ,tof_anc[6], ctrl[0] );
Toffoli (tof_anc[6],tof_anc[5], dir[4] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , pos[4] , ctrl[0] , dir[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], pos[4] );
Toffoli ( dir[4] ,tof_anc[6], ctrl[0] );
Toffoli (tof_anc[6],tof_anc[5], pos[4] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , dir[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( dir[4] ,tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , dir[5] , ctrl[0] , pos[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], dir[5] );
Toffoli ( pos[5] ,tof_anc[6], ctrl[0] );
Toffoli (tof_anc[6],tof_anc[5], dir[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , pos[5] , ctrl[0] , dir[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], pos[5] );
Toffoli ( dir[5] ,tof_anc[6], ctrl[0] );
Toffoli (tof_anc[6],tof_anc[5], pos[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , dir[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( dir[5] ,tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( I1g[6] ,tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I00[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( I11[0] ,tof_anc[5], I00[0] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I11[0] , I1g[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( I1g[7] ,tof_anc[5], I11[0] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I00[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( I11[0] ,tof_anc[5], I00[0] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , pos[0] , ctrl[0] , dir[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], pos[0] );
Toffoli ( dir[0] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], pos[0] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( dir[0] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[0] , ctrl[0] , pos[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], dir[0] );
Toffoli ( pos[0] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], dir[0] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , pos[1] , ctrl[0] , dir[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], pos[1] );
Toffoli ( dir[1] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], pos[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( dir[1] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[1] , ctrl[0] , pos[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], dir[1] );
Toffoli ( pos[1] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], dir[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , pos[2] , ctrl[0] , dir[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], pos[2] );
Toffoli ( dir[2] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], pos[2] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( dir[2] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[2] , ctrl[0] , pos[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], dir[2] );
Toffoli ( pos[2] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], dir[2] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , pos[3] , ctrl[0] , dir[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], pos[3] );
Toffoli ( dir[3] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], pos[3] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( dir[3] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[3] , ctrl[0] , pos[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], dir[3] );
Toffoli ( pos[3] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], dir[3] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , pos[4] , ctrl[0] , dir[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], pos[4] );
Toffoli ( dir[4] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], pos[4] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( dir[4] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[4] , ctrl[0] , pos[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], dir[4] );
Toffoli ( pos[4] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], dir[4] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , pos[5] , ctrl[0] , dir[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], pos[5] );
Toffoli ( dir[5] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], pos[5] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( dir[5] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[5] , ctrl[0] , pos[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], dir[5] );
Toffoli ( pos[5] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], dir[5] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I1g[7] ,tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[0] , ctrl[0] , pos[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], dir[0] );
Toffoli ( pos[0] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], dir[0] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , pos[0] , ctrl[0] , dir[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], pos[0] );
Toffoli ( dir[0] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], pos[0] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( dir[0] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[1] , ctrl[0] , pos[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], dir[1] );
Toffoli ( pos[1] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], dir[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , pos[1] , ctrl[0] , dir[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], pos[1] );
Toffoli ( dir[1] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], pos[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( dir[1] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[2] , ctrl[0] , pos[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], dir[2] );
Toffoli ( pos[2] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], dir[2] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , pos[2] , ctrl[0] , dir[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], pos[2] );
Toffoli ( dir[2] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], pos[2] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( dir[2] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[3] , ctrl[0] , pos[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], dir[3] );
Toffoli ( pos[3] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], dir[3] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , pos[3] , ctrl[0] , dir[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], pos[3] );
Toffoli ( dir[3] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], pos[3] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( dir[3] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[4] , ctrl[0] , pos[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], dir[4] );
Toffoli ( pos[4] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], dir[4] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , pos[4] , ctrl[0] , dir[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], pos[4] );
Toffoli ( dir[4] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], pos[4] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( dir[4] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[5] , ctrl[0] , pos[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], dir[5] );
Toffoli ( pos[5] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], dir[5] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , pos[5] , ctrl[0] , dir[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], pos[5] );
Toffoli ( dir[5] ,tof_anc[7], ctrl[0] );
Toffoli (tof_anc[7],tof_anc[6], pos[5] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , dir[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( dir[5] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( rp[0] , I00[11] , pos[0] );
Toffoli ( I00[11] , dir[0] , ctrl[0] );
Toffoli ( rp[0] , I00[11] , pos[0] );
Toffoli ( rp[0] , I00[11] , pos[0] );
Toffoli ( I00[11] , dir[0] , ctrl[0] );
Toffoli ( rp[0] , I00[11] , pos[0] );
Toffoli ( rp[0] , I00[11] , pos[0] );
Toffoli ( I00[11] , dir[0] , ctrl[0] );
Toffoli ( rp[0] , I00[11] , pos[0] );
Toffoli ( rp[0] , I00[11] , pos[0] );
Toffoli ( I00[11] , dir[0] , ctrl[0] );
Toffoli ( rp[0] , I00[11] , pos[0] );
Toffoli ( rp[0] , I00[11] , pos[0] );
Toffoli ( I00[11] , dir[0] , ctrl[0] );
Toffoli ( rp[0] , I00[11] , pos[0] );
Toffoli ( rp[0] , I00[11] , pos[0] );
Toffoli ( I00[11] , dir[0] , ctrl[0] );
Toffoli ( rp[0] , I00[11] , pos[0] );
}
/* IARPA - GFI Algorithm 4 */
/* Progress status: finished */
/* Classical implementation: No */
//scaff_module C_DIFFUSE(qbit ctrl[1], qstruct Work_qstruct work, qbit dir[m]){
// begin ctqg
scaff_module C_DIFFUSE(qbit ctrl[1], qbit leaf[1], qbit paraleaf[1], qbit binary[1], qbit height1[1], qbit r[1], qbit rp[1], qbit rpp[1], qbit dir[m]){
int qubit;
/* Relace:
if (binary[0]==1) {
if (ctrl[0]==1)
H(dir[0]);
}else{
for(qubit=0; qubit<m; qubit++){ //forall
if (binary[0]==0) {
if (leaf[0] ==0 && rpp[0]==0){
H(dir[qubit]);
}
}
}
with: */
qbit bin1ctrl1[1];
qbit bin0leaf0rpp0[1];
qbit tof_anc[1];
PrepZ( bin1ctrl1[0], 0 );
PrepZ( bin0leaf0rpp0[0], 0 );
PrepZ( tof_anc[0], 0 );
// Generate control for H
Toffoli( bin1ctrl1[0] , ctrl[0], binary[0]);
ctrlH( &dir[0], &bin1ctrl1[0] );
Toffoli( bin1ctrl1[0] , ctrl[0], binary[0]); // Uncompute
// Invert sense of all inputs
X( binary[0] );
X( leaf[0] );
X( rpp[0] );
// 3-ctrl Toffoli to generate control signal
Toffoli( bin0leaf0rpp0[0] , tof_anc[0], binary[0]);
Toffoli( tof_anc[0] , rpp[0], leaf[0]);
Toffoli( bin0leaf0rpp0[0] , tof_anc[0], binary[0]);
Toffoli( tof_anc[0] , rpp[0], leaf[0]);
// Apply ctrlH's
for(qubit=0; qubit<m; qubit++){ //forall
ctrlH( &dir[qubit], &bin0leaf0rpp0[0] );
}
// Uncompute tof_ancilla
Toffoli( tof_anc[0] , rpp[0], leaf[0]);
Toffoli( bin0leaf0rpp0[0] , tof_anc[0], binary[0]);
Toffoli( tof_anc[0] , rpp[0], leaf[0]);
Toffoli( bin0leaf0rpp0[0] , tof_anc[0], binary[0]);
// Restore the original values
X( rpp[0] );
X( leaf[0] );
X( binary[0] );
}
// end ctqg
/* IARPA - GFI Algorithm 3 */
/* Progress status: done */
/* Classical implementation: No */
/* begin ctqg
scaff_module C_ORACLE(qbit ctrl[1], qbit pos[width], qbit leaf[1], qbit paraleaf[1], qbit binary[1], qbit height1[1], qbit r[1], qbit rp[1], qbit rpp[1], qbit init_r[s], qbit init_b[s]){
int i;
qbit ancilla[1];
qbit hex[1];
qbit pos_temp[s-1];
//using pos_temp as a reference to pos[sm, (s-1)m, ..., 2m]; it should not count as new ancillas
for (int i=2; i<=s; i++){
pos_temp[i-2]=pos[i*m];
}
NOR(&ancilla[0], pos_temp, s-1);
// begin ctqg
if (ctrl[0]==1){
if (pos[width-1]==1){
X(leaf[0]);
}else if (pos[width-2]==1){
X(paraleaf[0]);
HEX(pos, init_r, init_b, hex);
CNOT( hex[0],binary[0]);
}else if (ancilla[0]==1){
if (pos[m]==1){
X(height1[0]);
}else if (pos[1]==1){
X(r[0]);
}else if (pos[0]==1){
X(rp[0]);
X(binary[0]);
}else{
X(rpp[0]);
}
}
}
// end ctqg
}
end ctqg */
scaff_module C_ORACLE(qbit ctrl[1], qbit pos[width], qbit leaf[1], qbit paraleaf[1], qbit binary[1], qbit height1[1], qbit r[1], qbit rp[1], qbit rpp[1], qbit init_r[s], qbit init_b[s]){
qbit I00[20];
qbit I0g[21];
qbit I11[7];
qbit I1g[146];
qbit tof_anc[9];
CNOT ( I0g[5] , I0g[2] );
CNOT ( I0g[2] , I0g[5] );
CNOT ( I0g[2] , pos[12] );
CNOT ( I0g[6] , I0g[3] );
CNOT ( I0g[3] , I0g[6] );
CNOT ( I0g[3] , pos[18] );
CNOT ( I0g[7] , I0g[4] );
CNOT ( I0g[4] , I0g[7] );
CNOT ( I0g[4] , pos[24] );
X ( I0g[2] );
X ( I0g[3] );
X ( I0g[4] );
Toffoli ( I0g[3] , I0g[2] , I0g[8] );
Toffoli ( I0g[8] , I0g[4] , I0g[0] );
X ( I0g[2] );
X ( I0g[3] );
X ( I0g[4] );
CNOT ( I11[0] , ctrl[0] );
CNOT ( I1g[0] , I11[0] );
CNOT ( I11[0] , ctrl[0] );
Toffoli ( I11[0] , pos[25] , I1g[0] );
Toffoli ( I1g[1] , I11[0] , I1g[0] );
Toffoli ( I11[0] , pos[25] , I1g[0] );
Toffoli ( leaf[0] , I1g[1] , I1g[0] );
CNOT ( I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , pos[24] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[0] ,tof_anc[0], pos[24] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I11[0] , I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I1g[2] ,tof_anc[0], I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , pos[24] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[0] ,tof_anc[0], pos[24] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , paraleaf[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( paraleaf[0] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[8] , init_r[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( init_r[0] ,tof_anc[1], I00[8] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[12] , init_b[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( init_b[0] ,tof_anc[1], I00[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[18] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[18] , I00[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[2] ,tof_anc[1], pos[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[18] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[19] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[19] , I00[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[3] ,tof_anc[1], pos[19] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[19] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[20] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[20] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[20] , I00[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[4] ,tof_anc[1], pos[20] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[20] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[20] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[21] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[21] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[21] , I00[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[5] ,tof_anc[1], pos[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[21] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[21] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[22] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[22] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[22] , I00[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[6] ,tof_anc[1], pos[22] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[22] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[22] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[23] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[23] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[23] , I00[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[7] ,tof_anc[1], pos[23] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[23] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[23] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[3] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I11[1] , I1g[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I1g[4] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I11[1] ,tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I11[1] , I1g[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( I1g[5] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli ( I11[1] ,tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( I11[1] ,tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I11[1] , I1g[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I1g[6] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli ( I11[1] ,tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I11[1] ,tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I11[1] , I1g[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( I1g[7] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli ( I11[1] ,tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( I11[1] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I11[1] , I1g[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli ( I1g[8] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli ( I11[1] ,tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[1] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli ( I00[8] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli ( I00[1] ,tof_anc[7], I00[8] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[1] , I00[8] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[8] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli ( I00[1] ,tof_anc[7], I00[8] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I0g[1] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli ( I00[12] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli ( I00[1] ,tof_anc[7], I00[12] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[1] , I00[12] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[12] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli ( I00[1] ,tof_anc[7], I00[12] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli ( I00[12] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[12] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[8],tof_anc[7], I00[12] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[12] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli ( I00[12] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli ( I00[0] ,tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli ( I00[8] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[8] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[8],tof_anc[7], I00[8] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[8] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[3] , I1g[4] , I1g[5] , I1g[6] , I1g[7] , I1g[8] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli ( I00[8] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[8] );
Toffoli (tof_anc[6],tof_anc[5], I1g[7] );
Toffoli (tof_anc[5],tof_anc[4], I1g[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[4] );
Toffoli (tof_anc[2],tof_anc[1], I1g[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[9] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I11[1] , I1g[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli ( I1g[10] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli ( I11[1] ,tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I11[1] , I1g[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli ( I1g[11] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli ( I11[1] ,tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli ( I11[1] ,tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I11[1] , I1g[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I1g[12] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli ( I11[1] ,tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I11[1] ,tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I11[1] , I1g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli ( I1g[13] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli ( I11[1] ,tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli ( I11[1] ,tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I11[1] , I1g[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli ( I1g[14] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli ( I11[1] ,tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[1] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli ( I00[9] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli ( I00[1] ,tof_anc[7], I00[9] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[1] , I00[9] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[9] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli ( I00[1] ,tof_anc[7], I00[9] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I0g[1] , I00[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli ( I00[13] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli ( I00[1] ,tof_anc[7], I00[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[1] , I00[13] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[13] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli ( I00[1] ,tof_anc[7], I00[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli ( I00[13] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[13] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[8],tof_anc[7], I00[13] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli ( I00[13] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli ( I00[0] ,tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli ( I00[9] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[9] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[8],tof_anc[7], I00[9] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[9] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[9] , I1g[10] , I1g[11] , I1g[12] , I1g[13] , I1g[14] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli ( I00[9] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[14] );
Toffoli (tof_anc[6],tof_anc[5], I1g[13] );
Toffoli (tof_anc[5],tof_anc[4], I1g[12] );
Toffoli (tof_anc[4],tof_anc[3], I1g[11] );
Toffoli (tof_anc[3],tof_anc[2], I1g[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[15] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I11[1] , I1g[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli ( I1g[16] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli ( I11[1] ,tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I11[1] , I1g[17] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli ( I1g[17] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli ( I11[1] ,tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli ( I11[1] ,tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I11[1] , I1g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I1g[18] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli ( I11[1] ,tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I11[1] ,tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I11[1] , I1g[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli ( I1g[19] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli ( I11[1] ,tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli ( I11[1] ,tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I11[1] , I1g[20] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli ( I1g[20] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli ( I11[1] ,tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[1] , I00[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli ( I00[10] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli ( I00[1] ,tof_anc[7], I00[10] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[1] , I00[10] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[10] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli ( I00[1] ,tof_anc[7], I00[10] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I0g[1] , I00[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli ( I00[14] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli ( I00[1] ,tof_anc[7], I00[14] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[1] , I00[14] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[14] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli ( I00[1] ,tof_anc[7], I00[14] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli ( I00[14] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[14] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[8],tof_anc[7], I00[14] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[14] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli ( I00[14] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli ( I00[0] ,tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli ( I00[10] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[10] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[8],tof_anc[7], I00[10] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[10] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[15] , I1g[16] , I1g[17] , I1g[18] , I1g[19] , I1g[20] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli ( I00[10] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[20] );
Toffoli (tof_anc[6],tof_anc[5], I1g[19] );
Toffoli (tof_anc[5],tof_anc[4], I1g[18] );
Toffoli (tof_anc[4],tof_anc[3], I1g[17] );
Toffoli (tof_anc[3],tof_anc[2], I1g[16] );
Toffoli (tof_anc[2],tof_anc[1], I1g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[21] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[21] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I11[1] , I1g[22] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli ( I1g[22] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli ( I11[1] ,tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I11[1] , I1g[23] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli ( I1g[23] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli ( I11[1] ,tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli ( I11[1] ,tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I11[1] , I1g[24] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I1g[24] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli ( I11[1] ,tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I11[1] ,tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I11[1] , I1g[25] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli ( I1g[25] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli ( I11[1] ,tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli ( I11[1] ,tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I11[1] , I1g[26] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli ( I1g[26] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli ( I11[1] ,tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[1] , I00[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli ( I00[11] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli ( I00[1] ,tof_anc[7], I00[11] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[1] , I00[11] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[11] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli ( I00[1] ,tof_anc[7], I00[11] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I0g[1] , I00[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli ( I00[15] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli ( I00[1] ,tof_anc[7], I00[15] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[1] , I00[15] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[15] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli ( I00[1] ,tof_anc[7], I00[15] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli ( I00[15] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[15] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[8],tof_anc[7], I00[15] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[15] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli ( I00[15] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli ( I00[0] ,tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli ( I00[11] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[11] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[8],tof_anc[7], I00[11] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[11] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[21] , I1g[22] , I1g[23] , I1g[24] , I1g[25] , I1g[26] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli ( I00[11] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[26] );
Toffoli (tof_anc[6],tof_anc[5], I1g[25] );
Toffoli (tof_anc[5],tof_anc[4], I1g[24] );
Toffoli (tof_anc[4],tof_anc[3], I1g[23] );
Toffoli (tof_anc[3],tof_anc[2], I1g[22] );
Toffoli (tof_anc[2],tof_anc[1], I1g[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[18] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[18] , I00[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[2] ,tof_anc[1], pos[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[18] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[19] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[19] , I00[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[3] ,tof_anc[1], pos[19] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[19] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[20] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[20] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[20] , I00[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[4] ,tof_anc[1], pos[20] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[20] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[20] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[21] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[21] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[21] , I00[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[5] ,tof_anc[1], pos[21] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[21] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[21] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[22] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[22] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[22] , I00[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[6] ,tof_anc[1], pos[22] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[22] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[22] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[23] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[23] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[23] , I00[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[7] ,tof_anc[1], pos[23] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[23] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[23] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[9] , init_r[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( init_r[1] ,tof_anc[1], I00[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[13] , init_b[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( init_b[1] ,tof_anc[1], I00[13] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[12] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[12] , I00[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[2] ,tof_anc[1], pos[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[12] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[13] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[13] , I00[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[3] ,tof_anc[1], pos[13] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[13] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[14] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[14] , I00[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[4] ,tof_anc[1], pos[14] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[14] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[15] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[15] , I00[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[5] ,tof_anc[1], pos[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[15] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[16] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[16] , I00[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[6] ,tof_anc[1], pos[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[16] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[17] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[17] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[17] , I00[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[7] ,tof_anc[1], pos[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[17] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[17] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[27] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[27] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I11[1] , I1g[28] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli ( I1g[28] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli ( I11[1] ,tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I11[1] , I1g[29] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli ( I1g[29] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli ( I11[1] ,tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli ( I11[1] ,tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I11[1] , I1g[30] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I1g[30] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli ( I11[1] ,tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I11[1] ,tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I11[1] , I1g[31] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli ( I1g[31] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli ( I11[1] ,tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli ( I11[1] ,tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I11[1] , I1g[32] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli ( I1g[32] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli ( I11[1] ,tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[1] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli ( I00[8] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli ( I00[1] ,tof_anc[7], I00[8] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[1] , I00[8] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[8] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli ( I00[1] ,tof_anc[7], I00[8] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I0g[1] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli ( I00[12] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli ( I00[1] ,tof_anc[7], I00[12] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[1] , I00[12] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[12] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli ( I00[1] ,tof_anc[7], I00[12] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli ( I00[12] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[12] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[8],tof_anc[7], I00[12] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[12] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli ( I00[12] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli ( I00[0] ,tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli ( I00[8] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[8] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[8],tof_anc[7], I00[8] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[8] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[27] , I1g[28] , I1g[29] , I1g[30] , I1g[31] , I1g[32] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli ( I00[8] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[32] );
Toffoli (tof_anc[6],tof_anc[5], I1g[31] );
Toffoli (tof_anc[5],tof_anc[4], I1g[30] );
Toffoli (tof_anc[4],tof_anc[3], I1g[29] );
Toffoli (tof_anc[3],tof_anc[2], I1g[28] );
Toffoli (tof_anc[2],tof_anc[1], I1g[27] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[33] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[33] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I11[1] , I1g[34] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli ( I1g[34] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli ( I11[1] ,tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I11[1] , I1g[35] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli ( I1g[35] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli ( I11[1] ,tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli ( I11[1] ,tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I11[1] , I1g[36] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I1g[36] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli ( I11[1] ,tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I11[1] ,tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I11[1] , I1g[37] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli ( I1g[37] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli ( I11[1] ,tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli ( I11[1] ,tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I11[1] , I1g[38] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli ( I1g[38] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli ( I11[1] ,tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[1] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli ( I00[9] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli ( I00[1] ,tof_anc[7], I00[9] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[1] , I00[9] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[9] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli ( I00[1] ,tof_anc[7], I00[9] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I0g[1] , I00[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli ( I00[13] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli ( I00[1] ,tof_anc[7], I00[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[1] , I00[13] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[13] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli ( I00[1] ,tof_anc[7], I00[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli ( I00[13] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[13] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[8],tof_anc[7], I00[13] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli ( I00[13] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli ( I00[0] ,tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli ( I00[9] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[9] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[8],tof_anc[7], I00[9] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[9] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[33] , I1g[34] , I1g[35] , I1g[36] , I1g[37] , I1g[38] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli ( I00[9] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[38] );
Toffoli (tof_anc[6],tof_anc[5], I1g[37] );
Toffoli (tof_anc[5],tof_anc[4], I1g[36] );
Toffoli (tof_anc[4],tof_anc[3], I1g[35] );
Toffoli (tof_anc[3],tof_anc[2], I1g[34] );
Toffoli (tof_anc[2],tof_anc[1], I1g[33] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[39] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[39] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I11[1] , I1g[40] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli ( I1g[40] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli ( I11[1] ,tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I11[1] , I1g[41] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli ( I1g[41] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli ( I11[1] ,tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli ( I11[1] ,tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I11[1] , I1g[42] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I1g[42] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli ( I11[1] ,tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I11[1] ,tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I11[1] , I1g[43] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli ( I1g[43] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli ( I11[1] ,tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli ( I11[1] ,tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I11[1] , I1g[44] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli ( I1g[44] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli ( I11[1] ,tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[1] , I00[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli ( I00[10] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli ( I00[1] ,tof_anc[7], I00[10] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[1] , I00[10] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[10] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli ( I00[1] ,tof_anc[7], I00[10] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I0g[1] , I00[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli ( I00[14] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli ( I00[1] ,tof_anc[7], I00[14] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[1] , I00[14] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[14] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli ( I00[1] ,tof_anc[7], I00[14] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli ( I00[14] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[14] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[8],tof_anc[7], I00[14] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[14] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli ( I00[14] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli ( I00[0] ,tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli ( I00[10] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[10] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[8],tof_anc[7], I00[10] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[10] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[39] , I1g[40] , I1g[41] , I1g[42] , I1g[43] , I1g[44] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli ( I00[10] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[44] );
Toffoli (tof_anc[6],tof_anc[5], I1g[43] );
Toffoli (tof_anc[5],tof_anc[4], I1g[42] );
Toffoli (tof_anc[4],tof_anc[3], I1g[41] );
Toffoli (tof_anc[3],tof_anc[2], I1g[40] );
Toffoli (tof_anc[2],tof_anc[1], I1g[39] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[45] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[45] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I11[1] , I1g[46] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli ( I1g[46] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli ( I11[1] ,tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I11[1] , I1g[47] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli ( I1g[47] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli ( I11[1] ,tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli ( I11[1] ,tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I11[1] , I1g[48] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I1g[48] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli ( I11[1] ,tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I11[1] ,tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I11[1] , I1g[49] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli ( I1g[49] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli ( I11[1] ,tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli ( I11[1] ,tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I11[1] , I1g[50] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli ( I1g[50] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli ( I11[1] ,tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[1] , I00[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli ( I00[11] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli ( I00[1] ,tof_anc[7], I00[11] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[1] , I00[11] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[11] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli ( I00[1] ,tof_anc[7], I00[11] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I0g[1] , I00[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli ( I00[15] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli ( I00[1] ,tof_anc[7], I00[15] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[1] , I00[15] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[15] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli ( I00[1] ,tof_anc[7], I00[15] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli ( I00[15] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[15] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[8],tof_anc[7], I00[15] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[15] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli ( I00[15] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli ( I00[0] ,tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli ( I00[11] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[11] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[8],tof_anc[7], I00[11] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[11] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[45] , I1g[46] , I1g[47] , I1g[48] , I1g[49] , I1g[50] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli ( I00[11] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[50] );
Toffoli (tof_anc[6],tof_anc[5], I1g[49] );
Toffoli (tof_anc[5],tof_anc[4], I1g[48] );
Toffoli (tof_anc[4],tof_anc[3], I1g[47] );
Toffoli (tof_anc[3],tof_anc[2], I1g[46] );
Toffoli (tof_anc[2],tof_anc[1], I1g[45] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[12] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[12] , I00[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[2] ,tof_anc[1], pos[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[12] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[13] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[13] , I00[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[3] ,tof_anc[1], pos[13] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[13] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[14] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[14] , I00[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[4] ,tof_anc[1], pos[14] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[14] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[15] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[15] , I00[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[5] ,tof_anc[1], pos[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[15] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[16] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[16] , I00[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[6] ,tof_anc[1], pos[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[16] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[17] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[17] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[17] , I00[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[7] ,tof_anc[1], pos[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[17] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[17] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[10] , init_r[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( init_r[2] ,tof_anc[1], I00[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[14] , init_b[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( init_b[2] ,tof_anc[1], I00[14] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[6] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[6] , I00[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[2] ,tof_anc[1], pos[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[6] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[7] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[7] , I00[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[3] ,tof_anc[1], pos[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[7] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[8] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[8] , I00[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[4] ,tof_anc[1], pos[8] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[8] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[9] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[9] , I00[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[5] ,tof_anc[1], pos[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[9] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[10] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[10] , I00[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[6] ,tof_anc[1], pos[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[10] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[11] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[11] , I00[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[7] ,tof_anc[1], pos[11] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[11] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[51] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[51] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I11[1] , I1g[52] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli ( I1g[52] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli ( I11[1] ,tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I11[1] , I1g[53] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli ( I1g[53] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli ( I11[1] ,tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli ( I11[1] ,tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I11[1] , I1g[54] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I1g[54] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli ( I11[1] ,tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I11[1] ,tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I11[1] , I1g[55] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli ( I1g[55] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli ( I11[1] ,tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli ( I11[1] ,tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I11[1] , I1g[56] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli ( I1g[56] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli ( I11[1] ,tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[1] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli ( I00[8] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli ( I00[1] ,tof_anc[7], I00[8] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[1] , I00[8] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[8] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli ( I00[1] ,tof_anc[7], I00[8] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I0g[1] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli ( I00[12] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli ( I00[1] ,tof_anc[7], I00[12] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[1] , I00[12] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[12] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli ( I00[1] ,tof_anc[7], I00[12] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli ( I00[12] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[12] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[8],tof_anc[7], I00[12] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[12] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli ( I00[12] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli ( I00[0] ,tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli ( I00[8] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[8] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[8],tof_anc[7], I00[8] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[8] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[51] , I1g[52] , I1g[53] , I1g[54] , I1g[55] , I1g[56] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli ( I00[8] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[56] );
Toffoli (tof_anc[6],tof_anc[5], I1g[55] );
Toffoli (tof_anc[5],tof_anc[4], I1g[54] );
Toffoli (tof_anc[4],tof_anc[3], I1g[53] );
Toffoli (tof_anc[3],tof_anc[2], I1g[52] );
Toffoli (tof_anc[2],tof_anc[1], I1g[51] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[57] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[57] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I11[1] , I1g[58] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli ( I1g[58] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli ( I11[1] ,tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I11[1] , I1g[59] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli ( I1g[59] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli ( I11[1] ,tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli ( I11[1] ,tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I11[1] , I1g[60] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I1g[60] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli ( I11[1] ,tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I11[1] ,tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I11[1] , I1g[61] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli ( I1g[61] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli ( I11[1] ,tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli ( I11[1] ,tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I11[1] , I1g[62] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli ( I1g[62] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli ( I11[1] ,tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[1] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli ( I00[9] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli ( I00[1] ,tof_anc[7], I00[9] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[1] , I00[9] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[9] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli ( I00[1] ,tof_anc[7], I00[9] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I0g[1] , I00[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli ( I00[13] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli ( I00[1] ,tof_anc[7], I00[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[1] , I00[13] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[13] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli ( I00[1] ,tof_anc[7], I00[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli ( I00[13] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[13] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[8],tof_anc[7], I00[13] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli ( I00[13] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli ( I00[0] ,tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli ( I00[9] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[9] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[8],tof_anc[7], I00[9] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[9] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[57] , I1g[58] , I1g[59] , I1g[60] , I1g[61] , I1g[62] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli ( I00[9] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[62] );
Toffoli (tof_anc[6],tof_anc[5], I1g[61] );
Toffoli (tof_anc[5],tof_anc[4], I1g[60] );
Toffoli (tof_anc[4],tof_anc[3], I1g[59] );
Toffoli (tof_anc[3],tof_anc[2], I1g[58] );
Toffoli (tof_anc[2],tof_anc[1], I1g[57] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[63] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[63] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I11[1] , I1g[64] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli ( I1g[64] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli ( I11[1] ,tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I11[1] , I1g[65] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli ( I1g[65] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli ( I11[1] ,tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli ( I11[1] ,tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I11[1] , I1g[66] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I1g[66] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli ( I11[1] ,tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I11[1] ,tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I11[1] , I1g[67] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli ( I1g[67] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli ( I11[1] ,tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli ( I11[1] ,tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I11[1] , I1g[68] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli ( I1g[68] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli ( I11[1] ,tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[1] , I00[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli ( I00[10] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli ( I00[1] ,tof_anc[7], I00[10] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[1] , I00[10] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[10] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli ( I00[1] ,tof_anc[7], I00[10] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I0g[1] , I00[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli ( I00[14] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli ( I00[1] ,tof_anc[7], I00[14] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[1] , I00[14] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[14] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli ( I00[1] ,tof_anc[7], I00[14] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli ( I00[14] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[14] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[8],tof_anc[7], I00[14] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[14] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli ( I00[14] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli ( I00[0] ,tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli ( I00[10] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[10] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[8],tof_anc[7], I00[10] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[10] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[63] , I1g[64] , I1g[65] , I1g[66] , I1g[67] , I1g[68] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli ( I00[10] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[68] );
Toffoli (tof_anc[6],tof_anc[5], I1g[67] );
Toffoli (tof_anc[5],tof_anc[4], I1g[66] );
Toffoli (tof_anc[4],tof_anc[3], I1g[65] );
Toffoli (tof_anc[3],tof_anc[2], I1g[64] );
Toffoli (tof_anc[2],tof_anc[1], I1g[63] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[69] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[69] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I11[1] , I1g[70] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli ( I1g[70] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli ( I11[1] ,tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I11[1] , I1g[71] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli ( I1g[71] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli ( I11[1] ,tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli ( I11[1] ,tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I11[1] , I1g[72] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I1g[72] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli ( I11[1] ,tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I11[1] ,tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I11[1] , I1g[73] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli ( I1g[73] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli ( I11[1] ,tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli ( I11[1] ,tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I11[1] , I1g[74] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli ( I1g[74] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli ( I11[1] ,tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[1] , I00[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli ( I00[11] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli ( I00[1] ,tof_anc[7], I00[11] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[1] , I00[11] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[11] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli ( I00[1] ,tof_anc[7], I00[11] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I0g[1] , I00[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli ( I00[15] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli ( I00[1] ,tof_anc[7], I00[15] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[1] , I00[15] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[15] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli ( I00[1] ,tof_anc[7], I00[15] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli ( I00[15] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[15] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[8],tof_anc[7], I00[15] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[15] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli ( I00[15] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli ( I00[0] ,tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli ( I00[11] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[11] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[8],tof_anc[7], I00[11] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[11] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[69] , I1g[70] , I1g[71] , I1g[72] , I1g[73] , I1g[74] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli ( I00[11] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[74] );
Toffoli (tof_anc[6],tof_anc[5], I1g[73] );
Toffoli (tof_anc[5],tof_anc[4], I1g[72] );
Toffoli (tof_anc[4],tof_anc[3], I1g[71] );
Toffoli (tof_anc[3],tof_anc[2], I1g[70] );
Toffoli (tof_anc[2],tof_anc[1], I1g[69] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[6] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[6] , I00[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[2] ,tof_anc[1], pos[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[6] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[7] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[7] , I00[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[3] ,tof_anc[1], pos[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[7] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[8] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[8] , I00[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[4] ,tof_anc[1], pos[8] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[8] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[9] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[9] , I00[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[5] ,tof_anc[1], pos[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[9] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[10] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[10] , I00[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[6] ,tof_anc[1], pos[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[10] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[11] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[11] , I00[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[7] ,tof_anc[1], pos[11] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[11] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[11] , init_r[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( init_r[3] ,tof_anc[1], I00[11] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[15] , init_b[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( init_b[3] ,tof_anc[1], I00[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[0] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[0] , I00[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[2] ,tof_anc[1], pos[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[0] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[1] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[1] , I00[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[3] ,tof_anc[1], pos[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[1] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[2] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[2] , I00[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[4] ,tof_anc[1], pos[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[2] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[3] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[3] , I00[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[5] ,tof_anc[1], pos[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[3] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[4] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[4] , I00[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[6] ,tof_anc[1], pos[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[4] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[5] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[5] , I00[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[7] ,tof_anc[1], pos[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[5] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[75] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[75] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I11[1] , I1g[76] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli ( I1g[76] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli ( I11[1] ,tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I11[1] , I1g[77] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli ( I1g[77] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli ( I11[1] ,tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli ( I11[1] ,tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I11[1] , I1g[78] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I1g[78] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli ( I11[1] ,tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I11[1] ,tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I11[1] , I1g[79] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli ( I1g[79] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli ( I11[1] ,tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli ( I11[1] ,tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I11[1] , I1g[80] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli ( I1g[80] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli ( I11[1] ,tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[1] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli ( I00[8] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli ( I00[1] ,tof_anc[7], I00[8] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[1] , I00[8] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[8] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[8] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli ( I00[1] ,tof_anc[7], I00[8] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I0g[1] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli ( I00[12] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli ( I00[1] ,tof_anc[7], I00[12] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[1] , I00[12] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[12] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[12] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli ( I00[1] ,tof_anc[7], I00[12] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli ( I00[12] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[12] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[8],tof_anc[7], I00[12] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[12] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[0] , I00[12] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli ( I00[12] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli ( I00[0] ,tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli ( I00[8] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[8] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[8],tof_anc[7], I00[8] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[8] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[75] , I1g[76] , I1g[77] , I1g[78] , I1g[79] , I1g[80] , I00[0] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli ( I00[8] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[80] );
Toffoli (tof_anc[6],tof_anc[5], I1g[79] );
Toffoli (tof_anc[5],tof_anc[4], I1g[78] );
Toffoli (tof_anc[4],tof_anc[3], I1g[77] );
Toffoli (tof_anc[3],tof_anc[2], I1g[76] );
Toffoli (tof_anc[2],tof_anc[1], I1g[75] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[81] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[81] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I11[1] , I1g[82] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli ( I1g[82] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli ( I11[1] ,tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I11[1] , I1g[83] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli ( I1g[83] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli ( I11[1] ,tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli ( I11[1] ,tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I11[1] , I1g[84] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I1g[84] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli ( I11[1] ,tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I11[1] ,tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I11[1] , I1g[85] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli ( I1g[85] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli ( I11[1] ,tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli ( I11[1] ,tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I11[1] , I1g[86] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli ( I1g[86] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli ( I11[1] ,tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[1] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli ( I00[9] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli ( I00[1] ,tof_anc[7], I00[9] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[1] , I00[9] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[9] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[9] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli ( I00[1] ,tof_anc[7], I00[9] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I0g[1] , I00[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli ( I00[13] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli ( I00[1] ,tof_anc[7], I00[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[1] , I00[13] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[13] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[13] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli ( I00[1] ,tof_anc[7], I00[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli ( I00[13] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[13] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[8],tof_anc[7], I00[13] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[13] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[0] , I00[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli ( I00[13] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli ( I00[0] ,tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli ( I00[9] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[9] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[8],tof_anc[7], I00[9] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[9] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[81] , I1g[82] , I1g[83] , I1g[84] , I1g[85] , I1g[86] , I00[0] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli ( I00[9] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[86] );
Toffoli (tof_anc[6],tof_anc[5], I1g[85] );
Toffoli (tof_anc[5],tof_anc[4], I1g[84] );
Toffoli (tof_anc[4],tof_anc[3], I1g[83] );
Toffoli (tof_anc[3],tof_anc[2], I1g[82] );
Toffoli (tof_anc[2],tof_anc[1], I1g[81] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[87] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[87] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[1] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I11[1] , I1g[88] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli ( I1g[88] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli ( I11[1] ,tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I11[1] , I1g[89] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli ( I1g[89] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli ( I11[1] ,tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli ( I11[1] ,tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I11[1] , I1g[90] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I1g[90] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli ( I11[1] ,tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I11[1] ,tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I11[1] , I1g[91] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli ( I1g[91] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli ( I11[1] ,tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli ( I11[1] ,tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I11[1] , I1g[92] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli ( I1g[92] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli ( I11[1] ,tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[1] , I00[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli ( I00[10] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli ( I00[1] ,tof_anc[7], I00[10] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[1] , I00[10] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[10] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[10] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli ( I00[1] ,tof_anc[7], I00[10] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I0g[1] , I00[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli ( I00[14] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli ( I00[1] ,tof_anc[7], I00[14] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[1] , I00[14] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[14] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[14] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli ( I00[1] ,tof_anc[7], I00[14] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli ( I00[14] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[14] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[8],tof_anc[7], I00[14] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[14] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[0] , I00[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli ( I00[14] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli ( I00[0] ,tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli ( I00[10] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[10] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[8],tof_anc[7], I00[10] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[10] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[87] , I1g[88] , I1g[89] , I1g[90] , I1g[91] , I1g[92] , I00[0] , I00[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli ( I00[10] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[92] );
Toffoli (tof_anc[6],tof_anc[5], I1g[91] );
Toffoli (tof_anc[5],tof_anc[4], I1g[90] );
Toffoli (tof_anc[4],tof_anc[3], I1g[89] );
Toffoli (tof_anc[3],tof_anc[2], I1g[88] );
Toffoli (tof_anc[2],tof_anc[1], I1g[87] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[1] , I1g[93] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[93] ,tof_anc[1], I11[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[1] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I11[1] , I1g[94] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli ( I1g[94] ,tof_anc[2], I11[1] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I00[3] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli ( I11[1] ,tof_anc[2], I00[3] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli ( I11[1] ,tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I11[1] , I1g[95] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli ( I1g[95] ,tof_anc[3], I11[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I00[4] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli ( I11[1] ,tof_anc[3], I00[4] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli ( I11[1] ,tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli ( I11[1] ,tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I11[1] , I1g[96] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I1g[96] ,tof_anc[4], I11[1] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I00[5] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I11[1] ,tof_anc[4], I00[5] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli ( I11[1] ,tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I11[1] ,tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I11[1] , I1g[97] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli ( I1g[97] ,tof_anc[5], I11[1] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I00[6] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli ( I11[1] ,tof_anc[5], I00[6] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli ( I11[1] ,tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli ( I11[1] ,tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I11[1] , I1g[98] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli ( I1g[98] ,tof_anc[6], I11[1] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I00[7] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli ( I11[1] ,tof_anc[6], I00[7] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I11[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli ( I11[1] ,tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[1] , I00[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli ( I00[11] ,tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli ( I00[1] ,tof_anc[7], I00[11] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[1] , I00[11] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[11] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[11] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli ( I00[1] ,tof_anc[7], I00[11] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I0g[1] , I00[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli ( I00[15] ,tof_anc[7], I0g[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli ( I00[1] ,tof_anc[7], I00[15] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[1] , I00[15] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli ( I0g[1] ,tof_anc[8], I00[15] );
Toffoli (tof_anc[8],tof_anc[7], I00[1] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[15] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli ( I00[1] ,tof_anc[7], I00[15] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli ( I00[15] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[15] , I00[0] , I11[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[8],tof_anc[7], I00[15] );
Toffoli ( I11[2] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[15] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[0] , I00[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli ( I00[15] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli ( I00[0] ,tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli ( I00[11] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[11] , I00[0] , I11[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[8],tof_anc[7], I00[11] );
Toffoli ( I11[3] ,tof_anc[8], I00[0] );
Toffoli (tof_anc[8],tof_anc[7], I00[11] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[93] , I1g[94] , I1g[95] , I1g[96] , I1g[97] , I1g[98] , I00[0] , I00[11] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli ( I00[11] ,tof_anc[7], I00[0] );
Toffoli (tof_anc[7],tof_anc[6], I1g[98] );
Toffoli (tof_anc[6],tof_anc[5], I1g[97] );
Toffoli (tof_anc[5],tof_anc[4], I1g[96] );
Toffoli (tof_anc[4],tof_anc[3], I1g[95] );
Toffoli (tof_anc[3],tof_anc[2], I1g[94] );
Toffoli (tof_anc[2],tof_anc[1], I1g[93] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[0] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[0] , I00[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[2] ,tof_anc[1], pos[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[2] , pos[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[0] ,tof_anc[1], I00[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[1] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[1] , I00[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[3] ,tof_anc[1], pos[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[3] , pos[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[1] ,tof_anc[1], I00[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[2] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[2] , I00[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[4] ,tof_anc[1], pos[2] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[4] , pos[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[2] ,tof_anc[1], I00[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[3] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[3] , I00[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[5] ,tof_anc[1], pos[3] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[5] , pos[3] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[3] ,tof_anc[1], I00[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[4] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[4] , I00[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[6] ,tof_anc[1], pos[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[6] , pos[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[4] ,tof_anc[1], I00[6] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[5] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , pos[5] , I00[7] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[7] ,tof_anc[1], pos[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[7] , pos[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( pos[5] ,tof_anc[1], I00[7] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I00[8] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[8] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[8] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I00[8] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I00[9] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[17] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[9] ,tof_anc[1], I00[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I00[9] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[13] , I00[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[16] ,tof_anc[1], I0g[13] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I0g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[13] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[13] , I00[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[16] ,tof_anc[1], I0g[13] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[14] , I00[17] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[17] ,tof_anc[1], I0g[14] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[17] , I0g[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[14] ,tof_anc[1], I00[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[14] , I00[17] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[17] ,tof_anc[1], I0g[14] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[15] , I00[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[18] ,tof_anc[1], I0g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[15] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[15] , I00[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[18] ,tof_anc[1], I0g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[16] , I00[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[19] ,tof_anc[1], I0g[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[19] , I0g[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[16] ,tof_anc[1], I00[19] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[16] , I00[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I00[19] ,tof_anc[1], I0g[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[13] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[14] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[15] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[16] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[19] , I0g[13] , I0g[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[19] );
Toffoli ( I0g[14] ,tof_anc[2], I0g[13] );
Toffoli (tof_anc[2],tof_anc[1], I0g[19] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[20] , I0g[15] , I0g[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[20] );
Toffoli ( I0g[19] ,tof_anc[2], I0g[15] );
Toffoli (tof_anc[2],tof_anc[1], I0g[20] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[16] , I0g[20] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[9] );
Toffoli ( I0g[20] ,tof_anc[2], I0g[16] );
Toffoli (tof_anc[2],tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[20] , I0g[15] , I0g[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[20] );
Toffoli ( I0g[19] ,tof_anc[2], I0g[15] );
Toffoli (tof_anc[2],tof_anc[1], I0g[20] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[13] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[14] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[15] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[16] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[9] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[17] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[9] ,tof_anc[1], I0g[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[9] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[99] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[9] ,tof_anc[1], I1g[99] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I1g[99] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[99] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[99] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[9] ,tof_anc[1], I1g[99] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[10] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[13] , I0g[17] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[13] );
Toffoli ( I0g[18] ,tof_anc[2], I0g[17] );
Toffoli (tof_anc[2],tof_anc[1], I0g[13] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] , I0g[18] , I00[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli ( I00[16] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[100] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[100] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[100] , I00[10] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli ( I11[5] ,tof_anc[2], I00[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[100] , I11[5] , I1g[101] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli ( I1g[101] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[100] , I00[10] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli ( I11[5] ,tof_anc[2], I00[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[100] , I1g[101] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[3],tof_anc[2], I1g[101] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[101] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[100] , I1g[101] , I11[5] , I1g[102] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[3],tof_anc[2], I1g[101] );
Toffoli ( I1g[102] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[101] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[100] , I1g[101] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[3],tof_anc[2], I1g[101] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[101] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[100] , I1g[101] , I1g[102] , I11[6] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[3],tof_anc[2], I1g[101] );
Toffoli (tof_anc[4],tof_anc[3], I1g[102] );
Toffoli ( I0g[15] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[102] );
Toffoli (tof_anc[3],tof_anc[2], I1g[101] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[100] , I1g[101] , I1g[102] , I0g[15] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[3],tof_anc[2], I1g[101] );
Toffoli (tof_anc[4],tof_anc[3], I1g[102] );
Toffoli ( I11[6] ,tof_anc[4], I0g[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[102] );
Toffoli (tof_anc[3],tof_anc[2], I1g[101] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[100] , I1g[101] , I1g[102] , I11[6] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[3],tof_anc[2], I1g[101] );
Toffoli (tof_anc[4],tof_anc[3], I1g[102] );
Toffoli ( I0g[15] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[102] );
Toffoli (tof_anc[3],tof_anc[2], I1g[101] );
Toffoli (tof_anc[2],tof_anc[1], I1g[100] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[13] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[13] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[11] , I0g[18] , I0g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli ( I0g[13] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[13] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[13] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[12] , I0g[18] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli ( I0g[9] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[10] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[14] , I0g[17] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[14] );
Toffoli ( I0g[18] ,tof_anc[2], I0g[17] );
Toffoli (tof_anc[2],tof_anc[1], I0g[14] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[17] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] , I0g[18] , I00[17] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli ( I00[17] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[17] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[19] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[19] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[103] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[103] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[19] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[19] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[103] , I00[11] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli ( I11[5] ,tof_anc[2], I00[11] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[103] , I11[5] , I1g[104] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli ( I1g[104] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[103] , I00[11] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli ( I11[5] ,tof_anc[2], I00[11] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[103] , I1g[104] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[3],tof_anc[2], I1g[104] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[104] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[103] , I1g[104] , I11[5] , I1g[105] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[3],tof_anc[2], I1g[104] );
Toffoli ( I1g[105] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[104] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[103] , I1g[104] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[3],tof_anc[2], I1g[104] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[104] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[103] , I1g[104] , I1g[105] , I11[6] , I0g[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[3],tof_anc[2], I1g[104] );
Toffoli (tof_anc[4],tof_anc[3], I1g[105] );
Toffoli ( I0g[16] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[105] );
Toffoli (tof_anc[3],tof_anc[2], I1g[104] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[103] , I1g[104] , I1g[105] , I0g[16] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[3],tof_anc[2], I1g[104] );
Toffoli (tof_anc[4],tof_anc[3], I1g[105] );
Toffoli ( I11[6] ,tof_anc[4], I0g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[105] );
Toffoli (tof_anc[3],tof_anc[2], I1g[104] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[103] , I1g[104] , I1g[105] , I11[6] , I0g[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[3],tof_anc[2], I1g[104] );
Toffoli (tof_anc[4],tof_anc[3], I1g[105] );
Toffoli ( I0g[16] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[105] );
Toffoli (tof_anc[3],tof_anc[2], I1g[104] );
Toffoli (tof_anc[2],tof_anc[1], I1g[103] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[106] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[106] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[106] , I00[8] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli ( I11[5] ,tof_anc[2], I00[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[106] , I11[5] , I1g[107] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli ( I1g[107] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[106] , I00[8] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli ( I11[5] ,tof_anc[2], I00[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[106] , I1g[107] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[3],tof_anc[2], I1g[107] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[107] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[106] , I1g[107] , I11[5] , I1g[108] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[3],tof_anc[2], I1g[107] );
Toffoli ( I1g[108] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[107] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[106] , I1g[107] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[3],tof_anc[2], I1g[107] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[107] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[106] , I1g[107] , I1g[108] , I11[6] , I0g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[3],tof_anc[2], I1g[107] );
Toffoli (tof_anc[4],tof_anc[3], I1g[108] );
Toffoli ( I0g[13] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[108] );
Toffoli (tof_anc[3],tof_anc[2], I1g[107] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[106] , I1g[107] , I1g[108] , I0g[13] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[3],tof_anc[2], I1g[107] );
Toffoli (tof_anc[4],tof_anc[3], I1g[108] );
Toffoli ( I11[6] ,tof_anc[4], I0g[13] );
Toffoli (tof_anc[4],tof_anc[3], I1g[108] );
Toffoli (tof_anc[3],tof_anc[2], I1g[107] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[106] , I1g[107] , I1g[108] , I11[6] , I0g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[3],tof_anc[2], I1g[107] );
Toffoli (tof_anc[4],tof_anc[3], I1g[108] );
Toffoli ( I0g[13] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[108] );
Toffoli (tof_anc[3],tof_anc[2], I1g[107] );
Toffoli (tof_anc[2],tof_anc[1], I1g[106] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[109] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[109] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[109] , I00[10] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli ( I11[5] ,tof_anc[2], I00[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[109] , I11[5] , I1g[110] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli ( I1g[110] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[109] , I00[10] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli ( I11[5] ,tof_anc[2], I00[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[109] , I1g[110] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[3],tof_anc[2], I1g[110] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[110] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[109] , I1g[110] , I11[5] , I1g[111] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[3],tof_anc[2], I1g[110] );
Toffoli ( I1g[111] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[110] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[109] , I1g[110] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[3],tof_anc[2], I1g[110] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[110] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[109] , I1g[110] , I1g[111] , I11[6] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[3],tof_anc[2], I1g[110] );
Toffoli (tof_anc[4],tof_anc[3], I1g[111] );
Toffoli ( I0g[15] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[111] );
Toffoli (tof_anc[3],tof_anc[2], I1g[110] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[109] , I1g[110] , I1g[111] , I0g[15] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[3],tof_anc[2], I1g[110] );
Toffoli (tof_anc[4],tof_anc[3], I1g[111] );
Toffoli ( I11[6] ,tof_anc[4], I0g[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[111] );
Toffoli (tof_anc[3],tof_anc[2], I1g[110] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[109] , I1g[110] , I1g[111] , I11[6] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[3],tof_anc[2], I1g[110] );
Toffoli (tof_anc[4],tof_anc[3], I1g[111] );
Toffoli ( I0g[15] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[111] );
Toffoli (tof_anc[3],tof_anc[2], I1g[110] );
Toffoli (tof_anc[2],tof_anc[1], I1g[109] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[14] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[14] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[11] , I0g[18] , I0g[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli ( I0g[14] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[14] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[14] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[12] , I0g[18] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli ( I0g[9] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[10] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[15] , I0g[17] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[15] );
Toffoli ( I0g[18] ,tof_anc[2], I0g[17] );
Toffoli (tof_anc[2],tof_anc[1], I0g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] , I0g[18] , I00[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli ( I00[18] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[112] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[112] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[112] , I00[8] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli ( I11[5] ,tof_anc[2], I00[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[112] , I11[5] , I1g[113] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli ( I1g[113] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[112] , I00[8] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli ( I11[5] ,tof_anc[2], I00[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[112] , I1g[113] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[3],tof_anc[2], I1g[113] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[113] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[112] , I1g[113] , I11[5] , I1g[114] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[3],tof_anc[2], I1g[113] );
Toffoli ( I1g[114] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[113] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[112] , I1g[113] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[3],tof_anc[2], I1g[113] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[113] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[112] , I1g[113] , I1g[114] , I11[6] , I0g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[3],tof_anc[2], I1g[113] );
Toffoli (tof_anc[4],tof_anc[3], I1g[114] );
Toffoli ( I0g[13] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[114] );
Toffoli (tof_anc[3],tof_anc[2], I1g[113] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[112] , I1g[113] , I1g[114] , I0g[13] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[3],tof_anc[2], I1g[113] );
Toffoli (tof_anc[4],tof_anc[3], I1g[114] );
Toffoli ( I11[6] ,tof_anc[4], I0g[13] );
Toffoli (tof_anc[4],tof_anc[3], I1g[114] );
Toffoli (tof_anc[3],tof_anc[2], I1g[113] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[112] , I1g[113] , I1g[114] , I11[6] , I0g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[3],tof_anc[2], I1g[113] );
Toffoli (tof_anc[4],tof_anc[3], I1g[114] );
Toffoli ( I0g[13] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[114] );
Toffoli (tof_anc[3],tof_anc[2], I1g[113] );
Toffoli (tof_anc[2],tof_anc[1], I1g[112] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[15] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[11] , I0g[18] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli ( I0g[15] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[15] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[12] , I0g[18] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli ( I0g[9] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[10] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[16] , I0g[17] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[16] );
Toffoli ( I0g[18] ,tof_anc[2], I0g[17] );
Toffoli (tof_anc[2],tof_anc[1], I0g[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[19] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[19] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] , I0g[18] , I00[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli ( I00[19] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[19] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[19] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[17] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[115] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[115] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[17] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[115] , I00[9] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli ( I11[5] ,tof_anc[2], I00[9] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[115] , I11[5] , I1g[116] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli ( I1g[116] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[115] , I00[9] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli ( I11[5] ,tof_anc[2], I00[9] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[115] , I1g[116] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[3],tof_anc[2], I1g[116] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[116] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[115] , I1g[116] , I11[5] , I1g[117] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[3],tof_anc[2], I1g[116] );
Toffoli ( I1g[117] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[116] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[115] , I1g[116] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[3],tof_anc[2], I1g[116] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[116] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[115] , I1g[116] , I1g[117] , I11[6] , I0g[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[3],tof_anc[2], I1g[116] );
Toffoli (tof_anc[4],tof_anc[3], I1g[117] );
Toffoli ( I0g[14] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[117] );
Toffoli (tof_anc[3],tof_anc[2], I1g[116] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[115] , I1g[116] , I1g[117] , I0g[14] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[3],tof_anc[2], I1g[116] );
Toffoli (tof_anc[4],tof_anc[3], I1g[117] );
Toffoli ( I11[6] ,tof_anc[4], I0g[14] );
Toffoli (tof_anc[4],tof_anc[3], I1g[117] );
Toffoli (tof_anc[3],tof_anc[2], I1g[116] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[115] , I1g[116] , I1g[117] , I11[6] , I0g[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[3],tof_anc[2], I1g[116] );
Toffoli (tof_anc[4],tof_anc[3], I1g[117] );
Toffoli ( I0g[14] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[117] );
Toffoli (tof_anc[3],tof_anc[2], I1g[116] );
Toffoli (tof_anc[2],tof_anc[1], I1g[115] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[118] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[118] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[118] , I00[10] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli ( I11[5] ,tof_anc[2], I00[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[118] , I11[5] , I1g[119] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli ( I1g[119] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[118] , I00[10] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli ( I11[5] ,tof_anc[2], I00[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[118] , I1g[119] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[3],tof_anc[2], I1g[119] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[119] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[118] , I1g[119] , I11[5] , I1g[120] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[3],tof_anc[2], I1g[119] );
Toffoli ( I1g[120] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[119] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[118] , I1g[119] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[3],tof_anc[2], I1g[119] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[119] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[118] , I1g[119] , I1g[120] , I11[6] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[3],tof_anc[2], I1g[119] );
Toffoli (tof_anc[4],tof_anc[3], I1g[120] );
Toffoli ( I0g[15] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[120] );
Toffoli (tof_anc[3],tof_anc[2], I1g[119] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[118] , I1g[119] , I1g[120] , I0g[15] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[3],tof_anc[2], I1g[119] );
Toffoli (tof_anc[4],tof_anc[3], I1g[120] );
Toffoli ( I11[6] ,tof_anc[4], I0g[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[120] );
Toffoli (tof_anc[3],tof_anc[2], I1g[119] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[118] , I1g[119] , I1g[120] , I11[6] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[3],tof_anc[2], I1g[119] );
Toffoli (tof_anc[4],tof_anc[3], I1g[120] );
Toffoli ( I0g[15] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[120] );
Toffoli (tof_anc[3],tof_anc[2], I1g[119] );
Toffoli (tof_anc[2],tof_anc[1], I1g[118] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[16] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[11] , I0g[18] , I0g[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli ( I0g[16] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[16] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[12] , I0g[18] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli ( I0g[9] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[17] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[9] ,tof_anc[1], I0g[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[9] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[17] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[9] ,tof_anc[1], I0g[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[9] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[99] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[9] ,tof_anc[1], I1g[99] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I1g[99] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[99] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[99] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[9] ,tof_anc[1], I1g[99] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[10] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[13] , I0g[17] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[13] );
Toffoli ( I0g[18] ,tof_anc[2], I0g[17] );
Toffoli (tof_anc[2],tof_anc[1], I0g[13] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] , I0g[18] , I00[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli ( I00[16] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[121] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[121] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[121] , I00[10] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli ( I11[5] ,tof_anc[2], I00[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[121] , I11[5] , I1g[122] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli ( I1g[122] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[121] , I00[10] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli ( I11[5] ,tof_anc[2], I00[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[121] , I1g[122] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[3],tof_anc[2], I1g[122] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[122] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[121] , I1g[122] , I11[5] , I1g[123] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[3],tof_anc[2], I1g[122] );
Toffoli ( I1g[123] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[122] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[121] , I1g[122] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[3],tof_anc[2], I1g[122] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[122] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[121] , I1g[122] , I1g[123] , I11[6] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[3],tof_anc[2], I1g[122] );
Toffoli (tof_anc[4],tof_anc[3], I1g[123] );
Toffoli ( I0g[15] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[123] );
Toffoli (tof_anc[3],tof_anc[2], I1g[122] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[121] , I1g[122] , I1g[123] , I0g[15] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[3],tof_anc[2], I1g[122] );
Toffoli (tof_anc[4],tof_anc[3], I1g[123] );
Toffoli ( I11[6] ,tof_anc[4], I0g[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[123] );
Toffoli (tof_anc[3],tof_anc[2], I1g[122] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[121] , I1g[122] , I1g[123] , I11[6] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[3],tof_anc[2], I1g[122] );
Toffoli (tof_anc[4],tof_anc[3], I1g[123] );
Toffoli ( I0g[15] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[123] );
Toffoli (tof_anc[3],tof_anc[2], I1g[122] );
Toffoli (tof_anc[2],tof_anc[1], I1g[121] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[13] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[13] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[11] , I0g[18] , I0g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli ( I0g[13] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[13] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[13] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[12] , I0g[18] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli ( I0g[9] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[10] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[14] , I0g[17] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[14] );
Toffoli ( I0g[18] ,tof_anc[2], I0g[17] );
Toffoli (tof_anc[2],tof_anc[1], I0g[14] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[17] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] , I0g[18] , I00[17] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli ( I00[17] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[17] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[19] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[19] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[124] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[124] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[19] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[19] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[124] , I00[11] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli ( I11[5] ,tof_anc[2], I00[11] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[124] , I11[5] , I1g[125] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli ( I1g[125] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[124] , I00[11] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli ( I11[5] ,tof_anc[2], I00[11] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[124] , I1g[125] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[3],tof_anc[2], I1g[125] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[125] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[124] , I1g[125] , I11[5] , I1g[126] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[3],tof_anc[2], I1g[125] );
Toffoli ( I1g[126] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[125] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[124] , I1g[125] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[3],tof_anc[2], I1g[125] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[125] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[124] , I1g[125] , I1g[126] , I11[6] , I0g[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[3],tof_anc[2], I1g[125] );
Toffoli (tof_anc[4],tof_anc[3], I1g[126] );
Toffoli ( I0g[16] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[126] );
Toffoli (tof_anc[3],tof_anc[2], I1g[125] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[124] , I1g[125] , I1g[126] , I0g[16] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[3],tof_anc[2], I1g[125] );
Toffoli (tof_anc[4],tof_anc[3], I1g[126] );
Toffoli ( I11[6] ,tof_anc[4], I0g[16] );
Toffoli (tof_anc[4],tof_anc[3], I1g[126] );
Toffoli (tof_anc[3],tof_anc[2], I1g[125] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[124] , I1g[125] , I1g[126] , I11[6] , I0g[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[3],tof_anc[2], I1g[125] );
Toffoli (tof_anc[4],tof_anc[3], I1g[126] );
Toffoli ( I0g[16] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[126] );
Toffoli (tof_anc[3],tof_anc[2], I1g[125] );
Toffoli (tof_anc[2],tof_anc[1], I1g[124] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[127] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[127] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[127] , I00[8] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli ( I11[5] ,tof_anc[2], I00[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[127] , I11[5] , I1g[128] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli ( I1g[128] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[127] , I00[8] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli ( I11[5] ,tof_anc[2], I00[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[127] , I1g[128] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[3],tof_anc[2], I1g[128] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[128] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[127] , I1g[128] , I11[5] , I1g[129] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[3],tof_anc[2], I1g[128] );
Toffoli ( I1g[129] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[128] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[127] , I1g[128] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[3],tof_anc[2], I1g[128] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[128] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[127] , I1g[128] , I1g[129] , I11[6] , I0g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[3],tof_anc[2], I1g[128] );
Toffoli (tof_anc[4],tof_anc[3], I1g[129] );
Toffoli ( I0g[13] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[129] );
Toffoli (tof_anc[3],tof_anc[2], I1g[128] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[127] , I1g[128] , I1g[129] , I0g[13] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[3],tof_anc[2], I1g[128] );
Toffoli (tof_anc[4],tof_anc[3], I1g[129] );
Toffoli ( I11[6] ,tof_anc[4], I0g[13] );
Toffoli (tof_anc[4],tof_anc[3], I1g[129] );
Toffoli (tof_anc[3],tof_anc[2], I1g[128] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[127] , I1g[128] , I1g[129] , I11[6] , I0g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[3],tof_anc[2], I1g[128] );
Toffoli (tof_anc[4],tof_anc[3], I1g[129] );
Toffoli ( I0g[13] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[129] );
Toffoli (tof_anc[3],tof_anc[2], I1g[128] );
Toffoli (tof_anc[2],tof_anc[1], I1g[127] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[130] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[130] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[130] , I00[10] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli ( I11[5] ,tof_anc[2], I00[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[130] , I11[5] , I1g[131] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli ( I1g[131] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[130] , I00[10] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli ( I11[5] ,tof_anc[2], I00[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[130] , I1g[131] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[3],tof_anc[2], I1g[131] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[131] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[130] , I1g[131] , I11[5] , I1g[132] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[3],tof_anc[2], I1g[131] );
Toffoli ( I1g[132] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[131] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[130] , I1g[131] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[3],tof_anc[2], I1g[131] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[131] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[130] , I1g[131] , I1g[132] , I11[6] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[3],tof_anc[2], I1g[131] );
Toffoli (tof_anc[4],tof_anc[3], I1g[132] );
Toffoli ( I0g[15] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[132] );
Toffoli (tof_anc[3],tof_anc[2], I1g[131] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[130] , I1g[131] , I1g[132] , I0g[15] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[3],tof_anc[2], I1g[131] );
Toffoli (tof_anc[4],tof_anc[3], I1g[132] );
Toffoli ( I11[6] ,tof_anc[4], I0g[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[132] );
Toffoli (tof_anc[3],tof_anc[2], I1g[131] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[130] , I1g[131] , I1g[132] , I11[6] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[3],tof_anc[2], I1g[131] );
Toffoli (tof_anc[4],tof_anc[3], I1g[132] );
Toffoli ( I0g[15] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[132] );
Toffoli (tof_anc[3],tof_anc[2], I1g[131] );
Toffoli (tof_anc[2],tof_anc[1], I1g[130] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[14] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[14] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[11] , I0g[18] , I0g[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli ( I0g[14] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[14] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[14] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[12] , I0g[18] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli ( I0g[9] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[10] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[15] , I0g[17] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[15] );
Toffoli ( I0g[18] ,tof_anc[2], I0g[17] );
Toffoli (tof_anc[2],tof_anc[1], I0g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] , I0g[18] , I00[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli ( I00[18] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[133] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[133] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[16] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[133] , I00[8] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli ( I11[5] ,tof_anc[2], I00[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[133] , I11[5] , I1g[134] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli ( I1g[134] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[133] , I00[8] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli ( I11[5] ,tof_anc[2], I00[8] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[133] , I1g[134] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[3],tof_anc[2], I1g[134] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[134] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[133] , I1g[134] , I11[5] , I1g[135] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[3],tof_anc[2], I1g[134] );
Toffoli ( I1g[135] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[134] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[133] , I1g[134] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[3],tof_anc[2], I1g[134] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[134] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[133] , I1g[134] , I1g[135] , I11[6] , I0g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[3],tof_anc[2], I1g[134] );
Toffoli (tof_anc[4],tof_anc[3], I1g[135] );
Toffoli ( I0g[13] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[135] );
Toffoli (tof_anc[3],tof_anc[2], I1g[134] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[133] , I1g[134] , I1g[135] , I0g[13] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[3],tof_anc[2], I1g[134] );
Toffoli (tof_anc[4],tof_anc[3], I1g[135] );
Toffoli ( I11[6] ,tof_anc[4], I0g[13] );
Toffoli (tof_anc[4],tof_anc[3], I1g[135] );
Toffoli (tof_anc[3],tof_anc[2], I1g[134] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[133] , I1g[134] , I1g[135] , I11[6] , I0g[13] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[3],tof_anc[2], I1g[134] );
Toffoli (tof_anc[4],tof_anc[3], I1g[135] );
Toffoli ( I0g[13] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[135] );
Toffoli (tof_anc[3],tof_anc[2], I1g[134] );
Toffoli (tof_anc[2],tof_anc[1], I1g[133] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[15] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[11] , I0g[18] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli ( I0g[15] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[15] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[15] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[12] , I0g[18] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli ( I0g[9] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I0g[10] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[16] , I0g[17] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[16] );
Toffoli ( I0g[18] ,tof_anc[2], I0g[17] );
Toffoli (tof_anc[2],tof_anc[1], I0g[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[19] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[19] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[10] , I0g[18] , I00[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli ( I00[19] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[10] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[19] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I00[19] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[17] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[136] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[136] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[17] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[136] , I00[9] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli ( I11[5] ,tof_anc[2], I00[9] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[136] , I11[5] , I1g[137] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli ( I1g[137] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[136] , I00[9] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli ( I11[5] ,tof_anc[2], I00[9] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[136] , I1g[137] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[3],tof_anc[2], I1g[137] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[137] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[136] , I1g[137] , I11[5] , I1g[138] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[3],tof_anc[2], I1g[137] );
Toffoli ( I1g[138] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[137] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[136] , I1g[137] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[3],tof_anc[2], I1g[137] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[137] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[136] , I1g[137] , I1g[138] , I11[6] , I0g[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[3],tof_anc[2], I1g[137] );
Toffoli (tof_anc[4],tof_anc[3], I1g[138] );
Toffoli ( I0g[14] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[138] );
Toffoli (tof_anc[3],tof_anc[2], I1g[137] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[136] , I1g[137] , I1g[138] , I0g[14] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[3],tof_anc[2], I1g[137] );
Toffoli (tof_anc[4],tof_anc[3], I1g[138] );
Toffoli ( I11[6] ,tof_anc[4], I0g[14] );
Toffoli (tof_anc[4],tof_anc[3], I1g[138] );
Toffoli (tof_anc[3],tof_anc[2], I1g[137] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[136] , I1g[137] , I1g[138] , I11[6] , I0g[14] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[3],tof_anc[2], I1g[137] );
Toffoli (tof_anc[4],tof_anc[3], I1g[138] );
Toffoli ( I0g[14] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[138] );
Toffoli (tof_anc[3],tof_anc[2], I1g[137] );
Toffoli (tof_anc[2],tof_anc[1], I1g[136] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[5] , I1g[139] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[139] ,tof_anc[1], I11[5] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[5] ,tof_anc[1], I00[18] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[139] , I00[10] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli ( I11[5] ,tof_anc[2], I00[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[139] , I11[5] , I1g[140] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli ( I1g[140] ,tof_anc[2], I11[5] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[139] , I00[10] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli ( I11[5] ,tof_anc[2], I00[10] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[139] , I1g[140] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[3],tof_anc[2], I1g[140] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[140] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[139] , I1g[140] , I11[5] , I1g[141] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[3],tof_anc[2], I1g[140] );
Toffoli ( I1g[141] ,tof_anc[3], I11[5] );
Toffoli (tof_anc[3],tof_anc[2], I1g[140] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[139] , I1g[140] , I0g[18] , I11[5] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[3],tof_anc[2], I1g[140] );
Toffoli ( I11[5] ,tof_anc[3], I0g[18] );
Toffoli (tof_anc[3],tof_anc[2], I1g[140] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[139] , I1g[140] , I1g[141] , I11[6] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[3],tof_anc[2], I1g[140] );
Toffoli (tof_anc[4],tof_anc[3], I1g[141] );
Toffoli ( I0g[15] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[141] );
Toffoli (tof_anc[3],tof_anc[2], I1g[140] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[139] , I1g[140] , I1g[141] , I0g[15] , I11[6] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[3],tof_anc[2], I1g[140] );
Toffoli (tof_anc[4],tof_anc[3], I1g[141] );
Toffoli ( I11[6] ,tof_anc[4], I0g[15] );
Toffoli (tof_anc[4],tof_anc[3], I1g[141] );
Toffoli (tof_anc[3],tof_anc[2], I1g[140] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[139] , I1g[140] , I1g[141] , I11[6] , I0g[15] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[3],tof_anc[2], I1g[140] );
Toffoli (tof_anc[4],tof_anc[3], I1g[141] );
Toffoli ( I0g[15] ,tof_anc[4], I11[6] );
Toffoli (tof_anc[4],tof_anc[3], I1g[141] );
Toffoli (tof_anc[3],tof_anc[2], I1g[140] );
Toffoli (tof_anc[2],tof_anc[1], I1g[139] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[16] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[11] , I0g[18] , I0g[16] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli ( I0g[16] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[11] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[16] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[16] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[12] , I0g[18] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli ( I0g[9] ,tof_anc[2], I0g[18] );
Toffoli (tof_anc[2],tof_anc[1], I0g[12] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[9] , I0g[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[18] ,tof_anc[1], I0g[9] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[17] , I0g[9] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[9] ,tof_anc[1], I0g[17] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I00[18] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I00[19] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[4] , I00[18] , I00[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I11[4] );
Toffoli ( I00[19] ,tof_anc[2], I00[18] );
Toffoli (tof_anc[2],tof_anc[1], I11[4] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[18] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I00[18] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[19] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I00[19] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[1] , I11[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[4] ,tof_anc[1], I00[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[1] , I11[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[4] ,tof_anc[1], I00[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[1] , I11[4] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[1] );
Toffoli ( I00[1] ,tof_anc[2], I11[4] );
Toffoli (tof_anc[2],tof_anc[1], I0g[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[1] , I11[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[4] ,tof_anc[1], I00[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[4] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[1] , I11[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[4] ,tof_anc[1], I0g[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[1] , I11[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[4] ,tof_anc[1], I00[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[1] , I11[4] , I00[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I0g[1] );
Toffoli ( I00[1] ,tof_anc[2], I11[4] );
Toffoli (tof_anc[2],tof_anc[1], I0g[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I00[1] , I11[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[4] ,tof_anc[1], I00[1] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[4] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I11[4] ,tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , binary[0] , I0g[1] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I0g[1] ,tof_anc[1], binary[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli ( I1g[2] , I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[0] ,tof_anc[1], I0g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I11[0] , I1g[142] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[142] ,tof_anc[1], I11[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I0g[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I11[0] ,tof_anc[1], I0g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , pos[6] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I11[0] ,tof_anc[2], pos[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I11[0] , I1g[143] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I1g[143] ,tof_anc[2], I11[0] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , pos[6] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I11[0] ,tof_anc[2], pos[6] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] , height1[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( height1[0] ,tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli ( I1g[143] ,tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] , pos[1] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli ( I11[0] ,tof_anc[3], pos[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] , I11[0] , I1g[144] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli ( I1g[144] ,tof_anc[3], I11[0] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] , pos[1] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli ( I11[0] ,tof_anc[3], pos[1] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] , I1g[144] , r[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli ( r[0] ,tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] , I1g[144] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli ( I1g[144] ,tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] , I1g[144] , pos[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli ( I11[0] ,tof_anc[4], pos[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] , I1g[144] , I11[0] , I1g[145] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli ( I1g[145] ,tof_anc[4], I11[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] , I1g[144] , pos[0] , I11[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli ( I11[0] ,tof_anc[4], pos[0] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] , I1g[144] , I1g[145] , rp[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli ( rp[0] ,tof_anc[4], I1g[145] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] , I1g[144] , I1g[145] , binary[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli ( binary[0] ,tof_anc[4], I1g[145] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] , I1g[144] , I1g[145] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli ( I1g[145] ,tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
// Toffoli ( I1g[0] , I1g[1] , I1g[2] , I1g[142] , I1g[143] , I1g[144] , I1g[145] , rpp[0] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli ( rpp[0] ,tof_anc[4], I1g[145] );
Toffoli (tof_anc[4],tof_anc[3], I1g[144] );
Toffoli (tof_anc[3],tof_anc[2], I1g[143] );
Toffoli (tof_anc[2],tof_anc[1], I1g[142] );
Toffoli (tof_anc[1],tof_anc[0], I1g[2] );
Toffoli (tof_anc[0], I1g[1] , I1g[0] );
}
/* IARPA - GFI Algorithm 2 */
/* Progress status: done */
/* Classical implementation: No */
//scaff_module EXP_U(int power, qbit ctrl[1], qstruct B_qstruct b, qbit init_r[s], qbit init_b[s]){
scaff_module EXP_U(int power, qbit ctrl[1], qbit pos[width], qbit leaf[1], qbit paraleaf[1], qbit binary[1], qbit height1[1], qbit r[1], qbit rp[1], qbit rpp[1], qbit dir[m], qbit init_r[s], qbit init_b[s]){
//it is assumed that int is 32-bit and power<=6*31; according to GFI, power<=189 is enough.
//extra code added to support repetition of 2^189 times; all of these codes will dissappear after compilation
int val = 0;
int i;
int loop0,loop1,loop2,loop3,loop4,loop5,loop6;
int counter0, counter1,counter2,counter3,counter4,counter5,counter6;
val = 6*31;
if (power>val){
counter6 = (int)pow(2, power%val);
power = power - (power%val);
}else{
counter6=1;
}
val = 5*31;
if (power>val){
counter5 = (int)pow(2, power%val);
power