# CSCI 373.001 starter
"Register for Compare and Swap"

class CompareAndSwapRegister:
    "Register for Campare And Swap"
    def __init__(self):
        self.value = 0
    def compare_and_swap(self, oldval, newval):
        """ Compare And Swap register value"""
        # some syntax problem with with...
        presval = self.value
        if presval == oldval:
            self.value = newval
        return presval
    def get_value(self):
        """ Return register value"""
        return self.value
    def __str__(self):
        return str(self.value)
