full validation incoming