refine by capsulate function