add zcard

try to reuse code