add private variable and constructor