Update now reasonably functional