+\r
+\section{\textbf{System Guarantees}}\r
+\begin{itemize}\r
+ \item Server cannot view data inside records\r
+ \item Server cannot forge or modify or create any records\r
+ \item Server cannot withhold any records\r
+ \item Server cannot reorder records that could not have been ordered differently due to network latency\r
+ \item Server cannot delete records unless told to do so.\r
+ \item There will always be an obvious key-value pair that is the latest key value pair.\r
+ \item The data structure is bounded in size such that $m$ is the minimum size of the data structure, $n$ is the number of devices in the system and $s$ is the current size of the data structure: $m \leq s \leq (m+n-1)$\r
+ \item Data structure can only grow when there are too may key-value pairs (and aborts) than what fit in the current data structure size within reason.\r
+ \item No currently valid data can be lost by the system and go undetected.\r
+ \item Devices can operate offline and re-sync with the system and get a consistent view of the system\r
+ \item If the server tries to hold a device on an older version of the data structure, that device can eventually rejoin the main data structure without problems.\r
+ \item Devices that have a transaction aborted will be able to be notified about the abort indefinately (no time frame when notification must be accepted).\r
+\r
+\end{itemize}\r