made functions private