added more stuff (still unfinished)