Repo! the Genetic Opera

By the year 2056, an epidemic of organ failures has devastated the planet. The megacorporation GeneCo provides organ transplants on a payment plan. Clients who default on payments are hunted down by Repo Men: skilled assassins contracted by GeneCo to repossess organs, usually killing the clients in the process. The CEO of GeneCo, Rottissimo "Rotti" Largo (a listed in a newspaper article about his kids), discovers he is terminally ill. Rotti's three children, Luigi Largo, Pavi Largo, and Amber Sweet (Carmela Largo), who changed her name to help her become a popular singer, bicker over who will inherit GeneCo. Rotti believes none of his children are worthy heirs, as they consistently embarrass him with their robust attitudes, and instead plans to pass on his fortune to Shilo, the daughter of his ex-fiance Marni.
Meanwhile, 17-year-old Shilo Wallace longs to explore the outside world. She is constantly reminded by her overprotective father Nathan that she has inherited a rare blood disease from her deceased mother Marni which requires her to stay indoors. She secretly visits her mother's tomb and runs into GraveRobber, who is digging up bodies to drain Zydrate, a euphoric and extremely addictive pain-killer made by GeneCo that is secreted from dead bodies. He sells it on the street to keep up with his GeneCo payments. After losing consciousness, Shilo wakes up to find herself at home with Nathan. Nathan prepares for work, not as the doctor he has led Shilo to believe he is, but as the head Repo Man for GeneCo. Nathan believes he killed Marni with a treatment he created for her illness. In truth, Rotti poisoned Marni's medicine behind Nathan's back as revenge for Marni leaving him. Rotti blackmails Nathan, agreeing to keep him out of jail and with his then-newborn daughter Shilo if he performs surgical repossessions for the company.
Rotti lures Shilo to the GeneCo 1st Annual post-plague Italian Renaissance Fair with the promise of a cure for her blood disease. There she finds the Largo brothers arguing about their father's will, while their sister harasses Blind Mag, GeneCo's opera singer and celebrity spokesperson. Mag uses surgically enhanced eyes but works for Rotti indefinitely as a result, having been tricked into signing her contract in blood pre-surgery. After introducing her to Mag, Rotti stations his Genterns to guard Shilo. He then announces that Mag will soon give the last GeneCo-sponsored performance of her career. GraveRobber helps Shilo escape the fairgrounds. As they hurry through the city, GraveRobber encounters several of his customers including the surgery addict Amber, who has skipped the fair she was supposed to speak at, once again publicly embarrassing her father. Under the stupor of the drug, she explains that she will be replacing Blind Mag after her eyes are repossessed following the opera. After GeneCops arrive, GraveRobber and Shilo part ways and she quickly returns to her room before Nathan notices she was gone.
Rotti hires Nathan to repossess Mag's eyes but Nathan refuses, citing Mag's close relationship to Marni. He quits his repo job mid-surgery, telling Rotti, "I cannot do this job. Find someone else." This angers Rotti and he vows to have Nathan taken out. Mag arrives at Shilo's house and reveals she is Shilo's godmother. Mag states she was unaware Shilo was even alive, Nathan having told her she died with her mother. She cautions Shilo to not make the same mistakes she did. Nathan arrives home and forces Mag out after she scolds him for lying to her about Shilo's death. Meanwhile, back at GeneCo, Rotti signs his will, leaving Shilo as his sole beneficiary.
Rotti phones Shilo and invites her to the Opera, delivering her mother's burial dress for her to wear. Nathan finds the GeneCops searching his basement. They try to arrest Nathan, but he quickly dispatches them and heads to the opera looking for Shilo. At the opera, Amber takes the stage for her premiere, but her performance is ruined when her transplanted face falls off. Mag takes to the stage and sings her final song. She deviates from the song's grand finale, denouncing the Largo family and gouging out her eyes in a final act of defiance. Rotti cuts the cords suspending Mag, dropping and impaling her on a fence. Rotti assures everyone that Mag's death is part of the performance and convinces the audience to stay seated.
Shilo sees a Repo Man arrive and attacks him with a shovel before realizing the Repo Man is her father. Onstage, Rotti reveals that Shilo does not have a blood disease but that Nathan has been making her ill with the "medicine" he insists that she take. Unable to deal with the loss of Marni, Nathan explains he was trying to keep Shilo safe from the world. Approaching death's door, Rotti tells Shilo that she will inherit GeneCo if she kills her father. When she refuses, Rotti uses the last of his strength to shoot Nathan. Rotti then dies from his terminal illness and Nathan dies with one last farewell to Shilo. Shilo then leaves, deciding that her father's murderous tendencies do not dictate her future and that she is "free at last" to live her own life.
In the epilogue, GraveRobber claims that Shilo fled, leaving GeneCo with no legal heir. A mid-credits scene reveals that Amber became GeneCo's new CEO and promised to change the repossession policy.

Question: Which character dies at the end?
Answer: Mag