fusion of both code