sub module practice