PageRenderTime 49ms CodeModel.GetById 19ms RepoModel.GetById 0ms app.codeStats 0ms

/myCollectionsTests/BL/Services/ExportMapperTests.cs

#
C# | 685 lines | 568 code | 110 blank | 7 comment | 0 complexity | 5ecc9dad0130f15dbe4112a1809c3d5f MD5 | raw file
Possible License(s): BSD-3-Clause
  1. using System;
  2. using System.Data.Objects.DataClasses;
  3. using AutoMapper;
  4. using FluentAssertions;
  5. using Xunit;
  6. using myCollections.BL.Services;
  7. using myCollections.Data.SqlLite;
  8. namespace myCollectionsTests.BL.Services
  9. {
  10. public class ExportMapperTests
  11. {
  12. private readonly ExportMapper mapper;
  13. private readonly string id = Guid.NewGuid().ToString();
  14. private readonly byte[] Cover = new byte[] { 2, 2, 2 };
  15. private readonly Media media = new Media { Name = "Media name" };
  16. private const string filePath = "file path";
  17. private const string fileName = "File name";
  18. private const string description = "DESCRIPTION";
  19. private const string title = "Title";
  20. private DateTime releaseDate = DateTime.Now;
  21. private DateTime addedDate = DateTime.Now;
  22. private const long rating = 2;
  23. private const string displayName = "Display Name";
  24. private const string studio = "Studio";
  25. private const string artistJob = "Artist Job";
  26. public ExportMapperTests()
  27. {
  28. mapper = new ExportMapper();
  29. mapper.MusicMapper();
  30. mapper.BooksMapper();
  31. mapper.AppsMapper();
  32. mapper.GamesMapper();
  33. mapper.MovieMapper();
  34. mapper.NdsMapper();
  35. mapper.SeriesMapper();
  36. mapper.XXXMapper();
  37. }
  38. #region Music
  39. [Fact]
  40. public void should_be_mapping_Music()
  41. {
  42. var music = GetMusic();
  43. var entity = Mapper.Map<Music, ExportObject>(music);
  44. entity.Id.Should().Be(id);
  45. entity.SmallCover.Should().BeEquivalentTo(Cover);
  46. entity.Title.Should().Be(title);
  47. entity.Artist.Should().Be(string.Format("{0}, {1}", artistJob, artistJob));
  48. entity.Studio.Should().Be(studio);
  49. entity.ReleaseDate.Should().Be(releaseDate.ToString("ddMMyyyy"));
  50. entity.Rating.Should().Be(2);
  51. entity.Description.Should().Be(description);
  52. entity.Type.Should().Be(string.Format("{0}, {1}, {2}", displayName, displayName, displayName));
  53. entity.AddedDate.Should().Be(addedDate.ToString("ddMMyyyy"));
  54. entity.MediaName.Should().Be(media.Name);
  55. entity.FileName.Should().Be(fileName);
  56. entity.FilePath.Should().Be(filePath);
  57. }
  58. [Fact(Skip = "")]
  59. public void should_not_thow_exeption_if_Music_Artist_Job_is_not_set()
  60. {
  61. var music = GetMusic();
  62. music.Music_Artist_Job = new EntityCollection<Music_Artist_Job>();
  63. Action act = () => Mapper.Map<Music, ExportObject>(music);
  64. act.ShouldNotThrow();
  65. }
  66. [Fact]
  67. public void should_not_thow_exeption_if_Music_Studio_for_Music_is_not_set()
  68. {
  69. var music = GetMusic();
  70. music.Music_Studio = null;
  71. Action act = () => Mapper.Map<Music, ExportObject>(music);
  72. act.ShouldNotThrow();
  73. }
  74. [Fact]
  75. public void should_not_thow_exeption_if_ReleaseDate_for_Music_is_not_set()
  76. {
  77. var music = GetMusic();
  78. music.ReleaseDate = null;
  79. Action act = () => Mapper.Map<Music, ExportObject>(music);
  80. act.ShouldNotThrow();
  81. }
  82. [Fact(Skip = "")]
  83. public void should_not_throw_exeption_if_Music_MusicGenre_for_Misic_is_not_set()
  84. {
  85. var music = GetMusic();
  86. music.Music_MusicGenre = null;
  87. Action act = () => Mapper.Map<Music, ExportObject>(music);
  88. act.ShouldNotThrow();
  89. }
  90. #endregion
  91. #region Books
  92. [Fact]
  93. public void should_be_mapping_Book()
  94. {
  95. var book = GetBooks();
  96. var entity = Mapper.Map<Books, ExportObject>(book);
  97. entity.Id.Should().Be(id);
  98. entity.SmallCover.Should().BeEquivalentTo(Cover);
  99. entity.Title.Should().Be(title);
  100. entity.Artist.Should().Be(string.Format("{0}, {1}", artistJob, artistJob));
  101. entity.Studio.Should().Be(studio);
  102. entity.ReleaseDate.Should().Be(releaseDate.ToString("ddMMyyyy"));
  103. entity.Rating.Should().Be(rating);
  104. entity.Description.Should().Be(description);
  105. entity.Type.Should().Be(string.Format("{0}, {1}, {2}", displayName, displayName, displayName));
  106. entity.AddedDate.Should().Be(addedDate.ToString("ddMMyyyy"));
  107. entity.MediaName.Should().Be(media.Name);
  108. entity.FileName.Should().Be(fileName);
  109. entity.FilePath.Should().Be(filePath);
  110. }
  111. [Fact]
  112. public void should_not_thow_exeption_if_App_Editor_for_Books_is_not_set()
  113. {
  114. var book = GetBooks();
  115. book.App_Editor = null;
  116. Action act = () => Mapper.Map<Books, ExportObject>(book);
  117. act.ShouldNotThrow();
  118. }
  119. [Fact]
  120. public void should_not_thow_exeption_if_ReleaseDate_for_Books_is_not_set()
  121. {
  122. var book = GetBooks();
  123. book.ReleaseDate = null;
  124. Action act = () => Mapper.Map<Books, ExportObject>(book);
  125. act.ShouldNotThrow();
  126. }
  127. #endregion
  128. #region Apps
  129. [Fact]
  130. public void should_be_mapping_Apps()
  131. {
  132. var app = GetApps();
  133. var entity = Mapper.Map<Apps, ExportObject>(app);
  134. entity.Id.Should().Be(id);
  135. entity.SmallCover.Should().BeEquivalentTo(Cover);
  136. entity.Title.Should().Be(title);
  137. //entity.Artist.Should().Be(string.Format("{0}, {1}", artistJob, artistJob));
  138. entity.Studio.Should().Be(studio);
  139. entity.ReleaseDate.Should().Be(releaseDate.ToString("ddMMyyyy"));
  140. entity.Rating.Should().Be(2);
  141. entity.Description.Should().Be(description);
  142. entity.Type.Should().Be(string.Format("{0}, {1}, {2}", displayName, displayName, displayName));
  143. entity.AddedDate.Should().Be(addedDate.ToString("ddMMyyyy"));
  144. entity.MediaName.Should().Be(media.Name);
  145. entity.FileName.Should().Be(fileName);
  146. entity.FilePath.Should().Be(filePath);
  147. }
  148. [Fact]
  149. public void should_not_thow_exeption_if_App_Editor_for_Apps_is_not_set()
  150. {
  151. var app = GetApps();
  152. app.App_Editor = null;
  153. Action act = () => Mapper.Map<Apps, ExportObject>(app);
  154. act.ShouldNotThrow();
  155. }
  156. [Fact]
  157. public void should_not_thow_exeption_if_ReleaseDate_for_Apps_is_not_set()
  158. {
  159. var app = GetApps();
  160. app.ReleaseDate = null;
  161. Action act = () => Mapper.Map<Apps, ExportObject>(app);
  162. act.ShouldNotThrow();
  163. }
  164. #endregion
  165. #region Games
  166. [Fact]
  167. public void should_be_mapping_Games()
  168. {
  169. var game = GetGamez();
  170. var entity = Mapper.Map<Gamez, ExportObject>(game);
  171. entity.Id.Should().Be(id);
  172. entity.SmallCover.Should().BeEquivalentTo(Cover);
  173. entity.Title.Should().Be(title);
  174. //entity.Artist.Should().Be(string.Format("{0}, {1}", artistJob, artistJob));
  175. entity.Studio.Should().Be(studio);
  176. entity.ReleaseDate.Should().Be(releaseDate.ToString("ddMMyyyy"));
  177. entity.Rating.Should().Be(2);
  178. entity.Description.Should().Be(description);
  179. entity.Type.Should().Be(string.Format("{0}, {1}, {2}", displayName, displayName, displayName));
  180. entity.AddedDate.Should().Be(addedDate.ToString("ddMMyyyy"));
  181. entity.MediaName.Should().Be(media.Name);
  182. entity.FileName.Should().Be(fileName);
  183. entity.FilePath.Should().Be(filePath);
  184. }
  185. [Fact]
  186. public void should_not_thow_exeption_if_App_Editor_for_Gamez_is_not_set()
  187. {
  188. var game = GetGamez();
  189. game.App_Editor = null;
  190. Action act = () => Mapper.Map<Gamez, ExportObject>(game);
  191. act.ShouldNotThrow();
  192. }
  193. [Fact]
  194. public void should_not_thow_exeption_if_ReleaseDate_for_Gamez_is_not_set()
  195. {
  196. var game = GetGamez();
  197. game.ReleaseDate = null;
  198. Action act = () => Mapper.Map<Gamez, ExportObject>(game);
  199. act.ShouldNotThrow();
  200. }
  201. #endregion
  202. #region Movies
  203. [Fact]
  204. public void should_be_mapping_Movies()
  205. {
  206. var movie = GetMovie();
  207. var entity = Mapper.Map<Movie, ExportObject>(movie);
  208. entity.Id.Should().Be(id);
  209. entity.SmallCover.Should().BeEquivalentTo(Cover);
  210. entity.Title.Should().Be(title);
  211. entity.Artist.Should().Be(string.Format("{0}, {1}", artistJob, artistJob));
  212. entity.Studio.Should().Be(studio);
  213. entity.ReleaseDate.Should().Be(releaseDate.ToString("ddMMyyyy"));
  214. entity.Rating.Should().Be(2);
  215. entity.Description.Should().Be(description);
  216. entity.Type.Should().Be(string.Format("{0}, {1}, {2}", displayName, displayName, displayName));
  217. entity.AddedDate.Should().Be(addedDate.ToString("ddMMyyyy"));
  218. entity.MediaName.Should().Be(media.Name);
  219. entity.FileName.Should().Be(fileName);
  220. entity.FilePath.Should().Be(filePath);
  221. }
  222. [Fact]
  223. public void should_not_thow_exeption_if_Movie_Studio_for_Movie_is_not_set()
  224. {
  225. var movie = GetMovie();
  226. movie.Movie_Studio = null;
  227. Action act = () => Mapper.Map<Movie, ExportObject>(movie);
  228. act.ShouldNotThrow();
  229. }
  230. [Fact]
  231. public void should_not_thow_exeption_if_ReleaseDate_for_Movie_is_not_set()
  232. {
  233. var movie = GetMovie();
  234. movie.ReleaseDate = null;
  235. Action act = () => Mapper.Map<Movie, ExportObject>(movie);
  236. act.ShouldNotThrow();
  237. }
  238. #endregion
  239. #region Nds
  240. [Fact]
  241. public void should_be_mapping_Nds()
  242. {
  243. var nds = GetNds();
  244. var entity = Mapper.Map<Nds, ExportObject>(nds);
  245. entity.Id.Should().Be(id);
  246. entity.SmallCover.Should().BeEquivalentTo(Cover);
  247. entity.Title.Should().Be(title);
  248. entity.Studio.Should().Be(studio);
  249. entity.ReleaseDate.Should().Be(releaseDate.ToString("ddMMyyyy"));
  250. entity.Rating.Should().Be(2);
  251. entity.Description.Should().Be(description);
  252. entity.Type.Should().Be(string.Format("{0}, {1}, {2}", displayName, displayName, displayName));
  253. entity.AddedDate.Should().Be(addedDate.ToString("ddMMyyyy"));
  254. entity.MediaName.Should().Be(media.Name);
  255. entity.FileName.Should().Be(fileName);
  256. entity.FilePath.Should().Be(filePath);
  257. }
  258. [Fact]
  259. public void should_not_thow_exeption_if_App_Editor_for_Nds_is_not_set()
  260. {
  261. var nds = GetNds();
  262. nds.App_Editor = null;
  263. Action act = () => Mapper.Map<Nds, ExportObject>(nds);
  264. act.ShouldNotThrow();
  265. }
  266. [Fact]
  267. public void should_not_thow_exeption_if_ReleaseDate_for_Nds_is_not_set()
  268. {
  269. var nds = GetNds();
  270. nds.ReleaseDate = null;
  271. Action act = () => Mapper.Map<Nds, ExportObject>(nds);
  272. act.ShouldNotThrow();
  273. }
  274. #endregion
  275. #region Series
  276. [Fact]
  277. public void should_be_mapping_Series_Season()
  278. {
  279. var series = GetSeriesSeason();
  280. var entity = Mapper.Map<SeriesSeason, ExportObject>(series);
  281. entity.Id.Should().Be(id);
  282. entity.SmallCover.Should().BeEquivalentTo(Cover);
  283. entity.Title.Should().Be(title);
  284. entity.Artist.Should().Be(string.Format("{0}, {1}", artistJob, artistJob));
  285. entity.Studio.Should().Be(studio);
  286. entity.ReleaseDate.Should().Be(releaseDate.ToString("ddMMyyyy"));
  287. entity.Rating.Should().Be(2);
  288. //entity.Description.Should().Be(description);
  289. entity.Type.Should().Be(string.Format("{0}, {1}, {2}", displayName, displayName, displayName));
  290. entity.AddedDate.Should().Be(addedDate.ToString("ddMMyyyy"));
  291. entity.MediaName.Should().Be(media.Name);
  292. //entity.FileName.Should().Be(fileName);
  293. entity.FilePath.Should().Be(filePath);
  294. }
  295. [Fact]
  296. public void should_not_thow_exeption_if_Movie_Studio_for_Series_is_not_set()
  297. {
  298. // Series.Movie_Studio.Name
  299. var series = GetSeriesSeason();
  300. series.Series.Movie_Studio = null;
  301. Action act = () => Mapper.Map<SeriesSeason, ExportObject>(series);
  302. act.ShouldNotThrow();
  303. }
  304. [Fact]
  305. public void should_not_thow_exeption_if_ReleaseDate_for_Series_is_not_set()
  306. {
  307. var series = GetSeriesSeason();
  308. series.ReleaseDate = null;
  309. Action act = () => Mapper.Map<SeriesSeason, ExportObject>(series);
  310. act.ShouldNotThrow();
  311. }
  312. #endregion
  313. #region XXX
  314. [Fact]
  315. public void should_be_mapping_XXX()
  316. {
  317. var xxx = GetXxx();
  318. var entity = Mapper.Map<XXX, ExportObject>(xxx);
  319. entity.Id.Should().Be(id);
  320. entity.SmallCover.Should().BeEquivalentTo(Cover);
  321. entity.Title.Should().Be(title);
  322. entity.Studio.Should().Be(studio);
  323. entity.ReleaseDate.Should().Be(releaseDate.ToString("ddMMyyyy"));
  324. entity.Rating.Should().Be(2);
  325. entity.Description.Should().Be(description);
  326. entity.Type.Should().Be(string.Format("{0}, {1}, {2}", displayName, displayName, displayName));
  327. entity.AddedDate.Should().Be(addedDate.ToString("ddMMyyyy"));
  328. entity.MediaName.Should().Be(media.Name);
  329. entity.FileName.Should().Be(fileName);
  330. entity.FilePath.Should().Be(filePath);
  331. }
  332. [Fact]
  333. public void should_not_thow_exeption_if_XXX_Studio_for_XXX_is_not_set()
  334. {
  335. // Series.Movie_Studio.Name
  336. var xxx = GetXxx();
  337. xxx.XXX_Studio = null;
  338. Action act = () => Mapper.Map<XXX, ExportObject>(xxx);
  339. act.ShouldNotThrow();
  340. }
  341. [Fact]
  342. public void should_not_thow_exeption_if_ReleaseDate_for_XXX_is_not_set()
  343. {
  344. var xxx = GetXxx();
  345. xxx.ReleaseDate = null;
  346. Action act = () => Mapper.Map<XXX, ExportObject>(xxx);
  347. act.ShouldNotThrow();
  348. }
  349. #endregion
  350. private Books GetBooks()
  351. {
  352. var book = new Books()
  353. {
  354. Id = id,
  355. Cover = Cover,
  356. Title = title,
  357. Book_Artist_Job = new EntityCollection<Book_Artist_Job>
  358. {
  359. new Book_Artist_Job {Artist = new Artist {FulleName = artistJob}},
  360. new Book_Artist_Job {Artist = new Artist {FulleName = artistJob}}
  361. },
  362. App_Editor = new App_Editor { Name = studio },
  363. ReleaseDate = releaseDate,
  364. Rating = rating,
  365. Description = description,
  366. Books_BookType = new EntityCollection<Books_BookType>
  367. {
  368. new Books_BookType {BookType = new BookType {DisplayName = displayName}},
  369. new Books_BookType {BookType = new BookType {DisplayName = displayName}},
  370. new Books_BookType {BookType = new BookType {DisplayName = displayName}}
  371. },
  372. AddedDate = addedDate,
  373. Media = media,
  374. FilePath = filePath,
  375. FileName = fileName
  376. };
  377. return book;
  378. }
  379. private Music GetMusic()
  380. {
  381. var music = new Music()
  382. {
  383. Id = id,
  384. Cover = Cover,
  385. Title = title,
  386. Music_Artist_Job = new EntityCollection<Music_Artist_Job>
  387. {
  388. new Music_Artist_Job {Artist = new Artist() {FulleName = artistJob}},
  389. new Music_Artist_Job {Artist = new Artist() {FulleName = artistJob}}
  390. },
  391. Music_Studio = new Music_Studio { Name = studio },
  392. ReleaseDate = releaseDate,
  393. Rating = 2,
  394. Description = description,
  395. Music_MusicGenre = new EntityCollection<Music_MusicGenre>
  396. {
  397. new Music_MusicGenre {Music_Genre = new Music_Genre {DisplayName = displayName}},
  398. new Music_MusicGenre {Music_Genre = new Music_Genre {DisplayName = displayName}},
  399. new Music_MusicGenre {Music_Genre = new Music_Genre {DisplayName = displayName}}
  400. },
  401. AddedDate = addedDate,
  402. Media = media,
  403. FileName = fileName,
  404. FilePath = filePath
  405. };
  406. return music;
  407. }
  408. private Apps GetApps()
  409. {
  410. var app = new Apps()
  411. {
  412. Id = id,
  413. Cover = Cover,
  414. Title = title,
  415. Version = "", //
  416. App_Editor = new App_Editor() { Name = studio },
  417. ReleaseDate = releaseDate,
  418. Rating = 2,
  419. Description = description,
  420. Apps_AppType = new EntityCollection<Apps_AppType>
  421. {
  422. new Apps_AppType {AppType = new AppType {DisplayName = displayName}},
  423. new Apps_AppType {AppType = new AppType {DisplayName = displayName}},
  424. new Apps_AppType {AppType = new AppType {DisplayName = displayName}}
  425. },
  426. AddedDate = addedDate,
  427. Media = media,
  428. FileName = fileName,
  429. FilePath = filePath
  430. };
  431. return app;
  432. }
  433. private Gamez GetGamez()
  434. {
  435. var game = new Gamez
  436. {
  437. Id = id,
  438. Cover = Cover,
  439. Title = title,
  440. // Platform = new Platform{Name = },//
  441. App_Editor = new App_Editor() { Name = studio },
  442. ReleaseDate = releaseDate,
  443. Rating = 2,
  444. Description = description,
  445. Gamez_GamezType = new EntityCollection<Gamez_GamezType>
  446. {
  447. new Gamez_GamezType {GamezType = new GamezType {DisplayName = displayName}},
  448. new Gamez_GamezType {GamezType = new GamezType {DisplayName = displayName}},
  449. new Gamez_GamezType {GamezType = new GamezType {DisplayName = displayName}}
  450. },
  451. AddedDate = addedDate,
  452. Media = media,
  453. FileName = fileName,
  454. FilePath = filePath
  455. };
  456. return game;
  457. }
  458. private Movie GetMovie()
  459. {
  460. var movie = new Movie
  461. {
  462. Id = id,
  463. Cover = Cover,
  464. Title = title,
  465. OriginalTitle = "", //
  466. Movie_Studio = new Movie_Studio() { Name = studio },
  467. ReleaseDate = releaseDate,
  468. Rating = 2,
  469. Description = description,
  470. Movie_MovieGenre = new EntityCollection<Movie_MovieGenre>
  471. {
  472. new Movie_MovieGenre {Movie_Genre = new Movie_Genre {DisplayName = displayName}},
  473. new Movie_MovieGenre {Movie_Genre = new Movie_Genre {DisplayName = displayName}},
  474. new Movie_MovieGenre {Movie_Genre = new Movie_Genre {DisplayName = displayName}}
  475. },
  476. Movie_Artist_Job = new EntityCollection<Movie_Artist_Job>
  477. {
  478. new Movie_Artist_Job {Artist = new Artist {FulleName = artistJob}},
  479. new Movie_Artist_Job {Artist = new Artist {FulleName = artistJob}},
  480. },
  481. AddedDate = addedDate,
  482. Media = media,
  483. FileName = fileName,
  484. FilePath = filePath
  485. };
  486. return movie;
  487. }
  488. private Nds GetNds()
  489. {
  490. var nds = new Nds
  491. {
  492. Id = id,
  493. Cover = Cover,
  494. Title = title,
  495. App_Editor = new App_Editor { Name = studio },
  496. ReleaseDate = releaseDate,
  497. Rating = 2,
  498. Description = description,
  499. Nds_GamezType = new EntityCollection<Nds_GamezType>
  500. {
  501. new Nds_GamezType {GamezType = new GamezType {DisplayName = displayName}},
  502. new Nds_GamezType {GamezType = new GamezType {DisplayName = displayName}},
  503. new Nds_GamezType {GamezType = new GamezType {DisplayName = displayName}}
  504. },
  505. AddedDate = addedDate,
  506. Media = media,
  507. FileName = fileName,
  508. FilePath = filePath
  509. };
  510. return nds;
  511. }
  512. private SeriesSeason GetSeriesSeason()
  513. {
  514. var series = new SeriesSeason
  515. {
  516. Id = id,
  517. Cover = Cover,
  518. Series = new Series
  519. {
  520. Title = title,
  521. Movie_Studio = new Movie_Studio { Name = studio },
  522. Series_MovieGenre = new EntityCollection<Series_MovieGenre>
  523. {
  524. new Series_MovieGenre {Movie_Genre = new Movie_Genre {DisplayName = displayName}},
  525. new Series_MovieGenre {Movie_Genre = new Movie_Genre {DisplayName = displayName}},
  526. new Series_MovieGenre {Movie_Genre = new Movie_Genre {DisplayName = displayName}}
  527. },
  528. Series_Artist_Job = new EntityCollection<Series_Artist_Job>
  529. {
  530. new Series_Artist_Job {Artist = new Artist {FulleName = artistJob}},
  531. new Series_Artist_Job {Artist = new Artist {FulleName = artistJob}}
  532. }
  533. },
  534. ReleaseDate = releaseDate,
  535. Rating = 2,
  536. Season = 2, // not use
  537. AddedDate = addedDate,
  538. Media = media,
  539. FilePath = filePath,
  540. FileName = ""
  541. };
  542. return series;
  543. }
  544. private XXX GetXxx()
  545. {
  546. var xxx = new XXX
  547. {
  548. Id = id,
  549. Cover = Cover,
  550. Title = title,
  551. XXX_Studio = new XXX_Studio { Name = studio },
  552. Language = new Language { LongName = "" }, // not use
  553. ReleaseDate = releaseDate,
  554. Rating = 2,
  555. Description = description,
  556. XXX_XXXGenre = new EntityCollection<XXX_XXXGenre>
  557. {
  558. new XXX_XXXGenre {XXX_Genre = new XXX_Genre {DisplayName = displayName}},
  559. new XXX_XXXGenre {XXX_Genre = new XXX_Genre {DisplayName = displayName}},
  560. new XXX_XXXGenre {XXX_Genre = new XXX_Genre {DisplayName = displayName}}
  561. },
  562. AddedDate = addedDate,
  563. XXX_Artist_Job = new EntityCollection<XXX_Artist_Job>
  564. {
  565. new XXX_Artist_Job {Artist = new Artist {FulleName = artistJob}},
  566. new XXX_Artist_Job {Artist = new Artist {FulleName = artistJob}}
  567. },
  568. Media = media,
  569. FilePath = filePath,
  570. FileName = fileName
  571. };
  572. return xxx;
  573. }
  574. }
  575. }