#ifndef __MISC_H__
#define __MISC_H__
+/**
+ * The type we use for genes, has to be a signed integer type.
+ */
typedef int Gene;
+/**
+ * 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){