support pass state param