James Spencer's validation work :)