added some validation
typo
added role method