prototype comparison