use crate::{
illuminant::{Illuminant, IlluminantType},
spectral::Spd,
};
static SPD_DATA: [(u32, f64); 401] = [
(380, 1.21),
(381, 1.268),
(382, 1.32573333333333),
(383, 1.38346666666667),
(384, 1.44146666666667),
(385, 1.5),
(386, 1.56072),
(387, 1.62216),
(388, 1.68424),
(389, 1.74688),
(390, 1.81),
(391, 1.87477688271605),
(392, 1.93955954475309),
(393, 2.0039537654321),
(394, 2.06756532407407),
(395, 2.13),
(396, 2.18732172067901),
(397, 2.24356358024691),
(398, 2.29921682098798),
(399, 2.35477268732607),
(400, 2.4107256182079),
(401, 2.47014280291189),
(402, 2.627436437398),
(403, 4.84008334183944),
(404, 16.8265066171543),
(405, 28.8443095716272),
(406, 17.1881138671375),
(407, 5.17202974417076),
(408, 3.01691768924706),
(409, 2.98381160800293),
(410, 3.05463988197778),
(411, 3.13063435423819),
(412, 3.20848700617322),
(413, 3.28787703703704),
(414, 3.36848713734568),
(415, 3.45),
(416, 3.5264974537037),
(417, 3.60466327160494),
(418, 3.68558036265432),
(419, 3.77033163580247),
(420, 3.86),
(421, 3.96128),
(422, 4.06824),
(423, 4.18056),
(424, 4.29792),
(425, 4.42),
(426, 4.5443624691358),
(427, 4.67333432098765),
(428, 4.8071249382716),
(429, 4.9459437037037),
(430, 5.09),
(431, 5.24248197530864),
(432, 5.39987555555556),
(433, 5.56164543209877),
(434, 5.7272562962963),
(435, 34.5742339766731),
(436, 146.000760282088),
(437, 6.24931080326475),
(438, 6.41544395061728),
(439, 6.59272),
(440, 6.7716049382716),
(441, 6.95133037037037),
(442, 7.13220345679012),
(443, 7.31405333333333),
(444, 7.49670913580247),
(445, 7.68),
(446, 7.86536296296296),
(447, 8.05061728395062),
(448, 8.23519012345679),
(449, 8.41850864197531),
(450, 8.6),
(451, 8.77744),
(452, 8.95232),
(453, 9.12448),
(454, 9.29376),
(455, 9.46),
(456, 9.6256),
(457, 9.7872),
(458, 9.944),
(459, 10.0952),
(460, 10.24),
(461, 10.37216),
(462, 10.49768),
(463, 10.61712),
(464, 10.73104),
(465, 10.84),
(466, 10.9468),
(467, 11.0492),
(468, 11.1472),
(469, 11.2408),
(470, 11.33),
(471, 11.4148),
(472, 11.4952),
(473, 11.5712),
(474, 11.6428),
(475, 11.71),
(476, 11.77184),
(477, 11.82952),
(478, 11.88328),
(479, 11.93336),
(480, 11.98),
(481, 12.0244),
(482, 12.0656),
(483, 12.1036),
(484, 12.1384),
(485, 12.17),
(486, 12.19808),
(487, 12.22304),
(488, 12.24496),
(489, 12.26392),
(490, 12.28),
(491, 12.29168),
(492, 12.30104),
(493, 12.30856),
(494, 12.31472),
(495, 12.32),
(496, 12.32456),
(497, 12.32928),
(498, 12.33472),
(499, 12.34144),
(500, 12.35),
(501, 12.36448),
(502, 12.38104),
(503, 12.39936),
(504, 12.41912),
(505, 12.44),
(506, 12.4604),
(507, 12.4816),
(508, 12.5036),
(509, 12.5264),
(510, 12.55),
(511, 12.57632),
(512, 12.60296),
(513, 12.62944),
(514, 12.65528),
(515, 12.68),
(516, 12.7044),
(517, 12.7264),
(518, 12.7452),
(519, 12.76),
(520, 12.77),
(521, 12.76896),
(522, 12.76288),
(523, 12.75232),
(524, 12.73784),
(525, 12.72),
(526, 12.70096),
(527, 12.67928),
(528, 12.65512),
(529, 12.62864),
(530, 12.6),
(531, 12.56968),
(532, 12.53744),
(533, 12.50336),
(534, 12.46752),
(535, 12.43),
(536, 12.3886834567901),
(537, 12.3463960493827),
(538, 12.3037669135802),
(539, 12.2614251851852),
(540, 12.22),
(541, 12.1831387654321),
(542, 12.1476977777778),
(543, 12.1135516049383),
(544, 12.0805748148148),
(545, 13.0218913922403),
(546, 109.994847906541),
(547, 20.4801485278219),
(548, 11.9558775308642),
(549, 11.92736),
(550, 11.9002469135802),
(551, 11.8737985185185),
(552, 11.8492128395062),
(553, 11.8268266666667),
(554, 11.8069767901235),
(555, 11.79),
(556, 11.7788681481481),
(557, 11.7706241975309),
(558, 11.7649461728395),
(559, 11.7615120987654),
(560, 11.76),
(561, 11.75816),
(562, 11.75808),
(563, 11.75992),
(564, 11.76384),
(565, 11.77),
(566, 11.7790419753086),
(567, 11.7905234567901),
(568, 11.8044839506173),
(569, 11.820962962963),
(570, 11.84),
(571, 11.8634261728395),
(572, 11.8887427160494),
(573, 11.91584),
(574, 11.9446083950617),
(575, 11.9749382716049),
(576, 15.7378773139369),
(577, 24.3160732478991),
(578, 12.0742005739925),
(579, 26.2502887350522),
(580, 15.0018765017427),
(581, 12.183569382716),
(582, 12.22176),
(583, 12.2606350617284),
(584, 12.3000849382716),
(585, 12.34),
(586, 12.3781837037037),
(587, 12.4162449382716),
(588, 12.4542143209877),
(589, 12.4921224691358),
(590, 12.53),
(591, 12.56768),
(592, 12.60544),
(593, 12.64336),
(594, 12.68152),
(595, 12.72),
(596, 12.75952),
(597, 12.79936),
(598, 12.83944),
(599, 12.87968),
(600, 12.92),
(601, 12.95936),
(602, 12.99888),
(603, 13.03872),
(604, 13.07904),
(605, 13.12),
(606, 13.16144),
(607, 13.20392),
(608, 13.24768),
(609, 13.29296),
(610, 13.34),
(611, 13.39192),
(612, 13.44536),
(613, 13.49984),
(614, 13.55488),
(615, 13.61),
(616, 13.6644),
(617, 13.718),
(618, 13.7704),
(619, 13.8212),
(620, 13.87),
(621, 13.91512),
(622, 13.95776),
(623, 13.99784),
(624, 14.03528),
(625, 14.07),
(626, 14.1048),
(627, 14.136),
(628, 14.1628),
(629, 14.1844),
(630, 14.2),
(631, 14.19984),
(632, 14.19432),
(633, 14.18488),
(634, 14.17296),
(635, 14.16),
(636, 14.14584),
(637, 14.13392),
(638, 14.12608),
(639, 14.12416),
(640, 14.13),
(641, 14.16208),
(642, 14.20144),
(643, 14.24576),
(644, 14.29272),
(645, 14.34),
(646, 14.3808),
(647, 14.4184),
(648, 14.4516),
(649, 14.4792),
(650, 14.5),
(651, 14.51504),
(652, 14.52032),
(653, 14.51408),
(654, 14.49456),
(655, 14.46),
(656, 14.41888),
(657, 14.35664),
(658, 14.26896),
(659, 14.15152),
(660, 14.0),
(661, 13.76752),
(662, 13.50296),
(663, 13.21264),
(664, 12.90288),
(665, 12.58),
(666, 12.2516),
(667, 11.9224),
(668, 11.5984),
(669, 11.2856),
(670, 10.99),
(671, 10.75216),
(672, 10.53488),
(673, 10.33552),
(674, 10.15144),
(675, 9.98),
(676, 9.81088),
(677, 9.65104),
(678, 9.49976),
(679, 9.35632),
(680, 9.22),
(681, 9.09072),
(682, 8.96696),
(683, 8.84784),
(684, 8.73248),
(685, 8.62),
(686, 8.51176),
(687, 8.40408),
(688, 8.29552),
(689, 8.18464),
(690, 8.07),
(691, 7.94024),
(692, 7.80632),
(693, 7.66928),
(694, 7.53016),
(695, 7.39),
(696, 7.24984),
(697, 7.11072),
(698, 6.97368),
(699, 6.83976),
(700, 6.71),
(701, 6.59312),
(702, 6.48056),
(703, 6.37144),
(704, 6.26488),
(705, 6.16),
(706, 6.05528),
(707, 5.95064),
(708, 5.84536),
(709, 5.73872),
(710, 5.63),
(711, 5.5124),
(712, 5.3928),
(713, 5.272),
(714, 5.1508),
(715, 5.03),
(716, 4.9104),
(717, 4.7928),
(718, 4.678),
(719, 4.5668),
(720, 4.46),
(721, 4.3632),
(722, 4.2712),
(723, 4.1836),
(724, 4.1),
(725, 4.02),
(726, 3.94224),
(727, 3.86752),
(728, 3.79568),
(729, 3.72656),
(730, 3.66),
(731, 3.59616),
(732, 3.53448),
(733, 3.47472),
(734, 3.41664),
(735, 3.36),
(736, 3.3036),
(737, 3.2484),
(738, 3.1944),
(739, 3.1416),
(740, 3.09),
(741, 3.03928),
(742, 2.98984),
(743, 2.94176),
(744, 2.89512),
(745, 2.85),
(746, 2.80616),
(747, 2.76408),
(748, 2.72392),
(749, 2.68584),
(750, 2.65),
(751, 2.61912),
(752, 2.59016),
(753, 2.56264),
(754, 2.53608),
(755, 2.51),
(756, 2.48456),
(757, 2.45848),
(758, 2.43112),
(759, 2.40184),
(760, 2.37),
(761, 2.33112),
(762, 2.28936),
(763, 2.24504),
(764, 2.19848),
(765, 2.15),
(766, 2.10056),
(767, 2.04968),
(768, 1.99752),
(769, 1.94424),
(770, 1.89),
(771, 1.83528),
(772, 1.77984),
(773, 1.72376),
(774, 1.66712),
(775, 1.61),
(776, 1.55226666666667),
(777, 1.49426666666667),
(778, 1.43613333333333),
(779, 1.378),
(780, 1.32),
];
impl Illuminant {
pub const LED_V1: Self = Self::new("LED-V1", IlluminantType::Led, Spd::new(&SPD_DATA));
}