added 3 variants