updated module with private / public interfaces