add prototype library and example