+/**
+ * Simple struct for components. Holds the indexes, the first and last genes
+ * + information if the component is unoriented.
+ */
+struct Component{
+ Component(int b = 0,int e = 0,int s = 0,size_t i1 = 0, size_t i2 = 0):begin(b),end(e),sign(s),i1(i1), i2(i2){}
+ bool operator==(const Component& c){
+ return begin == c.begin && end == c.end && sign == c.sign && i1 == c.i1 && i2 == c.i2;
+ }
+ int begin;
+ int end;
+ int sign;
+ size_t i1;
+ size_t i2;
+};
+