generalized okapi interface