first sp functionality