  We introduce several commutative rings, the snake rings, that have strong
connections to cluster algebras. The elements of these rings are residue
classes of unions of certain labeled graphs that were used to construct
canonical bases in the theory of cluster algebras. We obtain several rings by
varying the conditions on the structure as well as the labelling of the graphs.
The most restrictive form of this ring is isomorphic to the ring
$\mathbb{Z}[x,y]$ of polynomials in two variables over the integers. A more
general form contains all cluster algebras of unpunctured surface type.
  The definition of the rings requires the snake graph calculus which is
completed in this paper building on two earlier articles on the subject.
Identities in the snake ring correspond to bijections between the posets of
perfect matchings of the graphs. One of the main results of the current paper
is the completion of the explicit construction of these bijections.
