1.0.0
refactor to improve stability