example for user defined library