These weren't too bad on the install process, at least once I figured out the trick. I had to remove the heat shield, then loosen the muffler clamp and slide off the muffler. Then I had to take the two T50 bolts out to completely remove the hanger assembly from the bike. That hanger assembly then slid onto the muffler, and I transferred the two rubber insulators that stop the heat shield from rattling, and the sheetmetal J nuts that mount the heatshields to the muffler. Then removed the heat shield support bracket from the oe muffler and positioned it close to where it looked like it should go on the new one, but left the clamp just a little bit loose. (the clamp looks like a radiator hose clamp). Then put the oe clamp on the new muffler and slide the new muffler and oe hanger assembly onto the headpipe-making sure the clamp is accessible, but left loose. At that point it was a bit of a wrestling match to line up the rearward of the two hanger bolts and support the muffler at the same time. I then snugged that bolt up, and had to back it off a few turns. Then, the trick was, I had to slide the muffler assembly rearward just enough to line up and install the front T50 hanger bolt. Tighten that one all the way up, slide the muffler forward and tighten up the rear hanger bolt the rest of the way. Then I got the positioning and rotation of the muffler where I wanted it, and tightened up the muffler clamp. On the heat shield, I lined up the rear bolt hole on the removable, adjustable heat shield mount I transferred earlier and got that bolt started. Then a smaller wrestling match to move the shield and rear mount to line up the front, fixed heat shield mount hole. Once both of those were started. I positioned the heat shield where it needed to be, then tightened up the mount, then the two screws. This involved a couple repeats to get everything just right so the heat shield fit right. It sounds a lot worse than it was. It just took a bit of wrangling to figure it all out. It truly was a Chinese puzzle, and I'm not Chinese. . . . . .