added optional class of proto setter