UPDATE

added in validation etc