module skeleton