While the exterior of the car did not have much rust I was surprised that the front floor of the car had quite a bit of rust.
Some of the previous owners seems to have tried to stop the rust on the floor sometimes in the past by applying a good amount of rust converter, or whatever the black paint was , he applied over the rusty floor.
It seems that it did not help but just made the sheet metal oxidize underneath this sticky mess.
The restoration shop now started to remove this paint just to find some weak metal with some holes in it.
This is when they decided to cut the entire front floor out and replace it with some fresh metal instead.
They had to make a patch panel from scratch as no new panels are available for this car anywhere. The new custom made replacement floor was now welded in.
Like on the factory rubberized undercoating was reapplied underneath the car and the welding seams were sealed with seam sealer.
You can see all the detailed pictures in the restoration gallery here.
I hope this was the last unpleasant surprise for a while…
This showed up when the carpet and the seats were removed…
After removing the black mess, the weak metal and some rust holes showed up.
Unfortunately the original floor had to be cut out…
Big hole in the floor.
A new custom made patch panel is fitted and will be welded in.
The new custom made patch panel as seen from the underside.
The new panel is completely patched in.
Seam sealer was applied like it was done at the factory. In the factory they just painted over the seam sealer. We will do the same here.
This car came with factory applied rubberized undercoating which was re-applied over the patched floor.
Everything that came out was cleaned up, and wherever I found some surface rust or flacking paint it was completely removed and the according part was repainted. I had to do all of this on a very tight budget, but luckily the total cost of this project was extremely low, as all I needed were 3 cans of paint, some wire brushes and some cleaning chemicals .
I took a break from Nov. 2016 to April 2017 where I did not do any car related work at all. During the last 2 weeks I finished everything, and the car is now ready and only needs a good cleaning prior to the upcoming season. When everything was back together the car started up immediately (see video below) but I could not let it run for a longer time yet as the engine enamel (I used Bill Hirsch engine enamel) needs at least 2 weeks to fully cure.
I did not restore parts which still had their original decals, because some are irreplaceable, as there are no correct reproduction decals for the 1974 Cadillac out there. Many decals for sale for the 1974 Cadillac are totally incorrect - beware! For example there is no correct "Caution Fan" decal or AC compressor decal available anywhere. So there is still some patina left on some areas, and at first glance the engine bay does not look restored at all, but more like an extremely well kept car with very low mileage. I did not want to go for this over restored look.
But let the pictures speak for themselves - here are 3 Before/After pictures (Click on them for a larger view) and the rest of the restoration pictures can be found here.
The radiator support frame before, after removing the rust and after painting
The radiator support frame before, after removing the rust and after painting
Before and after rust removal
Here is short video of the first start up after the restoration.
The finished engine bay looks pretty nice!
More pictures of the finished engine bay can be found here.
I´m using a german product called "Rostio" - it's a concentrate used for de-rusting fuel tanks. You have to mix it with hot water. I have also heard great things about Evapo Rust.
I let my system run for days until all the surface rust was gone. The advantage is that the liquid can now get everywhere and should remove the last little piece of rust.
You will be surprised how well this works. This area now looks like a new car. There is not the slightest trace of rust to be found after 12 hours of spraying the car.
After spraying it with the rust remover you then have to flush it with water thoroughly and then dry it properly to avoid flash rust.
I also used various wire brushes and other abrasive materials to remove rust and strip bad paint.
I simply used a garden hose and shower to spray the rust remover on.
As you can see it only leaves rust free metal behind - I always let it run for 2 - 12 hours - depending on the amount of rust that had to be removed.
The liquid is collecting in the big bucket where I put the pump in to recirculate it.
You can spray the liquid everywhere
A "before" picture
You can also remove the rust from the brakes without disassembling them. A before picture
After cleaning - the brake cylinder developed flash rust immediately again.
As you can see - the rust is gone
The liquid also works great on brake drums - the original factory markings were still there.
Cleaned the fuel tank with the wire brush and painted it afterwards with tank paint from Eastwood
Cleaned the wheelhousings as well - stripped all the paint in there as well.
Cleaned the fuel tank with the wire brush and painted it afterwards with tank paint from Eastwood
I striped all the rust and paint and removed the headlights to get better access. I also de-rusted all the bolts, nuts and washers with rust removing liquid and removed the old paint with a wire brush.
After everything was completely rust free and down to clean bare metal, I primed the tray and afterwards painted it with 2 coats of Eastwood Chassis Black Extreme, which has an OEM sheen.
Now it is looking very nice again - almost OEM - and the new paint should protect it for a long time.
With the battery and headlights removed
Luckily the rust was not too bad
Luckily the rust was not too bad
Rust remover liquid in action
After removing the rust
I also cleaned the battery hold down
Almost rust free tray after the first treatment with rust remover. I got it much cleaner after this picture was taken.
Ready for paint - no more rust. Everything was also wire brushed and and sanded.
Ready for paint
The restored tray.
The restored tray - you can see where the rust was, as it left some marks in the metal. But it is now well protected and rust should be stopped.
As I had put so much effort in totally de-rusting the underbody of this low mileage car, I decided to let a professional body shop re-paint the bare metal frame, suspension parts and floor pans this time. My goal was to have the ultimate quality paint job in the factory correct colors underneath the car. I´m not very good in painting and my attempts often result in runnings, which I have to sand out and other imperfections I wanted to avoid.
So I handed the de-rusted car over to the paint shop.
BACK FROM THE PAINT SHOP
When I got the car back, everything looked o.k. as you can see on the pictures below. I was not too impressed by the work they did, as there were quite a few imperfections and some sloppy paint work visible, if you looked very closely. At this point I was already worried that they maybe did some shortcuts before painting, when they should have properly cleaned the bare metal, before they sprayed the primer.
They used some high quality epoxy primer and 2k paint for the job though.
THE MESSED UP ENGINE BAY - OVERSPRAY HELL
There was a terrible mishap at the shop, as they did not mask off the engine bay properly, so all the paint dust and overspray collected inside of the engine bay, and the entire engine bay looked like somebody emptied a spray can into the engine compartment from about 5 feet away. Everything was covered with paint overspray.
I was so shocked when I opened the hood that I almost passed out. The once perfectly clean, all original engine bay was a total mess. It looked so terrible that I could not even snap a picture. Last year I had spent weeks to clean it to my standards…
I had no idea how I could remove the overspray without damaging the original finish of the engine, rubber hoses, cables, wires, accessories and engine parts. This was a terrible situation for me.
REMOVING OVERSPRAY WITH CLAY
I then remembered that detailing clay can be used to remove overspray from paint, but I was not sure if it would work with this heavy amount of overspray. The paint shop gave me a special clay towel to clean up the engine bay, which works like detailing clay, but can be cleaned more often and is easier to use and more aggressive. This thing really works well, but I had to do so much scrubbing on some parts, that some painted areas, like the wheel wells or the air filter housing, turned a little dull after this tiring work. To get them shiny again, I had to hand polish each and every part after claying it. It took me about 25 hours to remove all the accessible overspray from inside the engine bay. I had to thoroughly scrub each and every part, wires and hoses with the clay towel and all purpose cleaner as a lubricant. The areas which I could not clean good enough by hand will be cleaned with dry ice soon. I´m 100% confident that it will look as good again as it did before this happened - I have already achieved 90%, the rest will get perfect again with some dry ice cleaning…
TIME FOR UNDERCOATING
My plan is to protect the undercarriage with a transparent undercoating, which is as good as invisible if properly applied. It will provide a perfect protective shield against road debris, stones and is rust prohibitive. This high-tech material is far superior than the original tar based undercoating which is normally used, and as an additional bonus you can always see what is going on underneath the undercoating. I decided to use a product from a german company called "Timemax USB Clear". Timemax is one of the leading specialists for rust protection, and their products have won some independent tests, done by classic car magazines.
THE PAINT DOES NOT STICK!
Before spraying on the undercoating, I had to mask off the areas like the frame, drive shaft, axle, suspension parts, fuel tank, brake lines, hoses and brakes. After a day of masking off all the areas, I discovered a small paint chip on the frame. When I inspected it with my fingernail, a bigger chunk of paint flaked off the frame. I then used a scraper to scrape the paint, to see if it was just a small area where the paint would not stick properly. The area where the paint came off got bigger and bigger, and soon it became clear that the paint does not stick properly anywhere…
Of course this was another big shock for me, as this meant that 3 months of work were completely destroyed… When I inspected the areas underneath the removed paint, it quickly became clear that the paint shop did not treat and clean the bare metal before painting, as they should have done. They just did a quick wipe with silicone remover.
Of course the bare metal underneath a 41 year old car is full of oil and grease and needs a lot of cleaning with strong chemicals before paint will adhere to it. Unfortunately they skipped this most important step. Although I brushed away all the rust and everything looked shiny, the oil and grease is in all the pores of the metal.
I HAVE TO START ALL OVER AGAIN - REMOVING THE FRESH PAINT AGAIN
This now means that ALL the paint they sprayed on has to come off once again. Also the brown paint on the floor pans has to be stripped again as well.
I asked a dry ice cleaner to try if it can be removed with his method, and it soon became clear that it is possible, but will take at least one full working day, and this will cost a small fortune.
There will probably be some areas left which I will have to rework by hand.
As you can imagine, this is a huge step back for me. I worked so hard and so many hours, often till late into the night, to finish this project for nothing …
The paint shop knows that they did a lousy job and is very supportive to resolve this issue.
This video shows how badly the paint sticks to some of the frame parts. It can be blown off with the pressurized air on some areas…
Before dry ice blasting the undercarriage once again, we will try to get the paint off with a powerful high pressure washer. Once the paint is gone again, we will clean the bare metal multiple times with acetone, marine clean, a special metal cleaner and metal prep. We will also sand everything with some coarse sandpaper to get a little rougher surface to make sure that the paint adheres much better next time.
I also want to go for a black with less gloss, as it was too glossy and did not look correct.
I hope that the weather will be good enough in January 2016, so that I can start all over again. At the moment I do not have the motivation to do anything on the car, and I do not even want to look at it, as it hurts too much. I still have to recover from the things that have happened. This is so frustrating. I hope that it will look like it should after the second attempt.
The 3 stages of the project so far.
Everything looked o.k. after painting, but the paint does not stick to the metal due to poor cleaning by the paint shop.
This is the transparent undercoating I wanted to apply when I found out that the entire paint on the undercarriage does not stick…
Unfortunately the paint does not stick to the bare metal… I could scrape it of with a simple scraper. You can see all the flaking paint on the floor…
The paint is peeling off in big chunks…
So ALL the new paint has to come off again. Here the dry ice blaster is trying if it can be removed with dry ice cleaning.
BE CAREFUL WITH ZINC PLATED PARTS AND RUST REMOVAL SOLUTIONS
Due to all the problems I had, I completely forgot about some fasteners from the rubber splash guards, which I had soaked in the rust remover solution for more than a week. This long time in the liquid removed all the surface rust, but the acid also ate away the zinc plating. So whenever you try to remove the rust from anodized fasteners and screws, make sure not to soak them for too long.
As I can´t get the fasteners and screws very easily here in Austria, I had to brush away the remnants of the zinc coating with a wire brush, and then painted everything with Eastwoods Silver Cad paint. This does not look 100% correct of course, but will have to do until I find some original replacement hardware. Besides a few washers, these fasteners won´t be visible anyway.
I forgot some of the fasteners for the rubber splash guards in the rust dissolver solution. It ate away the zinc plating. So I had to remove the remains of the zinc plating with a wire brush.
The cleaned fasteners. I spray painted them afterwards with Eastwood zinc paint.
As I want to do it as perfectly as possible, I wanted to remove all the undercoating which was applied when the car was new.
I do not like rubberized undercoating, as you cannot see whats going on underneath. It can trap moisture and once it flakes off due to corrosion, there is already some major damage in the metal underneath.
There are different methods for removing the undercoating and most of the methods are a pain in the a**.
This stuff can be removed with a scraper and chemicals, or with heat and a scraper. Both methods will damage the metal underneath and scratch the paint on the underbody, and it takes forever…
As I did not want to use any of the methods mentioned above, I decided that I wanted to try dry ice blasting.
Dry ice-blasting is a form of carbon dioxide cleaning, where dry ice, the solid form of carbon dioxide, is accelerated in a pressurized air stream and directed at a surface in order to clean it. An alternative media for non-abrasive blasting is water-ice, known as ice blasting.
The method is similar to other forms of abrasive blasting such as sand blasting, plastic bead blasting, or soda blasting but substitutes dry ice as the blasting medium. Dry-ice blasting leaves no chemical residue as dry ice sublimates at room temperature.
Dry-ice blasting involves propelling pellets at extremely high speeds. The actual dry-ice pellets are quite soft, and much less dense than other media used in blast-cleaning (i.e. sand or plastic pellets). Upon impact, the pellet sublimates almost immediately, transferring minimal kinetic energy to the surface on impact and producing minimal abrasion. The sublimation process absorbs a large volume of heat from the surface, producing shear stresses due to thermal shock. This is assumed to improve cleaning as the top layer of dirt or contaminant is expected to transfer more heat than the underlying substrate and flake off more easily. The efficiency and effectiveness of this process depends on the thermal conductivity of the substrate and contaminant. The rapid change in state from solid to gas also causes microscopic shock waves, which are also thought to assist in removing the contaminant.
Unlike abrasive media blasting you cannot remove rust with dry ice blasting.
I found a company through the website of a classic car club, which is only a little over an hour away. I wanted to have it done before the first snow and as soon as possible, so that I could continue working on my car during the winter. The owner of the company did a great job. He is a very friendly and competent gentleman and it was a pleasure working with him.
Here is a short video how it was done: (make sure to watch in HD for proper image quality)
You can find all the pictures I took today in my restoration album.
The car was lifted with a forklift and then covered in plastic.
One of the rear wheel-housings before blasting - you can see the undercoating everywhere.
The same wheel housing after blasting - all the original paint was still very well preserved under the undercoating. As you can see originally the wheel housing was brown. During painting a lot of overspray from the body landed in the wheel housing. Then Cadillac added rubberized undercoating to protect the metal from stone chips and to keep the car more quiet. Luckily there is no rust to be found anywhere.
The original brown paint showed up underneath the undercoating. The paint is still in perfect condition.
The original paint showed up underneath the undercoating in the wheel housings as well.
After cleaning - it came out really nice! I will touch up some areas and conserve the others with a special transparent coating.
I´m very happy with the result of the cleaning and will now have to protect everything and paint some areas.
Some other smaller things could happen as well…
The plan is to make the car to look and drive like new until next season. It's such a great car!
I think there are many different approaches for removing the rust from the bottom side of a car.
My personal method and plan so far, was to scrape any loose rust off with a wire brush.
I then steam cleaned the undercarriage.
Next step was to apply a rust removing gel, which I let on over night. Then I steam cleaned the car again to get rid of the gel. The gel is a quite a bit of pain to remove if it's getting dry, especially as I had to do the steam cleaning with the car on jack stands and limited access to the undercarriage. (I can't do this inside the garage over the pit)
So a lot of manual cleaning is necessary after the pressure wash to get rid of the gel on areas I cannot hit during the pressure wash... I then applied the gel once again and did the same routine all over again.
I will now mechanically remove the more stubborn rust with some pneumatic tools and wire brushes of various sizes I borrowed from my dear friend Richard.
Once the rust is completely removed, I will use the gel for a last time.
I will then use fine sandpaper to achieve a smooth surface of all metal parts.
If afterwards there is still some minor corrosion left I´m planning to use a rust converter and rust encapsulator to paint everything.
The oil pan and transmission oil pan will be painted in Bill Hirsch Cadillac blue again. I will completely clean up the fuel and brake lines as well.
The frame and chassis parts will most probably get painted with Eastwood Extreme Chassis Paint in satin black. As a last step I will cover everything in a transparent undercoating wax. This project will keep me busy until next spring as I want to do it very thoroughly and as perfectly as possible. The most common approach most people would do, is to knock off any loose rust, and then paint it with rust converter and rust encapsulator. Thats perfectly fine as well - but I want the underside of my car better than new and in perfect show quality like the rest of the car
You can find all the pictures of the “Restoration“ here.
The 74 has some light surface rust on the undercarriage as most areas were left bare metal at the factory. The original owner did not have the car undercoated. Its nothing major - it is more a cosmetic thing than anything else. I want the car to look as good on the underside as it looks from the in and outside. I will remove as much rust as possible with a wire brush and then use rust removal gel to get rid of all the rust. It´s a messy job - but I want to do it as thoroughly as possible. After everything is clean I will paint the frame with rust preventive paint in semi gloss black paint.
The pit in my garage - this is how I will see my car most of the time for the next months… You can see that I applied some rust removal gel to some areas already. I steam-cleaned the undercarriage before.
A small test spot after only one application of the gel - 2-3 more are recommended.
Thats the gel I´m using - it seems to be a great product. I got it through www.rostio.de .
After the first coat of rust remover gel. It looks very promising.
My goal is to make this mint car as good as it can get, while keeping everything as original as possible.
I´m really obsessed with cleanliness when it comes to cars... Everything has to be completely detailed and shining like new.
I completely cleaned the entire engine and gave it a good wash and afterwards applied some engine dressing.
I then removed some screws and small parts which were left unpainted by the factory, like some screws, the hood latch, some brackets and some other smaller parts. Of course these parts developed some slight surface rust during the last 36 years...
As I had no real rust dissolver at hand, I soaked the rusty parts in vinegar over night, which completely removed all the surface rust. I then gave these parts a coat of primer and painted them with Eastwood paint, which looks like bare metal.
With this method I can keep the rust away, while the parts still look original. Only if you look very closely you might see that these few parts are now painted...
I then started to bring the original single stage paint back to like new condition.
I used a couple of Meguiars compounds and polishes to make the paint as smooth as possible. I had to carefully wet sand some of the deeper scratches with 2000 grit paper. Be very careful when doing this as the single stage paint was applied in only VERY thin layers during the 70s.
The car now shows almost no more paint imperfections and the swirl marks are gone. The original paint looks like on a new car now and is extremely shiny. When the car is out in the sun its almost blinding.
I sealed the paint with Meguairs #16 wax.
I used a Meguiars DA polisher (G125) for the paint correction work - which is not really that good, but I would like to have a more powerful machine for the future like the Flex 3401 or the Rupes Bigfoot .
I used the procedure explained in the following video for my paint correction:
Download his description as PDF file here
This gentleman, Larry Kosilla, has a lot more awesome video tutorials for people who love detailing their cars. Check him out!
I also started detailing the interior of the car. I treated the leather with Gliptone Leather Conditioner - which is the best conditioner I have tried so far. It really makes the leather very soft.
I´ll have to steam clean the carpet once its really warm outside so that it can dry fast afterwards.
I also cleaned the undercarriage a little and removed some of the factory applied undercoating from components where it does not belong to, on which they sprayed it on very carelessly at the factory. Looks much better now.
The car really looks spectacular already - I´ll continue with the chrome and stainless steel trim now. It should be shining in fully glory for the 2014 season beginning in May and also be ready for various car shows, especially the Cadillac BIG Meet in August.
My weapons of choice came from the Meguiars dealer...
before and after cleaning
rusty bolts before and after cleaning
Soaking rusty parts in vinegar
Cleaning more rusty parts
with the rust removed
The Hood latch cleaned and painted with Eastwood Silver Cad Paint
The cleaned engine bay
The car after polishing the paint
the polished paint
Besides the carpet - the interior is already perfectly clean. The original floor mat is under the aftermarket mats.
Cleaning the Vogue tires.
Clean paint and tires
Clean tires and perfect hubcaps
I really like this Meguiars wax. Its one of their cheapest but best waxes. A gentleman from Meguiars once told me that it is one of their oldest waxes, but contains a lot of carnauba wax, which makes it so good! Its also offering the best protection of their product range.
Here are some links to Meguiars products I like to use (link to german Amazon Shop):
1966 Cadillac Coupe deVille (8)
1967 Cadillac DeVille (52)
1967 Cadillac Eldorado (65)
1971 Lincoln Continental Mark III (22)
1974 Cadillac Coupe deVille (40)
1978 Cadillac Eldorado Biarritz (18)
1996 Buick Roadmaster (18)
Car Shows (42)
For Sale (3)
Garage Stuff (31)
Website News (30)
- 6 way power seat
- 10 Ohm
- 1958 Cadillac Eldorado Seville
- 1958 Cadillac Repair Tip
- 1959 Cadillac Eldorado Seville
- 1966 Cadillac Coupe deVille
- 1966 Cadillac Repair Tips
- 1967 Cadillac DeVille
- 1967 Cadillac Eldorado Repair Tip
- 1967 Cadillac Repair Tip
- 1967 Eldorado
- 1970 Cadillac Eldorado
- 1971 Lincoln Continental Mark III
- 1974 Cadillac Coupe DeVille
- 1974 Cadillac Repair Tip
- 1978 Cadillac Eldorado Biarritz
- 1978 Cadillac Repair Tip
- 1980 Cadillac Eldorado Biarritz
- AC Compressor
- AC Electrical Diagram
- Adriatic Blue Metallic
- Air Pump
- Anti Rattle Clips
- Antique Gold
- Arizona Vintage Parts
- Ash Tray removal
- Atlantis Blue Firemist
- Autolite SP-459
- Automatic Seat Back Release
- Barn Find
- Battery Tray
- Bill Hirsch Engine Enamel
- Bleeder Screws
- Brake Booster
- Brake Fluid
- Brake Gray
- Broken Bolt
- Bucket seats
- Bumper End
- Cadillac BIG Meet
- Cadillac BIG Meet
- Cadillac birthday cake
- Cadillac Blue
- Cadillac Color Selections Dealer Book
- Cadillac Coupe deVille
- Cadillac Dealer
- Cadillac Meeting
- Camaro RS
- Car Show
- Cavalry Twill Vinyl
- Citizens Band
- Classic Cadillac Club Deutschland
- Clay Towel
- Clutch Coil
- Colonial Yellow
- Continental Mark III
- Control Head
- Convertible top
- Cruise Control
- CV Boots
- CV JOINTS
- Dash Trim
- Decal Removal
- Delco Moraine
- Der Standard
- Diagnosis Chart
- Digital Rotary Drum Clock
- Disc Brakes
- Diverter Valve
- Door Jamb Switch
- Drive Shaft
- Driving tour
- Dry Ice Blasting
- Dry Ice Cleaning
- Electric Choke Thermostat
- Electrical schematic
- Engine Bay
- Epoxy floor
- Factory Markings
- Fender Skirt
- For Sale
- Front AXLE
- Front bumper filler
- Front Floor
- Front wheel bearing
- Fuel Filter
- Fuel Pump
- Fuel Sending Unit
- Fusible Link
- Gear indicator
- General Time
- Glove box light
- Haus of Hot Rod
- Headlight Actuator
- Headlight doors
- Heater Core
- Heater Hose
- Heater Valve
- High Idle
- Hood Emblem
- Hood Ornament
- Hose Clamp
- Hot Water Valve
- How to
- Ignition Diagram
- Illuminated Entry
- John D‘Agostino
- Klassikwelt Bodensee
- Leather seats
- Light Switch
- Lincoln Mark III Repair Tip
- Low Mileage
- Marilyn Monroe
- Mark III
- Master Cylinder
- Master Switch
- Media Blasting
- MK II
- Mopar Nationals
- Mostkost Kustom
- Oberösterreicher des Tages
- Paint correction
- Part Number
- Patch Panel
- Perfect Circle
- Persian Lime
- Photo shooting
- POA Valve
- Power Antenna
- Power Servo
- Power Vent Windows
- Printed Circuit Board
- Quarter Panel
- Quartz Conversion
- Rear brakes
- Reed Switch
- Removing Overspray
- Rocker Arm Cover
- Rocker Panel Extension Clips
- Rotary Valve
- Rust removal
- Rust removal gel
- Sabre Wheels
- Sand Blasting
- Season Greetings
- Seat Back Locks
- Seat Padding
- Seat Transmission
- See through ornament
- Sepp's Garage
- shop manual
- Spark Plug Wire Routing
- Speed Bleeder Screws
- Splash Guard
- Starter Diagram
- Starter Motor
- Steering Column
- suction throttling valve
- Swirl Mark removal
- Taillight Cover
- Tilt and Telescope
- Time capsule
- Torque Specifications
- Tower Hose Clamp
- transmission control selector
- transmission control selector indicator light
- transmission shift indicator
- Treadle Vac
- Trunk Cardboard Kit
- Trunk lining
- Trunk to bumper cover
- Turn Signal Switch
- Ultimate Garage
- Undercoating Removal
- Vacuum Booster
- Vacuum diagram
- Vacuum hoses
- Vacuum Schematic
- Vacuum Valve
- Valve Cover
- Vent Window Switch
- Vicodec roof
- Vinyl Roof
- Washer Fluid Float
- Washer Fluid Low Level Indicator
- Water Pump
- Website News
- Wheel Bearings
- Wheel Housing
- Wiring Diagram