add generate index function