use classtag to prevent erasure