migrate and validate methods impl