Add generic interface