change setValue to public