evolvable and adaptive hardware