re-write getter & setter