private module, type 2