change all to new type class