Part validity
This page describes the organizational forces that limit change.  It explains how to overcome them when necessary. 

Power& tradition holding back progress
This page uses an example to illustrate how:
  • A business can gain focus from targeting key customers,
  • Business planning activities performed by the whole organization can build awareness, empowerment and coherence. 
  • A program approach can ensure strategic alignment. 
Be responsive to market dynamics
This page uses the example of HP's printer organization freeing itself from its organizational constraints to sell a printer targeted at the IBM pc user. 
The constraints are described. 
The techniques to overcome them are implied. 
Overcome reactionaries
Primary Navigation

A schematic model of the validity of a part of a test request

Summary
This page looks at how
This page describes the Adaptive Web framework (AWF) test system and the agent programming framework (Smiley) that supports its operation. 
Example test system statements are included.  To begin a test a test statement is loaded into Smiley while Smiley executes on the Perl interpreter. 
Part of Smiley's Perl code focused on setting up the infrastructure is included bellow. 
The setup includes:
  • Loading the 'Meta file' specification,
  • Initializing the Slipnet, and Workspaces and loading them
  • So that the Coderack can be called. 
The Coderack, which is the focus of a separate page of the Perl frame then schedules and runs the codelets that are invoked by the test statement structures. 
Smiley
processes the statement, such as a test request, to ensure that each part of the statement is valid. 
Smiley does this through the operation of a part codelet which indirectly sponsors the modeling of the parts of the statement. 
The modeling itself is performed by model codelets
The part codelet synchronizes with the completion of the modeling. 
The part evaluator's signal along with the associated operons is an addressable control structure which is used in biological cells to control access to other regions of the DNA. 
and subgroup schematic sequences are included
The group models' Slipnet associations are included
The codelets and supporting functions are included
Introduction
A test request statement can be
The agents in complex adaptive systems (CAS) must model their environment to respond effectively to it.  Samuel modeling is described as an approach. 
modeled
by a complex adaptive system (
This page introduces the complex adaptive system (CAS) theory frame.  The theory is positioned relative to the natural sciences.  It catalogs the laws and strategies which underpin the operation of systems that are based on the interaction of emergent agents. 
John Holland's framework for representing complexity is outlined.  Links to other key aspects of CAS theory discussed at the site are presented. 
CAS
) using operon is an addressable control structure which is used in biological cells to control access to other regions of the DNA. 
control of
Plans emerge in complex adaptive systems (CAS) to provide the instructions that agents use to perform actions.  The component architecture and structure of the plans is reviewed. 
schemata
to coordinate
Plans are interpreted and implemented by agents.  This page discusses the properties of agents in a complex adaptive system (CAS). 
It then presents examples of agents in different CAS.  The examples include a computer program where modeling and actions are performed by software agents.  These software agents are aggregates. 
The participation of agents in flows is introduced and some implications of this are outlined. 
agents
(codelets function list) assessments. 
Any structure can be deployed into an active
This page describes the Adaptive Web framework (AWF) test system and the agent programming framework (Smiley) that supports its operation. 
Example test system statements are included.  To begin a test a test statement is loaded into Smiley while Smiley executes on the Perl interpreter. 
Part of Smiley's Perl code focused on setting up the infrastructure is included bellow. 
The setup includes:
  • Loading the 'Meta file' specification,
  • Initializing the Slipnet, and Workspaces and loading them
  • So that the Coderack can be called. 
The Coderack, which is the focus of a separate page of the Perl frame then schedules and runs the codelets that are invoked by the test statement structures. 
Smiley
This page describes the Copycat Workspace. 
The specialized use of the Workspace by the adaptive web framework's (AWF) Smiley is discussed. 
How text and XML are imported into the Smiley Workspace is described. 
Telomeric aging of schematic structures is introduced. 
The internal data structure used to represent the state of each workspace object is included. 
The Workspace infrastructure functions are included. 
Workspace
.  Smiley is an agent programming framework (
This presentation applies complex adaptive system (CAS) agents to computer programming. 
see presentation
).  A Workspace is active if it has group scout codelets exploring the Workspace. 
Modeling of the validity of each part within the statement by model codelets
Each test statement is composed of parts.  A part codelet (evaluator, builder) manages the assessment of each parts
This page looks at how Smiley processes the statement, such as a test request, to ensure that each part of the statement is composed of groups. 
Smiley does this through the operation of a part codelet which indirectly sponsors the modeling of the parts of the statement. 
The modeling itself is performed by model codelets. 
The part codelet synchronizes with the completion of the modeling. 
The part evaluator's signal along with the associated operons and subgroup schematic sequences are included. 
The group models' Slipnet associations are included. 
The codelets and supporting functions are included. 
wholeness
, validity,
This page looks at how Smiley processes the statement, such as a test request, to ensure that each part of the statement is constrained. 
Smiley does this through the operation of a part codelet which indirectly sponsors the modeling of the parts of the statement. 
The modeling itself is performed by model codelets. 
The part codelet synchronizes with the completion of the modeling. 
The part evaluator's signal along with the associated operons and subgroup schematic sequences are included. 
The group models' Slipnet associations are included. 
The codelets and supporting functions are included. 
constraints
and
This page looks at how Smiley processes the statement, such as a test request, to ensure that each part of the statement is integral. 
Smiley does this through the operation of a part codelet which initiates a program to assess the integrity of the parts. 
The modeling itself is performed by model codelets. 
The group models' Slipnet associations are included. 
The codelets and supporting functions are included. 
integrity
. Partvalid coordinates the validity assessment for the part builder.  It sends the
Agents use sensors to detect events in their environment.  This page reviews how these events become signals associated with beneficial responses in a complex adaptive system (CAS).  CAS signals emerge from the Darwinian information model.  Signals can indicate decision summaries and level of uncertainty. 
signal
sequence 'model, schema, partscategory, subject|object|verb, groupvalid' to the nucleus, a membrane bounded module in a eukaryotic cell where the DNA is encapsulated and operated on. 

In retrospect the structure of the part codelet is flawed since it can't become
This page discusses the mechanisms and effects of emergence underpinning any complex adaptive system (CAS).  Key research is reviewed. 
emergent
.  Its internal structure and synchronization methods reflect the 'standard progamming, John was a brilliant Hungarian mathematician who published the earliest paper specifying architecture for digital computing.  It ensured this computing architecture was not patentable.  The architecture has a central processing unit (CPU), random access storage addressable by the CPU and a sequencer.  The architecture encourages a serial software architecture that matches the logic of the sequencer and processing operations on program and data.  Von Neumann, his history, computing architecture and some alternative architecture are reviewed by Melanie Mitchell. 
'
Plans emerge in complex adaptive systems (CAS) to provide the instructions that agents use to perform actions.  The component architecture and structure of the plans is reviewed. 
meme
.  Later adaptive web framework (AWF) processes perform the same style of operation using potentially
This page discusses the mechanisms and effects of emergence underpinning any complex adaptive system (CAS).  Key research is reviewed. 
emergent
sequencing and synchronization schemata and
Representing state in emergent entities is essential but difficult.  Various structures are used to enhance the rate and scope of state transitions.  Examples are discussed. 
structurally enhanced
codelets such as the cassert evaluator and builder
The part validity model codelets
The codelet builder mactsverbbuilder specifies an abstract model of a simple verb which is mapped to the application's specific language by the Meta file specification is loaded by the adaptive web framework's (AWF) Smiley.  It defines the application system's basic rules, its keywords and their properties and the form of the assertion or implementation statement the application uses.   and implemented in Perl is Larry Wall's programming language.  It is designed to make easy tasks easy and hard tasks possible.  It has powerful text processing features and can interpret a string of text as code.   code running on the
This page describes the Copycat Coderack. 
The details of the codelet architecture are described. 
The specialized use of the Coderack by the adaptive web framework's (AWF) Smiley is discussed. 
The codelet scheduling mechanism is discussed. 
A variety of Smiley extensions to the Coderack are reviewed. 
The Coderack infrastructure functions are included. 
Coderack
.  It describes in the verb
This page describes the Copycat Workspace. 
The specialized use of the Workspace by the adaptive web framework's (AWF) Smiley is discussed. 
How text and XML are imported into the Smiley Workspace is described. 
Telomeric aging of schematic structures is introduced. 
The internal data structure used to represent the state of each workspace object is included. 
The Workspace infrastructure functions are included. 
Workspace
object (WSO) its recommendation -> success (goodsverb model), non-conforming part (stop model) or disinterest in this verb (dropsverb model).  For the
This page discusses a complex adaptive system (CAS) implementation of a genetic algorithm (GA), Melanie Mitchell's robot-janitor built as a set of Copycat codelets integrated using agent-based programming.  The improvement in the operation of the robots over succeeding generations of applying the GA is graphed. 

