added pl function