implemented get() and set()