adding helpers and tests