retooling with new api