MCP-CMS: Difference between revisions

From Cibernética Americana
Jump to navigationJump to search
No edit summary
No edit summary
 
Line 4: Line 4:
.collapsible {
.collapsible {
   background-color: white;
   background-color: white;
   color: black;
   color: lime;
   cursor: pointer;
   cursor: pointer;
   padding: 3px;
   padding: 40px;
   width: 100px;
   width: 100px;
   height: 25px;
   height: 25px;
   border: none;
   border: navy;
   text-align: left;
   text-align: left;
   outline: none;
   outline: none;
   font-size: 15px;
   font-size: 12px;
   font-weight: 600;
   font-weight: 600;
   position: relative;
   position: relative;
   top: -50px;
   top: -24px;
}
@font-face {
  font-family: Papyrus;
  src: url('https://meansofproduction.biz/pub/papyrus.ttf');
}
}


Line 21: Line 25:
   background-color: #FFFFFFF;
   background-color: #FFFFFFF;
}
}
.content {
.content {
   padding: 0 18px;
   padding: 0 18px;
Line 33: Line 36:
<div style="text-align: right;">
<div style="text-align: right;">
<h1 style="color: black;">mcpcms &nbsp; </h1>
<h1 style="color: black;">mcpcms &nbsp; </h1>
<h5 style="position: relative;top: 0px;color: black;">master control program &nbsp; <br>CMS MCS shell &nbsp; </h5>
<h5 style="position: relative;top: 0px;color: black;"><span style=background-color:yellow;"> &nbsp; conversational monitoring system &nbsp; </span><br>DCP Shell &nbsp; </h5>
</div>
</div>
<div style="position: relative;top: -75px;">
<div style="position:relative;top:-60px;"> &nbsp; <a  style="position: relative;top: -15px;" title="Home Profile"
&nbsp; <a  style="position: relative;top: -15px;" title="Home Profile"
             href=https://sameboat.network/user><img src=https://meansofproduction.biz/images/corbusierDuHaut.jpg width=100></a>
             href=https://sameboat.live/user><img src=https://meansofproduction.biz/images/corbusierDuHaut.jpg width=100></a>
           <span style="position: relative; top: -40px;"><a style="color: lime;" title="About the MCP reinvention"
           <span style="position: relative; top: -40px;"> &nbsp;<tt  
              href=/eg/index.php/MCP> <tt style="background-color: black; color: yellow; font-weight: bold;"> &nbsp; minimalist clustering paradigm &nbsp; </tt></a><br><br>
            style="background-color: black; color: yellow; font-weight: bold;"> the launch task reports:
             <a title="mcpcms cli or webssh login if not SAR authenticated"
            <span style="color: red; text-shadow: 0 0 1px #ffffff, 0 0 2px #ffffff;">ABORTED</span> .</tt><br><br>
            style="height:50px;background-color:purple;color:white;position: relative; left: 130px; top: -20px;" href=/eg/index.php/MCPCELL><b> &nbsp; launch &nbsp;</b></a>
             <a style="position: relative; left: 130px; top: -10px; " href=https://eg.meansofproduction.biz/index.php/MCP-CMS><b>refresh</b></a>
            <span style="position: relative;left:130px;top: -20px;">&mdash; an MCP cell &sup1;  provisioned by the Domain Control Program per your current context. &sup2;</span>
           </span>
           </span>
        <div style="position: relative; top: -50px;">
</div>
        <blockquote  style="width: 60%;font-weight: bold;" >
<div style="z-index:150;position:relative;top:-90px;right:60px;">
            If the launch request status above is not ABORTED or STOPPED,  a <a title="About the MCP reinvention"
<img align=right width=300px src="https://meansofproduction.biz/images/b6700nMCP2.png">
            href=https://eg.meansofproduction.biz/index.php/MCP>MCP</a>&sup1; shell session is or shortly will be running on support
<span style="float:right;position:relative;top:270px;left:310px;font-size:10px;">Dual 6700, c. 1971/2, binding says MK 0.0, so 2.0.0<br>
            provisioned from core domain space or DIY inventory&sup2;. These and the remaining states ACTIVE, INUSE, or COMPLETEDOK, implicitly reference the
<audio style="float:right;height:14px;" title="'Woody'n You' Ahmad Jamal 1958" controls source src="https://meansofproduction.biz/pub/WoodyNYou.mp3"
            DS <a href=https://sameboat.live/stationHistory>station</a> at which you're currently authenticated. It may be explicitly accessed at  &lt;station-name&gt; where
type="audio/mpeg"> This page has an audio but your browser does not support the audio element.</audio><br>
            <tt>
<span style="float:right;font-size:8px;color:purple;">This page has an audio track, mouseover for title/credit.</span>
            <ul>
<br>
                <li style="padding: -2px;"><pre>&lt;station-name&gt; ::= ipV6Address | ipV4Address | FQAgentName </pre></li>
</span>
                <li style="padding: 0px;"><pre>&lt;domain&gt;       ::= ai-integration | ai-integration.biz | &lt;yourTLD&gt;[.dom]</pre> </li>
</div>
                <li><pre>FQAagentName    ::= your C-六 nick FQDN, e.g. 'janedoe@&lt;domain&gt;:&lt;port&gt;'.</pre></li>
<div style="position: relative; top: -100px;">
                <li><pre>&lt;yourTLD&gt;       ::= your alt-root TLD or its public linking zone.</pre></li>
<blockquote style="position: relative;top: 0px;"> Semantic Roadmap
            </ul></tt></pre>
        <tt>
        </blockquote>
        <ul>
        <blockquote style="width: 60%;font-weight: bold;">
        <li>0.9.0 &nbsp;074-11-02&nbsp; 1<sup>st</sup> structurally complete tl;dr.&dagger; </li>
          Add a device control block to your profile dashboard and enable CMS which assigns a port for the station, then ssh as usual post a ssh-copy-id. The IPV6 and
        <li>0.9.1 &nbsp;07y-mm-dd&nbsp; BOOTKEE, doorbell migrated to JSX/HSX cells.</li>
          suffix-free domain  forms require DS routing and peering, respectively. Sessions launched by ip do not persist and are strictly contained within the agent's session.<br> <br>
        <li>1.0.0 &nbsp;07y-mm-dd&nbsp; DCP provisions FRED, C-六/SB, CLFE, and DCMS cells.</li>
          Launch states ABORTED, COMPLETED, OR STOPPED, imply receipt of diagnostic info by the currently selected means of notification in your home profile (icon above, left of launch status).
        <li>1.1.0 &nbsp;07y-mm-dd&nbsp; DSAP appgen baseline from DCP (flat code for manual programming).</li>
          ABORTED is the immediate result if you are not authenticated.<br><br>
        <li>1.1.1 &nbsp;07y-mm-dd&nbsp; AKPERSON tx's to Transparent Ledger (Books), DCP agency live in wild.</li>
          A running <a href=https://eg.meansofproduction.biz/index.php/WFL/DCP_SPO>SPO</a> counts as a mcpcms launch against account limits.<br>
        <li>1.1.2 &nbsp;07y-mm-dd&nbsp; DSAP appgen with baseline of DS G (visual programming/execution).</li>
        <hr width="50%" style="float: left;">
        <li>1.2.0 &nbsp;07y-mm-dd&nbsp; </html>[[WFL/DCP SPO| BaselineOfDCP]]<html> (DGUI/SPO). </li>
        </blockquote><br>
        <li>1.2.1 &nbsp;07y-mm-dd&nbsp; BaselineOfWFL. </li>
         <blockquote style="position: relative;top: -30px;">
        <li>1.2.2 &nbsp;07y-mm-dd&nbsp; &int; x &Dopf; &part; DS, BaselineOfBOOTKEE.</li>
         <span style="position: relative;top: -8px;font-size: 10px;">&sup1;<i>NB: 'Unisys CANDE', 'Unisys MCP', and 'Unisys WFL' are distinct from the unaffixed names and will be
        <li>2.0.0 &nbsp;07y-mm-dd&nbsp; 1<sup>st</supSPO integral WFL. 2<sup>nd</sup> ed. tl;dr story.   </li>
        supported in a free feature of later DCP versions.</i><br>
        <li>2.0.1 &nbsp;07y-mm-dd&nbsp; &int; VM (CMS, MVS) / DCP &part; DS, the MF-One story.</li>
         &sup2; AWS, Linode, or your Gb LAN. DCP nodes must have sub-millisecond ping. Set cloud vendor credentials in your commons dashboard or run the DCP leader in your LAN.
        <li>3.0.0 &nbsp;07y-mm-dd&nbsp; Mature DDD/KEE product.</li>
        </ul></tt></blockquote>
<center>
MCP-CMS &mdash; a platform for the Domain Control Program, with an aesthetic in homage to the Burroughs and IBM OSes.
</center>  
         <blockquote style="position: relative;">
         <span style="z-index: 100;position: relative;font-size: 10px;">&sup1; Resource limits are dynamically set except for F class which always gets the system limit
              if there is one which for billable accounts is the set spend limit.</i><br>
         &sup2; Set parameters for your cloud provider in the DS Dashboard control blocks in your DCMS account or use system inventory.<br>
         </span>
         </span>
         </blockquote>
         </blockquote>
    <button type="button" class="collapsible"> &nbsp; &nbsp;  &nbsp; more ...</button>
<blockquote style="position:relative;left:-5px;top:-10px;z-index:200;font-size:8px;">&dagger; This page and <a href="https://devops1.sameboat.network/About_DCP">About DCP</a>
    <div class="content">
are top level specifying stories,  to the extent feasible, cog arch internals aren't divulged as I mean them to be adaptable without notice, everything else is source accessible by DevOps users.</blockquote>
        <blockquote>
<button title="show/hide the story details" type="button" class="collapsible"><div id="tldrDet">tl;dr</div></button>  
        MCP shells may have any one of the following natures:
<div class="content">
        <ul>
<blockquote style="width: 70%;font-weight: bold;" >
        <li>shcl, common lisp nature</li>
<center>MCPCMS presents the "</html>[[:en:CANDE|CANDE]]<html>" MCS&sup3; to DS users upon connect to DCP</center>
        <li>HsShellScript, haskell nature</li>
<blockquote style="width: 80%;font-weight: bold;">
        <li>upsh, prolog nature</li>
 
        <br>or<br>
  AKPERSONs (see <a href=/eg/index.php?title=AKPERSON>Entitlements</a>), and whitelisted <a style="color: lime;"  href=https://commons.sameboat.network/stationHistory>stations</a>  
        <li><p style="width: 60%;">CMS, the default nature for mcpcms, which is bash modified for DCP/MCP/WFL.<br><br> Only mcpcms can be set in /etc/shells, the others execute as
  can connect with the link above or in a running MCP <a style="color: lime;" href=https://eg.meansofproduction.biz/eg/index.php/WFL/DCP_SPO>SPO</a> .
            commands in a mcp shell, and only shcl gives a live default command line like fish under standard bash. The other two require a user supplied
            hs or pl script, and are not general interactive shells unless that script provides that functionality.</p> </li>
</blockquote>
        </ul>
In a tx-authenticated user session, should result in a mcpcms <a href=https://devops1.sameboat.network/roles>session role</a> sensitive cell prompt.<br>
        <blockquote>
In the wild, presents a form for the FQDSA parameters for a manual connect to a DCP determined cell.<br>
        Shells have either MCP (single linux host) or DCP (whole cluster) scope, ip shells are limited to the former.<br> GHC and SWI are assumed
SPO AX msgs to your MCP ODT or SPO message queue will be expected to come from the cell.
        for haskell and prolog, but lisp can be any combination of Allegro, CCL, (user supplied) or sbcl (the default).
<hr width="50%" style="float: left;">
        </blockquote>
</blockquote>   
        The CMS level is always present, the others are outer shells adapted for the domain space knowledge engineering context.<br>
<span style="font-size: 10px;position:relative;left:150px;">&sup3; MCS: a message control subsystem of a MCP.</span>
        Although adapted for MCP, I try to keep them close to the standard versions, as generic lang specific outer shells.<br>
<center class=plainlinks>
        My preferred <a href=https://en.wikipedia.org/wiki/Domain_engineering>DDD</a> uses the three HOLs&sup2; listed but the bash level is appropriate for
  <a style="background-color:aliceblue;" href=https://meansofproduction.biz/pub/MCP15SystemCommands.pdf> MCP 15 System Commands </a><br>
        shell ops with MCP unaware software, CANDE, and WFL jobs.
  <a style="background-color:aliceblue;" href=https://en.wikipedia.org/wiki/User:Lycurgus/MoCA#Burroughs_CANDE> MCP 3.3 CANDE Reference Card</a><br>
        </blockquote>
  <a style="background-color:aliceblue;" href=https://meansofproduction.biz/pub/CANDE-MCP-14.pdf> MCP 14 CANDE Reference</a>
  <blockquote>
</center>
        SYSTEM/CMS is the prototypical CL/MCS. It is meant to be a generalization of
<img title="B6700 with memory which was wire wrapped creating for me a sense of sail rigging when the skins were off."
        <a href=https://en.wikipedia.org/wiki/CANDE>CANDE</a> and <a href=https://en.wikipedia.org/wiki/Conversational_Monitor_System>VM/CMS</a> .
src=https://meansofproduction.biz/images/1975-Burroughs-6700-Computer.jpg width=200 align=right style="position:relative;top:-160px;right:75px;">
        <br><br>
<blockquote>
        While initially the linux bash capable terminal is supported, ODT and 3270 support are intended.
<b>ODT MCS</b> 
        </blockquote>
  <blockquote>
    </div>
    MCP-CMS connects via a MCS which is usually the CANDE MCS although more generally any MCS with the ODT property can connect for an Operator Display Terminal session with MCP/DCP.
        <blockquote style="position: relative;top: -60px;"> Version/Schedule Milestone Roadmap
    Upon <b>mcpcms</b> connect, like the lang specific subshells in the next &sect;, an additional command <b>cande</b> can be used which will process the MCP-CMS system commands
        <ul>
    analogous to those in the MCP 15 document above.  
        <li>2020-11-15 SSI PoC, proto CL/MCS and CMS MCS, ansible provisioning from C-Liu backend.</li>
  <br><br>
        <li>1.1 First level maturity of base lisp MCP codeset. </li>
  In Burroughs MCP, the CANDE MCS was used ubiquitously. The ODTs had a full screen editor which just fed lines to CANDE. Commands are implemented per need and some such
        <li>1.2 AI legacy systems salvage and integration complete and devops ready in the shell service.</li>
as the text edit functions likely never will be in <b>mcpcms cande</b>. CANDE is used in current Unisys MCP but neither it nor the MCS have their former prominence
        <li>2.0 Mature DDD/KEE product.</li>
especially when the OS runs as a Windows service.
        </ul>
  </blockquote>
<hr>
  <b>mcpcms</b>
&sup2; <span style="font-size: 10px;">High Order Language</span>
  <blockquote>
         </blockquote>
    The CMS in MCP-CMS is inspired by VM/CMS and the MCP system command level of the CANDE MCS and the ODT session corresponds to the VM CMS command level.
    A modified <b>zsh</b> serves as the analog of Burroughs CANDE as one of several shells invocable in an ODT.
    Upon successful connect, the launch link above results in an ODT session with this shell in the browser having supplied a parameter to the connect to invoke <b>cande</b>.
    Aside from adaptations for the MCP machine model, it is just zsh however and the following alternates derived from existing pkgs to support the KEE:
    <ul><li><b>CANDE shcl</b> </li><li><b>CANDE HSH</b></li><li><b>CANDE upsh</b></li></ul>
    which work with CL, HS, and PL MCP blocks, respectively. Here the CANDE prefix indicates the received pkgs are modified to run as commands from the CANDE/zsh MCS. While in general Lisp and Prolog implementations can vary in the BootKEE, these lang shells are intrinsic in DCP. In the BootKEE epoch, before DCP WFL is generally available DCP is programmed as jobs via these shells .
  <b>mcpcms</b> can be accessed from various connect points such as the launch link above in an AKPERSONs session.
 
<b>mcpcms</b> scope may vary from MCP cell/container to a whole DCP/DS context. Cloud compute resources are dynamically provisioned using either system
inventory or user supplied provisioning credentials with supported cloud vendors. Later MCP for Mac and Windows will allow cells there and  the last free version of VM/CMS under
    Hercules will run as an autonomous MCP subject.
  </blockquote>
<b>DCP WFL</b>
<blockquote>
  is eponymous upon the <a style="background-color:aliceblue;"  href=https://meansofproduction.biz/pub/mcpWFL.pdf>Burroughs WFL</a> with some preserved semantics and aesthetics but
  only superficially similar  &mdash;
<ul>
<li>The Job is not the top level construct. The Job or App is the closest construct to heritage WFL in my WFL but with ops on my MCP rather than the Burroughs/Unisys one and expansion beyond
  batch ops.<li>
<li>In my WFL, Namespace, Database, and then App/Job is the scope hierarchy. Namespace and Database are elements of a domain space and may span multiple MCP instances but Jobs are limited to
  a single MCP.</li>
</ul>
  In Burroughs systems, WFL didn have as high a profile as IBM JCL, the main punch of the overall system, in an industry installation, would be its system of  transactions and these ran from
  a database which the Burroughs architecture delivered seamlessly without WFL to terminals as a special db stack. DCP WFL has these design goals
  <ol>
    <li>provide an clear/auditable text for DCP operations as a complement to</li>
    <li>the MCP which provides the real machine model and</li>
    <li>with code blocks containing text of other supported langs</li>
  </ol>
  DCP WFL is developed in a bottom up manner from this statement of design intent without any spec other than the heritage systems and the DCP/MCP concept. In the initial releases
  there will be no documentation outside of story text, and the top level pamphlets. Code cannot move into WFL blocks from its free form before the 1.2.0 milestone. In standard Algol convention
    &#8470; 3 above is implemented by these block variants with the same delimitation by
  BEGIN and END bounded blocks:
    <center>
      <div style="font-size:10px;position:relative;left:0px;"><b>MCP Block Types</b></div>
    <table border=2 style="color:black;background-color:lemonchiffon;width:600px;">
    <tr style="background-color:black;color:white;font-size:10px;"><td width=125 align=center >WFL Declarator</td><td align=center width=90>Language</td><td align=center
        width=180>Intrinsic&sup1;</td><td align=center width=205>Purpose/Role</td></tr>
   
    <tr style="background-color:white;font-size:10px;"><td colspan=4 align=right>Machine Facing &nbsp; &nbsp; </td></tr>
    <tr><td>None&sup2;</td><td align=center>MINT 3</td><td align=center>Yes</td><td><font size=1>MTRANS WFL Compiler</font></td></tr>
    <tr><td><i>N/A</i></td><td align=center>Smalltalk&sup2;</td><td align=center>No</td><td>GUI and Object Model</td></tr>
    <tr><td>SUBROUTINE</td><td align=center><a href=https://www.gnu.org/software/marst/><b>A60</b></a></td><td align=center>Yes</td><td>JCL Procedures</td></tr>
    <tr><td>UNIT</td><td align=center><a style="background-color:aliceblue;"  href=https://jmvdveer.home.xs4all.nl/en.algol-68-genie.html><b>A68</b></a>
        </td><td align=center>Yes</td><td>MCP Libraries</td></tr>
 
<tr style="background-color:white;font-size:10px;"><td colspan=4 align=right>Enterprise Facing &nbsp; &nbsp;</td></tr>
    <tr><td>CL</td><td align=center>Common Lisp</td><td align=center>Yes (sbcl-librarian)</td><td>Lateral R</td></tr>
    <tr><td>HS</td><td align=center>Haskell </td><td align=center>Yes (ghc-pkg)</td><td><font size=1>Enterprise Applications</font></td></tr>
    <tr><td align=left>JOB</td><td align=center>WFL </td><td align=center>Yes</td><td> JCL</td></tr>
    <tr><td>LP</td><td align=center>LogTalk</td><td align=center>No</td><td>Lateral L</td></tr>
    <tr><td>PL</td><td align=center>Prolog</td><td align=center>Yes (MQI/pengine)</td><td>Plain Prolog</td></tr>
    </table><font size=1>&sup1;Intrinsic means directly compiled/interpreted by MCP and doesn't require COMPILE or BIND to produce a RUN eligible object title.<br>&sup2;Mint code is monolithic with security by obscurity for some application, database, and namespace elements.</font> &nbsp;&sup3;<font size=1>headless squeak using my cog build for Sista and multi-threading .</font><br>
    </center>
  The SPO image contains a MCP/DCP </html>[[:en:Simula|simulacrum]]<html> as Smaltalk objects that communicate with the real things and whose vm runs in the regular MCP job mix. Enterprise facing means oriented to programming users of the system, Machine facing means me, for my motivation, satisfaction and design intent of real machine independence of the core super-OS as much as in the nominal sense.
  Users can create their own semantic spaces by using WFL and the standard modern high level lang blocks while the MINT and Algol elements are my private programming of DCP/MCP not meant
  for user consumption but visible to satisfy transparency requirements.
  <div style="width:60%;text-align:justify;">
  Procedural WFL is translated from source text to A60/C, then compiled and linked to the Barton machine, or directly interpreted by genie or MINT. Non-WFL blocks are compiled and bound
and used in the concrete context of the DS which they form as extensions of the WFL/B machine.<br><br>
'JCL' means things defined by an M-TRAN phrase grammar which can contain pure MINT blocks but general end use procedures are meant to be in Algol dialects. I dont mean it to be an acronym being both more general than job control and serving as the macro assembler of MCP. MCP thus maintains a distinction between what it and the host machine directly interpret.<br><br>
A Smalltalk code set is part of the system concept and a "WFL workframe" is intended as an IDE and GUI for DCP/MCP (DGUI/SPO) but it is not required for ops and will not be  
available until I've worked it on the basis of the experience of the first working clusters. Separately, I will make a DCP/MCP adaptation based on the available FOSS visual programming pkgs,    and which I am calling DS G based on my experience with LabView/G, and which will be developed before WFL but with intent of later being a fa&ccedil;ade for it .
  </div>
</blockquote><br><br>
  <span style="position:relative;top:-30px;font-size:12px;">The namestyles are in homage to
    <a href=https://en.wikipedia.org/wiki/Burroughs_MCP>MCP</a> and <a href=https://en.wikipedia.org/wiki/Conversational_Monitor_System>VM/CMS</a> mainframe OSes, both still in use
    and Unisys and VM/CMS are trademarks of the IBM and Unisys corporations, respectively. DS MCP as an actually delivered OS is composed of cells (containers) and OS images (nodes)
    running system services and jobs with original code in the KEE langs supported by lower level apps runnable on a nodes kernel OS.  
  </span>
<div style="float:right;text-align:center;font-size:12px;position:relative;left:-125px;top:-240px;width:400px;font-family:Papyrus;" >
  <a href=https://en.wikipedia.org/wiki/Abydos_King_List><img align=right width=400px src=https://meansofproduction.biz/images/kings_list.012.jpg></a>
  <br>The Abydos Kings List  &nbsp; c. -400 &nbsp; to &nbsp; 1400 &nbsp; 公元, &nbsp; Menes &mdash; Seti I
</div>
</blockquote>
</div></div></div></div>
<hr style="position:relative;left:20px;" width=80%>
<img width=150 align=right src=https://juan.ai-integration.biz/xasppage/xasppage.pl?XASPPAGE_STYLE=0&P=MCPCMS>
<div style="position:relative;top:-10px;"><div id="10CC" style="position: relative;text-align:center;height:150px;">
<video id="10C" style="position: relative;top:-10px;" title="Pharoah bids Hebrews glean own straw with same count of bricks, presumably for Pi Rameses. The court snickers, Nefertari and Aaron look to Moise who stalks out." poster="http://meansofproduction.biz/images/TIVlarge.png" controls>
        <source src="https://meansofproduction.biz/pub/tldrMCPWFL.webm" type='video/webm'; />
         <p>No content matching HTML5 video setup!</p>
  </video>
</div></div>
</div></div>
<script>
<script>
var coll = document.getElementsByClassName("collapsible");
var coll     = document.getElementsByClassName("collapsible");
var bText    = document.getElementById("tldrDet");
var video    = document.getElementById("10C");
var vd        = document.getElementById("10CC");
var isPlaying = false;
var i;
var i;


Line 122: Line 218:
     if (content.style.display === "block") {
     if (content.style.display === "block") {
       content.style.display = "none";
       content.style.display = "none";
      bText.innerHTML = "tl:dr";
     } else {
     } else {
       content.style.display = "block";
       content.style.display = "block";
      bText.innerHTML = "collapse";
      vd.style.display = "none";
     }
     }
   });
   });
};
video.addEventListener("ended", function() {
      vd.style.display = "none";
});
video.addEventListener("play", function() {
      isPlaying    = true;
      vd.height    = 800;
      vd.style.top  = "-400px";
      vd.style.left = "-400px";
});
function kill10C() {
if (isPlaying) return;
vd.style.display = "none";
}
}
<!-- window.timeoutID = setTimeout(kill10C,7000); -->
var s = video.style;
s.opacity = 1;
(function fade(){
if (!isPlaying) {(s.opacity-=.025)<0?s.display="none":setTimeout(fade,150)}})();
</script>
</script>
</div>
</html>
</html>