explained index generation