The CAS that generated, and operated the robot is reviewed, including the implementation details and codelet operational program flow, and the challenges and limitations of this implementation. 

The schematic strings which make up the robot's genotype, as well as the signals which are sent to the nucleus of the robot's agents so that the agents can deploy the appropriate response strings (which activate codelets) are listed.  The Slipnet configuration required by the system to associate the schematic strings with programmatic forces (codelets) is also listed.  The codelets and supporting perl are also listed. 

In the conclusion the limitations of the robot-janitor abstraction in studying emergence and creative evolution are discussed and alternative experimental frameworks are proposed.  One such, the schematic cell is the subject of a separate page in this web frame. 

robot-janitor
application the signal associates vbtmactsverbbuildermresddrbuilder models the resources associated in the simple verb's subject and object.  It describes in its part WSO (subject or object) its recommendation -> success (goodresddr model), non-conforming part (stop model) or disinterest in this verb (dropmresddr model).   For the robot-janitor application the signal associates vbtmres(s|o) builder. 

The builder mmcvbuilder specifies a model of a multi-action verb.  It describes in the verb WSO its recommendation -> success (goodmverb model), non-conforming part (stop model) or disinterest in this verb (dropmverb model).   mmcrbuilder for the related subject resource which is required to be addressing a source type record, (It describes in its part WSO its recommendation -> success (goodresddr model), non-conforming part (stop model) or disinterest in this verb (dropmresmc model).  ) & mmctbuilder is a model for its object which is valid if focused on a target type list.  It describes in its part WSO its recommendation -> success (goodresddr model), non-conforming part (stop model) or disinterest in this verb (dropmresmc model).  The robot-janitor application does not have multi-action verbs. 

The builder mactcverbbuilder specifies a model of a case, in a high level computing language a case, or switch, statement allows the specification of a series of alternative labeled items.  Any of these labels can be assigned to the case selector.  On entry to the case statement the compiler will allocate a jump to the item that is associated with a label that has the same value as is currently assigned to the case selector. 
specific verb.  It describes in its part WSO its recommendation -> success (goodcverb model), non-conforming part (stop model) or disinterest in this verb (dropcverb model).  mcssubbuilder specifies models for the related simple case subject.  It describes in its part WSO its recommendation -> success (goodresddr model), non-conforming part (stop model) or disinterest in this verb (dropcresddr model).  mcsobbuilder models the simple case object.  It describes in its part WSO its recommendation -> success (goodresddr model), non-conforming part (stop model) or disinterest in this verb (dropcresddr model).  The robot-janitor application does not have case specific verbs. 

The builder msormbuilder specifies a model of a multi-group part describing any non-grouped WSO {outgroup}, and labelling the part as {multiple} or {single} group, one of the grouping, in Copycat grouping codelets can group two or more bonded Workspace objects (WSO) together.  In effect grouping adjusts the system to reflect the presence of a chemically active molecule in the molecules local environment. 
descriptors must be present along with the part's verb|subject|object models for part validity to be complete.  It describes in its part WSO its recommendation -> success (single or multiple model).  For the robot-janitor application the signal associates vbtmsormbuilder
Part validity
A subject, or object, part reports valid if the subject|object WSO contains a {valid} or {goodresddr} {model} descriptor. 
A verb part reports valid if the verb WSO contains a {goodsverb}, { goodcverb} or a {goodmverb} {model} descriptor. 
Indirect validity modeling response to the part builder's signal
The valid group operon is an addressable control structure which is used in biological cells to control access to other regions of the DNA. 
has a subgroup used as one model of the validity of a verb's structure in a test request.  
The validity operon
The schematic signal sequence named nlmbindtomsiggv has been
This page describes the Smiley infrastructure that supports the associative binding of schematic strings to codelets defined in the Meta file and Slipnet. 
The infrastructure supporting the associations is introduced. 
The role of Jeff Hawkins neocortical attributes is discussed. 
Relevant Slipnet configurations are included. 
The codelets and supporting functions are included. 
associated
in the
This page describes the Copycat Slipnet. 
The goal of the Slipnet is reviewed. 
Smiley's specialized use of the Slipnet is introduced. 
The initial Slipnet network used by the 'Merge Streams' and 'Virtual Robot' agent-based applications is setup in initchemistry and is included. 
The Slipnet infrastructure and initialization functions are included. 
Slipnet
with a signal type (mpsignal).
The valid model subgroup schemata
The transfers of RNA (RNA), a polymer composed of a chain of ribose sugars.  It does not naturally form into a paired double helix and so is far less stable than DNA.  Chains of DNA are converted by transcription into equivalently sequenced messenger m-RNA.  RNA also provides the associations that encode the genetic code.  Transfer t-RNAs have a site that maps to the codon and match the associated amino-acid.  Stuart Kauffman argues that RNA polymers may be the precursor to our current DNA based genome and protein based enzymes.  In the adaptive web framework's (AWF) Smiley we use a similar paradigm with no proteins. 
like specific subgroups from the nuclear
This page describes the Copycat Workspace. 
The specialized use of the Workspace by the adaptive web framework's (AWF) Smiley is discussed. 
How text and XML are imported into the Smiley Workspace is described. 
Telomeric aging of schematic structures is introduced. 
The internal data structure used to represent the state of each workspace object is included. 
The Workspace infrastructure functions are included. 
Workspace
to the statement's Workspace include:

Context of mps models
The RNA (RNA), a polymer composed of a chain of ribose sugars.  It does not naturally form into a paired double helix and so is far less stable than DNA.  Chains of DNA are converted by transcription into equivalently sequenced messenger m-RNA.  RNA also provides the associations that encode the genetic code.  Transfer t-RNAs have a site that maps to the codon and match the associated amino-acid.  Stuart Kauffman argues that RNA polymers may be the precursor to our current DNA based genome and protein based enzymes.  In the adaptive web framework's (AWF) Smiley we use a similar paradigm with no proteins. 
like Workspace schemata must provide context such as the type of part (verb, subject or object) that the codelet can work on.  The schemata are structured in such a way that the type of part is specified at the third WSO in the schematic string.  Hence when the schema group completes the sps signalled codelet will be able to leverage this context with the help of getcontext and selsaltypedwso

Synchronization of part validity modeling and decision making
Until a part is described as valid it will not be processed further since partconstrained waits for the presence of descriptions: goodresddr, goodsverb, goodcverb or goodmverb in the part Workspace object (WSO). 



awfpbs testing development schemata
The following schematic strings are loaded by convbws.  They are group schemata which are associated with nuclear agents (nuclabm evaluator & builder) which respond to codelet signals by deploying the included sub-group schemata to the active
This page describes the Copycat Workspace. 
The specialized use of the Workspace by the adaptive web framework's (AWF) Smiley is discussed. 
How text and XML are imported into the Smiley Workspace is described. 
Telomeric aging of schematic structures is introduced. 
The internal data structure used to represent the state of each workspace object is included. 
The Workspace infrastructure functions are included. 
Workspace


The Meta-keyword <comment> toggles convbws loading between comment mode and processing active <keywords>.  In the following the initial <comment> switches convbws into active mode. 

The active keywords include meta-keyword instructions for convbws, such as <rhlmspg> and <memgroup> and schematic keywords that will be processed during nuclear operations.  The first keyword of a schematic string also identifies the start of the group and the start of the deployed subgroup. 

