fixed bug, add public method