added more code, still not working yet