The schematic groups listed include sub-group deployment schemata for codelets that are typically useful during development is a phase during the operation of a CAS agent.  It allows for schematic strategies to be iteratively blended with environmental signals to solve the logistical issues of migrating newly built and transformed sub-agents.  That is needed to achieve the adult configuration of the agent and optimize it for the proximate environment.  Smiley includes examples of the developmental phase agents required in an emergent CAS.  In situations where parents invest in the growth and memetic learning of their offspring the schematic grab bag can support optimizations to develop models, structures and actions to construct an adept adult.  In humans, adolescence leverages neural plasticity, elder sibling advice and adult coaching to help prepare the deploying neuronal network and body to successfully compete. 
: schbind, sloc, slistkw, skipwso, namest, srcdkw, endrcdkw, endlistkw, and unbind.


smpartvalid signalled meme
The partvalid function's
This page discusses how Smiley provides signalling to its agent-based applications. 
Alternative strategies for initiating the signalling are reviewed. 
The codelets and supporting functions are included.
signal
(<model> <schema> <partscategory> (<subject>| <object>| <verb>) <groupvalid>) is associated with a
Plans emerge in complex adaptive systems (CAS) to provide the instructions that agents use to perform actions.  The component architecture and structure of the plans is reviewed. 
meme
group.  The nuclabm nuclear codelet (builder) matches the signal with all the identically named nuclear Workspace deployed meme groups and heuristically selects subgroup schematic strings from the complete set to send for deployment.  The statement schematic structures subject| object| verb
This page describes the Copycat Slipnet. 
The goal of the Slipnet is reviewed. 
Smiley's specialized use of the Slipnet is introduced. 
The initial Slipnet network used by the 'Merge Streams' and 'Virtual Robot' agent-based applications is setup in initchemistry and is included. 
The Slipnet infrastructure and initialization functions are included. 
Slipnet
description associates codelet forces (nuclabmevaluator) with the signals. 

 



<comment> (<rhlmspg> <memgroup> <model> <schema> <partscategory> <subject> <groupvalid> <model> <partscategory> <subject> <jhlabel> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <subject> <groupvalid> <model> <partscategory> <subject> <jhlabel> <mcgroupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <subject> <groupvalid> <model> <partscategory> <subject> <case> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <subject> <groupvalid> <model> <partscategory> <subject> <multiple> <groupvalid> </memgroup> </rhlmspg> )

<comment> (<rhlmspg> <memgroup> <model> <schema> <partscategory> <object> <groupvalid> <model> <partscategory> <object> <jhlabel> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <object> <groupvalid> <model> <partscategory> <object> <jhlabel> <mcgroupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <object> <groupvalid> <model> <partscategory> <object> <case> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <object> <groupvalid> <model> <partscategory> <object> <multiple> <groupvalid> </memgroup> </rhlmspg> )<comment> <br>

<comment> (<rhlmspg> <memgroup> <model> <schema> <partscategory> <verb> <groupvalid> <model> <partscategory> <verb> <jhlabel> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <verb> <groupvalid> <model> <partscategory> <verb> <case> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <verb> <groupvalid> <model> <partscategory> <verb> <jhlabel> <mcgroupvalid> <model> <partscategory> <iterator> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <verb> <groupvalid> <model> <partscategory> <verb> <multiple> <groupvalid> </memgroup> </rhlmspg> )<comment> <br>





comment (<rhlmspg> <memgroup> <model> <schema> <partscategory> <subject> <groupvalid> <model> <partscategory> <subject> <jhlabel> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <subject> <groupvalid> <model> <partscategory> <subject> <jhlabel> <mcgroupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <subject> <groupvalid> <model> <partscategory> <subject> <case> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <subject> <groupvalid> <model> <partscategory> <subject> <multiple> <groupvalid> </memgroup> </rhlmspg> )

comment (<rhlmspg> <memgroup> <model> <schema> <partscategory> <object> <groupvalid> <model> <partscategory> <object> <jhlabel> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <object> <groupvalid> <model> <partscategory> <object> <jhlabel> <mcgroupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <object> <groupvalid> <model> <partscategory> <object> <case> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <object> <groupvalid> <model> <partscategory> <object> <multiple> <groupvalid> </memgroup> </rhlmspg> ) comment <br>

comment (<rhlmspg> <memgroup> <model> <schema> <partscategory> <verb> <groupvalid> <model> <partscategory> <verb> <jhlabel> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <verb> <groupvalid> <model> <partscategory> <verb> <case> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <verb> <groupvalid> <model> <partscategory> <verb> <jhlabel> <mcgroupvalid> <model> <partscategory> <iterator> <groupvalid> </memgroup> </rhlmspg> )
(<rhlmspg> <memgroup> <model> <schema> <partscategory> <verb> <groupvalid> <model> <partscategory> <verb> <multiple> <groupvalid> </memgroup> </rhlmspg> ) comment <br>

#
    my ($pconc, $jhlsid);
