added prototypal classes