implement module load function