Module:Device/data

return { osForDevice = { -- The first of these to match a prefix of the model string will be used.

-- Macs { 'iMac',  'macOS' }, { 'Xserve', 'macOS' }, { 'Mac',   'macOS' },

-- Apple TVs { 'AppleTV1,', 'Apple TV Software' }, -- Mac OS X 10.4 Tiger variant

{ 'AppleTV2,', 'iOS' }, -- AppleTV's 2_1, 3_1, and 3_2 are iOS { 'AppleTV3,', 'iOS' },

{ 'AppleTV5,', 'tvOS' }, { 'AppleTV6,', 'tvOS' }, { 'AppleTV11,', 'tvOS' }, { 'AppleTV14,', 'tvOS' },

-- Apple Watch { 'Watch', 'watchOS' },

-- iBridge { 'iBridge', 'bridgeOS' },

-- HomePod { 'AudioAccessory', 'audioOS' },

-- iPad -- Edge case: Versions prior to 13.0 are called iOS. { 'iPad1,', 'iOS' }, { 'iPad2,', 'iOS' }, { 'iPad3,', 'iOS' }, { 'iPad4,', 'iOS' }, { 'iPad',  'iPadOS' },

-- iPhone -- Edge case: Versions prior to 4.0 are called iPhone OS. { 'iPhone1,1', 'iPhone OS' }, { 'iPhone',   'iOS' },

-- iPod touch -- Edge case: Versions prior to 4.0 are called iPhone OS. { 'iPod1,1', 'iPhone OS' }, { 'iPod',   'iOS' } },

devices = { ['AppleTV2,1'] = { name   = 'Apple TV (2nd generation)', article = 'K66AP' },		['AppleTV3,1'] = { name   = 'Apple TV (3rd generation) (AppleTV3,1)', article = 'J33AP' },		['AppleTV3,2'] = { name   = 'Apple TV (3rd generation) (AppleTV3,2)', article = 'J33IAP' },		['AppleTV5,3'] = { name   = 'Apple TV HD', article = 'J42dAP' },		['AppleTV6,2'] = { name   = 'Apple TV 4K', article = 'J105aAP' },		['AppleTV11,1'] = { name   = 'Apple TV 4K (2nd generation)', article = 'J305AP' },		['AppleTV14,1'] = { name   = 'Apple TV 4K (3rd generation)', article = 'J255AP' },		['Watch1,1'] = { name   = 'Apple Watch (1st generation) 38mm (Watch1,1)', article = 'N27aAP' },		['Watch1,2'] = { name   = 'Apple Watch (1st generation) 42mm (Watch1,2)', article = 'N28aAP' },		['Watch2,3'] = { name   = 'Apple Watch Series 2 38mm (Watch2,3)', article = 'N74AP' },		['Watch2,4'] = { name   = 'Apple Watch Series 2 42mm (Watch2,4)', article = 'N75AP' },		['Watch2,6'] = { name   = 'Apple Watch Series 1 38mm (Watch2,6)', article = 'N27dAP' },		['Watch2,7'] = { name   = 'Apple Watch Series 1 42mm (Watch2,7)', article = 'N28dAP' },		['Watch3,1'] = { name   = 'Apple Watch Series 3 38mm (Watch3,1)', article = 'N111sAP' },		['Watch3,2'] = { name   = 'Apple Watch Series 3 42mm (Watch3,2)', article = 'N111bAP' },		['Watch3,3'] = { name   = 'Apple Watch Series 3 38mm (Watch3,3)', article = 'N121sAP' },		['Watch3,4'] = { name   = 'Apple Watch Series 3 42mm (Watch3,4)', article = 'N121bAP' },		['Watch4,1'] = { name   = 'Apple Watch Series 4 (Watch4,1)', article = 'N131sAP' },		['Watch4,2'] = { name   = 'Apple Watch Series 4 (Watch4,2)', article = 'N131bAP' },		['Watch4,3'] = { name   = 'Apple Watch Series 4 (Watch4,3)', article = 'N141sAP' },		['Watch4,4'] = { name   = 'Apple Watch Series 4 (Watch4,4)', article = 'N141bAP' },		['Watch5,1'] = { name   = 'Apple Watch Series 5 (Watch5,1)', article = 'N144sAP' },		['Watch5,2'] = { name   = 'Apple Watch Series 5 (Watch5,2)', article = 'N144bAP' },		['Watch5,3'] = { name   = 'Apple Watch Series 5 (Watch5,3)', article = 'N146sAP' },		['Watch5,4'] = { name   = 'Apple Watch Series 5 (Watch5,4)', article = 'N146bAP' },		['Watch5,9'] = { name   = 'Apple Watch SE (Watch5,9)', article = 'N140sAP' },		['Watch5,10'] = { name   = 'Apple Watch SE (Watch5,10)', article = 'N140bAP' },		['Watch5,11'] = { name   = 'Apple Watch SE (Watch5,11)', article = 'N142sAP' },		['Watch5,12'] = { name   = 'Apple Watch SE (Watch5,12)', article = 'N142bAP' },		['Watch6,1'] = { name   = 'Apple Watch Series 6 (Watch6,1)', article = 'N157sAP' },		['Watch6,2'] = { name   = 'Apple Watch Series 6 (Watch6,2)', article = 'N157bAP' },		['Watch6,3'] = { name   = 'Apple Watch Series 6 (Watch6,3)', article = 'N158sAP' },		['Watch6,4'] = { name   = 'Apple Watch Series 6 (Watch6,4)', article = 'N158bAP' },		['Watch6,6'] = { name   = 'Apple Watch Series 7 (Watch6,6)', article = 'N187sAP' },		['Watch6,7'] = { name   = 'Apple Watch Series 7 (Watch6,7)', article = 'N187bAP' },		['Watch6,8'] = { name   = 'Apple Watch Series 7 (Watch6,8)', article = 'N188sAP' },		['Watch6,9'] = { name   = 'Apple Watch Series 7 (Watch6,9)', article = 'N188bAP' },		['Watch6,10'] = { name   = 'Apple Watch SE (Watch6,10)', article = 'N143sAP' },		['Watch6,11'] = { name   = 'Apple Watch SE (Watch6,11)', article = 'N143bAP' },		['Watch6,12'] = { name   = 'Apple Watch SE (Watch6,12)', article = 'N149sAP' },		['Watch6,13'] = { name   = 'Apple Watch SE (Watch6,13)', article = 'N149bAP' },		['Watch6,14'] = { name   = 'Apple Watch Series 8 (Watch6,14)', article = 'N197sAP' },		['Watch6,15'] = { name   = 'Apple Watch Series 8 (Watch6,15)', article = 'N197bAP' },		['Watch6,16'] = { name   = 'Apple Watch Series 8 (Watch6,16)', article = 'N198sAP' },		['Watch6,17'] = { name   = 'Apple Watch Series 8 (Watch6,17)', article = 'N198bAP' },		['Watch6,18'] = { name   = 'Apple Watch Ultra', article = 'N199AP' },		['iBridge'] = { name   = 'iBridge', article = 'iBridge' },		['iBridge2,1'] = { name   = 'iBridge (iBridge2,1)', article = 'iBridge' },		['iBridge2,3'] = { name   = 'iBridge (iBridge2,3)', article = 'iBridge' },		['iBridge2,4'] = { name   = 'iBridge (iBridge2,4)', article = 'iBridge' },		['iBridge2,5'] = { name   = 'iBridge (iBridge2,5)', article = 'iBridge' },		['iBridge2,6'] = { name   = 'iBridge (iBridge2,6)', article = 'iBridge' },		['iBridge2,7'] = { name   = 'iBridge (iBridge2,7)', article = 'iBridge' },		['iBridge2,8'] = { name   = 'iBridge (iBridge2,8)', article = 'iBridge' },		['iBridge2,10'] = { name   = 'iBridge (iBridge2,10)', article = 'iBridge' },		['iBridge2,12'] = { name   = 'iBridge (iBridge2,12)', article = 'iBridge' },		['iBridge2,14'] = { name   = 'iBridge (iBridge2,14)', article = 'iBridge' },		['iBridge2,15'] = { name   = 'iBridge (iBridge2,15)', article = 'iBridge' },		['iBridge2,16'] = { name   = 'iBridge (iBridge2,16)', article = 'iBridge' },		['iBridge2,19'] = { name   = 'iBridge (iBridge2,19)', article = 'iBridge' },		['iBridge2,20'] = { name   = 'iBridge (iBridge2,20)', article = 'iBridge' },		['iBridge2,21'] = { name   = 'iBridge (iBridge2,21)', article = 'iBridge' },		['iBridge2,22'] = { name   = 'iBridge (iBridge2,22)', article = 'iBridge' },		['AudioAccessory1,1'] = { name   = 'HomePod (AudioAccessory1,1)', article = 'B238aAP' },		['AudioAccessory1,2'] = { name   = 'HomePod (AudioAccessory1,2)', article = 'B238AP' },		['AudioAccessory5,1'] = { name   = 'HomePod mini', article = 'B520AP' },		['AudioAccessory6,1'] = { name   = 'HomePod (2nd generation)', article = 'B620AP' },		['iPad1,1'] = { name   = 'iPad', article = 'K48AP' },		['iPad2,1'] = { name   = 'iPad 2 (iPad2,1)', article = 'K93AP' },		['iPad2,2'] = { name   = 'iPad 2 (iPad2,2)', article = 'K94AP' },		['iPad2,3'] = { name   = 'iPad 2 (iPad2,3)', article = 'K95AP' },		['iPad2,4'] = { name   = 'iPad 2 (iPad2,4)', article = 'K93AAP' },		['iPad2,5'] = { name   = 'iPad mini (iPad2,5)', article = 'P105AP' },		['iPad2,6'] = { name   = 'iPad mini (iPad2,6)', article = 'P106AP' },		['iPad2,7'] = { name   = 'iPad mini (iPad2,7)', article = 'P107AP' },		['iPad3,1'] = { name   = 'iPad (3rd generation) (iPad3,1)', article = 'J1AP' },		['iPad3,2'] = { name   = 'iPad (3rd generation) (iPad3,2)', article = 'J2AP' },		['iPad3,3'] = { name   = 'iPad (3rd generation) (iPad3,3)', article = 'J2AAP' },		['iPad3,4'] = { name   = 'iPad (4th generation) (iPad3,4)', article = 'P101AP' },		['iPad3,5'] = { name   = 'iPad (4th generation) (iPad3,5)', article = 'P102AP' },		['iPad3,6'] = { name   = 'iPad (4th generation) (iPad3,6)', article = 'P103AP' },		['iPad4,1'] = { name   = 'iPad Air (iPad4,1)', article = 'J71AP' },		['iPad4,2'] = { name   = 'iPad Air (iPad4,2)', article = 'J72AP' },		['iPad4,3'] = { name   = 'iPad Air (iPad4,3)', article = 'J73AP' },		['iPad4,4'] = { name   = 'iPad mini 2 (iPad4,4)', article = 'J85AP' },		['iPad4,5'] = { name   = 'iPad mini 2 (iPad4,5)', article = 'J86AP' },		['iPad4,6'] = { name   = 'iPad mini 2 (iPad4,6)', article = 'J87AP' },		['iPad4,7'] = { name   = 'iPad mini 3 (iPad4,7)', article = 'J85mAP' },		['iPad4,8'] = { name   = 'iPad mini 3 (iPad4,8)', article = 'J86mAP' },		['iPad4,9'] = { name   = 'iPad mini 3 (iPad4,9)', article = 'J87mAP' },		['iPad5,1'] = { name   = 'iPad mini 4 (iPad5,1)', article = 'J96AP' },		['iPad5,2'] = { name   = 'iPad mini 4 (iPad5,2)', article = 'J97AP' },		['iPad5,3'] = { name   = 'iPad Air 2 (iPad5,3)', article = 'J81AP' },		['iPad5,4'] = { name   = 'iPad Air 2 (iPad5,4)', article = 'J82AP' },		['iPad6,3'] = { name   = 'iPad Pro (iPad6,3)', article = 'J127AP' },		['iPad6,4'] = { name   = 'iPad Pro (iPad6,4)', article = 'J128AP' },		['iPad6,7'] = { name   = 'iPad Pro (iPad6,7)', article = 'J98aAP' },		['iPad6,8'] = { name   = 'iPad Pro (iPad6,8)', article = 'J99aAP' },		['iPad6,11'] = { name   = 'iPad (5th generation) (iPad6,11)', article = 'iPad6,11' },		['iPad6,12'] = { name   = 'iPad (5th generation) (iPad6,12)', article = 'iPad6,12' },		['iPad7,1'] = { name   = 'iPad Pro (12.9-inch) (2nd generation) (iPad7,1)', article = 'J120AP' },		['iPad7,2'] = { name   = 'iPad Pro (12.9-inch) (2nd generation) (iPad7,2)', article = 'J121AP' },		['iPad7,3'] = { name   = 'iPad Pro (10.5-inch) (iPad7,3)', article = 'J207AP' },		['iPad7,4'] = { name   = 'iPad Pro (10.5-inch) (iPad7,4)', article = 'J208AP' },		['iPad7,5'] = { name   = 'iPad (6th generation) (iPad7,5)', article = 'J71bAP' },		['iPad7,6'] = { name   = 'iPad (6th generation) (iPad7,6)', article = 'J72bAP' },		['iPad7,11'] = { name   = 'iPad (7th generation) (iPad7,11)', article = 'J171AP' },		['iPad7,12'] = { name   = 'iPad (7th generation) (iPad7,12)', article = 'J172AP' },		['iPad8,1'] = { name   = 'iPad Pro (11-inch) (iPad8,1)', article = 'J317AP' },		['iPad8,2'] = { name   = 'iPad Pro (11-inch) (iPad8,2)', article = 'J317xAP' },		['iPad8,3'] = { name   = 'iPad Pro (11-inch) (iPad8,3)', article = 'J318AP' },		['iPad8,4'] = { name   = 'iPad Pro (11-inch) (iPad8,4)', article = 'J318xAP' },		['iPad8,5'] = { name   = 'iPad Pro (12.9-inch) (3rd generation) (iPad8,5)', article = 'J320AP' },		['iPad8,6'] = { name   = 'iPad Pro (12.9-inch) (3rd generation) (iPad8,6)', article = 'J320xAP' },		['iPad8,7'] = { name   = 'iPad Pro (12.9-inch) (3rd generation) (iPad8,7)', article = 'J321AP' },		['iPad8,8'] = { name   = 'iPad Pro (12.9-inch) (3rd generation) (iPad8,8)', article = 'J321xAP' },		['iPad8,9'] = { name   = 'iPad Pro (11-inch) (2nd generation) (iPad8,9)', article = 'J417AP' },		['iPad8,10'] = { name   = 'iPad Pro (11-inch) (2nd generation) (iPad8,10)', article = 'J418AP' },		['iPad8,11'] = { name   = 'iPad Pro (12.9-inch) (4th generation) (iPad8,11)', article = 'J420AP' },		['iPad8,12'] = { name   = 'iPad Pro (12.9-inch) (4th generation) (iPad8,12)', article = 'J421AP' },		['iPad11,1'] = { name   = 'iPad mini (5th generation) (iPad11,1)', article = 'J210AP' },		['iPad11,2'] = { name   = 'iPad mini (5th generation) (iPad11,2)', article = 'J211AP' },		['iPad11,3'] = { name   = 'iPad Air (3rd generation) (iPad11,3)', article = 'J217AP' },		['iPad11,4'] = { name   = 'iPad Air (3rd generation) (iPad11,4)', article = 'J218AP' },		['iPad11,6'] = { name   = 'iPad (8th generation) (iPad11,6)', article = 'J171aAP' },		['iPad11,7'] = { name   = 'iPad (8th generation) (iPad11,7)', article = 'J172aAP' },		['iPad12,1'] = { name   = 'iPad (9th generation) (iPad12,1)', article = 'J181AP' },		['iPad12,2'] = { name   = 'iPad (9th generation) (iPad12,2)', article = 'J182AP' },		['iPad13,1'] = { name   = 'iPad Air (4th generation) (iPad13,1)', article = 'J307AP' },		['iPad13,2'] = { name   = 'iPad Air (4th generation) (iPad13,2)', article = 'J308AP' },		['iPad13,4'] = { name   = 'iPad Pro (11-inch) (3rd generation) (iPad13,4)', article = 'J517AP' },		['iPad13,5'] = { name   = 'iPad Pro (11-inch) (3rd generation) (iPad13,5)', article = 'J517xAP' },		['iPad13,6'] = { name   = 'iPad Pro (11-inch) (3rd generation) (iPad13,6)', article = 'J518AP' },		['iPad13,7'] = { name   = 'iPad Pro (11-inch) (3rd generation) (iPad13,7)', article = 'J518xAP' },		['iPad13,8'] = { name   = 'iPad Pro (12.9-inch) (5th generation) (iPad13,8)', article = 'J522AP' },		['iPad13,9'] = { name   = 'iPad Pro (12.9-inch) (5th generation) (iPad13,9)', article = 'J522xAP' },		['iPad13,10'] = { name   = 'iPad Pro (12.9-inch) (5th generation) (iPad13,10)', article = 'J523AP' },		['iPad13,11'] = { name   = 'iPad Pro (12.9-inch) (5th generation) (iPad13,11)', article = 'J523xAP' },		['iPad13,16'] = { name   = 'iPad Air (5th generation) (iPad13,16)', article = 'J407AP' },		['iPad13,17'] = { name   = 'iPad Air (5th generation) (iPad13,17)', article = 'J408AP' },		['iPad13,18'] = { name   = 'iPad (10th generation) (iPad13,18)', article = 'J271AP' },		['iPad13,19'] = { name   = 'iPad (10th generation) (iPad13,19)', article = 'J272AP' },		['iPad14,1'] = { name   = 'iPad mini (6th generation) (iPad14,1)', article = 'J310AP' },		['iPad14,2'] = { name   = 'iPad mini (6th generation) (iPad14,2)', article = 'J311AP' },		['iPad14,3'] = { name   = 'iPad Pro (11-inch) (4th generation) (iPad14,3)', article = 'J617AP' },		['iPad14,4'] = { name   = 'iPad Pro (11-inch) (4th generation) (iPad14,4)', article = 'J618AP' },		['iPad14,5'] = { name   = 'iPad Pro (12.9-inch) (6th generation) (iPad14,5)', article = 'J620AP' },		['iPad14,6'] = { name   = 'iPad Pro (12.9-inch) (6th generation) (iPad14,6)', article = 'J621AP' },		['iPhone1,1'] = { name   = 'iPhone', article = 'M68AP' },		['iPhone1,2'] = { name   = 'iPhone 3G', article = 'N82AP' },		['iPhone2,1'] = { name   = 'iPhone 3GS', article = 'N88AP' },		['iPhone3,1'] = { name   = 'iPhone 4 (iPhone3,1)', article = 'N90AP' },		['iPhone3,2'] = { name   = 'iPhone 4 (iPhone3,2)', article = 'N90BAP' },		['iPhone3,3'] = { name   = 'iPhone 4 (iPhone3,3)', article = 'N92AP' },		['iPhone4,1'] = { name   = 'iPhone 4s', article = 'N94AP' },		['iPhone5,1'] = { name   = 'iPhone 5 (iPhone5,1)', article = 'N41AP' },		['iPhone5,2'] = { name   = 'iPhone 5 (iPhone5,2)', article = 'N42AP' },		['iPhone5,3'] = { name   = 'iPhone 5c (iPhone5,3)', article = 'N48AP' },		['iPhone5,4'] = { name   = 'iPhone 5c (iPhone5,4)', article = 'N49AP' },		['iPhone6,1'] = { name   = 'iPhone 5s (iPhone6,1)', article = 'N51AP' },		['iPhone6,2'] = { name   = 'iPhone 5s (iPhone6,2)', article = 'N53AP' },		['iPhone7,1'] = { name   = 'iPhone 6 Plus', article = 'N56AP' },		['iPhone7,2'] = { name   = 'iPhone 6', article = 'N61AP' },		['iPhone8,1'] = { name   = 'iPhone 6s', article = 'iPhone 6s' },		['iPhone8,2'] = { name   = 'iPhone 6s Plus', article = 'iPhone 6s Plus' },		['iPhone8,4'] = { name   = 'iPhone SE (1st generation)', article = 'iPhone SE (1st generation)' },		['iPhone9,1'] = { name   = 'iPhone 7 (iPhone9,1)', article = 'D10AP' },		['iPhone9,2'] = { name   = 'iPhone 7 Plus (iPhone9,2)', article = 'D11AP' },		['iPhone9,3'] = { name   = 'iPhone 7 (iPhone9,3)', article = 'D101AP' },		['iPhone9,4'] = { name   = 'iPhone 7 Plus (iPhone9,4)', article = 'D111AP' },		['iPhone10,1'] = { name   = 'iPhone 8 (iPhone10,1)', article = 'iPhone10,1' },		['iPhone10,2'] = { name   = 'iPhone 8 Plus (iPhone10,2)', article = 'iPhone10,2' },		['iPhone10,3'] = { name   = 'iPhone X (iPhone10,3)', article = 'D22AP' },		['iPhone10,4'] = { name   = 'iPhone 8 (iPhone10,4)', article = 'iPhone10,4' },		['iPhone10,5'] = { name   = 'iPhone 8 Plus (iPhone10,5)', article = 'iPhone10,5' },		['iPhone10,6'] = { name   = 'iPhone X (iPhone10,6)', article = 'D221AP' },		['iPhone11,2'] = { name   = 'iPhone XS', article = 'D321AP' },		['iPhone11,4'] = { name   = 'iPhone XS Max (iPhone11,4)', article = 'D331AP' },		['iPhone11,6'] = { name   = 'iPhone XS Max (iPhone11,6)', article = 'D331pAP' },		['iPhone11,8'] = { name   = 'iPhone XR', article = 'N841AP' },		['iPhone12,1'] = { name   = 'iPhone 11', article = 'N104AP' },		['iPhone12,3'] = { name   = 'iPhone 11 Pro', article = 'D421AP' },		['iPhone12,5'] = { name   = 'iPhone 11 Pro Max', article = 'D431AP' },		['iPhone12,8'] = { name   = 'iPhone SE (2nd generation)', article = 'D79AP' },		['iPhone13,1'] = { name   = 'iPhone 12 mini', article = 'D52gAP' },		['iPhone13,2'] = { name   = 'iPhone 12', article = 'D53gAP' },		['iPhone13,3'] = { name   = 'iPhone 12 Pro', article = 'D53pAP' },		['iPhone13,4'] = { name   = 'iPhone 12 Pro Max', article = 'D54pAP' },		['iPhone14,2'] = { name   = 'iPhone 13 Pro', article = 'D63AP' },		['iPhone14,3'] = { name   = 'iPhone 13 Pro Max', article = 'D64AP' },		['iPhone14,4'] = { name   = 'iPhone 13 mini', article = 'D16AP' },		['iPhone14,5'] = { name   = 'iPhone 13', article = 'D17AP' },		['iPhone14,6'] = { name   = 'iPhone SE (3rd generation)', article = 'D49AP' },		['iPhone14,7'] = { name   = 'iPhone 14', article = 'D27AP' },		['iPhone14,8'] = { name   = 'iPhone 14 Plus', article = 'D28AP' },		['iPhone15,2'] = { name   = 'iPhone 14 Pro', article = 'D73AP' },		['iPhone15,3'] = { name   = 'iPhone 14 Pro Max', article = 'D74AP' },		['iPod1,1'] = { name   = 'iPod touch', article = 'N45AP' },		['iPod2,1'] = { name   = 'iPod touch (2nd generation)', article = 'N72AP' },		['iPod3,1'] = { name   = 'iPod touch (3rd generation)', article = 'N18AP' },		['iPod4,1'] = { name   = 'iPod touch (4th generation)', article = 'N81AP' },		['iPod5,1'] = { name   = 'iPod touch (5th generation)', article = 'iPod touch (5th generation)' },		['iPod7,1'] = { name   = 'iPod touch (6th generation)', article = 'N102AP' },		['iPod9,1'] = { name   = 'iPod touch (7th generation)', article = 'N112AP' },	} }