encapsulate module