Adding cooperative and some tests