phonecat implementation