in bespoke bookcases, custom built cabinets, made to measure shelving,
floating shelves, and fitted wardrobes.
an online enquiry here
See references below for recent recommendations of our work.
Carpenter offers skilled and reliable carpenters who can transform
customers design ideas into reality. From beds to windows, all London
Carpenter jobs are designed with customers to offer made to measure
carpentry. We specialise in bespoke cabinets, floating shelves,
flat screen TV display cases, fitted bookcases and wardrobes. Chunky
floating shelves create a contemporary feel, London Carpenter offers
made to measure seamless shelves for a modern look. Our fitted alcove
bookcases and floor to ceiling installations make the most of space
and can beautifully frame centre pieces in any living room. This
page is designed to give you an idea of the type and quality of
work delivered by London Carpenter. We rely on customer feedback
to promote our business and are proud of our excellent customer
ratings, please see a selection of these references below.
the images in each side column to get a closer look at the designs;
a short description of each can be read below each picture.
an online enquiry here
for London Carpenter:
were delighted with the service from London Carpenter. He was very
responsive and we are very pleased with the quality of the finish.
Nathan, London W9 September 2018.
so much again - really happy with how it turned out. And the how
process was an absolute pleasure!" Max, London SE9 June 2018.
so much for the shelves and cabinets. They look so great and have
stored all of our paperwork." Ellie, London SE5 May 2018..
again for the shelves, they're great. I've never been so excited
about organising the flat!" Pete, London EC1V April 2018.
so much for the wonderful shelves, they have transformed our lives!"
Helen, London N3 Februrary 2018.
shelves look fantastic, thank you so much, and I’m sure we’ll
be in touch with more shelf projects." Claire, London N2 January
for the great work, we’re really pleased with the cabinets
and the shelves. I hope you have a good Christmas too." Amy,
London SE7 Decmber 2017
shelves look great, thanks very much." Ollie, London SM2 December
are very happy with your work and actually my husband said that
it's the best handiwork he's seen in London :). I keep going in
to stare at the shelves because they make me happy." Ellen,
London SE14 November 2017.
cabinets look brilliant, thank you!" Doug, London October 2017.
again! I have sent a photo of the shelves with some of our things
on top we're enjoying them very much! Zerina, London SW13, September
absolutely love my new shelves! They are exactly what I wanted and
to have proper well made shelves has made my room look really fantastic!
Thank you so much, you did a great job!" Jane, London, August
again for making and fitting the shelves and cabinet - they're exactly
what I wanted. It was a pleasure to meet you and I hope our paths
will cross again." Alom, London, BR1, June 2017.
for the great work!" Pete, Godalming GU8 May 2017.
Carpenter I just wanted to say how pleased I am with the shelves
- they are perfect! And thanks for being such a pleasure to have
in the house." Sara, London SE26 February 2017.
Carpenter was professional in all communication from enquiry onwards
and very patient explaining different options of shelving. The work
was great and was tidied up perfectly. We're very happy with the
work & the quality of the whole service. I would highly recommend'
Louise, London SE25, January 2017.
wanted to say thanks so much for the amazing job." Chris, London
W4, December 2016.
Carpenter did a great job in fitting shelves in a lounge and bedroom.
They fit perfectly within the rooms and I would definitely recommend
him." Patrick, London SW4, October 2016.
you for a first class job – we are really delighted with the
finished cabinets and bespoke shelving which are finished to a very
high standard. Our books, record collection and games are now proudly
displayed for all to see!" James and Nicky Simmons 9th September
again for such a great job on our cupboards and shelves, we are
so happy with them, exactly what we were after." Laura, BR7
again thank you for the shelves - they are now fully loaded with
the vinyl record collection and look great." David, WC1N June
London Carpenter for fitting the shelves today, we're really happy
with them." Chris, London, SW16 May 2016
shelves look great, thanks very much." Robbie, London SW1P
you London Carpenter for the floating shelves, I am so happy with
them. Several people have commented on them and asked for your details
already. So glad we could get them done in a v. short time and thanks
for the expert problem solving." Kirsty, London EC4A April
London Carpenter, thanks again for installing the shelves today,
they look really good, particularly with the lights in the evening!"
Mr Machin-Kocon London SE26 December 2015.
you for the smooth installation of the alcove shelves yesterday.
London Carpenter you have done a great job and they look fantastic
in our study." Mr Hui London NW11 October 2015.
wanted to say thanks for the bookcase - it's perfect! I was so impressed
by the entire service - from the speedy and helpful emails, to the
quick delivery and friendly service. I would happily recommend you
to any friends who were looking for something built - big or small.
Thanks again!" Meredith, London E3, August 2015
Carpenter thanks for doing a great job on the bookcases." Rebecca,
London SW17 July 2015.
you so much for installing the shelves in our kitchen and hallway.
We were really impressed with your professionalism and attention
to detail and the quality of the work was excellent. The shelves
look fantastic and really complement the rooms. Thanks also for
taking such care to minimise any inconvenience for us - the place
was spotless when you left. I am delighted to recommend London Carpenter
to our friends and look forward to using your services again in
the future." Mr. O'Dwyer, London
NW3, May 2015
you London Carpenter for our perfect shelves, our
flat is honestly transformed and I am very grateful."
Hannah, London NW6 January 2015.
you London Carpenter Everything’s great – the IT guys
are very happy. Once again, a fantastic job done!" Jane, London
SE1 November 2014.
for a brilliant job on our desk, floating shelves and cupboard.
Every little detail beautifully executed to the highest standard
with no mess or fuss. You have our recommendation." Mr Nortje,
London SW19 - August 2014.
Carpenter I just wanted to say thank you for the shelves - they
look great and our books are already on them!" Amanda, London
N19 June 2014.
job London Carpenter, the floating shelves and cupboard look awesome."
- Mr Rowson,
W9 - May 2014.
Carpenter the shelves look great and are already in use! Thank you
very much for having gotten through the installation so rapidly
and with so little mess! We will recommend you to anyone looking
for floating shelving in the future." Sarah, - London N1 March
Carpenter I am thrilled with the shelves and they are being filled
up at the moment!" Ms Simmonds SW14 - February 2014.
London Carpenter we are very pleased with the finished product,
Our friends who visited us at the weekend were also very impressed
with the build and quality of the bookcase." Mr Mohammed London
N10 - February 2014.
Carpenter we are delighted with the shelving.'" Mr Curtis,
London NW3 January 2014.
Carpenter the shelves are fantastic, we are both really happy with
them." Mr Page SW16 - December 2013.
Carpenter was extremely prompt, professional, tidy and accurate.
We love our shelves. Will be asking London Carpenter back to make
a wardrobe soon!" Mr Martin, London SE19 - July 2013.
Carpenter was efficient, professional and did a wonderful job on
some floating shelves. I wouldn't hesitiate to use them again."
- Ms Chain,
W14 - June 2013.
London Carpenter, we are very pleased with the bookcase, it fits
perfectly and looks great. Ms. Holtman,
SW15 May 2013.
you very much, the shelves look great, a really clean professional
finish. Thank you also for working around our requirements and working
at the weekend." Ms Adamson, Territory Design Studio, London
EC1V March 2013.
are delighted with our
custom made and designed alcove shelving and storage, London Carpenter
has produced quality work using skilled craftmanshipl. A*, highly
recommended." Mr Munro,
SW8 February 2013.
been wonderful to have our alcoves fitted just before Christmas
- ready for those decorations. London Carpenter gave a friendly
and very professional service - thank you. Mrs Bailey,
W13, December 2012"
are really pleased and the wardrobe looks great. London Carpenter
was very helpful and conscientious." Mrs Sawyer,
SE7 - October 2012.
London Carpenter, Thank you for putting up the floating shelves
in our office. The job was done extremely well and very efficient."”
SW1 - September 2012.
so much for the great work. The shelves look amazing and it was
lovely to chat with you!" Mrs Katsoulis,
NW5, August 2012.
again London Carpenter for doing such a great job. We’ve just
spent the morning filling our shelves and cabinets and it looks
really good. Your service from start to finish was first class."
SW17 June 2012.
are delighted with our shelves - they look great. Will happily recommend
London Carpenter to anyone who admires them!" Mrs Moore,
SE15, May 2012.
again London Carpenter for an amazing job we really love our new
living space" Mrs Dowse,
SW17, April 2012.
London Carpenter, the floating shelves look excellent, we are really
pleased." Mr Williams, SE23, March 2012.
London Carpenter, the shelves are great. Really pleased with the
job and the time it took you." Mr Hulley Breffit,
SW1V, February 2012.
very much London Carpenter. I'm very happy with the shelves and
cupboards." Ms. Jackson, SW12, January 2012.
you for the alcove cabinets and floating shelves, we are very pleased
with the work you have carried out." Mrs Lonnborg,
W2 October 2011.
London Carpenter thanks for boxing in our office air conditioning
units with minimal disruption, I am very happy with the work."
SW1A August 2011.
shelves which we're very happy with. A thoroughly professional approach
from the initial quote through to the fitting. Would happily recommend
London Carpenter and use them again should we need further built
in shelving." Mrs Jackson,
SE11 July 2011.
London Carpenter, the bookcases look great, thanks for getting them
up despite the sloping walls and floors." Ms Stewart,
E1W March 2011.
London Carpenter, I thought I would get back to you regarding the
desk and shelves since its been a few weeks. First off its perfect,
I have had a few people come round and they really like the build.
Just wanted to thank you for a excellent job. Mr Ali,
IG3 February 2011.
London Carpenter, Thank you very much for the shelves. We think
they look really good! Thanks for taking the time to sort out the
spacing - it was definitely worth it. The floating shelves have
made a big difference to our room." Mrs Ward,
KT3 October 2010.
are absolutely thrilled with our alcove shelving and cabinet. London
Carpenter was professional, trustworthy, punctual and extremely
conscientious throughout with very good attention to detail, working
with us to tailor the design perfectly. London Carpenter even sourced
special cabinet handles to match the lounge decoration. I wouldn't
hesitate to recommend the service." Ms Al-Seffar,
W9 - August 2010.
again let me say we are very happy with the alcoves, they have completely
changed the ambiance in the room and we are very grateful for your
hard work and attention to detail." Mr Bichard,
SE21 - June 2010.
good to see you the other day, and thanks for doing such a great
job with my floating shelves. I'm very pleased with them. Please
can you quote me for a second set." Mr McNeil,
NW6 - April 2010.
doesn't even start to describe the work London Carpenter did for
us. We had 12 floating shelves installed in the alcoves of our Victorian
conversion that bring our lounge to life. Excellent workmanship,
total and utter professionalism and a price and quality that you
can't argue with! London Carpenter exceeded any expectations we
had and working with them was an absolute pleasure from start to
finish." Mr Thompson,
N3 - March 2010
workmanship and delivery. I can't recommend London Carpenter too
highly." Mr Miller,
SW1P - February 2010.
just wanted to say thank you so much for our wardrobe - we couldn't
have asked for more. London Carpenter's meticulous preparation and
unfaltering helpfulness and willingness to go that extra mile made
it a pleasure to work with you and we finally have enough space
to store our clothes!!! We will definitely be calling London Carpenter
again..." Mrs Byng,
SE22 - January 2010.
ordered ten floating shelves. They started Saturday morning and
finished Sunday lunchtime. Excellent work rate, build quality and
price. Would recommend them 100%" Mr Bonsell,
N9 - Dec 2009.
London Carpenter, the floating shelves are now fully loaded and
we're very pleased with their appearance. Thank you for the excellent
work." Mr Vickers,
TW1 November 2009.
moved into our flat last Saturday – to be greeted by our recently
completed fitted wardrobes and shelving units. Thank you once again
for such a beautiful job and working around our dates. Perfect finish
and incredible attention for detail – we seem to have doubled
the space in our cozy apartment!" Mr Taylor,
SE10 - October 2009.
wardrobes are fantastic and has already started changing our lives
and lowering stress levels!" Mr Mohapatra,
W6 September 2009
sorry that it's taken me so long to drop you a note since
you did the shelves. They are fabulous and I'm extremely happy with
the outcome and effect on the entire room - so thank you London
Carpenter. Very keen now to get the other items on the "to
do" list done and so I'd like you to quote for the floor."
SW6 July 2009
to let you know that now the books are unpacked the shelving looks
fantastic.Thanks for your kind and conscientious work in getting
them to look so good." Mr Cuthbert,
SW3 - June 2009
real wood floating shelves look fabulous and we are both really
pleased with them, you've done a great job London Carpenter! Thanks
for taking the time to get great colour match with our existing
wood work." Mr Baptie,
SE6 - April 2009
"I was looking for bespoke quality shelves and got all that plus the high touch service that London Carpenter offers. Very impressed with the responsiveness and timely delivery as well." Ms Sarmiento Medina W9 - March 2009
shelves were built to our exact requirements, with helpful advice
on construction and design throughout the process. London Carpenter
provided a courteous and professional service and finished the job
to a high standard." Mr Howells,
SW8, February 2009.
Carpenter recently installed a made to measure built-in wardrobe
in our flat and we are thrilled with the end result. London Carpenter
is professional, polite and very hard working. Most importantly
of all, you can trust London Carpenter to get the job done carefully
and to a very high standard. We wouldn't hesitate to recommend London
Carpenter." - Mr Green,
W14 - November 2008
work done was marvellous and London Carpenter was very professional
and reliable. He worked 2 days 8am to 7pm paying attention to deliver
the maximum quality. I had six floating shelves, a desk and a small
fitted wardrobe installed, and the service was great. Highly reccomended"
- Mr Cavallini,
W9 - October 2008.
an online enquiry here
Left hand column:
1. This first picture shows four chunky floating shelves over a 1.6m alcove span, with a four door bespoke cabinet in the lower section of the alcove. All work was colour matched with Farrow and Ball paint to fit in with the customers existing colour scheme.
2. London Carpenter installed these 11 birch veneer floating shelves and then finished them with an oak coloured lacquer to match existing wood work. All the floating shelving is secured to all three sides of the alcoves and as structural shelving can support full loading without sagging.
3. London Carpenter designed these modular bookcases to be made to measure and fit around the walls and doors of this Central London apartment. The bookcases were designed around existing alarm and entry systems.
4. This picture shows birch floating shelves with a fabulous 'warm oak' water based satin varnish finish. The London Carpenter design incorporates audio and scart cable access and they make the perfect viewing platform for modern thin panel televisions.
5. This picture shows a made to measure triangular cupboard with two doors and internal shelf, with a floating shelf above. The design brief to London Carpenter was to remove a bulky existing square cupboard and install a sleek unit that made a better use of the available space.
6. This picture shows 30mm floating shelves that have been made to measure to fit into two alcoves around a bedroom fireplace. The bedroom floating shelves in this London home fit perfectly into the walls, each made to measure individually for that exact position
7. This picture shows how a fitted bookcase can be adapted to become the perfect flat panel TV display case. These two fitted alcove bookcases by London Carpenters were made to measure and fit perfectly into the uneven alcove spaces. If you click this image for a closer look you can see two more pictures below showing the bespoke panels and power covers to allow all cables and plugs to be hidden for the ulitmate clean finish.
8. Making the most of all available space this innovative alcove shelving offers both display and storage space. The shelves were designed by London Carpenter around the customer's favourite personal items to offer unique shelves.
9. Floating shelves, i.e. those that show no visible supports are very popular. This contemporary look sets off any focal point in true style and works particularly well in alcove spaces either side of a fire place. Each floating shelf is hand made by London Carpenter, the unit is prefabricated in our workshop and then cut the exact size required on site.
10. Kitchens often provide the 'wow factor' in our homes. London Carpenter kitchen fitters can ensure your design dreams are realised by working with you to make sure these important living spaces are expertly fitted and finished to the highest specification.
11. Always have clean bathroom towels to hand exactly when you need them. This solid pine towel cupboard fitted within a bath surround unit makes the most of this often wasted space.
12. If you love your books then you can never have too many book cases. London Carpenters modular book cases can be designed to fit any space and ensure that you can efficiently use all of the available space. The book cases shown are made from MDF and unpainted.
13. The office shelving shown is simple solid pine fitted on adjustable supports suitable for stationery supplies and box files. London carpenters work flexible hours to avoid disruption to a busy office and weekend or night work is possible to get the job done when it is convenient to customers.
14. Floating shelves are constructed from a solid pine frame that is covered in a thin MDF panel. The frame is attached to the wall using suitable fixings and the panels hide this so the shelves appear to float without any visible support. These systems work well over a long run or as short shelves (shown) to utilise previously wasted wall space. London Carpenters offer a bespoke, made to measure carpentry service to all customers.
15. Alcove spaces in period properties offer the opportunity to display favourite items or space for valuable book shelves. The thin floating shelves shown are made from solid MDF that has been rebated to fit small batten. Older properties rarely have perfectly square walls. Made to measure carpentry by London Carpenter makes sure each shelves is cut perfectly to fit. Below the shelves two symmetrical cabinets are perfect for plates, paperwork or anything you want to keep behind closed doors out of sight.
The wardrobe shown was designed by London Carpenter to be very unobtrusive
and blend into the walls, effectively bringing together a walk-in
wardrobe and a three quarter height cupboard. The brief was to balance
the clumsy position of existing openings. This was done by building
a rectangular frame upon which four symmetrical 'Quaker style' doors
were hung. The result is balanced and clean, but most importantly,
exactly what the customer wanted!
an online enquiry here
Right hand column:
1. Wardrobes can be designed to fit any space and offer any combination of hanging rails and shelving space. The contemporary wardrobe designed by London Carpenter shown sits neatly on a landing with a fabulous eggshell paint finish. Inside the unit two hanging rails sit alongside twelve sliding shelves, each designed to hold two pairs of shoes.
2. Inspired by Italian design, these chunky floating shelves and alcove desk by London Carpenter are finished in high white gloss. Both alcoves required cable access through the shelves to allow for electrical equipment to be stored at higher levels. London Carpenter designed all shelves to include cable access and cut these exactly where required.
3. This picture shows another London Carpenter alcove storage design. This alcove in a customer's hall way was previously wasted space. By choosing made to measure floating shelves, the full space of the alcove could then be used for much needed book storage.
4. This picture shows floating shelves that have been made to measure to fit into two alcoves around a fireplace. The floating shelves fit perfectly into the walls, each made individually for that exact position; with their design complementing the modern fireplace.
5. To make more space within a living area, this customer removed their conventional desk and commissioned London Carpenter to install floating shelves and a slim line desk. The effect not only created space but the clean lines looked great.
6. High level storage makes use of wasted space in London homes. This linen cupboard designed by London Carpenter uses dead space above a boiler, the sliding doors allow easy access while, the paint finish ensures the designs blends in to the existing walls.
7. Often customers wish to paint installations themselves. These modular bookcases are constructed from MDF, giving a floor to ceiling finish, which is made to measure by London Carpenter. Distances between shelves can be specified at any height to match customer's requirements.
8. High level storage is often overlooked but can make an excellent display area as can be seen in the kitchen area shown. This design by London Carpenter uses a solid timber frame which is covered in thin MDF; this covers all fixings, just leaving clean symmetrical cube storage spaces.
9. Floating shelves rely on firm fixings within their timber frame to the existing walls. The weight that these can hold is dependant on the strength of these fixings and indeed what their supporting walls are made of. Generally masonry walls offer a stronger support; however modern plasterboard fixings can give a solid fix and reliable hold.
10. This picture is of a made to measure pine desk by London Carpenter, a finishing touch to a recent loft conversion. The desk seen was designed with a customer whose son is a medical student that needs a lot of space for all his books. The design incorporates an extension piece to enlarge the desk, which was easily removed when not required.
11. Wardrobes can be designed to either stand out as a piece of furniture in their own right, or blend into a wall to minimize their impact. This wardrobe by London Carpenter has been designed into an existing alcove with pine doors on a solid pine frame. Two wardrobe rails make this design ideal for a gentleman with a lot of shirts and suits. Two smaller doors above this hanging space offer high level storage.
12. Another modern kitchen design with fitted units and work surface. This installation has a grey tile splash back and two floating shelves by London Carpenter for pots and pans.
13. Book cases can be designed to fit any space. This solid pine unit by London Carpenter has an open end so as not to enclose the space and impose on this small room.
14. The next two pictures (side by side) show a folding pine desk by London Carpenter. The design chosen allows flexibility to work at a full desk when needed. However, when the work is done, this can be easily folded away to allow multi-usage of space.
15. The next picture shows a fitted desk by London Carpenter. This is the perfect place to study and work, with plenty of shelving, all necessary books and files are close to hand.
For any enquiries or estimate requests please contact us here. Please complete this including your contact details, alternatively please call, 07808 475 445.
Areas of London we cover include: Abbey Wood, Acton, Addington, Addlestone, Aldgate, Alexandra Palace, Anerley, Archway, Balham, Barbican, Barking, Barnes, Barnet, Barnsbury, Battersea, Bayswater, Beckenham, Becontree, Beddington Corner, Beddington, Belgravia, Bellingham, Bethnal Green, Bexley, Blackheath, Bloomsbury, Borough, Bow, Brent, Brent Cross, Brentford, Brixton, Brockley, Bromley, Bromley-by-Bow, Brompton, Brook Green, Buckhurst Hill, Camberwell, Camden Town, Canning Town, Canonbury, Carshalton, Castelnau, Catford, Charlton, Chelsea, Chertsey, Chessington, Chigwell, Chingford, Chislehurst, Chiswick, Clapham Junction, Clapham, Clapton, Claygate, Clerkenwell, Cockfosters, Colindale, Covent Garden, Cricklewood, Crofton Park, Crouch End, Croydon, Crystal Palace, Dagenham, Dalston, Deptford, Dulwich, Ealing, Earl's Court, Earlsfield, East Barnet, East Croydon, East Dulwich, East End, East Finchley, East Ham, East Molesley, East Sheen, Eastcote, Elephant & Castle, Elsham, Eltham Park, Eltham, Enfield Park, Enfield, Epping Forest, Epsom Downs, Epsom, Esher, Ewell, Finchley Central, Finsbury Park, Finsbury, Fleet Street, Foots Cray, Forest Gate, Forest Hill, Fortis Green, Friern Barnet, Fulham, Golders Green, Grange Hill, Gray's Inn, Greenford, Greenhill, Greenwich, Grove Park, Hackney, Hainault, Hammersmith, Hampstead Garden Suburb, Hampstead Heath, Hampstead, Hampton, Hanger Lane, Hanwell, Hanworth, Harlesden, Harrow on the hill, Harrow, Hatton, Havering, Hayes, Hendon, Herne Hill, Heston, Highams Park, Highbury, Highgate, Hither Green, Holborn, Strand, Holland Park, Holloway, Homerton, Honor Oak Park, Hook, Hornsey, Hounslow, Ickenham, Isle of Dogs, Isleworth, Islington, Kensal Green, Kensington, Kentish Town, Kew Gardens, Kew, Kilburn, Kingsbury, Kingston, Kingston-upon-Thames, Kinsbury, Ladbroke Grove, Lambeth, Lee, Lewisham, Leyton, Leytonstone, Liverpool Street, Long Ditton, Lower Edmonton, Maida Vale, Manor House, Manor Park, Marylebone, Mayfair, Merton, Mile End, Mill Hill, Millwall, Mitcham, Monument, Moorgate, Morden, Mortlake, Muswell Hill, Neasden, New Barnet, New Cross Gate, New Cross, New Malden, New Southgate, Nine Elms, Norbiton, Norbury, North Finchley, North Kensington, North Woolwich, Northolt, Notting Hill, Nunhead, Orpington, Osterley, Paddington, Palmers Green, Parson's Green, Peckham, Penge, Perivale, Pimlico, Pinner Green, Pinner, Plaistow, Poplar, Plumstead, Ponders End, Potters Bar, Purley, Putney, Queens Park, Raynes Park, Redbridge, Regent's Park, Richmond, Roehampton, Rotherhithe, Seven Kings, Seven Sisters, Shepherd's Bush, Shepperton, Shirley, Shoreditch, Sidcup, Soho, South Beddington, South Bermonsey, South Croydon, South Kensington, South Lambeth, South Norwood, South Wimbledon, South Woodford, Southall, Southfields, Southgate, Southwark, St John's Wood, St Mary's Cray, St Paul's Cray, St. Paul's, Stamford Hill, Stepney, Stockwell, Stoke Newington, Stratford, Streatham Hill, Streatham, Sudbury, Sunbury, Surbiton, Surrey Docks, Sutton, Swiss Cottage, Sydenham, Teddington, Temple Fortune, Thames Ditton, Tolworth, Malden, Tooting, Tottenham, Totteridge, Tower Hill, Tufnell Park, Tulse Hill, Twickenham, Upper Edmonton, Upper Norwood, Wandsworth, Upton Park, Uxbridge, Wallington,Hill, Westminster, Winchmore Hill, Wood Green, Woodford Green, Woodford, Woodmansterne, Woodside Park, Woolwich, Worcester Park, World's End
© 2000–2018 Adam J Whittle. All rights reserved.