refinement
added resursive pascal function