Move valueAsOf into monoid