Updated, still not working properly.