adds prototype
adds dependencies