# nlmbindtomsiggv
# setup the binding string for the multi path signal to initiate validity model - model codelets launch nuclabmcodelets which ignore the concept as long as it had an evaluator

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
# next want to setup the operon
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {mpsignal}, $pconc, 2, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {schema}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {subject}, $Awfif::memes-> {snnh} {groupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {nuclabmevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
# nlmbindtomsiggvv
    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
# next want to setup the operon
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {mpsignal}, $pconc, 2, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {schema}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {groupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {nuclabmevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
# nlmbindtomsiggvo
    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
# next want to setup the operon
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {mpsignal}, $pconc, 2, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {schema}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {object}, $Awfif::memes-> {snnh} {groupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {nuclabmevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
# mrddrbindtomsigs
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 7, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {subject}, $Awfif::memes-> {snnh} {jhlabel}, $Awfif::memes-> {snnh} {groupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {mresddrevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);
# mrddrbindtomsigo
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 8, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {object}, $Awfif::memes-> {snnh} {jhlabel}, $Awfif::memes-> {snnh} {groupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {mresddrevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);
# mcssubbindtomsigs
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 7, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {subject}, $Awfif::memes-> {snnh} {case}, $Awfif::memes-> {snnh} {groupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {mcssubevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);
# mcsobbindtomsigo
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 8, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {object}, $Awfif::memes-> {snnh} {case}, $Awfif::memes-> {snnh} {groupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {mcsobevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);
# mactsverbbindtomsigv
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 9, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {jhlabel}, $Awfif::memes-> {snnh} {groupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {mactsverbevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);
# mactcverbbindtomsigv
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 9, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {case}, $Awfif::memes-> {snnh} {groupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {mactcverbevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);
# mmcrbindtomsigs
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 10, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {subject}, $Awfif::memes-> {snnh} {jhlabel}, $Awfif::memes-> {snnh} {mcgroupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {mmcrevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);
# mmctbindtomsigo
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 11, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {object}, $Awfif::memes-> {snnh} {jhlabel}, $Awfif::memes-> {snnh} {mcgroupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {mmctevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);
# mmcvbindtomsigv
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 12, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {jhlabel}, $Awfif::memes-> {snnh} {mcgroupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {mmcvevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);
# msormbindtomsigs
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 19, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {subject}, $Awfif::memes-> {snnh} {multiple}, $Awfif::memes-> {snnh} {groupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {msormevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);
# msormbindtomsigo
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 20, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {object}, $Awfif::memes-> {snnh} {multiple}, $Awfif::memes-> {snnh} {groupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {msormevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);
# msormbindtomsigv
# & a label for a sps indirectly from model via $pconc

    $Awfif::memes-> {maxoper}++; $jhlsid = 0;
    $pconc = Awfif::pconc ($Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [0], $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnc} [$Awfif::memes-> {snnh} {model}] [1], 8, $Awfif::memes-> {currentwsbi});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {attrib}, Awfif::addjhlst ($Awfif::memes-> {snnh} {spsignal}, $pconc, 21, $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc], $pconc, undef(), undef(), undef(), 't'), $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    &Awfif::addjhlattribs ($pconc, $Awfif::memes-> {snnh} {model}, $Awfif::memes-> {snnh} {partscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {multiple}, $Awfif::memes-> {snnh} {groupvalid});
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$pconc] = Awfif::newnlink ($Awfif::memes-> {snnh} {evaluator}, $Awfif::memes-> {snnh} {msormevaluator}, $pconc,
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$pconc]);
    $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}
      [$Awfif::memes-> {snnh} {model}] = Awfif::newnlink ( $Awfif::memes-> {snnh} {cinstance},$pconc,$Awfif::memes-> {snnh} {model},
                  $Awfif::memes-> {snw} [$Awfif::memes-> {currentwsbi}]-> {snnl}[$Awfif::memes-> {snnh} {model}]);

Functions

#
sub partvalid {#
    my($myli, $parti)=@_;
    my ($i, $i2, $valid, $giveup );

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      my ($pr);
      $pr = $Awfif::memes-> {currentwsbi};
      print ("partvalid myli $myli ws $pr ");
      $pr = $Awfif::memes-> {snnih} {wsbasetype ($parti)};
      print (" i $pr($parti) ");
      $pr = $Awfif::pcache-> {p} [$Awfif::memes-> {currentwsbi}];
      print ("p $pr ");
      };
# updated for merged workspaces
# partvalid is called within part codelet As such it will assume the part has setup the pcache

    $valid = '';
    $giveup = '';
    $i2 = 0;
    if ($Awfif::pcache-> {p} [$Awfif::memes-> {currentwsbi}] != 0) {# there are parts
# see if the modelling still needs to agree this part is valid
      if ((!($valid = (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {valid}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model})
        && ((findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {single}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}))
          or (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {multiple}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}) ) ) ) ))
      && (!($valid = (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {goodresddr}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model})
        && ((findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {single}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}))
          or (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {multiple}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}) ) ) ) ))
      && (!($valid = (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {goodsverb}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model})
        && ((findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {single}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}))
          or (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {multiple}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}) ) ) ) ))
      && (!($valid = (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {goodmverb}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model})
        && ((findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {single}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}))
          or (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {multiple}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}) ) ) ) ))
      && (!($valid = (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {goodcverb}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model})
        && ((findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {single}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}))
          or (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {multiple}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}) ) ) ) ))
      && ((!($giveup = findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}))) )
      && ((!($giveup = findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {dropopcheck}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}))) )
      && ((!($giveup = (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {dropmverb}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model})
        && findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {dropsverb}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model})
        && findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {dropcverb}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}) ))) )
      && (findbond ($Awfif::wsol-> {l} [ awsoadr ($parti)] [2], $Awfif::memes-> {snnh} {whole}, wsbasetype ($parti), $Awfif::memes-> {snnh} {model}))
      ){
# validate the part

        if ((!$giveup) && (!$valid)) {#
# request modelling
          my ($labcount, $sigcount, @lomatchs, @lola, @loconcs, @lostrts, @loends, @logb, @loge);
          my (@lab);
          $labcount = 0;

          $labcount = labload (\@lab, $labcount, $Awfif::memes-> {snnh} {model});
          $labcount = labload (\@lab, $labcount, $Awfif::memes-> {snnh} {schema});
          $labcount = labload (\@lab, $labcount, $Awfif::memes-> {snnh} {partscategory});
          $labcount = labload (\@lab, $labcount, wsbasetype ($parti));
          $labcount = labload (\@lab, $labcount, $Awfif::memes-> {snnh} {groupvalid});

          $sigcount = labinv2 ($myli, \@lab, $labcount, \@lomatchs, \@lola, \@loconcs, \@lostrts, \@loends, \@logb, \@loge, 'notoporstbinding');
# apply the linking function of group completion
# if the groups labels result in a match with a signal then raise the signal
#

          if ($sigcount > 0) {
            for ($i = 0; $i < $sigcount; $i++) {
              if ($lomatchs[$i]) {#there is a link launch the model scout
# unless this is an operon

                if (($Awfif::jhls-> {l} [$lola[$i]][4] != $Awfif::memes-> {snnh}{operon}) && ($Awfif::jhls-> {l} [$lola[$i]][4] != $Awfif::memes-> {snnh}{stbinding}) && ($Awfif::jhls-> {l} [$lola[$i]][4] != $Awfif::memes-> {snnh}{subpstbinding})) {

                  &itcsuse ();
                  $Awfif::clp = ();

                  if ((defined($myli)) && ((!defined($Awfif::codelet-> {l} [$myli] [13])) or ($Awfif::codelet-> {l} [$myli] [13] == 0)) && (( $Awfif::wsol-> {l} [awsoadr ($parti)] [8] != 0)
                  or ($Awfif::wsol-> {l}[awsoadr ($parti)][ $Awfif::memes-> {wsologucount}] != 0))) {&break()};#*** submacrok ***#
                  $Awfif::clp-> {log} = $Awfif::codelet-> {l} [$myli][13];
                  $Awfif::clp-> {urgency} = ($Awfif::codelet-> {l} [$myli][3] * $Awfif::memes-> {evlaunchm});
                  if ($Awfif::codelet-> {l}[$myli][19] ne '') {

                    $Awfif::clp-> {wsi} = $Awfif::codelet-> {l}[$myli][19];
                    }#wsi set
                  else {

                    $Awfif::clp-> {wsi} = $Awfif::memes-> {currentwsbi};
                    };
                  $Awfif::clp-> {strategy} = "tmodelscout";
                  $Awfif::clp-> {action}-> {sponsor} = $parti;
                  $Awfif::clp-> {action}-> {signal} = findsignal ($loconcs[$i]);
                  $Awfif::clp-> {action}-> {schema} = $loconcs[$i];
                  $Awfif::clp-> {action}-> {sws} = $Awfif::memes->{currentwsbi};
                  $Awfif::clp-> {action}-> {wss} = $lostrts[$i];
                  $Awfif::clp-> {action}-> {wse} = $loends[$i];
                  if (($logb[$i] != 0)
                  && ($logb[$i] != $loge[$i]) ){
                    $Awfif::clp-> {action}-> {wsgs} = $logb[$i];
                    $Awfif::clp-> {action}-> {wsge} = $loge[$i];
                    };#operon has a gap
                  $Awfif::clp-> {action}-> {jhlabeli} = $lola[$i];
                  &cdsubmitcodelet ($myli, \$Awfif::clp);
                  }; #if its not an operon
                };#launch the scout
              };#for
            };
          }# if request modeller
        }# no model descriptor
      elsif ($giveup) {# terminate statement processing

        print ("invalid part - moving to next file\n");
        &actnodes ($Awfif::memes-> {snnh} {terminate}, $Awfif::memes-> {actmax});
        &invcaches ($Awfif::memes-> {snnh} {terminate});
        };#else
      };# if

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("partvalidx ret ($valid)\n");
      };
    return $valid
    }# partvalid
#
#
sub mresddrevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'mresddrbuilder');

    &clogstatx ();
    }# mresddrevaluator1
#
sub mresddrbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx, $afrom, $count);
#
# checked for merged workspaces

# models must use the full workspace

    $found = '';

# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {
      my ($stfound, $twso);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound > 0) {#lets check the following schemata matches the declaration of a resolved direct resource
        my ($descfits, $conformstoresource, $i);

        &updatelog ($myli,'ae', 5, $file);
        $afrom = awsoadr ($nextinstance);
        $descfits = '';
        for ($i = $nextinstance; (($i != $twso)
        && (trwsoadr ($i,1) != $twso)
        && (trwsoadr ($i,2) != $twso)
        && (trwsoadr ($i,3) != $twso)
        && (!$descfits));$i = trwsoadr ($i,1)) {
# look at each block of 4 wso checking for
# $i == var
# $i+1 == name
# $i+2 == equals
# $i+3 == var
# if this ever holds model fits
#

          if (($count = ipartseqcount ('onematch', $myli, $i, $twso, \$descfits, \$conformstoresource, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr,
            $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {ivariable}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {hname}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgstart}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgend}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedges}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedgee},
            $Awfif::memes-> {snnh} {name},
            $Awfif::memes-> {snnh} {equals},
            $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {ivariable}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {hname}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgstart}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgend}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedges}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedgee}, )>0)
          && ($conformstoresource)
# if model matches then describe this
          && ($descfits) && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {goodresddr}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {

            $Awfif::wsol-> {l} [$afrom][2]
              = setupdesc ( ($swstype),
              ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {goodresddr}), #to match findbond
              $Awfif::memes-> {snnh} {model},
              $Awfif::wsol-> {l} [$afrom][2],
              $afrom);
            } # this wso conforms
          elsif ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && ($descfits) && (!$conformstoresource)) {

            $afrom = awsoadr ($nextinstance);
            $Awfif::wsol-> {l} [$afrom][2]
              = setupdesc ( ($swstype),
              ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {stop}), #to match findbond
              $Awfif::memes-> {snnh} {model},
              $Awfif::wsol-> {l} [$afrom][2],
              $afrom);
            }; # else describe that this did not conform to the model of a resource
