module structure and bug fixing algos