for understanding purpose