# if only one for thresholding reduce its activity
          };# for

        if ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {dropmresddr}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && (!$descfits)) {
# otherwise switch to some other test add model descriptor saying no thresholding
          $afrom = awsoadr ($nextinstance);
          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {dropmresddr}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# reduce the nuclear activation of pseudo concept
          &reducenucact ($myli, $Awfif::memes-> {currentwsbi}, $Awfif::codelet-> {l} [$myli][21], $Awfif::codelet-> {l} [$myli][22], $kwp, $kwpr);
          };#no use repeating test
        };
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# mresddrbuilder1
#
sub mresadrevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'mresadrbuilder');

    &clogstatx ();
    }# mresadrevaluator1
#
sub mresadrbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx);
#
    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("mresadrbuilder myli $myli kwp($kwp) kwpr($kwpr) ");
      };
# checked for merged workspaces

# models must use the full workspace

    $found = '';

# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {
      my ($stfound, $twso);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound > 0) {#lets check the following schemata's salience
        my ($thrmet);

        &updatelog ($myli,'ae', 5, $file);
        $thrmet = thrtypedwso ($myli, $nextinstance, $twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
# if threshold met then allow checking to proceed
        if (!$thrmet) {
          my ($afrom);
# otherwise switch to some other test add model descriptor saying no thresholding

          $afrom = awsoadr ($nextinstance);
          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {dropthreshold}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# if only one for thresholding reduce its activity
          };
        };
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# mresadrbuilder1
#
#
sub mmcrevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'mmcrbuilder');

    &clogstatx ();
    }# mmcrevaluator1
#
sub mmcrbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx, $afrom);
#
# checked for merged workspaces

# models must use the full workspace

    $found = '';

# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {
      my ($stfound, $twso);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound > 0) {#lets check the following schemata matches the declaration of a multi-component resource
        my ($descfits, $conformstoresource, $i, $count, $swso, $swsbi, $more);

        &updatelog ($myli,'ae', 5, $file);
        $afrom = awsoadr ($nextinstance);
        $descfits = '';
        for ($i = $nextinstance; (($i != $twso)
        && (trwsoadr ($i,1) != $twso)
        && (trwsoadr ($i,2) != $twso)
        && (trwsoadr ($i,3) != $twso)
        && (!$descfits));$i = trwsoadr ($i,1)) {
# look at each block of 4 wso checking for
# $i == var
# $i+1 == name
# $i+2 == equals
# $i+3 == record containing variables or references to variables
# if this ever holds model fits
#

          if (($count = ipartseqcount ('onematch', $myli, $i, $twso, \$descfits, \$conformstoresource, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr,
            $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {ivariable}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {hname}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgstart}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgend}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedges}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedgee},
            $Awfif::memes-> {snnh} {name},
            $Awfif::memes-> {snnh} {equals},
            $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {record}, $Awfif::memes-> {snnh} {andcategory}, $Awfif::memes-> {snnh} {type}, $Awfif::memes-> {snnh} {andcategory}, $Awfif::memes-> {snnh} {begin}, $Awfif::memes-> {snnh} {andcategory}, $Awfif::memes-> {snnh} {source}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {hname}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {href}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgstart}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgend}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedges}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedgee}
            )>0)
          && ($conformstoresource)
          && (($more = 0)==0)
          && ($swso = getwsopkw (trwsoadr ($i,3), \$swsbi, \$more))
          && ($descfits = searchmdefmcv ($myli, $swso, $swsbi,
                \$conformstoresource, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset))
# if model matches then describe this
          && ($descfits) && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {goodresddr}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {

            $Awfif::wsol-> {l} [$afrom][2]
              = setupdesc ( ($swstype),
              ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {goodresddr}), #to match findbond
              $Awfif::memes-> {snnh} {model},
              $Awfif::wsol-> {l} [$afrom][2],
              $afrom);
            } # this wso conforms
          elsif ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && ($descfits) && (!$conformstoresource)) {

            $afrom = awsoadr ($nextinstance);
            $Awfif::wsol-> {l} [$afrom][2]
              = setupdesc ( ($swstype),
              ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {stop}), #to match findbond
              $Awfif::memes-> {snnh} {model},
              $Awfif::wsol-> {l} [$afrom][2],
              $afrom);
            }; # else describe that this did not conform to the model of a resource
# if only one for thresholding reduce its activity
          };# for

        if ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {dropmresmc}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && (!$descfits)) {
# otherwise switch to some other test add model descriptor saying no thresholding
          $afrom = awsoadr ($nextinstance);
          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {dropmresmc}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# reduce the nuclear activation of pseudo concept
          &reducenucact ($myli, $Awfif::memes-> {currentwsbi}, $Awfif::codelet-> {l} [$myli][21], $Awfif::codelet-> {l} [$myli][22], $kwp, $kwpr);
          };#no use repeating test
        };
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# mmcrbuilder1
#
sub mmcvevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'mmcvbuilder');

    &clogstatx ();
    }# mmcvevaluator1
#
sub mmcvbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx, $afrom);
#
# checked for merged workspaces

# models must use the full workspace

    $found = '';

# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {
      my ($stfound, $twso);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound > 0) {#lets check the following schemata matches the declaration of a multi-component resource
        my ($descfits, $conformstoaction, $i, $count);

        &updatelog ($myli,'ae', 5, $file);
        $afrom = awsoadr ($nextinstance);
        $descfits = '';
        for ($i = $nextinstance; (($i != $twso)
        && (trwsoadr ($i,1) != $twso)
        && (!$descfits));$i = trwsoadr ($i,1)) {
# look at each block of 4 wso checking for
# $i == verb
# $i+1 == subject
# if this ever holds model fits
#

          if (($count = ipartseqcount ('onematch', $myli, $i, $twso, \$descfits, \$conformstoaction, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr,
            $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {andcategory}, $Awfif::memes-> {snnh} {multiple}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {hname}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {href}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {ivariable}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgstart}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgend}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedges}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedgee},
            $Awfif::memes-> {snnh} {subject},
            )>0)
          && ($conformstoaction)
# if model matches then describe this
          && ($descfits) && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {goodmverb}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {

            $Awfif::wsol-> {l} [$afrom][2]
              = setupdesc ( ($swstype),
              ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {goodmverb}), #to match findbond
              $Awfif::memes-> {snnh} {model},
              $Awfif::wsol-> {l} [$afrom][2],
              $afrom);
            } # this wso conforms
          elsif ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && ($descfits) && (!$conformstoaction)) {

            $afrom = awsoadr ($nextinstance);
            $Awfif::wsol-> {l} [$afrom][2]
              = setupdesc ( ($swstype),
              ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {stop}), #to match findbond
              $Awfif::memes-> {snnh} {model},
              $Awfif::wsol-> {l} [$afrom][2],
              $afrom);
            }; # else describe that this did not conform to the model of a resource
# if only one for thresholding reduce its activity
          };# for

        if ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {dropmverb}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && (!$descfits)) {
# otherwise switch to some other test add model descriptor saying no thresholding
          $afrom = awsoadr ($nextinstance);
          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {dropmverb}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# reduce the nuclear activation of pseudo concept
          &reducenucact ($myli, $Awfif::memes-> {currentwsbi}, $Awfif::codelet-> {l} [$myli][21], $Awfif::codelet-> {l} [$myli][22], $kwp, $kwpr);
          };#no use repeating test
        };
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# mmcvbuilder1
#
sub mmctevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'mmctbuilder');

    &clogstatx ();
    }# mmctevaluator1
#
sub mmctbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx, $afrom);
#
# checked for merged workspaces

# models must use the full workspace

    $found = '';

# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {
      my ($stfound, $twso);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound > 0) {#lets check the following schemata matches the declaration of a multi-component resource
        my ($descfits, $conformstoresource, $i, $count);

        &updatelog ($myli,'ae', 5, $file);
        $afrom = awsoadr ($nextinstance);
        $descfits = '';
        for ($i = $nextinstance; (($i != $twso)
        && (trwsoadr ($i,1) != $twso)
        && (trwsoadr ($i,2) != $twso)
        && (trwsoadr ($i,3) != $twso)
        && (!$descfits));$i = trwsoadr ($i,1)) {
# look at each block of 4 wso checking for
# $i == var
# $i+1 == name
# $i+2 == equals
# $i+3 == target type list start structure containing variables or references to variables
# if this ever holds model fits
#

          if (($count = ipartseqcount ('onematch', $myli, $i, $twso, \$descfits, \$conformstoresource, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr,
            $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {ivariable}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {hname}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgstart}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgend}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedges}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedgee},
            $Awfif::memes-> {snnh} {name},
            $Awfif::memes-> {snnh} {equals},
            $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {list}, $Awfif::memes-> {snnh} {andcategory}, $Awfif::memes-> {snnh} {type}, $Awfif::memes-> {snnh} {andcategory}, $Awfif::memes-> {snnh} {start}, $Awfif::memes-> {snnh} {orcategory}, $Awfif::memes-> {snnh} {alternate}, $Awfif::memes-> {snnh} {andcategory}, $Awfif::memes-> {snnh} {target}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {hname}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {href}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgstart}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgend}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedges}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedgee}
            )>0)
          && ($conformstoresource)
# if model matches then describe this
          && ($descfits) && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {goodresddr}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {

            $Awfif::wsol-> {l} [$afrom][2]
              = setupdesc ( ($swstype),
              ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {goodresddr}), #to match findbond
              $Awfif::memes-> {snnh} {model},
              $Awfif::wsol-> {l} [$afrom][2],
              $afrom);
            } # this wso conforms
          elsif ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && ($descfits) && (!$conformstoresource)) {

            $afrom = awsoadr ($nextinstance);
            $Awfif::wsol-> {l} [$afrom][2]
              = setupdesc ( ($swstype),
              ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {stop}), #to match findbond
              $Awfif::memes-> {snnh} {model},
              $Awfif::wsol-> {l} [$afrom][2],
              $afrom);
            }; # else describe that this did not conform to the model of a resource
# if only one for thresholding reduce its activity
          };# for

        if ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {dropmresmc}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && (!$descfits)) {
# otherwise switch to some other test add model descriptor saying no thresholding
          $afrom = awsoadr ($nextinstance);
          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {dropmresmc}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# reduce the nuclear activation of pseudo concept
          &reducenucact ($myli, $Awfif::memes-> {currentwsbi}, $Awfif::codelet-> {l} [$myli][21], $Awfif::codelet-> {l} [$myli][22], $kwp, $kwpr);
          };#no use repeating test
        };
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# mmctbuilder1
#
sub mactsverbevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'mactsverbbuilder');

    &clogstatx ();
    }# mactsverbevaluator1
#
sub mactsverbbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx, $afrom);
#
# checked for merged workspaces

# models must use the full workspace

    $found = '';

# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {
      my ($stfound, $twso);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound > 0) {#lets check the following schemata matches the declaration of a simple verb
        my ($descfits, $conformstoverb, $i, $i2, $count);

        &updatelog ($myli,'ae', 5, $file);
        $afrom = awsoadr ($nextinstance);
        $descfits = '';
        for ($i = $nextinstance; (($i != $twso)
        && (trwsoadr ($i,1) != $twso)
        && (!$descfits));$i = trwsoadr ($i,1)) {
# look at each block of 2 wso checking for
# $i1 == verb && single
# $i1+1 == subject
#
# look at each block of 3 wso checking for merge file specified directly or indirectly
# $i2 == in
# $i2+1 == target
# $i2+2 == file
#
          if (($count = ipartseqcount ('onematch', $myli, $i, $twso, \$descfits, \$conformstoverb, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr,
            $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {andcategory}, $Awfif::memes-> {snnh} {single}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {hname}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {href}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {ivariable}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgstart}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgend}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedges}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedgee},
            $Awfif::memes-> {snnh} {subject},
            )>0)
          && ($conformstoverb)
          && ($descfits) && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {goodsverb}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {

            $descfits = '';
            for ($i2 = $nextinstance; (($i2 != $twso)
            && (trwsoadr ($i2,1) != $twso)
            && (trwsoadr ($i2,2) != $twso)
            && (!$descfits));$i2 = trwsoadr ($i2,1)) {
              if ((wsbasetype ($i2) == $Awfif::memes-> {snnh} {in})
              && (wsbasetype (trwsoadr ($i2,1)) == $Awfif::memes-> {snnh} {target})
              && (wsbasetype (trwsoadr ($i2,2)) == $Awfif::memes-> {snnh} {file})
              && ($descfits = 't')
# if model matches then describe this
              && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {goodsverb}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {
                $Awfif::wsol-> {l} [$afrom][2]
                = setupdesc ( ($swstype),
                  ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {goodsverb}), #to match findbond
                $Awfif::memes-> {snnh} {model},
                $Awfif::wsol-> {l} [$afrom][2],
                $afrom);
                } # this wso conforms
              elsif ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && ($descfits) && (!$conformstoverb)) {

                $afrom = awsoadr ($nextinstance);
                $Awfif::wsol-> {l} [$afrom][2]
                  = setupdesc ( ($swstype),
                  ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {stop}), #to match findbond
                  $Awfif::memes-> {snnh} {model},
                  $Awfif::wsol-> {l} [$afrom][2],
                  $afrom);
                }; # else describe that this did not conform to the model of a resource
# if only one for thresholding reduce its activity
              };#for
            };#if
          };# for

        if ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {dropsverb}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && (!$descfits)) {
# otherwise switch to some other test add model descriptor saying no thresholding
          $afrom = awsoadr ($nextinstance);
          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {dropsverb}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# reduce the nuclear activation of pseudo concept
          &reducenucact ($myli, $Awfif::memes-> {currentwsbi}, $Awfif::codelet-> {l} [$myli][21], $Awfif::codelet-> {l} [$myli][22], $kwp, $kwpr);
          };#no use repeating test
        };
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# mactsverbbuilder1
#
#
sub msormevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'msormbuilder');

    &clogstatx ();
    }# msormevaluator1
#
sub msormbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $foundgrp, $foundsgrp, $swstype, $nextinstance, $afrom, $wsbtni,
    $grkwp, $grkwpr, $cdn, $cdnx);
#
# checked for merged workspaces

# models must use the full workspace

    $foundgrp = '';
    $foundsgrp = '';

# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {
      my ($stfound, $twso);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      $afrom = awsoadr ($nextinstance);
      $wsbtni = wsbasetype ($nextinstance);
      if (($stfound >= 1)
      && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {single}, $wsbtni, $Awfif::memes-> {snnh} {model})))
      && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {multiple}, $wsbtni, $Awfif::memes-> {snnh} {model}))) ){#

        my ($groupcomplete, $i);
        for ($i = trwsoadr ( $nextinstance, 1);
        $i < $twso; $i = trwsoadr ($i, 1)) {

          &tdgroup1 ($myli, $i, $kwp, $kwpr, \$groupcomplete);
          if ($groupcomplete) {
            my ($end, $sponsor, $sgdi);
            &fgrpd ($myli, $i, \$sgdi, $Awfif::memes->{snnh}{groupcategory});
            $sponsor = fgrpsponsor ($i, $Awfif::workspace-> {l} [$sgdi] [3], $Awfif::memes-> {snnh} {groupcategory});
            $end = fgrpend ($sponsor);# of the group
            $i = $end;
            if (!($foundgrp)) {
              $foundgrp = 't';
              }
            else {
              $foundsgrp = 't';
              };
            }# if of handle completed groups
          else {
            $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($Awfif::memes-> {snnh} {outgroup}),
            ($Awfif::memes-> {snnh} {wsi} + $i), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
            };# else of handle completed groups
          };# for
        };# salient type structures
      if ((!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {single}, $wsbtni, $Awfif::memes-> {snnh} {model})))
      && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {multiple}, $wsbtni, $Awfif::memes-> {snnh} {model})))
      && (($foundsgrp) or ($foundgrp))) {

        my ($pr);
        if ($foundsgrp) {
          $pr = $Awfif::memes-> {snnh} {multiple};
          }
        else {
          $pr = $Awfif::memes-> {snnh} {single};
          };
        $Awfif::wsol-> {l} [$afrom][2]
          = setupdesc ( ($swstype),
          ($Awfif::memes-> {snnh} {wsi} + $pr), #to match findbond
          $Awfif::memes-> {snnh} {model},
          $Awfif::wsol-> {l} [$afrom][2],
          $afrom);
        };#badly formed subject
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# msormbuilder1
#
#
sub mactcverbevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'mactcverbbuilder');

    &clogstatx ();
    }# mactcverbevaluator1
