def __init__(self, name: str, width: int, lsb: int, reset_value: int, swaccess: str):
    assert (swaccess in ['rw1c', 'rw', 'wo', 'r0w1c', 'ro'])
    assert (width > 0)
    assert (lsb >= 0)
    self.name = name
    self.width = width
    self.lsb = lsb
    self.value = reset_value
    self.w1c = (swaccess in ['rw1c', 'r0w1c'])
    self.read_only = (swaccess == 'ro')
    self.read_zero = (swaccess in ['wo', 'r0w1c'])
    self.next_value = reset_value
def __init__(self, name: str, width: int, lsb: int, reset_value: int, swaccess: str):
    assert (swaccess in ['rw1c', 'rw', 'wo', 'r0w1c', 'ro'])
    assert (width > 0)
    assert (lsb >= 0)
    self.name = name
    self.width = width
    self.lsb = lsb
    self.value = reset_value
    self.w1c = (swaccess in ['rw1c', 'r0w1c'])
    self.read_only = (swaccess == 'ro')
    self.read_zero = (swaccess in ['wo', 'r0w1c'])
    self.next_value = reset_value