use class mirrors