ready to use library (template code)