/*************************************************************************
* *
* This file is part of the 20n/act project. *
* 20n/act enables DNA prediction for synthetic biology/bioengineering. *
* Copyright (C) 2017 20n Labs, Inc. *
* *
* Please direct all queries to act@20n.com. *
* *
* This program is free software: you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation, either version 3 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
* *
*************************************************************************/
package act.shared;
import java.util.HashSet;
// superceded by MongoDB.getManualMarkedReachables
@Deprecated
public class FattyAcidEnablers {
@Deprecated
public static HashSet<Long> getFattyAcidEnablers(int enables_at_least) {
System.out.println("Abort: Fatty acid enablers list needs to be updated coz the chemical IDs might have changed.");
System.exit(-1);
HashSet<Long> ids = new HashSet<Long>();
for (int[] entry : fatty_acid) {
long id = (long) entry[0];
int cluster_enabled_size = entry[1];
if (cluster_enabled_size >= enables_at_least)
ids.add(id);
}
return ids;
}
@Deprecated
static int[][] fatty_acid = new int[][] {
/* { chem_id, cluster_size_that_is enabled } */
{ 43, 476 },
{ 1026, 569 },
{ 1050, 570 },
{ 1684, 471 },
{ 2003, 478 },
{ 3064, 479 },
{ 3976, 538 },
{ 4600, 471 },
{ 5181, 505 },
{ 5758, 449 },
{ 6062, 495 },
{ 6179, 480 },
{ 6252, 501 },
{ 6254, 491 },
{ 6520, 470 },
{ 6656, 528 },
{ 6690, 536 },
{ 6699, 547 },
{ 6872, 536 },
{ 6879, 459 },
{ 7006, 501 },
{ 7012, 518 },
{ 7031, 484 },
{ 7103, 460 },
{ 7377, 569 },
{ 7796, 528 },
{ 7802, 536 },
{ 7807, 453 },
{ 8183, 487 },
{ 8200, 482 },
{ 8215, 536 },
{ 8261, 505 },
{ 8270, 492 },
{ 8271, 504 },
{ 8273, 451 },
{ 8276, 454 },
{ 8295, 453 },
{ 8320, 547 },
{ 8321, 545 },
{ 8328, 513 },
{ 8329, 493 },
{ 8375, 512 },
{ 8955, 485 },
{ 8994, 456 },
{ 9031, 511 },
{ 9035, 516 },
{ 9766, 455 },
{ 14596, 476 },
{ 16184, 558 },
{ 16257, 569 },
{ 17294, 569 },
{ 19448, 558 },
{ 20036, 495 },
{ 20101, 537 },
{ 20102, 573 },
{ 20103, 573 },
{ 20123, 574 },
{ 20124, 574 },
{ 20516, 494 },
{ 20802, 543 },
{ 20813, 540 },
{ 20814, 542 },
{ 20815, 537 },
{ 21489, 489 },
{ 21491, 537 },
{ 21514, 537 },
{ 21706, 558 },
{ 22083, 463 },
{ 22140, 539 },
{ 22141, 541 },
{ 22226, 510 },
{ 22377, 461 },
{ 23980, 486 },
{ 24460, 467 },
{ 24562, 547 },
{ 26031, 490 },
{ 27491, 510 },
{ 28108, 458 },
{ 28125, 463 },
};
}
/*
574 [20124]
574 [20123]
573 [20103]
573 [20102]
570 [1050]
569 [7377, 17294]
569 [16257, 1026]
569 [1050, 17294]
558 [19448, 21706]
558 [16257, 16184]
547 [8320, 6699]
547 [24562, 6699]
545 [8321, 6699]
543 [20802]
542 [20814]
541 [22141]
540 [20813]
539 [22140]
538 [3976]
537 [21514]
537 [21491]
537 [20815]
537 [20101]
536 [8215, 17294]
536 [7802, 17294]
536 [6872, 17294]
536 [6690, 17294]
528 [6656, 7796]
518 [7012, 7796]
516 [9035, 6699]
513 [8328, 6699]
512 [8375]
511 [9031, 6699]
510 [27491, 22226]
505 [8261, 5181]
504 [5181, 8271]
501 [6252, 7006]
495 [20036, 6062]
494 [20516]
493 [8329]
492 [8270]
491 [7802, 6254]
490 [7377, 26031]
489 [7802, 21489]
487 [8183]
486 [23980, 6252]
485 [8955]
484 [7031]
483 [8321]
482 [8200, 6252]
480 [6179]
479 [3064, 27491]
478 [2003, 27491]
476 [14596, 43]
471 [1684, 4600]
470 [5181, 6520]
467 [27491, 24460]
465 [7802, 43]
464 [7802, 5181]
463 [28125, 22083]
462 [22083]
461 [22377]
460 [7103, 4600]
459 [6879, 7796]
458 [28108]
457 [8200, 28108]
456 [8994]
455 [9766]
454 [8276]
453 [8295, 7807]
452 [9035]
451 [8273]
450 [9031]
449 [8215, 5758]
*/
/*
*
* Inspired by the conditional reachability analysis that gives the following
ClusterSize Enabling chemical
574 [20124]
574 [20123]
573 [20103]
573 [20102]
570 [1050]
569 [7377, 17294]
569 [16257, 1026]
569 [1050, 17294]
558 [19448, 21706]
558 [16257, 16184]
547 [8320, 6699]
547 [24562, 6699]
545 [8321, 6699]
545 [8271, 6699]
545 [6699, 8265]
543 [20802]
542 [20814]
541 [22141]
541 [16580]
540 [21513, 4474]
540 [21513, 18042]
540 [20813]
540 [20803]
540 [17294, 16580]
539 [22140]
539 [22131]
539 [21513]
539 [21512]
539 [21511]
539 [21493]
539 [20461]
539 [19447]
539 [18617]
538 [4571, 16257]
538 [3976]
538 [22624, 14554]
538 [22610, 14554]
538 [22142, 14554]
538 [20480]
538 [19415]
538 [18562]
538 [18084]
538 [17294, 22132]
538 [17294, 22130]
538 [17294, 18061]
538 [17061]
537 [8857]
537 [26590, 17061]
537 [23949]
537 [23079, 17294]
537 [22624]
537 [22613]
537 [22610]
537 [22603, 23949]
537 [22142]
537 [22133]
537 [21514]
537 [21491]
537 [20815]
537 [20101]
537 [19448]
537 [19414]
537 [19401]
537 [18561]
537 [17767]
537 [17766]
537 [17765]
537 [17719]
537 [17681]
537 [17680]
537 [17642]
537 [17329]
537 [17294]
537 [17294, 3976]
537 [17294, 16986]
537 [17017]
537 [16257]
537 [10166]
536 [8215, 17294]
536 [7802, 17294]
536 [6872, 17294]
536 [6690, 17294]
536 [6690, 16257]
536 [4600, 16257]
536 [4573, 16257]
536 [22624, 17294]
536 [22142, 17294]
536 [19448, 17294]
536 [18618, 17294]
536 [17719, 26590]
536 [17294, 8857]
536 [17294, 7006]
536 [17294, 22133]
536 [17294, 21514]
536 [17294, 20815]
536 [17294, 20125]
536 [17294, 20036]
536 [17294, 17767]
536 [17294, 17719]
536 [17294, 17329]
536 [17294, 17017]
536 [16257, 7006]
536 [16257, 4535]
536 [16257, 20036]
536 [16257, 12301]
536 [16257, 10084]
536 [10166, 17294]
528 [6656, 7796]
518 [7012, 7796]
518 [7012, 26031]
518 [6694, 7796]
518 [15556, 7012]
516 [9035, 6699]
513 [8328, 6699]
513 [6663, 7796]
512 [8375]
512 [8374]
512 [8370]
512 [22054]
511 [9031, 6699]
511 [7802, 6699]
511 [7796, 6735]
511 [6699, 7796]
511 [4573, 6699]
511 [27702, 6699]
511 [26031, 6699]
511 [20036, 6699]
511 [19354, 6699]
511 [15556, 6699]
510 [27491, 22226]
505 [8261, 5181]
504 [5181, 8271]
504 [5181, 8186]
504 [5181, 6252]
501 [6252, 7006]
495 [20036, 6062]
494 [20516]
493 [8329]
493 [7802, 20516]
492 [8270]
492 [8269]
492 [6518]
492 [6254]
491 [7802, 6254]
491 [6518, 20036]
491 [6254, 7796]
491 [6254, 7793]
490 [7377, 26031]
490 [25105, 1062]
490 [21489]
490 [1062, 7796]
489 [7802, 21489]
489 [7793, 21489]
487 [8183]
486 [23980, 6252]
485 [8955]
485 [8324]
485 [8187]
485 [6519]
484 [7802, 6519]
484 [7031]
484 [7030]
484 [23928]
484 [21806]
484 [21131]
483 [8321]
483 [8271]
483 [8265]
483 [8186]
483 [7735, 3028]
483 [6513]
483 [6253]
483 [6252]
483 [28033]
483 [27575]
483 [27534]
483 [24123]
482 [8200, 6252]
482 [7802, 6513]
482 [7802, 6252]
482 [7802, 11260]
482 [7646, 7796]
482 [7646, 3028]
482 [6530, 6252]
482 [6252, 7796]
482 [6252, 7793]
482 [20036, 7646]
482 [20036, 6253]
482 [11260, 7796]
482 [11260, 20036]
480 [6179]
480 [20048]
480 [20002]
480 [15214]
479 [3064, 27491]
478 [2003, 27491]
476 [14596, 43]
471 [1684, 4600]
470 [5181, 6520]
470 [4931, 20036]
470 [26630, 20036]
467 [27491, 24460]
467 [26590, 7006]
465 [7802, 43]
465 [7761]
465 [7757]
465 [43, 7796]
465 [18855]
464 [7802, 5181]
464 [5181, 7796]
464 [5181, 20036]
464 [4573, 5181]
464 [15556, 5181]
463 [28125, 22083]
463 [26112, 22083]
462 [22083]
461 [27144, 22083]
461 [23980, 28108]
461 [22377]
460 [7103, 4600]
460 [6704, 7796]
460 [4573, 7103]
460 [27625, 20036]
460 [20036, 28126]
459 [6879, 7796]
459 [6879, 26031]
459 [27624, 28108]
459 [21152]
459 [21130]
459 [14627]
458 [28108]
458 [16681]
458 [15557]
458 [15555, 28108]
457 [8200, 28108]
457 [7802, 28108]
457 [7802, 27141]
457 [7793, 28108]
457 [6815]
457 [28108, 7796]
457 [28107]
457 [27141, 7796]
457 [27141, 20036]
457 [20036, 3567]
457 [20036, 28108]
457 [15918]
457 [15895]
456 [8994]
456 [8400]
456 [7802, 28107]
456 [7802, 14651]
456 [7790, 28107]
456 [6843, 7796]
456 [6530, 23980]
456 [6527]
456 [5776, 3028]
456 [5398]
456 [28107, 7796]
456 [28107, 7793]
456 [26994]
456 [20483]
456 [20036, 28107]
456 [20036, 14651]
456 [14651, 7796]
455 [9766]
455 [8399]
455 [8274]
455 [8267]
455 [7802, 23266]
455 [7796, 5957]
455 [6908]
455 [6901]
455 [6816]
455 [6752]
455 [6520]
455 [28130]
455 [26994, 28199]
455 [26994, 26031]
455 [24659]
455 [24634]
455 [24433]
455 [20163]
455 [20036, 5957]
454 [8276]
454 [7802, 5419]
454 [7697]
454 [6914, 6256]
454 [6753, 6256]
454 [6530]
454 [6528]
454 [6256]
454 [6256, 7033]
454 [5419, 7796]
454 [5419, 20036]
454 [4573, 15195]
454 [27491, 15334]
454 [20036, 6750]
454 [15062]
454 [15022]
454 [14916]
454 [14913]
453 [8295, 7807]
453 [8295, 26031]
453 [8295, 26030]
453 [7819]
453 [7802, 26591]
453 [7382, 20036]
453 [6528, 7796]
453 [6256, 8200]
453 [6256, 6530]
453 [27162, 7796]
453 [26591, 7796]
453 [26075]
453 [23897]
453 [2157]
453 [21516]
453 [21494]
453 [20036, 6528]
453 [20036, 26591]
453 [20036, 17330]
453 [14650, 7796]
452 [9035]
452 [8301]
452 [8263]
452 [8209, 26590]
452 [8182]
452 [7802, 6529]
452 [7802, 6506]
452 [7802, 25130]
452 [7674]
452 [6858, 7796]
452 [5737, 20036]
452 [5729, 7796]
452 [5421, 7796]
452 [5406, 20036]
452 [4628, 20036]
452 [3028, 5397]
452 [27428]
452 [27268]
452 [26924]
452 [24882]
452 [24848]
452 [24742]
452 [24650]
452 [24648]
452 [2419, 7796]
452 [23221]
452 [21791]
452 [21029]
452 [20036, 5730]
452 [19752]
452 [18657]
452 [17823]
452 [17822]
452 [17768]
452 [17295]
452 [16236, 26031]
452 [15921]
452 [15854]
452 [15556, 7248]
452 [14598]
452 [14596]
452 [14553]
451 [8273]
451 [7811]
451 [7808, 7796]
451 [7802, 6363]
451 [7796, 6855]
451 [7719]
451 [7704]
451 [7693]
451 [7586]
451 [7585]
451 [7502, 4600]
451 [7314]
451 [6894]
451 [6880, 7796]
451 [6695, 7796]
451 [6363, 7796]
451 [6057]
451 [6055]
451 [6022, 4600]
451 [5774]
451 [5420]
451 [5417]
451 [5395]
451 [4944]
451 [4620]
451 [4608]
451 [4584]
451 [4574]
451 [3961, 7796]
451 [28123]
451 [27491, 2089]
451 [27113]
451 [27112]
451 [26537]
451 [26053]
451 [26031, 4187]
451 [25538]
451 [25346]
451 [25064]
451 [25039]
451 [24649]
451 [24647]
451 [24419]
451 [24208, 26590]
451 [23744]
451 [23742]
451 [23605]
451 [23602]
451 [23574]
451 [23376]
451 [22615]
451 [22614]
451 [22376]
451 [20842, 7796]
451 [20818]
451 [20487]
451 [20486]
451 [20468]
451 [20140]
451 [20112]
451 [20036, 7799]
451 [20036, 11081]
451 [17812]
451 [17035, 7796]
451 [16664]
451 [15896]
451 [15854, 27144]
451 [15805]
451 [15556, 9140]
451 [15556, 8494]
451 [15556, 7999]
451 [15556, 5210]
451 [15556, 4187]
451 [15556, 10335]
451 [15554]
451 [15524, 26031]
451 [15027]
451 [14941]
451 [14653]
451 [14602]
451 [14600, 7796]
451 [14599]
450 [9031]
450 [8439]
450 [8260]
450 [8226]
450 [8220]
450 [7810]
450 [7807]
450 [7805]
450 [7802]
450 [7796]
450 [7791, 20036]
450 [7705]
450 [7579]
450 [6508, 3028]
450 [5955]
450 [5768]
450 [5758]
450 [5757]
450 [5748]
450 [4925]
450 [4629]
450 [4601]
450 [4600]
450 [4598]
450 [4573]
450 [4559]
450 [28109]
450 [28106]
450 [28032]
450 [27702]
450 [27526]
450 [27491]
450 [27451]
450 [27144]
450 [27087]
450 [27053]
450 [27052]
450 [26993]
450 [26629]
450 [26627]
450 [26590]
450 [26590, 21810]
450 [26051]
450 [26031]
450 [26031, 8417]
450 [26031, 16196]
450 [26030]
450 [25917]
450 [25149]
450 [25133]
450 [25105]
450 [21149, 26031]
450 [21140]
450 [20848]
450 [20832, 26031]
450 [20721]
450 [20485]
450 [20036]
450 [20036, 25134]
450 [19975]
450 [19452]
450 [19451]
450 [19354]
450 [19354, 25134]
450 [19076]
450 [18655, 3028]
450 [18632, 3028]
450 [18169]
450 [18154]
450 [16081]
450 [15871]
450 [15556]
450 [15063]
450 [15026]
450 [15021]
450 [14991]
450 [14987]
450 [14939]
450 [14655]
450 [14514]
449 [8215, 5758]
449 [8215, 26590]
449 [8200, 26590]
449 [7807, 7796]
449 [7807, 7793]
449 [7807, 20036]
449 [7805, 20036]
449 [7802, 7807]
449 [7802, 5758]
449 [7802, 26590]
449 [7802, 26031]
449 [7739, 20036]
449 [6071, 7807]
449 [6053, 20036]
449 [5782, 20036]
449 [5769, 7796]
449 [5758, 7796]
449 [5758, 7793]
449 [5758, 20036]
449 [5757, 7796]
449 [4629, 8215]
449 [4629, 7796]
449 [4599, 7796]
449 [4559, 5769]
449 [27052, 4535]
449 [26993, 9348]
449 [26993, 26031]
449 [26590, 7796]
449 [26590, 7793]
449 [26031, 8200]
449 [26031, 7796]
449 [26031, 7793]
449 [26031, 3028]
449 [26031, 28106]
449 [26030, 7796]
449 [25917, 7796]
449 [20848, 26993]
449 [20036, 5769]
449 [20036, 26590]
449 [20036, 26031]
449 [20036, 26030]
449 [18154, 3028]
449 [16081, 9348]
449 [15556, 4535]
449 [15556, 28106]
449 [15556, 27144]
449 [15556, 18154]
449 [15556, 15065]
449 [15556, 11301]
449 [15556, 10308]
449 [14939, 4535]
449 [14939, 14655]
449 [14514, 4535]
182 [6699, 9039]
179 [8365]
178 [7793, 6699]
148 [11260, 7793]
145 [8362]
145 [27625, 7793]
143 [8322]
141 [6512]
136 [7756]
132 [8410]
130 [7793, 26591]
130 [4911]
129 [9039]
129 [7812]
129 [27141, 7793]
128 [2419, 7793]
128 [14651, 7793]
127 [8982]
127 [8981]
127 [5776, 7793]
127 [4509]
127 [14650, 7793]
126 [7689]
126 [5736]
126 [4893]
126 [4536]
125 [7793]
125 [4535]
113 [7727]
102 [23350]
*/