might be better to make it private