refactor st solve new spec