A PNCounter CRDT with ledger transaction ids for tunable write idempotence