12 Replies Latest reply: Sep 12, 2012 9:44 AM by glaustin RSS

    How do I disable the Flashplayer Update Warning?

    glaustin Community Member

      Hi Guys

      I'm working on a small SWF as part of a webpage I'm designing. I have a swf banner already on the page and that works fine. But when I test the page, with the additional swf in IE9, using the latest player version, IE9 displays a blank white box instead of the animation and a message saying I need to update my Flash Player (which is fully up to date!) However the swf does work if I publish it as version 9 or below (although I get a message below the swf saying I must update to a newer Flash Player version!!!)

       

      I've posted on the Flash Player Forum about the technical Flash Player issues but I'm getting irritated by this Flash Player update warning that is part of the CSS (and pops up often). Unfortunately (as a newbie) everytime I try and take the newer version code out I keep getting a bit of a mess. Can anyone tell me which lines of code I should remove or replace from below please (I hope I have copied all the relevant section of code)? Apologies. It is only local at the moment.

       

      Regards,

      Graham

      ------------------------------------------------------------------------------

      Code

       

        <div class="header"><!-- end .header -->

          <!-- InstanceBeginEditable name="header" -->

          <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="1000" height="240" id="FlashID" title="GBatBMedia Corporate Video Production">

            <param name="movie" value="_animation/webbanner_xlf_0702_2012_fn.swf" />

            <param name="quality" value="high" />

            <param name="wmode" value="transparent" />

            <param name="swfversion" value="6.0.65.0" />

            <!-- This param tag prompts users with Flash Player 6.0 r65 and higher to download the latest version of Flash Player. Delete it if you don’t want users to see the prompt. -->

            <param name="expressinstall" value="Scripts/expressInstall.swf" />

            <param name="LOOP" value="false" />

            <!-- Next object tag is for non-IE browsers. So hide it from IE using IECC. -->

            <!--[if !IE]>-->

            <object type="application/x-shockwave-flash" data="_animation/webbanner_xlf_0702_2012_fn.swf" width="1000" height="240">

              <!--<![endif]-->

              <param name="quality" value="high" />

              <param name="wmode" value="transparent" />

              <param name="swfversion" value="6.0.65.0" />

              <param name="expressinstall" value="Scripts/expressInstall.swf" />

              <param name="LOOP" value="false" />

              <!-- The browser displays the following alternative content for users with Flash Player 6.0 and older. -->

              <div>

                <h4>Content on this page requires a newer version of Adobe Flash Player.</h4>

                <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" width="112" height="33" /></a></p>

              </div>

              <!--[if !IE]>-->

            </object>

            <!--<![endif]-->

          </object>

        <!-- InstanceEndEditable --></div>

        <!-- InstanceBeginEditable name="sidebar1edit" -->

        <div class="sidebar1">

          <p align="center"> </p>

          <p> </p>

          <!-- end .sidebar1 -->

        </div>

        <!-- InstanceEndEditable --><!-- InstanceBeginEditable name="contentedit" -->

        <div class="content" src="_rollovers/twitter-logo_red.jpg">

          <h1>Animation</h1>

          <p align="justify">

      <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="255" height="392" class="static_img" id="FlashID2" title="laptopgirl">

        <param name="movie" value="_animation/laptopgirl.swf" />

        <param name="quality" value="high" />

        <param name="wmode" value="opaque" />

        <param name="swfversion" value="15.0.0.0" />

        <!-- This param tag prompts users with Flash Player 6.0 r65 and higher to download the latest version of Flash Player. Delete it if you don’t want users to see the prompt. -->

        <param name="expressinstall" value="Scripts/expressInstall.swf" />

        <!-- Next object tag is for non-IE browsers. So hide it from IE using IECC. -->

        <!--[if !IE]>-->

        <object type="application/x-shockwave-flash" data="_animation/laptopgirl.swf" width="255" height="392">

          <!--<![endif]-->

          <param name="quality" value="high" />

          <param name="wmode" value="opaque" />

          <param name="swfversion" value="15.0.0.0" />

          <param name="expressinstall" value="Scripts/expressInstall.swf" />

          <!-- The browser displays the following alternative content for users with Flash Player 6.0 and older. -->

          <div>

            <h4>Content on this page requires a newer version of Adobe Flash Player.</h4>

            <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>

          </div>

          <!--[if !IE]>-->

        </object>

        <!--<![endif]-->

      </object>

        • 1. Re: How do I disable the Flashplayer Update Warning?
          adninjastrator Community Member

          Start by editing this line (which appears twice in <div class="content" src="_rollovers/twitter-logo_red.jpg">

          <param name="swfversion" value="15.0.0.0" />

          while the name of the <param is "swfversion".... it means version of Flash Player....

          and as far as I know there is no version 15 Flash Player.

          So edit that back down to 10 or less... or match the first <object>... which is

          <param name="swfversion" value="6.0.65.0" />

          Best wishes,

          Adninjastrator

          • 2. Re: How do I disable the Flashplayer Update Warning?
            glaustin Community Member

            Many thanks and I pasted in the latest version. Unfortunately I'm still getting the same problem. I tried also to make all params the same but no dice! This is really frustrating. I can't understand why the code would create v 15 of Flashplayer in the first place??? Any other ideas how I can fix?

            • 3. Re: How do I disable the Flashplayer Update Warning?
              glaustin Community Member

              Hi. Anyone any ideas on what I can do to the code to get the Flashplayer update message and logo to only display if an update is needed or what I should remove from the code to delete it??

              • 4. Re: How do I disable the Flashplayer Update Warning?
                adninjastrator Community Member

                Since you are not posting a link to the actual page, we are only getting a code snippet... in other words, we are getting only a small piece of the puzzle. There may be other related code that is causing the problem.

                For example... depending on which version of swfobject.js you are using, you may need to "register" the second .swf as a second object with swfobject

                http://code.google.com/p/swfobject/wiki/api

                You don't really need swfobject at all in order to display a .swf on a Web page.

                ALL the code associated with the second .swf can be replaced by this:

                <object data="path_to_file/file.swf" type="application/x-shockwave-flash" width="insert_width_of_movie" height="insert_height_of_movie">

                  <param name="movie" value="path_to_file/file.swf">

                  <param name="SomeOtherParam" value="ParamValue">

                </object>

                That's all you need. Try that method, skipping any swfobject related issues altogether.

                Best wishes,

                Adninjastrator

                • 5. Re: How do I disable the Flashplayer Update Warning?
                  WahooCDM

                  adninjastrator et al,

                   

                  I am having the exact same issue in IE9 with the "upgrade message" displaying even though I have the latest flash player.  This message does not appear in Firefox or Safari.  You can view the referenced page here:  http://www.secretariat-intl.com/services_testimony_exp.php.  The code for the .swf is as follows:

                   

                  *********************************************

                  <p>

                  <object id="FlashID" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="720" height="340">

                  <param name="movie" value="images/testimony_exp_map4.swf" />

                  <param name="quality" value="high" />

                  <param name="wmode" value="opaque" />

                  <param name="swfversion" value="6.0.65.0" />

                  <!-- This param tag prompts users with Flash Player 6.0 r65 and higher to download the latest version of Flash Player. Delete it if you don’t want users to see the prompt. -->

                  <param name="expressinstall" value="Scripts/expressInstall.swf" />

                  <!-- Next object tag is for non-IE browsers. So hide it from IE using IECC. -->

                  <!--[if !IE]>-->

                  <object type="application/x-shockwave-flash" data="images/testimony_exp_map4.swf" width="720" height="340">

                  <!--<![endif]-->

                   

                  <param name="quality" value="high" />

                  <param name="wmode" value="opaque" />

                  <param name="swfversion" value="6.0.65.0" />

                  <param name="expressinstall" value="Scripts/expressInstall.swf" />

                  <!-- The browser displays the following alternative content for users with Flash Player 6.0 and older. -->

                  <div>

                  <h4>Content on this page requires a newer version of Adobe Flash Player.</h4>

                  <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>

                  </div>

                  <!--[if !IE]>-->

                  </object>

                  <!--<![endif]-->

                  </object>

                  </p>

                   

                  *********************************************

                  Any help is greatly appreciated!!!

                  WahooCDM

                  • 6. Re: How do I disable the Flashplayer Update Warning?
                    adninjastrator Community Member

                    exact same issue in IE9 with the "upgrade message" displaying even though I have the latest flash player.

                    You make a great example of why the "Latest" is not always the "Greatest". Just because you CAN update, doesn't always mean you SHOULD.

                    Anyway...

                    I did test on a second machine with IE9 and an updated Flash plugin... the .swf displays fine but the "newer verion" message displays also.

                    So try just commenting out the offending code...

                    <!-- Comment this section out. Open comment tag here, close down below
                                  <div>
                                    <h4>Content on this page requires a newer version of Adobe Flash Player.</h4>
                                    <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" /></a></p>
                                  </div>

                    -->

                    If you are not familiar with comment tags:

                    http://www.w3schools.com/tags/tag_comment.asp

                    Best wishes,

                    Adninjastrator (IE8, Flash Player 10.3)

                    • 7. Re: How do I disable the Flashplayer Update Warning?
                      WahooCDM Community Member

                      Thanks for confirming that this is an apprentent issue with IE9 and not an issue with my/our code.  Although not a satisfying solution in terms of finding a real "fix" for the issue, I have commented out the code and obviously no longer receive the "upgrade message". 

                       

                      WahooCDM

                      • 8. Re: How do I disable the Flashplayer Update Warning?
                        glaustin Community Member

                        Thanks Adninjastrator

                        Apols for delay in feedback. The good news is both your solutions work for IE9 and I went with "commenting" to solve the problem, bbbuuuttt the bad news is both solutions impact on Firefox and when I open that browser the swf objects do not display at all (just blank white oblongs with commenting and a blank box for the header and nothing at all for the 2nd swf when I tried your replacement option). That's bizare. Is there a piece of code I'm missing or something I need to adapt for FireFox (I'm running the latest version)?

                         

                        Regards,

                        Graham

                         

                        Here's my revised code with commenting (apolos that I cannot offer a link at the moment):

                         

                         

                        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
                        <html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/main.dwt" codeOutsideHTMLIsLocked="false" -->
                        <head>
                        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
                        <!-- InstanceBeginEditable name="doctitle" -->
                        <title>Welcome to Business Video Production, Digital Signage, Animation and Graphic Design</title>
                        <!-- InstanceEndEditable -->
                        <link href="_css/maincss.css" rel="stylesheet" type="text/css" />
                        <script src="_Scripts/swfobject_modified.js" type="text/javascript"></script>
                        <script src="SpryAssets/SpryMenuBar.js" type="text/javascript"></script>
                        <link href="SpryAssets/SpryMenuBarHorizontal.css" rel="stylesheet" type="text/css" />
                        <script type="text/javascript">
                        function MM_swapImgRestore() { //v3.0
                          var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
                        }
                        function MM_preloadImages() { //v3.0
                          var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
                            var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
                            if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
                        }

                        function MM_findObj(n, d) { //v4.01
                          var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
                            d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
                          if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
                          for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
                          if(!x && d.getElementById) x=d.getElementById(n); return x;
                        }

                        function MM_swapImage() { //v3.0
                          var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
                           if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
                        }
                        </script>
                        <!-- InstanceBeginEditable name="head" -->
                        <!-- InstanceEndEditable -->
                        </head>

                        <body onload="MM_preloadImages('_rollovers/facebook-logo_down.jpg','_rollovers/twitter-logo_dow n.jpg','_rollovers/youtube4dn.jpg')">

                        <div class="container">
                          <ul id="MenuBar1" class="MenuBarHorizontal">
                            <li><a href="index.html">Home</a></li>
                            <li><a class="MenuBarItemSubmenu" href="corporate.html">Corporate</a>
                              <ul>
                                <li><a href="video.html">Video Production</a></li>
                                <li><a href="digisign.html">Digital Signage</a></li>
                                <li><a href="animate.html">Animation</a></li>
                                <li><a href="graphicweb.html">Graphic &amp; Web Design</a></li>
                                <li><a href="consultancy.html">Consultancy</a></li>
                              </ul>
                            </li>
                        <li><a class="MenuBarItemSubmenu" href="resources.html">Resources</a>
                              <ul>
                                <li><a class="MenuBarItemSubmenu" href="show.html">Showreels</a>
                                  <ul>
                                    <li><a href="#">Item 3.1.1</a></li>
                                    <li><a href="#">Item 3.1.2</a></li>
                                  </ul>
                                </li>
                                <li><a href="literature.html">Literature</a></li>
                        </ul>
                            </li>
                            <li><a href="aboutus.html">About us</a></li>
                            <li><a href="privacypolicy.html">Privacy Policy</a></li>
                            <li><a href="contact.html">Contact</a></li>
                          </ul>
                          <div class="header"><!-- end .header -->
                            <!-- InstanceBeginEditable name="header" -->
                            <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="1000" height="240" id="FlashID" title="GBatBMedia Corporate Video Production">
                              <param name="movie" value="_animation/webbanner_xlf_0702_2012_fn.swf" />
                              <param name="quality" value="high" />
                              <param name="wmode" value="transparent" />
                              <param name="swfversion" value="6.0.65.0" />
                              <!-- This param tag prompts users with Flash Player 6.0 r65 and higher to download the latest version of Flash Player. Delete it if you don’t want users to see the prompt. -->
                              <param name="expressinstall" value="Scripts/expressInstall.swf" />
                              <param name="LOOP" value="false" />
                              <!-- Next object tag is for non-IE browsers. So hide it from IE using IECC. -->
                              <!--[if !IE]>-->
                              <object type="application/x-shockwave-flash" data="_animation/webbanner_xlf_0702_2012_fn.swf" width="1000" height="240">
                                <!--<![endif]-->
                                <param name="quality" value="high" />
                                <param name="wmode" value="transparent" />
                                <param name="swfversion" value="6.0.65.0" />
                                <param name="expressinstall" value="Scripts/expressInstall.swf" />
                                <param name="LOOP" value="false" />
                                <!-- The browser displays the following alternative content for users with Flash Player 6.0 and older. -->
                                <!-- Comment this section out. Open comment tag here, close down below
                                      <div>
                                        <h4>Content on this page requires a newer version of Adobe Flash Player.</h4>
                                        <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.g if" alt="Get Adobe Flash player" /></a></p>
                                      </div>

                        -->

                                <!--[if !IE]>-->
                              </object>
                              <!--<![endif]-->
                            </object>
                          <!-- InstanceEndEditable --></div>
                          <!-- InstanceBeginEditable name="sidebar1edit" -->
                          <div class="sidebar1">
                            <p align="center"> </p>
                            <p> </p>
                            <!-- end .sidebar1 -->
                          </div>
                          <!-- InstanceEndEditable --><!-- InstanceBeginEditable name="contentedit" -->
                          <div class="content" src="_rollovers/twitter-logo_red.jpg">
                            <h1>Animation</h1>
                            <p align="justify">
                        <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" name="FlashID2" width="255" height="392" class="static_img_left" id="FlashID2" title="laptop">
                           <param name="movie" value="_animation/laptopgirl.swf" />
                           <param name="quality" value="high" />
                           <param name="wmode" value="opaque" />
                           <param name="swfversion" value="11.3.300.257" />
                           <!-- This param tag prompts users with Flash Player 6.0 r65 and higher to download the latest version of Flash Player. Delete it if you don’t want users to see the prompt. -->
                           <param name="expressinstall" value="Scripts/expressInstall.swf" />
                           <!-- Next object tag is for non-IE browsers. So hide it from IE using IECC. -->
                           <!--[if !IE]>-->
                           <object type="application/x-shockwave-flash" data="_animation/laptopgirl.swf" width="255" height="392">
                             <!--<![endif]-->
                             <param name="quality" value="high" />
                             <param name="wmode" value="opaque" />
                             <param name="swfversion" value="11.3.300.257" />
                             <param name="expressinstall" value="Scripts/expressInstall.swf" />
                             <!-- The browser displays the following alternative content for users with Flash Player 6.0 and older. -->
                            <!-- Comment this section out. Open comment tag here, close down below
                                      <div>
                                        <h4>Content on this page requires a newer version of Adobe Flash Player.</h4>
                                        <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.g if" alt="Get Adobe Flash player" /></a></p>
                                      </div>

                        -->

                             <!--[if !IE]>-->
                           </object>
                           <!--<![endif]-->
                        </object>
                        We can add  life to your website design,  stand alone multimedia applications or other promotional needs.</p>
                            <p align="justify">We combine  illustration and design skills with the latest industry standard software to create animations and graphics to add &quot;zing&quot; to the story you are telling. We can create both 2D and 3D animations  that will engage your audience on your website and for the creative side of the corp
                             
                            orate and video production market.</p>
                            <p align="justify"> produce animations for websites, stand alone multimedia applications and other media.<br />
                            </p>
                            <p><img src="_images-static/screen_insert.jpg" width="480" height="270" hspace="40" vspace="25" align="bottom" /></p>
                            <p align="justify">
                              <!-- end .content -->
                            </p>
                          </div>
                          <!-- InstanceEndEditable --><!-- InstanceBeginEditable name="sidebar2edit" -->
                          <div class="sidebar2blank">
                            <h3 align="center"> </h3>
                            <p> </p>
                          </div>
                          <script type="text/javascript">
                        swfobject.registerObject("FlashID2");
                          </script>
                          <!-- InstanceEndEditable -->
                          <div class="footer" >
                            <p align="center">Home |  Corporate | Services | Resources | About us | Privacy Policy | Contact</p>
                          </div>
                        <!-- end .container --></div>
                        <script type="text/javascript">
                        swfobject.registerObject("FlashID");
                        var MenuBar1 = new Spry.Widget.MenuBar("MenuBar1", {imgDown:"SpryAssets/SpryMenuBarDownHover.gif", imgRight:"SpryAssets/SpryMenuBarRightHover.gif"});
                        </script>
                        </body>
                        <!-- InstanceEnd --></html>

                        • 9. Re: How do I disable the Flashplayer Update Warning?
                          adninjastrator Community Member

                          Then I would suggest you go back to:

                          <object data="path_to_file/file.swf" type="application/x-shockwave-flash" width="insert_width_of_movie" height="insert_height_of_movie">

                            <param name="movie" value="path_to_file/file.swf">

                            <param name="SomeOtherParam" value="ParamValue">

                          </object>

                          This completely replaces any and all swfobject code as well as any and all existing <object> code.

                          Use this code for each .swf.

                          This single <object> method works just fine in either IE or FF.

                          Best wishes,

                          Adninjastrator

                          • 10. Re: How do I disable the Flashplayer Update Warning?
                            glaustin Community Member

                            Hi Adninjastrator

                            Thanks for your comments. I've been away for a few weeks so apologies for the gap before my reply.

                             

                            I thought the easiest thing was to remove the comment and references to the flash update (in bold below). I did that on one of the pages and fine (except for Firefox!) I'm working from a template so I thought I'd remove it there for any future pages but it throws the page's format all over the place. Am I doing something wrong?

                             

                            Sorry I still cannot post a link but I'm aiming to put it on a demo platform shortly.

                             

                            ---------------------------------

                                  <object type="application/x-shockwave-flash" data="../_animation/webbanner_xlf_0702_2012_fn.swf" width="1000" height="240">

                                    <!--<![endif]-->

                                    <param name="quality" value="high" />

                                    <param name="wmode" value="transparent" />

                                    <param name="swfversion" value="6.0.65.0" />

                                    <param name="expressinstall" value="../_Scripts/expressInstall.swf" />

                                    <param name="LOOP" value="false" />

                                    <!-- The browser displays the following alternative content for users with Flash Player 6.0 and older. -->

                                    <div>

                                      <h4>Content on this page requires a newer version of Adobe Flash Player.</h4>

                                      <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash player" width="112" height="33" /></a></p>

                                    </div>

                            ------------------------------------

                             

                            Regards,

                            Graham

                            • 11. Re: How do I disable the Flashplayer Update Warning?
                              adninjastrator Community Member

                              Yeah with the version of swfobject that you are using, the <div> needs to stay. That includes both the open and closing tag <div>......</div>.

                              But remember, swfobject is used for Flash detection and providing alternate content... it is NOT required to display the Flash itself. The single object method will do that just fine:

                              <object data="path_to_file/file.swf" type="application/x-shockwave-flash" width="insert_width_of_movie" height="insert_height_of_movie">

                                <param name="movie" value="path_to_file/file.swf">

                                <param name="SomeOtherParam" value="ParamValue">

                              </object>

                              If you are having problems getting that to work on your page, then I'd suggest you build a test page using ONLY that code, to verify that it works.

                              Here is a sample of the minimalistic use of a single <object> to display Flash... Works just fine in newer versions of IE, FF, Chrome, and Safari:

                              http://www.cidigitalmedia.com/tutorials/single_object/single_object.html

                              View the source code and you'll notice that it takes hardly any code at all to display and play Flash.

                              Forget about all the swfobject, alternate "Download Flash...", [if !IE] conditional statements...etc.

                              Best wishes,

                              Adninjastrator

                              • 12. Re: How do I disable the Flashplayer Update Warning?
                                glaustin Community Member

                                Hi Guys

                                I'm now working with CS6. Thank you for all your comments so far and following comments here and our ISP I thought I'd solved the problem as all seemed OK when I launched the browser locally. I then uploaded to a demo platform (http://www.gbatdemo.co.uk/media_06-12/index.html). Unfortunately, instead of being closer to publishing, it's gone from bad to worse.

                                 

                                Now some browsers don't show any of my banner swf animations and IE9 on my machine won't even open the index page. Can anyone tell me simply where I am going wrong? It seems one step forward and ten back! I cannot believe Adobe put this code in when it is so potentially damaging for newbies.

                                 

                                (FYI: If you do look at the link, please disregard what looks like a flashplayer called "gbat showreel" that's just a dummy image and not a player - simply to give an idea of waht it should look like once I've solved this irritating problem).

                                 

                                Any help will be gratefully recieved.

                                Graham