#
sub mactcverbbuilder1 {#The ignored parameters are required by the codelet calling architecture
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx, $afrom);
#
# checked for merged workspaces

# models must use the full workspace

    $found = '';

# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {
      my ($stfound, $twso);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound > 0) {#lets check the following schemata matches the declaration of a simple verb
        my ($descfits, $conformstoverb, $i, $i2, $count);

        &updatelog ($myli,'ae', 5, $file);
        $afrom = awsoadr ($nextinstance);
        $descfits = '';
        for ($i = $nextinstance; (($i != $twso)
        && (trwsoadr ($i,1) != $twso)
        && (!$descfits));$i = trwsoadr ($i,1)) {
# look at each block of 2 wso checking for
# $i1 == verb && single specified
# $i1+1 == subject
#
# look at each block of 3 wso checking for merge file specified directly or indirectly
# $i2 == in
# $i2+1 == case
#
          if (($count = ipartseqcount ('onematch', $myli, $i, $twso, \$descfits, \$conformstoverb, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr,
            $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {andcategory}, $Awfif::memes-> {snnh} {single}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {hname}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {href}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {ivariable}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgstart}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgend}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedges}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedgee},
            $Awfif::memes-> {snnh} {subject},
            )>0)
          && ($conformstoverb)
          && ($descfits) && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {goodcverb}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {

            $descfits = '';
            for ($i2 = $nextinstance; (($i2 != $twso)
            && (trwsoadr ($i2,1) != $twso)
            && (!$descfits));$i2 = trwsoadr ($i2,1)) {
              if ((wsbasetype ($i2) == $Awfif::memes-> {snnh} {in})
              && (wsbasetype (trwsoadr ($i2,1)) == $Awfif::memes-> {snnh} {case})
              && ($descfits = 't')
# if model matches then describe this
              && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {goodcverb}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {
                $Awfif::wsol-> {l} [$afrom][2]
                = setupdesc ( ($swstype),
                  ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {goodcverb}), #to match findbond
                $Awfif::memes-> {snnh} {model},
                $Awfif::wsol-> {l} [$afrom][2],
                $afrom);
                } # this wso conforms
              elsif ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && ($descfits) && (!$conformstoverb)) {

                $afrom = awsoadr ($nextinstance);
                $Awfif::wsol-> {l} [$afrom][2]
                  = setupdesc ( ($swstype),
                  ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {stop}), #to match findbond
                  $Awfif::memes-> {snnh} {model},
                  $Awfif::wsol-> {l} [$afrom][2],
                  $afrom);
                }; # else describe that this did not conform to the model of a resource
# if only one for thresholding reduce its activity
              };#for
            };#if
          };# for

        if ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {dropcverb}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && (!$descfits)) {
# otherwise switch to some other test add model descriptor saying no thresholding
          $afrom = awsoadr ($nextinstance);
          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {dropcverb}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# reduce the nuclear activation of pseudo concept
          &reducenucact ($myli, $Awfif::memes-> {currentwsbi}, $Awfif::codelet-> {l} [$myli][21], $Awfif::codelet-> {l} [$myli][22], $kwp, $kwpr);
          };#no use repeating test
        };
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# mactcverbbuilder1
#
sub mcssubevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'mcssubbuilder');

    &clogstatx ();
    }# mcssubevaluator1
#
sub mcssubbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx, $afrom, $count);
#
# checked for merged workspaces

# models must use the full workspace

    $found = '';

# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {
      my ($stfound, $twso);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound > 0) {#lets check the following schemata matches the declaration of a resolved direct resource
        my ($descfits, $conformstoresource, $i);

        &updatelog ($myli,'ae', 5, $file);
        $afrom = awsoadr ($nextinstance);
        $descfits = '';
        for ($i = $nextinstance; (($i != $twso)
        && (trwsoadr ($i,1) != $twso)
        && (trwsoadr ($i,2) != $twso)
        && (trwsoadr ($i,3) != $twso)
        && (!$descfits));$i = trwsoadr ($i,1)) {
# look at each block of 4 wso checking for
# $i == case
# $i+1 == var
# $i+2 == equals
# $i+3 == case type value
# if this ever holds model fits
#

          if (($count = ipartseqcount ('onematch', $myli, $i, $twso, \$descfits, \$conformstoresource, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr,
            $Awfif::memes-> {snnh} {case},
            $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {ivariable}, $Awfif::memes-> {snnh} {invalidatescategory}, $Awfif::memes-> {snnh} {hname}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {verb}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgstart}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgend}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedges}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedgee},
            $Awfif::memes-> {snnh} {equals},
            $Awfif::memes-> {snnh} {tokencategory}, $Awfif::memes-> {snnh} {value}, $Awfif::memes-> {snnh} {andcategory}, $Awfif::memes-> {snnh} {case}, $Awfif::memes-> {snnh} {andcategory}, $Awfif::memes-> {snnh} {type}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgstart}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgend}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedges}, $Awfif::memes-> {snnh} {failscategory}, $Awfif::memes-> {snnh} {msuccgedgee}, )>0)
          && ($conformstoresource)
# if model matches then describe this
          && ($descfits) && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {goodresddr}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {

            $Awfif::wsol-> {l} [$afrom][2]
              = setupdesc ( ($swstype),
              ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {goodresddr}), #to match findbond
              $Awfif::memes-> {snnh} {model},
              $Awfif::wsol-> {l} [$afrom][2],
              $afrom);
            } # this wso conforms
          elsif ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && ($descfits) && (!$conformstoresource)) {

            $afrom = awsoadr ($nextinstance);
            $Awfif::wsol-> {l} [$afrom][2]
              = setupdesc ( ($swstype),
              ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {stop}), #to match findbond
              $Awfif::memes-> {snnh} {model},
              $Awfif::wsol-> {l} [$afrom][2],
              $afrom);
            }; # else describe that this did not conform to the model of a resource
# if only one for thresholding reduce its activity
          };# for

        if ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {dropcresddr}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && (!$descfits)) {
# otherwise switch to some other test add model descriptor saying no thresholding
          $afrom = awsoadr ($nextinstance);
          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {dropcresddr}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# reduce the nuclear activation of pseudo concept
          &reducenucact ($myli, $Awfif::memes-> {currentwsbi}, $Awfif::codelet-> {l} [$myli][21], $Awfif::codelet-> {l} [$myli][22], $kwp, $kwpr);
          };#no use repeating test
        };
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# mcssubbuilder1
#
sub mcsobevaluator1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
#
# checked for merged workspaces

    no strict 'refs';
    &imsalthrevaluator1 ($myli, \$$kwp, $kwpr, \@$sactset, 'mcsobbuilder');

    &clogstatx ();
    }# mcsobevaluator1
#
sub mcsobbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($sponsor, $signal, $schema, $found, $file, $swstype, $nextinstance,
    $grkwp, $grkwpr, $cdn, $cdnx, $afrom, $count);
#
# checked for merged workspaces

# models must use the full workspace

    $found = '';

