now compliant with new argcheck and new class system