validation partially implemented