Refactor with all prototype
Bump version