class interface