app state cursor is not plain map, can not destructure it, can only update it inside render, or use om/transact!