Add prototype implementation