Final version for now. Working