An introduction to Conflict-Free Replicated Data Types · Part 1: Preliminaries - eviltoast