mention what optional modules are used for