implement single var pattern