add template module and loading methods