# now check the workspace for salient workspace type with model status descriptor
    if (getcontext ($myli, \$sponsor, \$signal, \$schema, \$swstype, \$grkwp, \$grkwpr, undef(), \$cdn, \$cdnx, 3)) {
      my ($stfound, $twso);
      $stfound = selsaltypedwso ($myli, $swstype, \$nextinstance, \$twso, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr, \@$sactset);
      if ($stfound > 0) {#lets check the following schemata matches the declaration of a resolved direct resource
        my ($descfits, $conformstoresource, $i);

        &updatelog ($myli,'ae', 5, $file);
        $afrom = awsoadr ($nextinstance);
        $descfits = '';
        for ($i = $nextinstance; (($i != $twso)
        && (trwsoadr ($i,1) != $twso)
        && (trwsoadr ($i,2) != $twso)
        && (trwsoadr ($i,3) != $twso)
        && (!$descfits));$i = trwsoadr ($i,1)) {
# look at each block of 4 wso checking for
# $i == file
# $i+1 == name
# $i+2 == equals
# $i+3 == char
# if this ever holds model fits
#

          if (($count = ipartseqcount ('onematch', $myli, $i, $twso, \$descfits, \$conformstoresource, trwsoadr ($Awfif::codelet-> {l} [$myli][21],-1), $grkwpr,
            $Awfif::memes-> {snnh} {file},
            $Awfif::memes-> {snnh} {name},
            $Awfif::memes-> {snnh} {equals},
            $Awfif::memes-> {snnh} {char}
            )>0)
          && ($conformstoresource)
# if model matches then describe this
          && ($descfits) && (!(findbond ($Awfif::wsol-> {l} [ $afrom] [2], $Awfif::memes-> {snnh} {goodresddr}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model})))) {

            $Awfif::wsol-> {l} [$afrom][2]
              = setupdesc ( ($swstype),
              ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {goodresddr}), #to match findbond
              $Awfif::memes-> {snnh} {model},
              $Awfif::wsol-> {l} [$afrom][2],
              $afrom);
            } # this wso conforms
          elsif ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && ($descfits) && (!$conformstoresource)) {

            $afrom = awsoadr ($nextinstance);
            $Awfif::wsol-> {l} [$afrom][2]
              = setupdesc ( ($swstype),
              ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {stop}), #to match findbond
              $Awfif::memes-> {snnh} {model},
              $Awfif::wsol-> {l} [$afrom][2],
              $afrom);
            }; # else describe that this did not conform to the model of a resource
# if only one for thresholding reduce its activity
          };# for

        if ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($nextinstance)] [2], $Awfif::memes-> {snnh} {dropcresddr}, wsbasetype ($nextinstance), $Awfif::memes-> {snnh} {model}))) && (!$descfits)) {
# otherwise switch to some other test add model descriptor saying no thresholding
          $afrom = awsoadr ($nextinstance);
          $Awfif::wsol-> {l} [$afrom][2]
            = setupdesc ( ($swstype),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {dropcresddr}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$afrom][2],
            $afrom);
# reduce the nuclear activation of pseudo concept
          &reducenucact ($myli, $Awfif::memes-> {currentwsbi}, $Awfif::codelet-> {l} [$myli][21], $Awfif::codelet-> {l} [$myli][22], $kwp, $kwpr);
          };#no use repeating test
        };
      };#got target wso

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# mcsobbuilder1
#
#
sub partbuilder1 {
    my ($myli, $kwp, $kwpr, $sactset) = @_;#The ignored parameters are required by the codelet calling architecture
    my ($ni, $ani,
    $grkwp, $grkwpr, $cdn, $cdnx);
#
# checked for merged workspaces

    $cdn = clogstat (\$cdnx);
    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdn myli $myli kwp($kwp) kwpr($kwpr)");
      &itcpoutput ($myli);
      };
# parts must use the full workspace

    $grkwp = $Awfif::wsbl->{wsoh}[$Awfif::memes->{currentwsbi}];
    $grkwpr = $Awfif::wsbl->{wsft}[$Awfif::memes->{currentwsbi}];
# choose a salient part from the workspace

    if ($Awfif::codelet->{l}[$myli][4] > 0) {
      $ni = $Awfif::codelet->{l}[$myli][4];
      if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
        &itwsoutput ( trwsoadr ($ni,1), $ni);
        };
      if (!findbond ($Awfif::wsol-> {l} [ awsoadr ($ni)] [2], $ni, wsbasetype ($ni), $Awfif::memes-> {snnh} {partscategory})) {
        my ($buildpart);
# if model thresholding has failed lower energy

        if (
        ((!(findbond ($Awfif::wsol-> {l} [ awsoadr ($ni)] [2], $Awfif::memes-> {snnh} {stop}, wsbasetype ($ni), $Awfif::memes-> {snnh} {model}))) )
        && (findbond ($Awfif::wsol-> {l} [ awsoadr ($ni)] [2], $Awfif::memes-> {snnh} {dropthreshold}, wsbasetype ($ni), $Awfif::memes-> {snnh} {model}))
        && (findbond ($Awfif::wsol-> {l} [ awsoadr ($ni)] [2], $Awfif::memes-> {snnh} {dropopcheck}, wsbasetype ($ni), $Awfif::memes-> {snnh} {model}))
        ){
# atppenalty2

          $Awfif::memes-> {fatp} = $Awfif::memes-> {fatp} - $Awfif::memes-> {failatpr};
          };#if
# if the part is not marked as valid build completion descriptors
        if ((partvalid ($myli, $ni, $grkwp, $grkwpr, \@$sactset))
        && (partconstrained ($myli, $ni, $grkwp, $grkwpr, \@$sactset))
        && (partintegrated ($myli, $ni, $grkwp, $grkwpr, \@$sactset)) ){

          $buildpart = 't';
          $ani = awsoadr ($ni);
          $Awfif::wsol-> {l} [$ani][2]
            = setupdesc ( (wsbasetype ($ni)),
            ($Awfif::memes-> {snnh} {wsi} + $Awfif::memes-> {snnh} {valid}), #to match findbond
            $Awfif::memes-> {snnh} {model},
            $Awfif::wsol-> {l} [$ani][2],
            $ani);
          &invcaches (wsbasetype ($ni));
# pbwscup
          &wsclinv (0, $Awfif::memes-> {currentwsbi}, $Awfif::memes-> {strbool}[$Awfif::memes-> {streh} {bugroup}]);
          };#partvalid and constrained
        if ($buildpart) {#deploy the part descriptor

          $Awfif::wsol-> {l} [$ani][2]
              = setupdesc ( (wsbasetype ($ni)),
                ($Awfif::memes-> {snnh} {wsi} + $ni),
                $Awfif::memes-> {snnh}{partscategory},
                $Awfif::wsol-> {l} [$ani][2],
                $ani);
          $Awfif::memes-> {fatp} = $Awfif::memes-> {fatp} + $Awfif::memes-> {batp};
# send activation to the involved Slipnet nodes
          &actnodes ( $Awfif::memes-> {snnh}{partscategory}, $Awfif::memes-> {openatype});
          &actnodes ( $Awfif::memes-> {snnh} {wsi}, $Awfif::memes-> {openato});
          &invcaches (wsbasetype ($ni));
          };#part can be built
        };#part is not whole yet
      }# got a pair to work on

    if ($Awfif::memes-> {trace} > $Awfif::memes-> {traceentry}) {
      print ("$cdnx\n");
      };
    &clogstatx ();
    }# partbuilder1
#
Market Centric Workshops
The Physics - Politics, Economics & Evolutionary Psychology
Politics, Economics & Evolutionary Psychology

Business Physics
Nature and nurture drive the business eco-system
Human nature
Emerging structure and dynamic forces of adaptation


integrating quality appropriate for each market
 
This page looks at schematic structures and their uses.  It discusses a number of examples:
  • Schematic ideas are recombined in creativity. 
  • Similarly designers take ideas and rules about materials and components and combine them. 
  • Schematic Recipes help to standardize operations. 
  • Modular components are combined into strategies for use in business plans and business models. 

As a working example it presents part of the contents and schematic details from the Adaptive Web Framework (AWF)'s operational plan. 

Finally it includes a section presenting our formal representation of schematic goals. 
Each goal has a series of associated complex adaptive system (CAS) strategy strings. 
These goals plus strings are detailed for various chess and business examples. 
Strategy
| Design |
This page uses an example to illustrate how:
  • A business can gain focus from targeting key customers,
  • Business planning activities performed by the whole organization can build awareness, empowerment and coherence. 
  • A program approach can ensure strategic alignment. 
Program Management
| Home

Profiles | Papers | Glossary | E-mail us