add some insists to validate
Add todo