todo: fix state in dom