starts using module structure