use prototype