added validation phase