Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » GMF (Graphical Modeling Framework) » Error : "Figure must be a child" in refreshBounds() of XXXLabelEditPart
Error : "Figure must be a child" in refreshBounds() of XXXLabelEditPart [message #169712] Thu, 24 January 2008 15:22 Go to next message
Guillaume Gauffre is currently offline Guillaume GauffreFriend
Messages: 65
Registered: July 2009
Member
This is a multi-part message in MIME format.
--------------090006070401090707040002
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit

Hi,

I've just generated a new editor for which each node has some child
nodes. These children are ports used to connect each node with a connection.
It works great. I have an older editor which also works but in the new
one, if I add a "Feature Label Mapping" in gmfmap model, it generates an
EditPart (in my editor "UserNAmeEditPart") for this label with a
function refreshBounds() which causes an error. I attach the src
UserNameEditPart.java and the parent src UserEditPart, and a capture of
the gmfmap model.

I don't have this function in the older version.
I currently use GMF v2.0.1 20071003
Here is the error log :
--
java.lang.IllegalArgumentException: Figure must be a child
at org.eclipse.draw2d.Figure.setConstraint(Figure.java:1458)
at
org.eclipse.gmf.runtime.diagram.ui.editparts.AbstractBordere dShapeEditPart.setLayoutConstraint(AbstractBorderedShapeEdit Part.java:67)
at
fr.irit.guideme.asur.asur.diagram.edit.parts.UserNameEditPar t.refreshBounds(UserNameEditPart.java:550)
at
fr.irit.guideme.asur.asur.diagram.edit.parts.UserNameEditPar t.refreshVisuals(UserNameEditPart.java:409)
at
fr.irit.guideme.asur.asur.diagram.edit.parts.UserNameEditPar t.setLabel(UserNameEditPart.java:172)
at
fr.irit.guideme.asur.asur.diagram.edit.parts.UserEditPart.ad dFixedChild(UserEditPart.java:125)
at
fr.irit.guideme.asur.asur.diagram.edit.parts.UserEditPart.ad dChildVisual(UserEditPart.java:170)
at
org.eclipse.gef.editparts.AbstractEditPart.addChild(Abstract EditPart.java:197)

And the exception is thrown in Figure class, during the
setConstraint(IFigure child, Object constraint) function:
child.getParent() = UserEditPart$UserFigure and this = DefaultSizeNodeFigure

Does anybody understand why this error occurs ?
Thanks for your help.

Guillaume

--------------090006070401090707040002
Content-Type: text/plain;
name="UserEditPart.java"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="UserEditPart.java"

package fr.irit.guideme.asur.asur.diagram.edit.parts;

import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.Path;
import org.eclipse.draw2d.FreeformLayout;
import org.eclipse.draw2d.IFigure;
import org.eclipse.draw2d.PositionConstants;
import org.eclipse.draw2d.RoundedRectangle;
import org.eclipse.draw2d.StackLayout;
import org.eclipse.draw2d.XYLayout;
import org.eclipse.draw2d.geometry.Dimension;
import org.eclipse.draw2d.geometry.Rectangle;
import org.eclipse.gef.EditPart;
import org.eclipse.gef.EditPolicy;
import org.eclipse.gef.editpolicies.LayoutEditPolicy;
import org.eclipse.gef.editpolicies.ResizableEditPolicy;
import org.eclipse.gmf.runtime.diagram.ui.editparts.AbstractBordere dShapeEditPart;
import org.eclipse.gmf.runtime.diagram.ui.editparts.IBorderItemEdit Part;
import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditP art;
import org.eclipse.gmf.runtime.diagram.ui.editpolicies.BorderItemSe lectionEditPolicy;
import org.eclipse.gmf.runtime.diagram.ui.editpolicies.CreationEdit Policy;
import org.eclipse.gmf.runtime.diagram.ui.editpolicies.DragDropEdit Policy;
import org.eclipse.gmf.runtime.diagram.ui.editpolicies.EditPolicyRo les;
import org.eclipse.gmf.runtime.diagram.ui.editpolicies.ResizableSha peEditPolicy;
import org.eclipse.gmf.runtime.diagram.ui.editpolicies.XYLayoutEdit Policy;
import org.eclipse.gmf.runtime.diagram.ui.figures.BorderItemLocator ;
import org.eclipse.gmf.runtime.draw2d.ui.figures.WrappingLabel;
import org.eclipse.gmf.runtime.draw2d.ui.render.factory.RenderedIma geFactory;
import org.eclipse.gmf.runtime.draw2d.ui.render.figures.ScalableIma geFigure;
import org.eclipse.gmf.runtime.gef.ui.figures.DefaultSizeNodeFigure ;
import org.eclipse.gmf.runtime.gef.ui.figures.NodeFigure;
import org.eclipse.gmf.runtime.notation.View;

import fr.irit.guideme.asur.asur.diagram.edit.policies.UserCanonica lEditPolicy;
import fr.irit.guideme.asur.asur.diagram.edit.policies.UserItemSema nticEditPolicy;
import fr.irit.guideme.asur.asur.diagram.part.AsurVisualIDRegistry;
import fr.irit.guideme.asur.asur.provider.AsurEditPlugin;

/**
* @generated
*/
public class UserEditPart extends AbstractBorderedShapeEditPart {

/**
* @generated
*/
public static final int VISUAL_ID = 2007;

/**
* @generated
*/
protected IFigure contentPane;

/**
* @generated
*/
protected IFigure primaryShape;

/**
* @generated
*/
public UserEditPart(View view) {
super(view);
}

/**
* @generated
*/
protected void createDefaultEditPolicies() {
installEditPolicy(EditPolicyRoles.CREATION_ROLE,
new CreationEditPolicy());
super.createDefaultEditPolicies();
installEditPolicy(EditPolicyRoles.SEMANTIC_ROLE,
new UserItemSemanticEditPolicy());
installEditPolicy(EditPolicyRoles.DRAG_DROP_ROLE,
new DragDropEditPolicy());
installEditPolicy(EditPolicyRoles.CANONICAL_ROLE,
new UserCanonicalEditPolicy());
installEditPolicy(EditPolicy.LAYOUT_ROLE, createLayoutEditPolicy());
// XXX need an SCR to runtime to have another abstract superclass that would let children add reasonable editpolicies
// removeEditPolicy(org.eclipse.gmf.runtime.diagram.ui.editpoli cies.EditPolicyRoles.CONNECTION_HANDLES_ROLE);
}

/**
* @generated
*/
protected LayoutEditPolicy createLayoutEditPolicy() {
XYLayoutEditPolicy lep = new XYLayoutEditPolicy() {

protected EditPolicy createChildEditPolicy(EditPart child) {
if (child instanceof IBorderItemEditPart) {
return new BorderItemSelectionEditPolicy();
}
EditPolicy result = super.createChildEditPolicy(child);
if (result == null) {
return new ResizableShapeEditPolicy();
}
return result;
}
};
return lep;
}

/**
* @generated
*/
protected IFigure createNodeShape() {
UserFigure figure = new UserFigure();
figure.setUseLocalCoordinates(true);
return primaryShape = figure;
}

/**
* @generated
*/
public UserFigure getPrimaryShape() {
return (UserFigure) primaryShape;
}

/**
* @generated
*/
protected boolean addFixedChild(EditPart childEditPart) {
if (childEditPart instanceof UserNameEditPart) {
((UserNameEditPart) childEditPart).setLabel(getPrimaryShape()
.getFigureUserNameFigure());
return true;
}
if (childEditPart instanceof SensingMechanismEditPart) {
BorderItemLocator locator = new BorderItemLocator(getMainFigure(),
PositionConstants.NONE);
getBorderedFigure().getBorderItemContainer().add(
((SensingMechanismEditPart) childEditPart).getFigure(),
locator);
return true;
}
if (childEditPart instanceof ModificationMethodEditPart) {
BorderItemLocator locator = new BorderItemLocator(getMainFigure(),
PositionConstants.NONE);
getBorderedFigure().getBorderItemContainer().add(
((ModificationMethodEditPart) childEditPart).getFigure(),
locator);
return true;
}
return false;
}

/**
* @generated
*/
protected boolean removeFixedChild(EditPart childEditPart) {

if (childEditPart instanceof SensingMechanismEditPart) {
getBorderedFigure().getBorderItemContainer().remove(
((SensingMechanismEditPart) childEditPart).getFigure());
return true;
}
if (childEditPart instanceof ModificationMethodEditPart) {
getBorderedFigure().getBorderItemContainer().remove(
((ModificationMethodEditPart) childEditPart).getFigure());
return true;
}
return false;
}

/**
* @generated
*/
protected void addChildVisual(EditPart childEditPart, int index) {
if (addFixedChild(childEditPart)) {
return;
}
super.addChildVisual(childEditPart, -1);
}

/**
* @generated
*/
protected void removeChildVisual(EditPart childEditPart) {
if (removeFixedChild(childEditPart)) {
return;
}
super.removeChildVisual(childEditPart);
}

/**
* @generated
*/
protected IFigure getContentPaneFor(IGraphicalEditPart editPart) {

if (editPart instanceof SensingMechanismEditPart) {
return getBorderedFigure().getBorderItemContainer();
}
if (editPart instanceof ModificationMethodEditPart) {
return getBorderedFigure().getBorderItemContainer();
}
return super.getContentPaneFor(editPart);
}

/**
* @generated
*/
protected NodeFigure createNodePlate() {
DefaultSizeNodeFigure result = new DefaultSizeNodeFigure(getMapMode()
.DPtoLP(60), getMapMode().DPtoLP(60));
return result;
}

/**
* @generated
*/
public EditPolicy getPrimaryDragEditPolicy() {
EditPolicy result = super.getPrimaryDragEditPolicy();
if (result instanceof ResizableEditPolicy) {
ResizableEditPolicy ep = (ResizableEditPolicy) result;
ep.setResizeDirections(PositionConstants.NONE);
}
return result;
}

/**
* Creates figure for this edit part.
*
* Body of this method does not depend on settings in generation model
* so you may safely remove <i>generated</i> tag and modify it.
*
* @generated
*/
protected NodeFigure createMainFigure() {
NodeFigure figure = createNodePlate();
figure.setLayoutManager(new StackLayout());
IFigure shape = createNodeShape();
figure.add(shape);
contentPane = setupContentPane(shape);
return figure;
}

/**
* Default implementation treats passed figure as content pane.
* Respects layout one may have set for generated figure.
* @param nodeShape instance of generated figure class
* @generated
*/
protected IFigure setupContentPane(IFigure nodeShape) {
if (nodeShape.getLayoutManager() == null) {
nodeShape.setLayoutManager(new FreeformLayout() {

public Object getConstraint(IFigure figure) {
Object result = constraints.get(figure);
if (result == null) {
result = new Rectangle(0, 0, -1, -1);
}
return result;
}
});
}
return nodeShape; // use nodeShape itself as contentPane
}

/**
* @generated
*/
public IFigure getContentPane() {
if (contentPane != null) {
return contentPane;
}
return super.getContentPane();
}

/**
* @generated
*/
public EditPart getPrimaryChildEditPart() {
return getChildBySemanticHint(AsurVisualIDRegistry
.getType(UserNameEditPart.VISUAL_ID));
}

/**
* @generated
*/
public class UserFigure extends RoundedRectangle {

/**
* @generated
*/
private WrappingLabel fFigureUserNameFigure;
/**
* @generated
*/
private ScalableImageFigure fFigureUserImage;

/**
* @generated
*/
public UserFigure() {

this.setLayoutManager(new XYLayout());
this.setCornerDimensions(new Dimension(getMapMode().DPtoLP(24),
getMapMode().DPtoLP(24)));
this.setPreferredSize(new Dimension(getMapMode().DPtoLP(60),
getMapMode().DPtoLP(60)));
createContents();
}

/**
* @generated NOT
*/
private void createContents() {

fFigureUserNameFigure = new WrappingLabel();
fFigureUserNameFigure.setText("<...>");

this.add(fFigureUserNameFigure);

fFigureUserImage = new ScalableImageFigure(RenderedImageFactory
.getInstance(FileLocator.find(AsurEditPlugin.getPlugin()
.getBundle(),
new Path("icons/full/obj32/User.gif"), null)),
true, true, true);

this.add(fFigureUserImage, new Rectangle(getMapMode().DPtoLP(14),
getMapMode().DPtoLP(26), getMapMode().DPtoLP(32),
getMapMode().DPtoLP(32)));

}

/**
* @generated
*/
private boolean myUseLocalCoordinates = false;

/**
* @generated
*/
protected boolean useLocalCoordinates() {
return myUseLocalCoordinates;
}

/**
* @generated
*/
protected void setUseLocalCoordinates(boolean useLocalCoordinates) {
myUseLocalCoordinates = useLocalCoordinates;
}

/**
* @generated
*/
public WrappingLabel getFigureUserNameFigure() {
return fFigureUserNameFigure;
}

/**
* @generated
*/
public ScalableImageFigure getFigureUserImage() {
return fFigureUserImage;
}

}

}

--------------090006070401090707040002
Content-Type: text/plain;
name="UserNameEditPart.java"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="UserNameEditPart.java"

package fr.irit.guideme.asur.asur.diagram.edit.parts;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.draw2d.IFigure;
import org.eclipse.draw2d.Label;
import org.eclipse.draw2d.geometry.Dimension;
import org.eclipse.draw2d.geometry.Point;
import org.eclipse.draw2d.geometry.Rectangle;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.transaction.RunnableWithResult;
import org.eclipse.gef.AccessibleEditPart;
import org.eclipse.gef.EditPolicy;
import org.eclipse.gef.GraphicalEditPart;
import org.eclipse.gef.Request;
import org.eclipse.gef.commands.Command;
import org.eclipse.gef.editpolicies.NonResizableEditPolicy;
import org.eclipse.gef.handles.NonResizableHandleKit;
import org.eclipse.gef.requests.DirectEditRequest;
import org.eclipse.gef.tools.DirectEditManager;
import org.eclipse.gmf.runtime.common.ui.services.parser.IParser;
import org.eclipse.gmf.runtime.common.ui.services.parser.IParserEdi tStatus;
import org.eclipse.gmf.runtime.common.ui.services.parser.ParserEdit Status;
import org.eclipse.gmf.runtime.common.ui.services.parser.ParserOpti ons;
import org.eclipse.gmf.runtime.common.ui.services.parser.ParserServ ice;
import org.eclipse.gmf.runtime.diagram.ui.editparts.CompartmentEdit Part;
import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditP art;
import org.eclipse.gmf.runtime.diagram.ui.editparts.ITextAwareEditP art;
import org.eclipse.gmf.runtime.diagram.ui.editpolicies.LabelDirectE ditPolicy;
import org.eclipse.gmf.runtime.diagram.ui.l10n.DiagramColorRegistry ;
import org.eclipse.gmf.runtime.diagram.ui.requests.RequestConstants ;
import org.eclipse.gmf.runtime.diagram.ui.tools.TextDirectEditManag er;
import org.eclipse.gmf.runtime.draw2d.ui.figures.WrappingLabel;
import org.eclipse.gmf.runtime.emf.core.util.EObjectAdapter;
import org.eclipse.gmf.runtime.emf.ui.services.parser.ISemanticPars er;
import org.eclipse.gmf.runtime.notation.FontStyle;
import org.eclipse.gmf.runtime.notation.NotationPackage;
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.jface.text.contentassist.IContentAssistProcessor ;
import org.eclipse.jface.viewers.ICellEditorValidator;
import org.eclipse.swt.SWT;
import org.eclipse.swt.accessibility.AccessibleEvent;
import org.eclipse.swt.graphics.Color;
import org.eclipse.swt.graphics.FontData;
import org.eclipse.swt.graphics.Image;

import fr.irit.guideme.asur.asur.diagram.edit.policies.AsurTextSele ctionEditPolicy;
import fr.irit.guideme.asur.asur.diagram.providers.AsurElementTypes ;
import fr.irit.guideme.asur.asur.diagram.providers.AsurParserProvid er;

/**
* @generated
*/
public class UserNameEditPart extends CompartmentEditPart implements
ITextAwareEditPart {

/**
* @generated
*/
public static final int VISUAL_ID = 5014;

/**
* @generated
*/
private DirectEditManager manager;

/**
* @generated
*/
private IParser parser;

/**
* @generated
*/
private List parserElements;

/**
* @generated
*/
private String defaultText;

/**
* @generated
*/
public UserNameEditPart(View view) {
super(view);
}

/**
* @generated
*/
protected void createDefaultEditPolicies() {
super.createDefaultEditPolicies();
installEditPolicy(EditPolicy.DIRECT_EDIT_ROLE,
new LabelDirectEditPolicy());
installEditPolicy(EditPolicy.PRIMARY_DRAG_ROLE,
new NonResizableEditPolicy() {

protected List createSelectionHandles() {
List handles = new ArrayList();
NonResizableHandleKit.addMoveHandle(
(GraphicalEditPart) getHost(), handles);
return handles;
}

public Command getCommand(Request request) {
return null;
}

public boolean understandsRequest(Request request) {
return false;
}
});
}

/**
* @generated
*/
protected String getLabelTextHelper(IFigure figure) {
if (figure instanceof WrappingLabel) {
return ((WrappingLabel) figure).getText();
} else {
return ((Label) figure).getText();
}
}

/**
* @generated
*/
protected void setLabelTextHelper(IFigure figure, String text) {
if (figure instanceof WrappingLabel) {
((WrappingLabel) figure).setText(text);
} else {
((Label) figure).setText(text);
}
}

/**
* @generated
*/
protected Image getLabelIconHelper(IFigure figure) {
if (figure instanceof WrappingLabel) {
return ((WrappingLabel) figure).getIcon();
} else {
return ((Label) figure).getIcon();
}
}

/**
* @generated
*/
protected void setLabelIconHelper(IFigure figure, Image icon) {
if (figure instanceof WrappingLabel) {
((WrappingLabel) figure).setIcon(icon);
} else {
((Label) figure).setIcon(icon);
}
}

/**
* @generated
*/
public void setLabel(WrappingLabel figure) {
unregisterVisuals();
setFigure(figure);
defaultText = getLabelTextHelper(figure);
registerVisuals();
refreshVisuals();
}

/**
* @generated
*/
protected List getModelChildren() {
return Collections.EMPTY_LIST;
}

/**
* @generated
*/
public IGraphicalEditPart getChildBySemanticHint(String semanticHint) {
return null;
}

/**
* @generated
*/
protected EObject getParserElement() {
return resolveSemanticElement();
}

/**
* @generated
*/
protected Image getLabelIcon() {
EObject parserElement = getParserElement();
if (parserElement == null) {
return null;
}
return AsurElementTypes.getImage(parserElement.eClass());
}

/**
* @generated
*/
protected String getLabelText() {
String text = null;
EObject parserElement = getParserElement();
if (parserElement != null && getParser() != null) {
text = getParser().getPrintString(
new EObjectAdapter(parserElement),
getParserOptions().intValue());
}
if (text == null || text.length() == 0) {
text = defaultText;
}
return text;
}

/**
* @generated
*/
public void setLabelText(String text) {
setLabelTextHelper(getFigure(), text);
Object pdEditPolicy = getEditPolicy(EditPolicy.PRIMARY_DRAG_ROLE);
if (pdEditPolicy instanceof AsurTextSelectionEditPolicy) {
((AsurTextSelectionEditPolicy) pdEditPolicy).refreshFeedback();
}
}

/**
* @generated
*/
public String getEditText() {
if (getParserElement() == null || getParser() == null) {
return ""; //$NON-NLS-1$
}
return getParser().getEditString(
new EObjectAdapter(getParserElement()),
getParserOptions().intValue());
}

/**
* @generated
*/
protected boolean isEditable() {
return getParser() != null;
}

/**
* @generated
*/
public ICellEditorValidator getEditTextValidator() {
return new ICellEditorValidator() {

public String isValid(final Object value) {
if (value instanceof String) {
final EObject element = getParserElement();
final IParser parser = getParser();
try {
IParserEditStatus valid = (IParserEditStatus) getEditingDomain()
.runExclusive(new RunnableWithResult.Impl() {

public void run() {
setResult(parser.isValidEditString(
new EObjectAdapter(element),
(String) value));
}
});
return valid.getCode() == ParserEditStatus.EDITABLE ? null
: valid.getMessage();
} catch (InterruptedException ie) {
ie.printStackTrace();
}
}

// shouldn't get here
return null;
}
};
}

/**
* @generated
*/
public IContentAssistProcessor getCompletionProcessor() {
if (getParserElement() == null || getParser() == null) {
return null;
}
return getParser().getCompletionProcessor(
new EObjectAdapter(getParserElement()));
}

/**
* @generated
*/
public ParserOptions getParserOptions() {
return ParserOptions.NONE;
}

/**
* @generated
*/
public IParser getParser() {
if (parser == null) {
String parserHint = ((View) getModel()).getType();
IAdaptable hintAdapter = new AsurParserProvider.HintAdapter(
AsurElementTypes.User_2007, getParserElement(), parserHint);
parser = ParserService.getInstance().getParser(hintAdapter);
}
return parser;
}

/**
* @generated
*/
protected DirectEditManager getManager() {
if (manager == null) {
setManager(new TextDirectEditManager(this, TextDirectEditManager
.getTextCellEditorClass(this), AsurEditPartFactory
.getTextCellEditorLocator(this)));
}
return manager;
}

/**
* @generated
*/
protected void setManager(DirectEditManager manager) {
this.manager = manager;
}

/**
* @generated
*/
protected void performDirectEdit() {
getManager().show();
}

/**
* @generated
*/
protected void performDirectEdit(Point eventLocation) {
if (getManager().getClass() == TextDirectEditManager.class) {
((TextDirectEditManager) getManager()).show(eventLocation
.getSWTPoint());
}
}

/**
* @generated
*/
private void performDirectEdit(char initialCharacter) {
if (getManager() instanceof TextDirectEditManager) {
((TextDirectEditManager) getManager()).show(initialCharacter);
} else {
performDirectEdit();
}
}

/**
* @generated
*/
protected void performDirectEditRequest(Request request) {
final Request theRequest = request;
try {
getEditingDomain().runExclusive(new Runnable() {

public void run() {
if (isActive() && isEditable()) {
if (theRequest
.getExtendedData()
.get(
RequestConstants.REQ_DIRECTEDIT_EXTENDEDDATA_INITIAL_CHAR) instanceof Character) {
Character initialChar = (Character) theRequest
.getExtendedData()
.get(
RequestConstants.REQ_DIRECTEDIT_EXTENDEDDATA_INITIAL_CHAR);
performDirectEdit(initialChar.charValue());
} else if ((theRequest instanceof DirectEditRequest)
&& (getEditText().equals(getLabelText()))) {
DirectEditRequest editRequest = (DirectEditRequest) theRequest;
performDirectEdit(editRequest.getLocation());
} else {
performDirectEdit();
}
}
}
});
} catch (InterruptedException e) {
e.printStackTrace();
}
}

/**
* @generated
*/
protected void refreshVisuals() {
super.refreshVisuals();
refreshLabel();
refreshFont();
refreshFontColor();
refreshUnderline();
refreshStrikeThrough();
refreshBounds();
}

/**
* @generated
*/
protected void refreshLabel() {
setLabelTextHelper(getFigure(), getLabelText());
setLabelIconHelper(getFigure(), getLabelIcon());
Object pdEditPolicy = getEditPolicy(EditPolicy.PRIMARY_DRAG_ROLE);
if (pdEditPolicy instanceof AsurTextSelectionEditPolicy) {
((AsurTextSelectionEditPolicy) pdEditPolicy).refreshFeedback();
}
}

/**
* @generated
*/
protected void refreshUnderline() {
FontStyle style = (FontStyle) getFontStyleOwnerView().getStyle(
NotationPackage.eINSTANCE.getFontStyle());
if (style != null && getFigure() instanceof WrappingLabel) {
((WrappingLabel) getFigure()).setTextUnderline(style.isUnderline());
}
}

/**
* @generated
*/
protected void refreshStrikeThrough() {
FontStyle style = (FontStyle) getFontStyleOwnerView().getStyle(
NotationPackage.eINSTANCE.getFontStyle());
if (style != null && getFigure() instanceof WrappingLabel) {
((WrappingLabel) getFigure()).setTextStrikeThrough(style
.isStrikeThrough());
}
}

/**
* @generated
*/
protected void refreshFont() {
FontStyle style = (FontStyle) getFontStyleOwnerView().getStyle(
NotationPackage.eINSTANCE.getFontStyle());
if (style != null) {
FontData fontData = new FontData(style.getFontName(), style
.getFontHeight(), (style.isBold() ? SWT.BOLD : SWT.NORMAL)
| (style.isItalic() ? SWT.ITALIC : SWT.NORMAL));
setFont(fontData);
}
}

/**
* @generated
*/
protected void setFontColor(Color color) {
getFigure().setForegroundColor(color);
}

/**
* @generated
*/
protected void addSemanticListeners() {
if (getParser() instanceof ISemanticParser) {
EObject element = resolveSemanticElement();
parserElements = ((ISemanticParser) getParser())
.getSemanticElementsBeingParsed(element);
for (int i = 0; i < parserElements.size(); i++) {
addListenerFilter(
"SemanticModel" + i, this, (EObject) parserElements.get(i)); //$NON-NLS-1$
}
} else {
super.addSemanticListeners();
}
}

/**
* @generated
*/
protected void removeSemanticListeners() {
if (parserElements != null) {
for (int i = 0; i < parserElements.size(); i++) {
removeListenerFilter("SemanticModel" + i); //$NON-NLS-1$
}
} else {
super.removeSemanticListeners();
}
}

/**
* @generated
*/
protected AccessibleEditPart getAccessibleEditPart() {
if (accessibleEP == null) {
accessibleEP = new AccessibleGraphicalEditPart() {

public void getName(AccessibleEvent e) {
e.result = getLabelTextHelper(getFigure());
}
};
}
return accessibleEP;
}

/**
* @generated
*/
private View getFontStyleOwnerView() {
return getPrimaryView();
}

/**
* @generated
*/
protected void addNotationalListeners() {
super.addNotationalListeners();
addListenerFilter("PrimaryView", this, getPrimaryView()); //$NON-NLS-1$
}

/**
* @generated
*/
protected void removeNotationalListeners() {
super.removeNotationalListeners();
removeListenerFilter("PrimaryView"); //$NON-NLS-1$
}

/**
* @generated
*/
protected void refreshBounds() {
int width = ((Integer) getStructuralFeatureValue(NotationPackage.eINSTANCE
.getSize_Width())).intValue();
int height = ((Integer) getStructuralFeatureValue(NotationPackage.eINSTANCE
.getSize_Height())).intValue();
Dimension size = new Dimension(width, height);
int x = ((Integer) getStructuralFeatureValue(NotationPackage.eINSTANCE
.getLocation_X())).intValue();
int y = ((Integer) getStructuralFeatureValue(NotationPackage.eINSTANCE
.getLocation_Y())).intValue();
Point loc = new Point(x, y);
((GraphicalEditPart) getParent()).setLayoutConstraint(this,
getFigure(), new Rectangle(loc, size));
}

/**
* @generated
*/
protected void handleNotificationEvent(Notification event) {
Object feature = event.getFeature();
if (NotationPackage.eINSTANCE.getSize_Width().equals(feature)
|| NotationPackage.eINSTANCE.getSize_Height().equals(feature)
|| NotationPackage.eINSTANCE.getLocation_X().equals(feature)
|| NotationPackage.eINSTANCE.getLocation_Y().equals(feature)) {
refreshBounds();
}
if (NotationPackage.eINSTANCE.getFontStyle_FontColor().equals(f eature)) {
Integer c = (Integer) event.getNewValue();
setFontColor(DiagramColorRegistry.getInstance().getColor(c)) ;
} else if (NotationPackage.eINSTANCE.getFontStyle_Underline().equals(
feature)) {
refreshUnderline();
} else if (NotationPackage.eINSTANCE.getFontStyle_StrikeThrough()
.equals(feature)) {
refreshStrikeThrough();
} else if (NotationPackage.eINSTANCE.getFontStyle_FontHeight().equals(
feature)
|| NotationPackage.eINSTANCE.getFontStyle_FontName().equals(
feature)
|| NotationPackage.eINSTANCE.getFontStyle_Bold()
.equals(feature)
|| NotationPackage.eINSTANCE.getFontStyle_Italic().equals(
feature)) {
refreshFont();
} else {
if (getParser() != null
&& getParser().isAffectingEvent(event,
getParserOptions().intValue())) {
refreshLabel();
}
if (getParser() instanceof ISemanticParser) {
ISemanticParser modelParser = (ISemanticParser) getParser();
if (modelParser.areSemanticElementsAffected(null, event)) {
removeSemanticListeners();
if (resolveSemanticElement() != null) {
addSemanticListeners();
}
refreshLabel();
}
}
}
super.handleNotificationEvent(event);
}

/**
* @generated
*/
protected IFigure createFigure() {
// Parent should assign one using setLabel() method
return null;
}

}

--------------090006070401090707040002
Content-Type: image/png;
name="gmfmap.png"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="gmfmap.png"

iVBORw0KGgoAAAANSUhEUgAAAdQAAAFbCAYAAABswX9hAAAACXBIWXMAAAsT AAALEwEAmpwY
AAAKTWlDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVN3WJP3Fj7f92UP VkLY8LGXbIEA
IiOsCMgQWaIQkgBhhBASQMWFiApWFBURnEhVxILVCkidiOKgKLhnQYqIWotV XDjuH9yntX16
7+3t+9f7vOec5/zOec8PgBESJpHmomoAOVKFPDrYH49PSMTJvYACFUjgBCAQ 5svCZwXFAADw
A3l4fnSwP/wBr28AAgBw1S4kEsfh/4O6UCZXACCRAOAiEucLAZBSAMguVMgU AMgYALBTs2QK
AJQAAGx5fEIiAKoNAOz0ST4FANipk9wXANiiHKkIAI0BAJkoRyQCQLsAYFWB UiwCwMIAoKxA
Ii4EwK4BgFm2MkcCgL0FAHaOWJAPQGAAgJlCLMwAIDgCAEMeE80DIEwDoDDS v+CpX3CFuEgB
AMDLlc2XS9IzFLiV0Bp38vDg4iHiwmyxQmEXKRBmCeQinJebIxNI5wNMzgwA ABr50cH+OD+Q
5+bk4eZm52zv9MWi/mvwbyI+IfHf/ryMAgQAEE7P79pf5eXWA3DHAbB1v2up WwDaVgBo3/ld
M9sJoFoK0Hr5i3k4/EAenqFQyDwdHAoLC+0lYqG9MOOLPv8z4W/gi372/EAe /tt68ABxmkCZ
rcCjg/1xYW52rlKO58sEQjFu9+cj/seFf/2OKdHiNLFcLBWK8ViJuFAiTcd5 uVKRRCHJleIS
6X8y8R+W/QmTdw0ArIZPwE62B7XLbMB+7gECiw5Y0nYAQH7zLYwaC5EAEGc0 Mnn3AACTv/mP
QCsBAM2XpOMAALzoGFyolBdMxggAAESggSqwQQcMwRSswA6cwR28wBcCYQZE QAwkwDwQQgbk
gBwKoRiWQRlUwDrYBLWwAxqgEZrhELTBMTgN5+ASXIHrcBcGYBiewhi8hgkE QcgIE2EhOogR
Yo7YIs4IF5mOBCJhSDSSgKQg6YgUUSLFyHKkAqlCapFdSCPyLXIUOY1cQPqQ 28ggMor8irxH
MZSBslED1AJ1QLmoHxqKxqBz0XQ0D12AlqJr0Rq0Hj2AtqKn0UvodXQAfYqO Y4DRMQ5mjNlh
XIyHRWCJWBomxxZj5Vg1Vo81Yx1YN3YVG8CeYe8IJAKLgBPsCF6EEMJsgpCQ R1hMWEOoJewj
tBK6CFcJg4Qxwicik6hPtCV6EvnEeGI6sZBYRqwm7iEeIZ4lXicOE1+TSCQO yZLkTgohJZAy
SQtJa0jbSC2kU6Q+0hBpnEwm65Btyd7kCLKArCCXkbeQD5BPkvvJw+S3FDrF iOJMCaIkUqSU
Eko1ZT/lBKWfMkKZoKpRzame1AiqiDqfWkltoHZQL1OHqRM0dZolzZsWQ8uk LaPV0JppZ2n3
aC/pdLoJ3YMeRZfQl9Jr6Afp5+mD9HcMDYYNg8dIYigZaxl7GacYtxkvmUym BdOXmchUMNcy
G5lnmA+Yb1VYKvYqfBWRyhKVOpVWlX6V56pUVXNVP9V5qgtUq1UPq15WfaZG VbNQ46kJ1Bar
1akdVbupNq7OUndSj1DPUV+jvl/9gvpjDbKGhUaghkijVGO3xhmNIRbGMmXx WELWclYD6yxr
mE1iW7L57Ex2Bfsbdi97TFNDc6pmrGaRZp3mcc0BDsax4PA52ZxKziHODc57 LQMtPy2x1mqt
Zq1+rTfaetq+2mLtcu0W7eva73VwnUCdLJ31Om0693UJuja6UbqFutt1z+o+ 02PreekJ9cr1
Dund0Uf1bfSj9Rfq79bv0R83MDQINpAZbDE4Y/DMkGPoa5hpuNHwhOGoEcto upHEaKPRSaMn
uCbuh2fjNXgXPmasbxxirDTeZdxrPGFiaTLbpMSkxeS+Kc2Ua5pmutG003TM zMgs3KzYrMns
jjnVnGueYb7ZvNv8jYWlRZzFSos2i8eW2pZ8ywWWTZb3rJhWPlZ5VvVW16xJ 1lzrLOtt1lds
UBtXmwybOpvLtqitm63Edptt3xTiFI8p0in1U27aMez87ArsmuwG7Tn2YfYl 9m32zx3MHBId
1jt0O3xydHXMdmxwvOuk4TTDqcSpw+lXZxtnoXOd8zUXpkuQyxKXdpcXU22n iqdun3rLleUa
7rrStdP1o5u7m9yt2W3U3cw9xX2r+00umxvJXcM970H08PdY4nHM452nm6fC 85DnL152Xlle
+70eT7OcJp7WMG3I28Rb4L3Le2A6Pj1l+s7pAz7GPgKfep+Hvqa+It89viN+ 1n6Zfgf8nvs7
+sv9j/i/4XnyFvFOBWABwQHlAb2BGoGzA2sDHwSZBKUHNQWNBbsGLww+FUIM CQ1ZH3KTb8AX
8hv5YzPcZyya0RXKCJ0VWhv6MMwmTB7WEY6GzwjfEH5vpvlM6cy2CIjgR2yI uB9pGZkX+X0U
KSoyqi7qUbRTdHF09yzWrORZ+2e9jvGPqYy5O9tqtnJ2Z6xqbFJsY+ybuIC4 qriBeIf4RfGX
EnQTJAntieTE2MQ9ieNzAudsmjOc5JpUlnRjruXcorkX5unOy553PFk1WZB8 OIWYEpeyP+WD
IEJQLxhP5aduTR0T8oSbhU9FvqKNolGxt7hKPJLmnVaV9jjdO31D+miGT0Z1 xjMJT1IreZEZ
krkj801WRNberM/ZcdktOZSclJyjUg1plrQr1zC3KLdPZisrkw3keeZtyhuT h8r35CP5c/Pb
FWyFTNGjtFKuUA4WTC+oK3hbGFt4uEi9SFrUM99m/ur5IwuCFny9kLBQuLCz 2Lh4WfHgIr9F
uxYji1MXdy4xXVK6ZHhp8NJ9y2jLspb9UOJYUlXyannc8o5Sg9KlpUMrglc0 lamUycturvRa
uWMVYZVkVe9ql9VbVn8qF5VfrHCsqK74sEa45uJXTl/VfPV5bdra3kq3yu3r SOuk626s91m/
r0q9akHV0IbwDa0b8Y3lG19tSt50oXpq9Y7NtM3KzQM1YTXtW8y2rNvyoTaj 9nqdf13LVv2t
q7e+2Sba1r/dd3vzDoMdFTve75TsvLUreFdrvUV99W7S7oLdjxpiG7q/5n7d uEd3T8Wej3ul
ewf2Re/ranRvbNyvv7+yCW1SNo0eSDpw5ZuAb9qb7Zp3tXBaKg7CQeXBJ9+m fHvjUOihzsPc
w83fmX+39QjrSHkr0jq/dawto22gPaG97+iMo50dXh1Hvrf/fu8x42N1xzWP V56gnSg98fnk
gpPjp2Snnp1OPz3Umdx590z8mWtdUV29Z0PPnj8XdO5Mt1/3yfPe549d8Lxw 9CL3Ytslt0ut
Pa49R35w/eFIr1tv62X3y+1XPK509E3rO9Hv03/6asDVc9f41y5dn3m978bs G7duJt0cuCW6
9fh29u0XdwruTNxdeo94r/y+2v3qB/oP6n+0/rFlwG3g+GDAYM/DWQ/vDgmH nv6U/9OH4dJH
zEfVI0YjjY+dHx8bDRq98mTOk+GnsqcTz8p+Vv9563Or59/94vtLz1j82PAL +YvPv655qfNy
76uprzrHI8cfvM55PfGm/K3O233vuO+638e9H5ko/ED+UPPR+mPHp9BP9z7n fP78L/eE8/sl
0p8zAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAA dTAAAOpgAAA6
mAAAF2+SX8VGAAAxv0lEQVR42uydfZwdVX3/P7MPyUKIRoGggqgBhL4kkJan AGqyqNFfBaya
WgVU5EHkQaXSGEAlCWkTkFKggpjGYAoIFiNqU36GIE2CjQQCiBLaIogi4SGA BMjTZrO7t39s
7mZ2Mg/nzJyZO3Pv+/163dfunTtzzpkzM+dzPmdmzter1Wo1VZzxJ83VI7dc JAAAgEbRYbPy
rFmzNGPGjFQZzZo1K3GdNGmvWLFi6O+kSZM4ogAAUH5BTSumJtubCG4Y5837 paYe2Kvz5v1S
j1gIqud5kiS/QQ9blhXP89QEgwAAAJBAm2uXWSRTr7xXUw/s1SO7TdHUA3s1 9cp7S1fBiCkA
AILq3KG6YsWKFRp/0lyN37hUj+w2RV88fFBUx29cqvEnzR0aBjYRu7orDXOS nucNfcKWmS6P
+z3pNwAAwKGGEhSPoIDU8wj+rTP+pLlDw7x1MZU0JKr14d/xJ8114i7rH385 bZfH/V4X8voH
AACqiVfUU75JDzTZPPC0YsWKnUT1Ww+M0PiNS7XosRG69qxjEh9Q8jvSuP/D HG3wvqvJctvt
AAAAh5o7kyZN0iO3XDQ0zFsX00d2m6JHbrnIydO+OEcAAMhNUMtyD7XOoguO 1qLHdjjTRRcc
nSodBBMAALJS2HuoeTnca886RufN+6WuPesYp+lG3Qetu9cwMY5anjYfAACo Dh4zJVlWWMQ9
Tlf3PrmHCgBQTSr9Hmqdqk876H/iGTEFAMChAgAA4FCr7FABAAAqJahlBaEH AIBGw5AvAABA
0Q61rE4QhwoAADhUAACAJqDQiR2KdKSm5fS8B1WrHbb9//AJFqra5yjiNZw8 YshCc5wbAAiq
A5EqApfByuuiGjVhg6mouBThqADoeTWCYYEAaJTj9zfPAAdR4QRd13dR+QC0 Arw24xPVtPgn
0K/yZPpJ4eeaSRhd1VczjWiUtZ4BmlJQyzY5fplENa5RMQ1GHtYwx80nnBSs 3GR5lv3wL0/a
32ADa1svSevb7EPQTaYpR9T+mOxnUj25OK+S6t5U9LPkUz9/EVZAUCvgULMG K89bVIMh4GyC
kadJNyrkXFw5XO1H0nphMWdN6yVsv2z2yS+kpvVisr9RoxRpj1Pa42FT90Xn 418PYYVmp7L3
UE2G1urlDf6NT/Ow0u2jq3tyNuuEiUOWfNKm52Kf4uou70Y+boQhTHxsxS5N 3acR1az5BAUZ
AIfa5O97lk1MXQtzkisy+S3JVblez8U+xbkjF+WwLWNW1xa1vet9cZkPwR8A QS25Q20VMXX9
kFBSWiZDqK4cZBFu1VTAinarWV17Uc47Sz5Rw+0AzUgl30N17ZaT3kN1JYRZ g5EnpRslhHHl
SMoj6j6i7f5mKU/Ufcw0+1Sv+zRp+Nf3r2uyPJi/bR0lbW+6L0GXmFc+YXkB NDvMlNSISqeh
Ac49gKaDuXwBAABwqAAAADhUAACA1hTUsuJS6Ok0AABAGhjyBQAAKNqhtsJD SWnSMplTNutc
ugAAgENt/kocJpIPRKx1+NB/VDkAQIsLapkmdnBVLhfByk1fqC9KUHnXkHoF gOKp9OT4rsqV
NVj54OwxD8ZOX2iyjl94iw4sHjaLk8s8ixAjgnIDQCPhHioUQp5i00z3pbnH DoBDrbRDLaP4
RDkek7mBTdaPys//Ny4Nk/lfg8vj5o2N29bGXZuKVdx8tcG6sHWgWfKJmhcY AHColXGoeQQr
z8O9FBlY3C8AaYJwx03WnyXodpoIJgTlBoDc2+hWf8o36YEm0weezO6Pmt1D jXIwwcbXZHmY
mCXlF/Z/koM2LaPtdnH1Y/JbsC6SXH3U6ECSW3WVj+l+AQAOtbQOtVnJGnTa xjkWtT9pnBtB
uQEgb7iH6sLmDw1bJr82E7dOlHi4LGdc3lVpuIPO2abccXXqUryy5MM9VIAW ENRmfA/VtcP1
vAdzd2dBYXEZWNxWGMLSTpNnms5DUsDwMPGNqzeCcgNApvafmZLcOdSkRrlq TjCN23UlCGUS
FkQOAEzgHqoj55h0b6xM9yHLLNLcNwQAHCoAAAAOFYcKAACQhQ6qIF+hb8RD XKMOOJfKB2s2
PX4dlQCQAYZ8mxAEFRBUgOJhyLdk5QqbAjHsdRKmpQMAwKFC2oO1/R3XpOkL caiAQwXAoba8
Q/WLZ56TRLRCg98MArHp8esS9wMhBCgHTD1YwnL5hdRkQn2bhjaNe930+HW5 ud48046rE3+e
YcvKsF9F1w0A4FCb7B7qjmHdupAGnaqNex11wLnDPlAM1DUADhWHWoFy1WqH DYmqC/ca5tbi
XFzQOdW/B//GpZdX+UzyCSurf/uwtIJu32R5MN24MkeVO+iek/YzqewIPQAO tdLlMv2b1oUm
CZP/42/s659ggxu33CS/oKiEpWfjrJPKlyWfrHnHLbcpc1JZTPIKS9N13QAA DrWh5TL9G3Sh
dWHNKg5JDtBkedr80qaX9wNIYU7bVR3kickDSq6OAQDkKKjNGr6tauUyfX3G VmjDhnKz4uIh
KJNyuBrKzKMOXIqpyZBxcJiYYV6AYrAa8sWh5l8u/8NIwe/1/4Pr5O16mjWf ZhWauP3CrQLg
UFumXGmDbNs2uGEPqsTdA/S7HtN7cVH5xDXySemblDuLUNrmHbc8bT5pt8m7 bgAgof1mpqTW
ciiQ3vWaDJO7Tr/ofQSA9PCUbwuWC8oj0vUPnSAAHCrgUKGJBB4AcKiUCwAA GgoBxnEaAADg
AIZ8AQAAHMCQbwuWCwAAcKgAAAClhIkdCnakpuX0R5KJmuwhS1/I87zY7aN+ T9rOtgxZ9wMg
r2ugVcvCfhYkqEw9mK0stkPAdVGNEjZb4TIR4jQnvE36rdaAVL2BSnNs8yx3 WCes0R0z18eA
Oq+uMHMPtfQN5oNOTjz/J460J6k/fdvpE6smYK0m1qbnju350iy4FlPqPP99 yes6xqFWRFTT
TIZvMqwbPEHDtsl68oXlE9bLjSuPv1xR60VdcEnrmzrqtOlGlc22zEnpu6pH m/pIuz/+8phs
4/8tuH0wnTR1Z7tuVJ2F7WfY92Be1HmxdR61HIdawnJ5nrfTJ6y8cQHGXTvV tK4y2GPO2uMO
nuzBCyRsveDFk5Sef3lY+ePSiDqWwf23TTdLmeP2xVU9Rp0fYeewi2OQdB6m Pe/S1l2W45V0
rfjXTzrnqPPi6ty/3JVjxaE2YDjCJMD4zmkepjIT5/hMT1bTh69cnPwmaTTy Pk0eQ1Jh9Rhc
Fvc9yhW4GC1Jsy9xD841qv5d7Cd1Xmyd247O4FArTtnFNOiS4nrDcSes6/VM 3bmJQ2tUfbq+
j+aqd257X77Iusxad2mdWt77SZ3ns5/+UaisEGC8icW0EQ8ImQyhuuyt5t0z LrphKsqtunT/
ptu47hjY3ncs8hooyzlBnZsJqat64j3UErvlpPdQ0wqcbQ8wTdDzqHsXSW7Q 1Xpx69umETYs
5Cpdm31MytOmDLbrJJXDtIE1rZO0nUGbunOdd5r9DDoj6jz/Og+rd2cdHWZK AoCy06zvLZd5
v3hX3B7uobZguQCqIjYu728BdZ57/eFQAQAAcKg4QQAAqJ6gQuOEnk4DAEC5 YcgXAACgaIfK
kG+1HGrU1Ie26wAAAA61tQ/uMJF8IGKtw4f+41QAAMCh4lATGIyruvOncQIP zdlxoyzsJw4V
mvbCSw79ZrZO+rBTadYvKqhxUe/bNXPQaFd16CKduMnkqfPGnf84VBxqUzlU iHLu+TUmUWGs
CBqd/75Q58XsC04Zh4pDTelQwwJU2wQN9v+WNAdnWDDjLIHGkwIVpwm6bOpE 4lxAo4JGp63f
qDKYltfkWCTlYRKomzovps7zGjnCoeJQC3Gopn+LFW27AMM2Ab6TeteuAhVH /W4TVioqegVB
ownU3cx1XoaITDhUqKRDjXOPcW42zg1G9XqjetFxve40ZUmzXVz9mDacUfWQ VG9p9s9mpMGm
bGH7nvUY2bhPG1dKnbuv86S2AoeKQ236cpWBRgUkznN/0vTQCRpd/H5S5/ns J5Pq41Cb3J26
iYsZ1SPO6grjerRJTtBVnq4calidmrilrPXjqj6ybOf6WCSVJ6tDpc7d1bnJ +Y5DxQk2Xbk8
78HQj2t35r/You5jRa2fJc+wnnLYhW+bZ1w+Jr39YL5x9WN6jzbv8qc5pi7z TrOfcceaOs+n
zoOOGHCoONSUEe/LvM9Z73GmSb/q9dOsx52yAQ4Vh+rMOSb1Hst0H7LMjXWV 7w8RNJo6Bxwq
AAAADhWHylO+AAAIKgAAAFjBkC8AAEDRDpWh1eYoFwAA4FABAABKSYet45ox Y0YpnWAZymXi
SE3L6Z9fN24C8NQ9qZTzcbp8DYAZVlqk1x4xG08zHfus10WaGbk4Bvkeg9wF tYxiWrZyxZXF
dgi4LqpRwmYrXCZCnOakShPImffzytGI2HZ4sjTCWaZzzEuA0u5j0YHpOQbV aEO4h1r6BvPB
zBek7WTgaXARjq0qAgZKfY64HmlxmQbHgGOQ9TrHoVZEVJPCq6XpwUUFIo4a GnJxcsb1QuPK
kzawuMn6po46bbq2Qc9N6iwsHVf1GBbLNSqwtmlg+WDaUcEVbI5V2jSC6WTd R9vg4EnXFceg
8ccgLqA6DrUBvZvgJ6y8NkHBXU1kb+sqs4ZJMwnonLReWKSLLAGibQKcRwUN t003S5lNA01n
qUcXox82AbbDfksbSNv2fLMZRTE9f10dS45BeY5BmpB2ONQCh1WC5Q3+jU/z MJWZOMdnc+GY
1KeLYVeTNBp5jyavOKBJ+xfVsDRbXdjsYxmG+TkGXkPr3rQ9wKFWgLKLaVRP NazXaDpRv4v1
TN15XLmLCiydxz6apN+o/UvrwBp5brdqEIlWPwY2QQ6sBBWHWi0xbcQDQiZD qC57xHm71TII
T575mrr/VhASm3vpZS0fxyAfITWte95DLbFbTnoPNa3A2VyYaUTZP3QTds/D JJ+s68Wtb5tG
2LCPq3Rt9jEpT5syFFnOLOlFpRX10IirY2Czj0mjKTZ1ZDusyzFwfwzSHIeh 7ZgpCQCgHPB+
drXhHioAAICLDhEOFQAAAIeKQwUAgOoJKtBpAACAcBjyBQAAKNqhMuRbrX2M mvrQdh0AAMCh
tvbBHSaSD0SsdfjQf5wKAAA4VBxqAoNxVXf+NE7gwUX9NdvogsvIRnmccxwD rnMcaks3wsmh
38zWCQ9fZnP62KzvOrCyizJlbWCy7ktYeKtmCxKd9XhEpccxaNwxwKHiUNnH FiHPCz+vnjpB
ost73nAMWtut4lBxqMYONSyIsE1gX/9vSXN9RjmBtEGM45YnzXdsOxdyWNDj NPsSlXdYmdMG
ic6Shot9DMvf5DiYnmMcg8Yeg7xGlnCouDcn+2j6t+heqE0AX5sA30k9+azB vJPSswldlSY6
RZr6CytzXHqm9WJSJpN6tNnHsPwJ1N1cx6AqoQJxqFC4Q43rCce52Tg3GNZ7 jXPCcT31NGVJ
s11c/ZjUnU3ZspbZxGnZ5m0zcpEUrSSufrMcH5v/OQb5HIOk6wGHikMFB2QN GFyGoMdhDVNZ
e+AE6uYYNPoY2ATqxqFCKS/gKAdos05Ur9V1D9ukF+ui956HQw2r0zC34HJf bNxRHi7I1JFl
qd88HCrHoLhjEHY9NDM41BYa+g37uHZn/ospuDxp/Sx5hvWEwy5s2zzj8kly ATbr29RfmjKb
HAuTMuV5jriso7SBujkGbusozTMFOFRoeodatWE10+Wu0odqnAcAOFQcauoe aVLvsJXvadk0
zq1w/wcAcKgAAAA4VBwqAAC0nKACAABAOAz5AgAAFO1QGfIFAADAoQIAAORG x6O/vi/1xued
f6GuvfoyahEAABBUSXrXoUdZb+gfZk2zPQAAQNMJqiRlcaoutgcAAKgyvDYD AABQhKAePGEi
tQQAAJBFUBFTAACAjIKKmAIAAGQUVMQUAADAgaCueXgVNQMAAJBVUBFVAAAA R4KKqAIAADgS
VEQVAADAkaACAAAAggoAAFAIHVL2eKLEIwUAgFbHmzx5MvFQAQAAsgpqswQY xyUDAEAj6Wim
nZn6Vx8qbdkW/WRJruXLO/2y5VvWcrQq1D8ADyUBAAAgqAAAAE0jqJ7nUYuQ iahgDM0cpCGv
fSOwBUDj6DARSdfPLXmeNyzN4Pe8Gpe8Z306eMJEqzzC1o9LI036QYqY+apR +ZaxHPVjZnvs
GnkeA4AjQc1L3OLIMz9/45OlUSsKl+Wrp1X0fjcq3zKWI2u+VThnASDGocY5 yzgRjPo9bHl9
Wa1WGybiceu6FGB/rz/Y8Pobsaj14kQ7S0NqmneWRtZ0P+OWu6x3k3xclsPl /gfTMDmXkvI0
FdO47YPb+svj3yauTHmfCwBNL6h1gQsTtbhh2qjvUY43SpCj0nQ9RBzlXKP+ D343WZ6HM8kj
/bjG17XDt61Pk+9V2f/gtlnSzlK2pHPdpC4AwNChRolX0gNIZXxAycR5xDV6 jXzII89GzHQ/
Xe9/2vRcl8P1/reC8CCqACkENYokV1jGSZdMhtLiGs1G33tzMcSbtp5c52tT 70UfhyL2v8oU
fT4CVJHUr81U0a02yl3l0dA3Yj/L8kpG3uWw2f+gK3XpUoP3PMvaQQWACIca 9QBQ1L1V//ew
38OW+5f500nKw2WjYNJQhT3EYbq+acNj8zBMmvTT1EdYfi7yjKv3uHxcl6MR +5/22IXV2ZqH
VyWWzbUY80ASgIHRbKbJ8ZnLl7l8gfoHaBRMPQgAAICgAgAAIKjOKPtwLwAA ND8dzRCYGzEF
AIBG4y249Rc1qgEAACAb3EMFAABwQMfTj91NLQAAAGTEW/PwKoZ8AQAAMsKQ LwAAAIIKAABQ
Dobm8l37zPNatfphagQAACCNoPqFlPc5d2bRT5ZQN9SHU/zX3IwZM6iQjPjf pZ94xATts/eb
qBTan4bgzZw5s0bjGH3wqBvqIw8x/cY3vkFl5MDs2bMRV9qixgkqT/kiHtRH sWL6ta9dTGUU
wD/8wxyElTapMYL6wKrvSD09UleXpC6pa4y6NEbq2v7RGKmrS11dYyR1af8x r3CgWvTEfXLp
F2LXHzflO1RahJhedNGFVEbBzJ17GaJKW60z5szRdy/OtzO7I8B4T48mnLpQ h75+pNZt3brT
inuNHKmfr/xvjT98P0nSqlXPa/8xz3NEW5D+AU9/+ZXVob89vuSLenLpFxDV CGoD/VRCwVw4
fZouu/wKaXX+bvXPJ7xn6P9fPfwLKr9EbO3pCwjsFfruxdPyEdQede3I+LH/ 0cYl/6HNq36p
XSceo90+dLx0yARJg6PDnqSJE9+kVavUdKKKO02uj/6aF7n+iFG7a7+Djtbv ENWd3OlXp12g
gYGBYb+dOf3bam9vU5vnqa2tXe0dntrbOtTR0ab2jnZ1dHSoo71dHZ3tg3/b 23TB6R+mUi35
6rQLJEnfvOJKTZR7UfULaXAZwpofU//qQ0Zt9u+eXKe+3g363ZPrtN+4vbYL 7Gv5OdSenu09
aEkbl9yhMU+v1b6HHKbXnl6rV5bcoYFDDpVqkudJnjzVaq196/WOp3bVT+99 XFtfe1EjX7en
3rnvWH38yLfpHR3PNv2+99U8DfgO/5+f/S/61fWfl6eaRozaXZI07qCJevSO c/WuD1/HVb+d
oJhK0hGHH6gjJxys/r5+9ff36/nnXtAb3jhG2/r6tK2/TwN9A+rvH1DfwIAG Bgb0+6efD02n
FTj+hI8M/f8fi39q/Jufv7vgb/WPV17lVFSDYtpb69UIb8Sw3xHV4vn0nEul HqlP27Stt0ed
B03S1+9Zrb/XEZp+/WW6/Gz3t192DPlud6gDNWnzqpV6y8tdGtCL2lU1Pfv4 /6o2bXDsuU2e
PEkDknpyqoiDJ0zUmodXGS8vmjO/+7C2de2uuZ8+Ru8/5C2DAvvQ05rzw9U6 7QPjNXH3l0tx
QuVVX339nga2K+ph587Xg9edOfjdk8ZOOE91rf31b46u/L66FdSdh3tXP/CY Xv3TRnltntra
PLW1d6jj2RfV1t6m9vY2tbe3D37a2tTR0SbJC02nVVi2bJkkqbu7W//+09sl SSd+5GPDlifV
z1f+9kv6p6v+2Ymo1sXUL6J+Ma0vbxZRbXTbbJPPTRdfMuROv37Pai2d/Vn9 4fk1+vx1q9X5
rvfp6/es1q3jjtfxZ5+jrq6RWnTVVe4d6kBtQKPVqY1vGqnRXa/Txp7XNLr3 9YONpOcNCqon
LV/2ex38plcid9pP2Rs6G/7xl9vk7banVs/9mCRp3StbtNeYXfThv3irdh/d pQtu+IUmfnLv
xJOiynWzLeBQh/6vG6ftI8K7jdrF6AIp07kSvGBdNhRhznLCIQfo78786ND3 +37zpI46ZFz0
+Tf/x6HpjHnDHsO+v7L+pULrbcwb9hiWZ/B7HsLa3d09TGTj6jnI+V8+T1df c60zp+oXUZPl
NtdDfVnwvAz+HncdNXObnMR+4/bSwHLpD+vW6KyrLtDts25T77bNenXzS/rk txbrmmmD74J/
6pJp6ugaPSTEaerPdw91R5v4+ktn69WfLdbzq1Zqt4nHasz/O0EDtZpUq6nd G2wvk9xpXo1S
I3nglTdo4bL/1JPXniJJOvai2/WxY96pW5es1MTDJuja047S1tdelLS3Ud2E XQhVoL9/8DPx
y/O16poz1d8vfW3BCt39m99KklZdc6ZqnrTrriON0ivzueKyLFHOaeVDj6tN 0kDbju87JgVt
G+qptCWk8/Kf1g0TNP/3oh34y39a59xJ3/6jf1N3d/eQgAaFtLu7W7f/6N+M 8/3SF8/WP3/r
+tSiGnbfNEivtmmEOofWj3OpWc59k+2asU2O44w5V0iSvnvxNM2ZfIROv+Z+ /XTmbdqt6/Xa
KKmzfYT+8fRx+sr81ZrbfYRuvfSKzPU3bMj34bvu1W/a2tTW3qaOg46TDjpO XSNHqOOFAXW8
vEYd7e166IEn1NbWpp4e+wHfeiH8hYlya0kuLuz34LK4nl2axvKhP7ysQ3b3 9I6xu+lz1/+X
3rnvWF1wwsH60dKVTpxR2P5EHUSTejNxxWnqY9tAm/pqNf3X1Wdo4pfn67+u PkOzTnuvLtV7
VatJ/bUBqeZpl932TtUwZD0/4urSJm2T9W16/mHOqa+vX8f+xQFD3++5/3/0 3iP/LDKNFff+
KtKBBZcPDAxojz3frJdefG7oryTtseebh9YJW+ZfHrd+MN037r7X0DpJ+cUt j2PRD28dJqp+
MV30w1ut7y+fd+5Zuva6eZmdaq+2DTrS7eIZ/J51KNN/Lvr/Zukopr3ObK9J 27TjymZD/Qne
T1/yDW3ZslG1A45Tb/9mbeyRfvbfi3X4Ww7VgPr09VNG6as33qcfjTsxc/0N G/Kd8IGjtf+o
dskbfDip76XH1bnHAZI81VTTqlW/1RFHHqAFix7V+w/qSS0cJoIR1xsw2S4s H5e9soXL1uiJ
b50sSbp3XU1XvXc//f6FjU6ckEk5w9YPq5e4+kpbH9sGPPX313yOtaZL//UX Qw71nn86XffO
GRyCHPOus50Pv5o0Pibnm8m5Z3POJR27sMZ+a+823b1yjWoaHPmpSbp75ZrI fdva228lqHXh
emHdMxoYGNDYvfbWC+ueGSZq9e9hy+PW96fr377+PS6/4HIXD1qlTeOcs8/U t6+f72T4t+5I
R6hzSFSLIOuQrs11ZnMdpLlukjTClpsuna2PfOkceQM1vbrpJXW2j9ARbzlU ix64Te8+8Ght
HehVf790/NnnaPSeoxKdalzbsNNrM+3e4MBSz0uP6bffO1nv/Nz31bXHOwcH nGo1dXpm7jSq
V+JK0NL2WrKI6uiu4b3N/fYarXk/HxSRo/bfQ4efO0/X/e3HpU2/c7I/Yb3S rPvvgr4+T/2+
p7z7azV97TPv1tdq75G82pDYnjD3KS2+6G3a76SlhR7nqG2S7ivlTa1/56HI nq29et+xBw99
//nKNcO+B/n5ygdD05GksXvtGBFY9+wfh9bz/x9Wjvr3qOX+dP3LTdON2n7s Xntr3bN/tKrD
vznpMzu50/rwb3d3t/7tlhtTHZuzP3+arv+XG6xE9VcP/2Jo2NcvoH5RDa6f drQqzBVlEVDT
aybPoWHT69QFnSNH6vIpR+nkK1bp+nP3U7/6deyBR+vmZT/U+458jwYGPF0z bYb2G7eXPn3J
pbrp0ktS7ctODyW1e9JA/zb99nsn68hPfEH3f+9k/flXHxjsPnuDDyQN3kHt yjymn4U06Qft
uW0aE/Z9o5a0Sc+u36TvfP44HX7uPH3ig8fokN09HXr2PF1+1vFa8d/P6cNv y+7EXK7vmt5a
m+pt512Xn6bj/u4G3XX5aXroij13Wvd95y/U3VdPSS2qtsfItG4aUYfhDrVX P/35fYPvo9Vq
GrXLqMHvkQ61N9KJPbf2D6F5RTnX4Peo5f50TdY32b6+bK+37Bu6ThifOuXU YWIafCipLqq3
3rww1fE564xTNe+7C1M71bqomg7zmrZTRbjbqFseWdrLMrVhnbvstv3ck77w rd9pzhmv09aB
Xh13xHt0853/rv6BE4beT7UVU3/d7PTaTJvn6VdXHq0j3/1W6dk7dOS736r7 v3m4Dpv+4ODv
8tTTo1Jh24tKe//hz3Z9QcdPOlxXLH5UJx62r34442S9Y+xu+uqJ4yVJNyz7 rV6/60hJm512
HMr2AEF/vyd/23nn3NP00BVj9ZcX3zJ8vQ0rNXLXEZp8xjTddf0HdNBn78p0 LKv+IEWYEPb2
9Okj7z9q6PvPVjw87HuQu5Y/ZDzk60pQ/cv33necnvnjk6nT9W8vSc/88Unt ve846+Ha7u5u
ff/GG4b+9wttluHjM0/7jObfcKOxqPpdal1Uo9ZzcZ27HOEzTSvr/dpG8+k5 l+rWSweDJtxx
7kd0/NnnaPq8D0re9hsttRP1sy99xEn97eRQ2+rvPIw+wLfa04PLa1K7PM04 a5JmzVuhqRO7
nIhF2MkS99BJ3HZphlJs+OsD+/TIpj1195pn9MzLW3Y0FG/cRZ86qC9VGWxP 2LhH5U2WR+Vr
Wid9Axp86tvHyy/3SVtfCF2/q32LtvbWUg9x2ZTbtC5N6sqkLHaCuvNQ7Suv btApX/zmsGXf
X7TUOh3T5U//4XHtve+4Yd/rv4ctj1s/Kt2n//D40O9R27/17QeEpmkipJJ0 08L5Q9vctHD+
0PK4ejDl9FNP1oKF308tqrZiWpRw2V4ztue7zbWa9Tq1IfgaTHuXdM3xg2nW Xamr+huaHP/v
v7NcF152vg59/Uj9/nsf1ovrdjx1t+deb9Y7PneHfr7yUb3/2HcNLXchqmWD qQeT6+OHC6ep
rzY4/P/mN47QG0Z3asyoDq27/+7tawx2yk65+GINbHpKt/zz93XEuXe3bB3W px783Gc+Vdoy
vm3cgXrqycc44X1878Zbref+ZS7f8rfZUy+cpkWXXZFLWTr8Xy678Ort/713 +FpPSbr/cknS
gpv/Y2jxhIPeLuntHNEW469PDT8Z9z3ya0P/33v1cRrY9JRuvPJmHX3+f1Jp DpxTq5evaD57
yif0rzffZjWpPiJabj4959LcxHSYoH79C5OpbXAKYhoUrPLOwfu7365p2TmC Yxvgk6ZKkm66
ZVEuk+pDsYTNgpSbQwVwBUJaLUGFeE7+5Mf0/R/cXkgIOKguCCpAQRALtdqc 9InBJ0Fvue2n
0vZwwIgrIKgAOFRIySennjD0/w8WLUZcYQhv5syZNaoBIH8+8bG/pBKamNtu //9UQqsLav21
GQAAAEhPG1UAAADgwKHWajUcKgCUlrBwbQBlpEOSHv31fdQEAJSORT9ZMvQ/ 7RSUHYZ8AQAA
EFQAAAAEFQCgUKochgwqLKgHT5g47MOJDwBlF0jaDWgksTMlBeOTVjm4MwAA QEMcalKP0N8T
DHOycQ43av2odOmJAkCatipqhC2uPWnkyBw0sUONO1HrbjXoXP3fw5bHrR/8 DUcMAHH425S4
9sN0hC2ufQLIJKj+HppLoYvq+cWlG3fhAACYtjN5bQdgfA/Vda8SACBPMQ06 TdonyJu2Mpz4
Nic67hQAimoXcKvgzKHanMxhvbuw5XHrR6WLgAJAlnbJ9HfT9gkgDK9Wq9Xy mCMzjx4j7hSg
tVj0kyVavny5li1bxly+UHqYKQkAAMCVQ501axY1AQClpO5Qaaeg9II6efJk 4qECAAC4cKhU
AwCUlUd/fZ/edehRVASUHu6hAgAAIKgAAAAIamXxPC/X9QEgHd3d3bRNtE3N K6ie5w37lPVg
cmIBVJsVK1YM+0vb5C4/F2Uoez1XxqHWarWhj78CeR4KAFwxc+ZMTZ48WTNn zqRtguYV1OAJ
XD9x/SdwXE8x+Jvp9mHbpRkSSSqXyXIAyI8FCxZo8uTJ2meffTR58mQtWLCA timntslkf6Lq
IthxsU237G1uae6hhvUUPc8btjxYif5lcT3N+rKw37P0YJPKi6gC5MuKFSvU 3d2ttWvXap99
9tH++++vffbZR2vXrlV3d7fx8C9tk7mYBvc7Lu1gXWTZn7B6Klub21GWC8O2 IsJO4jKUCxEF
KIb6A0h1Z7r//vtL0tBf//DvsmXLaJsclSNMJKPSDhNTvzi6KF+Z2txSONS4 3l4R27tM178+
92EA8mPZsmWaOXOmli9frrVr1+qJJ56QJD3xxBNau3atli9frpkzZ2YWU9om hbrFKFdcdD2V
qc0t3KHaDAFUnVbaV4BGMGnSJC1btkwLFizQ2rVrJWlo+NdWSGmb7EQs7l5o Utp5Dc82+hh2
FHXwTIYA0la6q4MTNW5vuk88KQjQGE4//XR1d3dr8uTJQ5Pp0zala5vC0vbf L82j3UtbT2Vr
c3Mf8o2z41E37qOWJ534wXWjtjHdPi7duH0yKS8AuKU+/Gv62gxtU3TbZLPP pmlHbZO1nsp0
i62j7BcJjg8ATJg0adKwv7RNgKCG9JQAAEzI8gASbRNk7mSteXgVZwUAAEBW QSUeKgCUGeKh
QlUg2gwAAIADOqgCAKgSy392eartdh+7v8Yf9nEqEJpfUBvxQm7WPJm4AaB4 evs6NPbYL1tv
10/VQdUFNeql6CSRihOrepr+38OWIYAAkNQ2RbUjcW2XycQHNm1U2HZp2s64 9aNe87Ets+0y
0/IjqIbYVCKCBwBx9PR1SpI+NW2+JOnOy0/TLp1tuvK2u7Wxp1frN27VSxt6 9OJrWyRJL23Y
ovUbe/TovPOtm7wo8bNZbiLscRMsuGhrg3mERcRxbTyC0WhwqA1wr/7Kj+vR +V2s/69pbyxu
Ki2b3hwAFMuW3pHDvo/s8NTR4Wn6Se/fcZ2GNfARjX5cO+KyrQsTmCLEJiyP pFFA27a2FcWz
YYIaJk5hPSZXbjWuNxY3HVbUcHPccgAoWFC3jRguqJ1t6mz3NPumu7S5t0+v be7V+k09+tOG
HknSyxt6tH7TVr22uVebfjw9c9sVNX9sHvPK2qYXN3wLTSKoeR3UuF4WYgfQ nGwOONQRnW1q
9zzNOvWDPofqG85UPRh1zbodMRmKjeqw27q1KJEuoq01DRKAQJdAUBsBBx6g OenpG3SoD377
8/WLXZ4nXbJwqV7d0qsXX92sda9s1nPrN0uSXtqwWc/efIHkSSMaUN66WEUN kwbbrEaYgbR5
m+4bgtpEwknPCqB52NbXrjt/sFh3+padOOUIfbb74Mhtnnr6OY0etYt2ffPu DemAB9MPPk2c
Z/5xt7Fcu/VGdQhaSlDDxvWTbv77f08z7JF0j8MmHmDUPRIAKJ7p53w0dPmF 85fEPuW74UfT
rfMyeZ3F5JUZm/YqKf8somqSDsO7JRbUpAMXt8z2UXLbbZNiIDaiJwsAxZB0 jWdpf2zaOdN1
srS1acuXpo5M9g1BBQAoMZed+aGW2M8oN0tnH0EFAACHThQa2NkhHioAAIAD QSUeKgCUGeKh
QlUgHioAAIADuIcKAJWCeKiAoCbAe08AYALxUKFlBTWPeKhp805Kz3Q2EQAA gIY41EbGQ0Ug
AZqLIuOhApROUG3ca1w81LgwcC4iO8TlaVMGQigB5IfLeKgAlRNUF/FQ44Zj 0zjPLPFSTcqA
MwbISVALjIcKUDpBLTqSg40TdeGqcaEAxeE6HipApQS1kUQFH08rrggnQGOp WjxUQFDB0K0i
sADFkkc8VIDKCKqLeKg28fxMXGbUPduoPF2XAQDSUWQ8VIBSCarLeKi2MQPT /JaUZ5r4fwgv
AACCCgBQCVolHiqUFybHBwAAcADxUAEAAFwIKvFQAaDMEA8VqgJDvgAAAA7g oSQAqBTEQwUE
NQEmSQAAE4iHCi0rqHnEQyXOKQAAtKRDzSMeKgIJ0JoQDxVaWlBt3GtcPFTb NIlzCtB8EA8V
WlpQXcRDTeNwiXMK0ISCSjxUaGVBzUN0iHMK0JoQDxVaWlCLEmninAI0P8RD BQS1QjCUC1Be
iIcKLS2oLuKhmrpM4pwCNDfEQ4WWFVSX8VDTphm2nDinAABQOYcKAJA3xEOF RsPk+AAAAA4g
HioAAIALQSUeKgCUGeKhQlVgyBcAAABBBQAAQFABAACahtLFQ41Lh9u9AOC6 bSpTwIu49jJs
gpyk8tJuNpmgphVQAIBWxGSectreFhZUk95Y1KT2UTFNo0KuBf+myQcAqsEN 35iQuM5psx+O
FZwosYoKOxncNk274tI5hrWLNrGcifNcMUE1GaqIil0aF9PUZJgjSXgBoLr0 9LXp9FkLI39f
MONUJ04xrB0Ka2fi2rUsRiNuvvFg+lF5mrSDacNfQoGCGtdLs1meNr+4fBBV gOqyqbcj0+9x
LtV1bGVTF2gyH3lc20Wb1uSCanPi5NFjiuut2Ua0AYDysKG3Q7Va5/ZruX5x S/IG/27oTdfE
EVsZKieojXCLwXySwsgBQLkd6gXnnB35e1eHWROXVzsQd38W4UVQnbpTk3sF YeubxFNNyocH
kgCqz5Xz7imkfcrartmKcFJZwtrLtE8BYygqJKguYpdGLTeJYWqzDABah6wx kk3+z6vtMylT
UHhNtkFcK+pQAQCg8TBah6ACAEAOTh0ydE6IhwoAAOBAUImHCgBlhnioUBWI NgMAAOAA7qEC
QKVY/rPLU223+9j9Nf6wj1OBgKCG4XqCaUa/AcpPb1+Hxh775cT1Xte54+nV 17bV1B9x3Usi
BBpUQ1AbFcmAR8EBgE40NJ1DLTqAr4uIDwBQTnr6Bufu/dS0+ZKkOy8/bXD+ Xh9dIz1ddvOD
kqTlSxdryb/OUk/vgLjLBZUX1DRO0mS5aa/TNC4gYgxQfrb0jhz2fWSHN0xP R3a2afaNq7V8
6WJJ0uQpJ2hEu6fOXdoj2x/TKUmZxhTiaOhTvnWxCpubN2x5cP0sjtlmPmAA KJGgbhsxXFA7
29TV2aZv3vqgRne1a/aNq/Wr1b/U5CknaPKUEzT7c0fq0htX632nXBLZFpi0 DWHtT1wbBjjU
Ql1onONs1IkZFu0eAMrD5oBDHdHZpnf/zdclSd/Q4BDv5Ckn6H//+Mrgsu/d P7TMpq2KMwFl
aKugRQU1bGgkboiEKPIAEEVP36BDffDbn683Ilr5g9k666p7tHzpYh181Ac0 94yjdNF375N8
Ajv3zKOsxDLq9lBwmJhONxQqqGHuz7T35yIP23RxpwDlZVtfu+78wWLdGVh+ 8dQjddJ9d+ni
qQfo9089u9N2L764Xvu8eXdn7VhebRhUl9ynHowaIkm6oZ/UO4xzuEnphn3n YSSAcpJm6sGv
XH/v0ENJD/14jv7ioxdr8pQT9E9nH53YNkV1rm0foAQcai6uNG6Zy7iAabYP G7ZBTAGaH9vY
yVnbJEBQAQAqx/Kli/XQj+cMfa+7VPkcKoBriDYDAKWGaDNQGUElHioAAAAO FQBwqAClgHio
AAAADuChJACoFMRDBQS1AmR9XYbXbQDyxzQeapB+qg6qLqimEylkzUMKf9ma wMEAkKbdiJsq
Nc3EM3FtUtSEElH5x+1PUv5xy03KbLvMtPwIagYQMgBIQ1g81F0623TlbXdr Y0+v1m/cqpc2
9OjF17ZIkl7asEXrN/bo0XnnWzd5JnONZ+2gx21nm57ptK7B73lMbBOMyIND Lci5RsUYTPo/
rEcXNVVYUu/MZipEJu4HaBxh8VA7OjxNP+n9O67LsAY+otGPazfyau+KFJuk GNEmwpjUtrai
eDZEUJPCoRUxh25cHlFTEfrXs5n/FwByFtSQeKid7Z5m33SXNvf26bXNvVq/ qUd/2tAjSXp5
Q4/Wb9qq1zb3atOPp1u3HcG2IWpe37j5frO0XTbpmc51Dk3mUONOgjAxNBHa uPUQO4DmICwe
arvnadapH/Q5VN9w5na/6nk163bDZCg2qoNuaw6iRNrWwOQh3ETgqpCgFnGQ OBEAmoOweKie
J12ycKle3dKrF1/drHWvbNZz6zdLkl7asFnP3nyB5EkjGmgYooZJg21UIzr/ afM23TcE1fHB
Mq3k+nrBbWxcqmkeAFA9wuKhnjjlCH22++DIbZ56+jmNHrWLdo2Ih5p3exAV Jq4I52cTnjKr
W29UhwCHGjiAeZ7YJvc84vI1vWcCAPkz/ZyPhi6/cP6S2Kd8N/xounVeJq+z 2MZqTmpfkvLP
u51leLcCghr38I9t7NI0Pac062SJ2woA5SbpmnYVq9nE7dk4Qtv9yVK+NHVk 2m4jqAAAJeWy
Mz/UEvsZ5Wbp3COoAADg0IlCAzs7xEMFAABwIKjEQwWAMkM8VKgKxEMFAABw APdQAaBSEA8V
EFQAAAcQDxXKSu5DvsFHvMOmqnKRh/+TtkwAAACVc6iun4XKO2INAJSDIuOh AlRCUF3HQzVx
oyZxUE3KFBU3EREHyB+X8VABKiWojY6HmiUOapT45x3pHgBiBLXAeKgAlXCo US4yyskmiVWS
E3VVJgQToLG4jocK0FSC6kKkooKKpxVXhBOgnFQtHiogqM4Fs6h4qHk5aAQW oBzkEQ8VoCkc
ap7xUKPiDAbjoMZ9x60ClIsi46EClFJQGxEPNUvaaeL8IbwAAAgqAEClaZV4 qFBemBwfAADA
Af83AL4Xy+XMtbfzAAAAAElFTkSuQmCC
--------------090006070401090707040002--
Re: Error : "Figure must be a child" in refreshBounds() of XXXLabelEditPart [message #169820 is a reply to message #169712] Fri, 25 January 2008 09:02 Go to previous messageGo to next message
Alexander Shatalin is currently offline Alexander ShatalinFriend
Messages: 2928
Registered: July 2009
Senior Member
Hello Guillaume,

The reason of this problem is: figure from UserEditPart used as a content
pane for UserNameEditPart is not a parent of the label figure for UserNameEditPart.
If you've specified correct label for the feature mapping of UserName (This
label is one of the children of User figure) then it looks like a bug with
code generator. In this case I'll ask you to strip down your models and submit
a bugzilla entry for it.

-----------------
Alex Shatalin
Re: Error : "Figure must be a child" in refreshBounds() of XXXLabelEditPart [message #169848 is a reply to message #169820] Fri, 25 January 2008 10:03 Go to previous messageGo to next message
Guillaume Gauffre is currently offline Guillaume GauffreFriend
Messages: 65
Registered: July 2009
Member
This is a multi-part message in MIME format.
--------------090109020100060401060701
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hi,
In my gmfgraph model, the label UserNameFigure is declare as a child of
the UserFigure but maybe it's not done correctly !? Capture of my model
is in attachment and content below:

<descriptors
name="UserFigure">
<actualFigure
xsi:type="gmfgraph:RoundedRectangle"
name="UserFigure"
cornerWidth="24"
cornerHeight="24">
<layout
xsi:type="gmfgraph:XYLayout"/>
<preferredSize
dx="60"
dy="60"/>
<children
xsi:type="gmfgraph:Label"
name="UserNameFigure"
text="&lt;...>"/>
<children
xsi:type="gmfgraph:CustomFigure"
name="UserImage"

qualifiedClassName=" org.eclipse.gmf.runtime.draw2d.ui.render.figures.ScalableIma geFigure ">
<layoutData
xsi:type="gmfgraph:XYLayoutData">
<topLeft
x="14"
y="26"/>
<size
dx="32"
dy="32"/>
</layoutData>
</children>
</actualFigure>
<accessors
figure="//@figures.0/@descriptors.5/@actualFigure/@children.0 "/>
<accessors
figure="//@figures.0/@descriptors.5/@actualFigure/@children.1 "/>
</descriptors>

<nodes
name="User"
figure="UserFigure"
resizeConstraint="NONE"
affixedParentSide="NSEW"/>

<labels
name="UserName"
figure="UserFigure"
accessor="//@figures.0/@descriptors.5/@accessors.0"/>

If the problem is not in my model, I will submit a bug.
Thanks for your help,

Guillaume

Alex Shatalin a écrit :
> Hello Guillaume,
>
> The reason of this problem is: figure from UserEditPart used as a
> content pane for UserNameEditPart is not a parent of the label figure
> for UserNameEditPart. If you've specified correct label for the feature
> mapping of UserName (This label is one of the children of User figure)
> then it looks like a bug with code generator. In this case I'll ask you
> to strip down your models and submit a bugzilla entry for it.
>
> -----------------
> Alex Shatalin
>
>


--------------090109020100060401060701
Content-Type: image/png;
name="gmfgraph.png"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="gmfgraph.png"

iVBORw0KGgoAAAANSUhEUgAAAj0AAALVCAYAAAArhlDuAAAACXBIWXMAAAsT AAALEwEAmpwY
AAAKTWlDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVN3WJP3Fj7f92UP VkLY8LGXbIEA
IiOsCMgQWaIQkgBhhBASQMWFiApWFBURnEhVxILVCkidiOKgKLhnQYqIWotV XDjuH9yntX16
7+3t+9f7vOec5/zOec8PgBESJpHmomoAOVKFPDrYH49PSMTJvYACFUjgBCAQ 5svCZwXFAADw
A3l4fnSwP/wBr28AAgBw1S4kEsfh/4O6UCZXACCRAOAiEucLAZBSAMguVMgU AMgYALBTs2QK
AJQAAGx5fEIiAKoNAOz0ST4FANipk9wXANiiHKkIAI0BAJkoRyQCQLsAYFWB UiwCwMIAoKxA
Ii4EwK4BgFm2MkcCgL0FAHaOWJAPQGAAgJlCLMwAIDgCAEMeE80DIEwDoDDS v+CpX3CFuEgB
AMDLlc2XS9IzFLiV0Bp38vDg4iHiwmyxQmEXKRBmCeQinJebIxNI5wNMzgwA ABr50cH+OD+Q
5+bk4eZm52zv9MWi/mvwbyI+IfHf/ryMAgQAEE7P79pf5eXWA3DHAbB1v2up WwDaVgBo3/ld
M9sJoFoK0Hr5i3k4/EAenqFQyDwdHAoLC+0lYqG9MOOLPv8z4W/gi372/EAe /tt68ABxmkCZ
rcCjg/1xYW52rlKO58sEQjFu9+cj/seFf/2OKdHiNLFcLBWK8ViJuFAiTcd5 uVKRRCHJleIS
6X8y8R+W/QmTdw0ArIZPwE62B7XLbMB+7gECiw5Y0nYAQH7zLYwaC5EAEGc0 Mnn3AACTv/mP
QCsBAM2XpOMAALzoGFyolBdMxggAAESggSqwQQcMwRSswA6cwR28wBcCYQZE QAwkwDwQQgbk
gBwKoRiWQRlUwDrYBLWwAxqgEZrhELTBMTgN5+ASXIHrcBcGYBiewhi8hgkE QcgIE2EhOogR
Yo7YIs4IF5mOBCJhSDSSgKQg6YgUUSLFyHKkAqlCapFdSCPyLXIUOY1cQPqQ 28ggMor8irxH
MZSBslED1AJ1QLmoHxqKxqBz0XQ0D12AlqJr0Rq0Hj2AtqKn0UvodXQAfYqO Y4DRMQ5mjNlh
XIyHRWCJWBomxxZj5Vg1Vo81Yx1YN3YVG8CeYe8IJAKLgBPsCF6EEMJsgpCQ R1hMWEOoJewj
tBK6CFcJg4Qxwicik6hPtCV6EvnEeGI6sZBYRqwm7iEeIZ4lXicOE1+TSCQO yZLkTgohJZAy
SQtJa0jbSC2kU6Q+0hBpnEwm65Btyd7kCLKArCCXkbeQD5BPkvvJw+S3FDrF iOJMCaIkUqSU
Eko1ZT/lBKWfMkKZoKpRzame1AiqiDqfWkltoHZQL1OHqRM0dZolzZsWQ8uk LaPV0JppZ2n3
aC/pdLoJ3YMeRZfQl9Jr6Afp5+mD9HcMDYYNg8dIYigZaxl7GacYtxkvmUym BdOXmchUMNcy
G5lnmA+Yb1VYKvYqfBWRyhKVOpVWlX6V56pUVXNVP9V5qgtUq1UPq15WfaZG VbNQ46kJ1Bar
1akdVbupNq7OUndSj1DPUV+jvl/9gvpjDbKGhUaghkijVGO3xhmNIRbGMmXx WELWclYD6yxr
mE1iW7L57Ex2Bfsbdi97TFNDc6pmrGaRZp3mcc0BDsax4PA52ZxKziHODc57 LQMtPy2x1mqt
Zq1+rTfaetq+2mLtcu0W7eva73VwnUCdLJ31Om0693UJuja6UbqFutt1z+o+ 02PreekJ9cr1
Dund0Uf1bfSj9Rfq79bv0R83MDQINpAZbDE4Y/DMkGPoa5hpuNHwhOGoEcto upHEaKPRSaMn
uCbuh2fjNXgXPmasbxxirDTeZdxrPGFiaTLbpMSkxeS+Kc2Ua5pmutG003TM zMgs3KzYrMns
jjnVnGueYb7ZvNv8jYWlRZzFSos2i8eW2pZ8ywWWTZb3rJhWPlZ5VvVW16xJ 1lzrLOtt1lds
UBtXmwybOpvLtqitm63Edptt3xTiFI8p0in1U27aMez87ArsmuwG7Tn2YfYl 9m32zx3MHBId
1jt0O3xydHXMdmxwvOuk4TTDqcSpw+lXZxtnoXOd8zUXpkuQyxKXdpcXU22n iqdun3rLleUa
7rrStdP1o5u7m9yt2W3U3cw9xX2r+00umxvJXcM970H08PdY4nHM452nm6fC 85DnL152Xlle
+70eT7OcJp7WMG3I28Rb4L3Le2A6Pj1l+s7pAz7GPgKfep+Hvqa+It89viN+ 1n6Zfgf8nvs7
+sv9j/i/4XnyFvFOBWABwQHlAb2BGoGzA2sDHwSZBKUHNQWNBbsGLww+FUIM CQ1ZH3KTb8AX
8hv5YzPcZyya0RXKCJ0VWhv6MMwmTB7WEY6GzwjfEH5vpvlM6cy2CIjgR2yI uB9pGZkX+X0U
KSoyqi7qUbRTdHF09yzWrORZ+2e9jvGPqYy5O9tqtnJ2Z6xqbFJsY+ybuIC4 qriBeIf4RfGX
EnQTJAntieTE2MQ9ieNzAudsmjOc5JpUlnRjruXcorkX5unOy553PFk1WZB8 OIWYEpeyP+WD
IEJQLxhP5aduTR0T8oSbhU9FvqKNolGxt7hKPJLmnVaV9jjdO31D+miGT0Z1 xjMJT1IreZEZ
krkj801WRNberM/ZcdktOZSclJyjUg1plrQr1zC3KLdPZisrkw3keeZtyhuT h8r35CP5c/Pb
FWyFTNGjtFKuUA4WTC+oK3hbGFt4uEi9SFrUM99m/ur5IwuCFny9kLBQuLCz 2Lh4WfHgIr9F
uxYji1MXdy4xXVK6ZHhp8NJ9y2jLspb9UOJYUlXyannc8o5Sg9KlpUMrglc0 lamUycturvRa
uWMVYZVkVe9ql9VbVn8qF5VfrHCsqK74sEa45uJXTl/VfPV5bdra3kq3yu3r SOuk626s91m/
r0q9akHV0IbwDa0b8Y3lG19tSt50oXpq9Y7NtM3KzQM1YTXtW8y2rNvyoTaj 9nqdf13LVv2t
q7e+2Sba1r/dd3vzDoMdFTve75TsvLUreFdrvUV99W7S7oLdjxpiG7q/5n7d uEd3T8Wej3ul
ewf2Re/ranRvbNyvv7+yCW1SNo0eSDpw5ZuAb9qb7Zp3tXBaKg7CQeXBJ9+m fHvjUOihzsPc
w83fmX+39QjrSHkr0jq/dawto22gPaG97+iMo50dXh1Hvrf/fu8x42N1xzWP V56gnSg98fnk
gpPjp2Snnp1OPz3Umdx590z8mWtdUV29Z0PPnj8XdO5Mt1/3yfPe549d8Lxw 9CL3Ytslt0ut
Pa49R35w/eFIr1tv62X3y+1XPK509E3rO9Hv03/6asDVc9f41y5dn3m978bs G7duJt0cuCW6
9fh29u0XdwruTNxdeo94r/y+2v3qB/oP6n+0/rFlwG3g+GDAYM/DWQ/vDgmH nv6U/9OH4dJH
zEfVI0YjjY+dHx8bDRq98mTOk+GnsqcTz8p+Vv9563Or59/94vtLz1j82PAL +YvPv655qfNy
76uprzrHI8cfvM55PfGm/K3O233vuO+638e9H5ko/ED+UPPR+mPHp9BP9z7n fP78L/eE8/sl
0p8zAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAA dTAAAOpgAAA6
mAAAF2+SX8VGAABkRUlEQVR42uzdf5wddX3o//fZbBJ+hFwLihdMXYJR7IUo jUEQ254ztaK3
Fb3V3NZQbVYQrILVllIUf+wsfC9IbWqtqBcxdgPWUMVfN7dXftSeM7YqCMbY hHtrRJLVSEQQ
kPwgbHb3fP9YZpidfD4zn/l55sfr+Xjs4+yZnfnMZz5zdj7v854fn1a/3+/L AIyPj8vY2Fjp
yspLq9Xyfh9Qk+eyTXXZlibtNwBoqlafIzkAAGiAoUGteHx8nNYHAAD1D3oI oAAAQJE4vQUA
ABqhFqe3yPQAAIAoZHoCLMuSbrdLQwAAUDPDg1pxmtvMTTI7Scp2HMd7bbfb fDoAACDoSS/t
c3XClk96usu2bel0OmLbdqxsj/9ZLq5+v1/oc2yCdchzvVHblcV2q8rIqtxB 7ysAwGBwy/pT
JnZNSKfTkZF1I9LpdGRi10Ss5fv9/ryfvAOPqDqoOvcs11NlZdhXAIAGBT1l eYKy4zhiWZZM
bpyUkXUjsnxyuYysG5HJjZNiWZZ3yittVqHVas37UWUdgtN1y5t27CbLq6br 6ql6jSo3aj2q
djBt2yzXMch9BQCoedCTRaYn2DkFOxl3HcFXl2VZ3iktN+ARES/wcU91WZYV uy7BvwUzCybl
ufMGl4/bmeqWV9VLV1fd6R9dvcLKDAYIcbMsJvUOW0eZ9xUAgEyPNpuhOlUR XEfw1dXtdsW2
ben1ejK5cVJ2juwUEZGdIztlcuOk9Ho94+t7wuqRdNuiMhtpMyNxsix5nf5J Wq6q3rptDK6j
7PsKAECmJxftdlu63a53SssNeEbWjUi32y3NXVxpO2rddSxuNqJKHbSu3lkH M4PaVwCAmgU9
ZRsVffSkUS/j0+v1ZPSk0dLuNJMAJey0UZF3euUdXKRpo7LsKwBAMSr5nB53 +azZtu39ZN05
h90qHXd5k2DGP49uedU003WFrdNfhu56nyRtlmW9B72vAAAD+CLKE5nnK+KJ zHV5JkwTnm3D
83sAoD4Yeysgr4DHf3ErnWj5Ax32FQDU8PhOpgcAADQBT2QGAAAEPVVR1lNl AACgPDi9BQAA
GoELmXMsCwAAlAeZnhxdsWmbXL12JQ0BAEAJVPbhhFmVZZLZSVL23Ojsx4rj OKUZykIb+ca8
NbuKt3Jz+zkAYGBBT5bDUKQtK2z5pKe7bnvgWFm840tym7xe4oQ8VR0iIqt6 lyE4UdUhi3qF
PemZgAwA8sc1PTn41g9+IYt3fEle+cZLZPGOL8m3fvCLWMv7B6us4kCgVav3 oNrIP4QGACB/
ZHoy5DiOl+F55RsvkUM/2y6vfOMlcsfN18n/fsHr5VUnPpL6VJduDC1/x+m+ D8u+6IIS3bhR
aYMYk3KDY2uFjbUVZ9tUWRvd39LsA91+icrk+P+uqnvY/g3+nXG/AECPTI+v Iwn+qNYRfHVd
sWnbYQGPiHiBz+IdX5LbHjhWrti0LVUd42ZTVPMHy4kqXzd/2nrrytW9Vw3m GbeuSdowbPmo
MlUBi+4zlqSdgwEP2TYACDlmNv3uraiLoONcJK3K9Cz8z6fJHTdfJ08aZnqi Mhhh3/izmK4K
mnTzx6m3Sblxyk66zbq6mNQhOHp83O3TZXyy3I9R2wYAZHrI9GSi3W7L1WtX eqe03IDnlW+8
RK5eu9L41FbSjEoWVNecxF02y3LTZpny2sZgpiZNmWXZfwBA0JOTOl7T4zr7 lOPkyRe83svw
nH3KcYk7sEGeoki67qh6l+m0S5ptLPv2cXoLAOZr/HN63OWz9qoTH5HbZO6U Vtpv7v5sh+pC
1bjBUdSprLTlJ613cN4k16ZEza+rS1QZYRcKm5SZ5X5Js20A0GQ8kTlHPJG5 HNmOqn7EeX4P
AGSLa3pyLIuAZ3DBgvtTxSdHV7XuAFD6YyyZHgAA0ARkegAAAEFPExGMAQBQ T5zeAgAAjcDp
rYqUBQAA0iHTUxHXnLdS3vu5bTQEAAAJkempQFmO48x7BQAA8ZHpqYBrzlsp U6eskUU/uCVW
tifuAJZhyxbyYeTZNACAHJHpKXlZ316/RqZOWSPnLNkmU6eskW+vX8OnFgCA JF+uyfSUk+M4
8q3rL3k64Fn9Tll0z8fk9n0rZdEPbpGz33ad0ajtUdkdXXYlbLrLPx6VLnMU Z37GjQIA5IlM
TwFlmb66rjlv5WEBj4jI1Op3ehmfb11/iVxzXvQwF2GBTRLuIKAmg2D6BxyN M2gmAQ8AIA9k
ekoqq0yPP/gwnR61TDBI8c8fzPLEuaaIa3oAAHki01PSstrttrz3c9vknCXb 5gKdpwKec5Zs
k/d+blvsgMcky2JaFtkYAEAVkempgKzv3tK9D1s2SXlkegAAZUKmpwJlnf22 67xTWoVGxK2W
9yPy9PVB/mlhgvO7AY2uHP90AAAy79fI9FRD2Z/ITJYGAFB2ZHoqUhZDUAAA kPILOpkeAADQ
BGR6KlIWAACoaNADAABQJE5vAQCARuD0VkXKAgAA6ZDpqYhPrX6bXHTP9TQE AAAJkempQFmO
48x7LTQqLvBhgYN8KGGchy7Wcf0A0ARkeirgU6vfJnvOPVFO2PxArGyPbnDQ OMsX+fGIM8hp
1nWLWndw2AzTNo27PA95BID8kOkpeVkbNmyQPeeeKMuWLZM9554oGzZsiLW8 f4DQKmYRgoOc
+oeyKHLduvqEtWna5QEAGR/XyfSUk+M48oNLP+cFPCtWrJD77rtPdu/eLSds fkBOWX9e5Ejr
UQN7+v+uyj7EmaYqN6r84PQ4mQ/d6PEm6wsrL6/5TJcn0wMA+SHTU0BZpq+u T61+22EBj4jI
ihUrvIzPDy79nHxq9dtSZzGisg/+TEXYfGGdt2654HSVqEFOVctnlU1Je50N 1+kAAJkeFJjp
0WVBwrIt/mAj6XxZLBcWrEUFWar1mQaBYe/TZoTI9AAAmR7KCmi323LRPdfL smXLZPfu3V7A
s2zZMrnonusjA56wTEjUfGHzms6X1XKmGZVgmXmuDwBQTWR6KiDN3VtprivJ er6kWRNV3XVl
RK0/zzYJWw+ZHgAYPDI9FSjrlPXneae08hC8bsb0+hrTzlm3XNT1Om4QELXO YBlJ65mkznHb
Kou6AQDI9NQ+28MTmXP8R8ggAClLGQAANTI9FSmLgKeYwCfNnVppghXu8gKA Ao7zZHoAAEAT
kOmpSFkAAKCiQQ8AAECROL0FAAAagdNbFSkLAACkQ6anIizLkW63TUMAAJAQ mZ4KlOU4zrzX
XKLfmLdLc3s1AKBqyPRUgGU50un0pNfrxMr2xHl2TNznzJgM/5Ck3LAAq4jh GkwHRwUAVA+Z
npKXtX79Dul0erJkyVrpdHqyfv0OPrU5Uw1WSsADANVHpqekHMcR2xYv4Fm9 eo/cc88Jsm/f
Jun1OmLbEjnSethYVf4OPjgt2Mnr5o+b6Ylab7DssMFF45aryxaZbFfY+vzl hw0wGlVfAED+
yPQUUJbpq8uyDg94RERWr97jZXxse26+tJmMYAccnO521qr5Y0XXgXKiyo47 oGnY9vjXY7Jd
wUFOo7bDdNuzbE8AAJkeMj0xMz0mmQpVkBE30xOVaTGpiyqDYrI9uuVNt0u3 3qTTVesFAJDp
aWxZ7XZbut22LFmyVvbt2+QFPEuWrJVutx0Z8MTJuMTJpCTtoP2ZDV12KUnZ SbYny+1K0xZF
rxcAmo5MTwVkefdWFpmKJJmeLLImwWyJaRlRmaKo7cqynaLeAwDyQ6anAmXZ tnintJJkQvzZ
FX+2RXW9ivvjv2tJNV2XwQheD+MPNtKUbbrOpMvFyXqp1mdajyy2GQBApqf2 2R6eyFzCfyAC
FwCoDDI9FSmLgKdcgQ6ZGgCo4PGbTA8AAGgCMj0VKQsAAFQ06AEAACgSp7cA AEAjcHqrImUB
AIB0yPRUxMprVsq2926jIQAASGh4UCseHx+XsbGxWpVlktlJUrbjON5r0uEn AABoOjI9BQZy
SQOqldeslDVTa+SWRbckyvaoBuSMu3zWH5O4A37m8uE3HDYjzbbx7wUA5cE1 PTmWFWdYBJ01
314ja6bWyLZztsmaqTWy5ttrEnXsZRzgUlWvOgQJddoWACDoyUBWp6PKXFYa juPIymtWysrb
V8q2c7bJO6feKdvO2SYrb18pK69Z6Z3yMgl4TAIy/3vVGFK692HT4o6HFVYP f5mq+VV/TzIm
V7Bs0+0OC3JN2sVkPLQstw0ACHoKVOdMT1QH564j+Opaec1KueRbl3gZnndO vVNExAt81kyt
kUu+dYmsvGZl5vslmBkKZmVU8wRP5/hPUwX/btKhh9XDNMgLq2PSdggr02Qw 1rB2UZWra4O0
2wYATcU1PRkHcv5MUbAjjHNNj+M4hwU+H1v0MVl5+0q5ZdEtct3Z10Ve1ByV 6VF1pP7R2KPm
VS0bDBB09dDVTVVW0umqwCOqDlHtoCozavtMf48qN1i3sG0DAJDpKbSsNNrt tmx77zbvlJYb
8Gw7Z5tse++23O7i8mcPqp5BSHMtk64d8rg+KklWq6zXaQFAmQ3slvUmXNOT RWd0y8tukZW9
lbLm9qfu3nrZtljrT3o3Ut1Om+TRDmUZZZ3R3gGg5EFPHZ/T4y6ftevOvk4u +dYlct3Z12XS
aYddC6K63Tp4ukd1PUrWwk7jmARjJnXUtY1JO4Rtd/CanKy3tYj2B4A64pqe imj6E5nJZtAG
AJAW1/TkWFaWmhjw+O/sampnTxsAQIbHVDI9AACgCcj05FgWAAAg6AEAACgU p7cAAEAjcHor
x7IAAEB5kOnJkWVZ0u12aQgAAEqATE9OZbmjoJuMhm4coUY8lC/sycEAADQd mZ6cWJYlnU5H
er1eomyPyQCU/nlN/h62nqp9DEwHGM37+TZxBlNNsv/DBnrNM5guou0AoGhk enIoa2LXhHQ6
HRlZNyKdTkcmdk0k6khNB5SkY3q6HYJtRtvQdgDg9a9kerLjOI7Ytu0FPMsn l8vOkZ0yuXFS
er2e2LYdOTq6SVYmGOyoMj26eXXrCsuchI1HpRsDKs68JtsXNc0ky2WSPQu2 pW55XbuFrdOk
nKj1x20T0/0yiLYDADI9JSnL9NVlWdZhAY+IyPLJ5V7Gx7ZtsSwrs2/kUaN/ m2SJTJc3mRYc
aDNqeZM669bhbwv/vP6ftG2iCjii2j5uO/rLiXM6KapN/OvR7ZfgusvUdgBA podMj9E3a918
ppke0+tUokYAV2UYkmybbh1xtjGq7Uymm9RDVfck5aj2R5zMi255020oou0A gExPhctqt9vS
7XZlZN2ITG6c9AKekXUj0u12IwOeQqNd37d//+9pMk/+a0Hczs/f8QenpVnH IMSth26b025P
mkzeoNqyLPsQAJkejkA5SHP3luldWGkyPVEZijjzJ11PnG0znZ5ntsJkvrht G2d9UVkhk0yP
6TYU0XYAQKanJmXZtu2d0kryrTjsGou4y6ddv+k0fydrMs2kzrp1xM0amZZv uryqHibbrCun
iP2bdN15tR0AkOmpWbaHJzIn/GAO4Pk6oO0A1BuZnhzLIuCJ35nmmQ0g20Db AWj4sYxMDwAA
aAIyPTmWBQAACHoAAAAKxektAADQCJzeyrEsAABQHmR6csQt6wAAlAeZnpzK chxn3msmEWrE
g+jCBiAFAKDpyPTkJM0wFKpAJclwAcG/h62nah+DNAOC5lmPqPZOsv/5FwWA bJDpyaGsiV0T
3kjrnU5HJnZNJOpITQdopFN8uh1Ug59WdVvYtwCQ8RdVMj3ZcRxHbNv2Ap7l k8u9kdbdcbii
Rlo3ycoEO0bdgJNRgZFugEpdpsF0Wtx5TbYvappJlsskexY2eKuuHmGZnjjt GDVoaLDeJm0e
t10BoM7I9GjKMn11WZZ1WMAjIrJ8crmX8bFtWyzLyiybEXYNj2mWyHR5k2lu fUyXN6mzbh3+
tvDPqxsAM0mbqAKQqLaP247+cqJOi/mXCWuPqH2RdHsAgEwPCs30mGQldPOZ ZnpMr1MJu45G
l21Ism26dcTZxqi2M5luUg9V3dOWE+f3OJksVT0AgExPgzI9abTbbel2uzKy bkQmN056Ac/I
uhHpdruRAU+h0a4vE+D/PU3myX8ditux+jv+4LQ06xiEuPXQbXMe25Mkk1WW dgUAMj0Vl+bu
LdO7sNJkeqIyFHHmT7qeONtmOj3PTI/JfHHb1rScqN/zaj8AINNDpieSbdve Ka0kGYWw61Pi
Lp92/abT/B2xyTSTOuvWETdrZFq+6fKqephss66csExcHttnWg8AINMD42wP T2RO+MEcwPN1
aFcAqDcyPTki4InfIeeZeWhqZoOMDgA8dTwk0wMAAJqATA8AACDoAQAAqAtO bwEAgEbg9BYA
AGgEMj0B3GYOAEA9DQ9qxePj4zI2NpZ42ShJynYcx3st05ARSBjRR4z3BQAg 6ClE0oDHZPmk
p7vcwUJt246V7YkziGTeHbx//XmuK6z8rLZbN4CmyTaa1qEM+w4AUIxaXNOT ZKiFoIldE97o
6J1ORyZ2TcRaXjfwZpH868+iTcLWU0QQF9amWdahDPsOAFDjoCdtpicrjuOI ZVneaOjLJ5d7
o6RbluWd8kobjKnG0goGJsHpuuVNO3KT5VXTdfVUvUaVG7WetEFr2jqUcd8B AGoW9GSR6Ql2
QsFOxV1H8NVlWZZ3SssNeETEC3zcU12WZaXufIOZBNNMh2r5uJ2nbnlVvXR1 DRsoVFWvsDKD
AUGcAUijMjVJ61DWfQcAINNzWKem6pTcdQRfXd1u1xsNfXLjpOwc2SkiIjtH dsrkxklvlHST
63tUp0jSbltURiZpRkSX0YhTn6yElVvk6boy7zsAAJmeTLTbbel2u94pLTfg GVk3It1utzR3
caXtmHXXrfgzKqhGUAUAqFjQk+U1PVl0JKMnjXoZn16vJ6MnjZZ2p5lek6Jr lyLv9EL8fQcA
yEcln9PjLp8127a9n6y/6YfdGh13eZNgxj+PbnnVtDi3hZuUobvWJm5wEKxz 3FvKk9ShyH0H
ACjgiydPZJ6viCcy1+UZME18lg3P7wGA6mLsrYC8Ah7/xax0mtULdNh3AFCD 4zmZHgAA0ASN
v3sLAAAQ9FQGARQAAIjC6S0AANAIXMgMAAAagUxPQBG3rAMAgOJV8uGEJpmd JGW7I6o7jlOa
4ScQM4rntnIAQNmCnrTDUIQtn/R0lzviuukgo/6ONsh9Em9RHXCRQ0tEbVdW 2x22TUmecpyk
XsFlyrCvAQDJ1OKanizGM5rYNSGdTkdG1o1Ip9ORiV0TsZbXDehZpCJHJS8i iNMN1Bn8W9Ej
xZdhXwMAKhT0ZDngaBqO44hlWd7I6ssnl3sjrluW5Z3yShuM+Z/q6x8/SjW/ 6u/BZU06ZpPl
VdN19VS9RpUbtZ64Qasqo2KyrSb1MV22bPsaAFDyoCeLTE+wUwl2Eu46gq8u y7K8U1puwCMi
XuDjnuqyLMu4LrqOVJWxMO3ck2Y2ojIjqnrp6qo7faOrV1iZwQ5eV27Szl+1 LpNMkW7bVW1R
1n0NAKhppid4eiHYybjrCL66ut2u2LYtvV5PJjdOys6RnSIisnNkp0xunJRe r2d8fY/uVEya
bYvKQCQJEHUZh7j1yUpYuXl2/mnas+z7GgBQw0xPFtrttnS7Xe+UlhvwjKwb kW63W5q7uNJ2
tLrrUPwZlSbJOnBpSt0AgKAngSyv6cmiYxg9adTL+PR6PRk9abS0O80kQAm7 m6jIO73yCAh0
p5TybM8y72sAgJlKPqfHXT5rtm17P3l31GHTo+YzCWaC16So/qaaZrqusHUG r6WJW2ZUYBZV
XtS6dMvrrktSXRc06H0NAEjwRZInMs9XxBOZ6/JMl6ptxyDqy/N7AKA8GHsr IK+Ax39xKp1g
vQMe9jUAlLQvINMDAACaoPF3bwEAAIKeyiCAAgAAUTi9BQAAGoELmQEAQCOQ 6Qko4pZ1AABQ
vEo+nNAks5OkbHdEdcdxSjP8BHKK9rmdHAAIeoqSdhiKsOWTnu5yR1w3HWTU 34EGuU/WLfLZ
MMH1DypgyGq7Vduka+us1jGIfQcAKEYtrunJYnyiiV0T0ul0ZGTdiHQ6HZnY NRFred2AnkXK
c1TyogKqYOCkGyQ1+HtW7TaofQcAqHHQk+WAo2k4jiOWZXkjqy+fXO6NuG5Z lnfKK20w5n9K
rztdNXCm6jW4vGlHbrK8arqunqrXqHKj1pNV0Bp3G8u87wAANQt6ssj0BDuh YKfiriP46rIs
yzul5QY8IuIFPu6pLsuyYnW4ulHA42Qm/KdXgsvH7Tx1y6vqpaur7nSPrl5h ZQYDgrBBQU2D
BdNtVJVV5n0HACDTc1jHquqU3HUEX13dblds25ZeryeTGydl58hOERHZObJT JjdOSq/XM76+
R3WKJO22pc1WmGZBktQnK2HlFnm6rsz7DgBApicT7XZbut2ud0rLDXhG1o1I t9stzV1caTvm
sOtj6JDLve8AABUPerK8pieLjmT0pFEv49Pr9WT0pNHS7rQ4p3tMlqcjLte+ AwDko5LP6XGX
z5pt295P1t/0w26Njru8STDjn0e3vGqa6brC1ukvQ3e9T9zgIGoZ3TqSrHsQ +w4AUMAXT57I
PF8RT2SuyzNgmvgsG57fAwDVxdhbAXkFPP6LWek0qxfosO8AoAbHczI9AACg CRp/9xYAACDo
qQwCKAAAEIXTWwAAoBG4kBkAADQCmZ6AIm5ZBwAAxavkwwlNMjtJynZHVHcc pzTDTyBBJM+t
5QCAMgU9aYehCFs+6ekud8R100FG/Z1skPsk3qI63yKHlojariy222R7kjzp OEndgsuUYX8D
AOKrxTU9WYxnNLFrQjqdjoysG5FOpyMTuyZiLa8b0LNIRY5KPujtcQOMuNub Vd3LsL8BABUJ
erIccDQNx3HEsixvZPXlk8u9Edcty/JOeaUNxvxP9XWnqzpy1WtwedNO2WR5 1XRdPVWvUeVG
rSdJ0KrKqJhsr0mdTJct2/4GAJQ46Mki0xPsUIIdhLuO4KvLsizvlJYb8IiI F/i4p7osyzKu
i64TDWYF4nTsSbMaUVkRVb10ddWdutHVK6zMYOeeR4ZEtT7V9pi0SXB7yr6/ AQA1zPQETy0E
Oxh3HcFXV7fbFdu2pdfryeTGSdk5slNERHaO7JTJjZPS6/WMr+9Rne5Iu21R 2YckAaIu2xC3
PlkGJyZ1zmP9adq07PsbAFCzTE8W2u22dLtd75SWG/CMrBuRbrdbmru40nay umtQ3ExCGTvX
rAKKogKXptQNAAh6Ysrymp4sOoXRk0a9jE+v15PRk0ZLu9NMApSw7EiRd3pl tX+Dp850p5Ty
bNMy728AQLRKPqfHXT5rtm17P3l22lHTTTr9qM4xeD2K6m+qaabrCltn8Dqa uGWGtYFpPaPW
p1ted22S6rqgQe9vAEDML5E8kXm+Ip7IXJfnuVRxOwZRZ57fAwDlwNhbAXkF PHlflItyBR/s
bwAoYT9ApgcAADRB4+/eAgAABD2VQQAFAACicHoLAAA0AhcyAwCARiDTE1DE LesAAKB4lXw4
oUlmJ0nZ7ojqjuOUZvgJ5Bjxczs5ABD0FCHtMBRhyyc93eWOuG46yKi/8wwK PkG4iA48uP5B
BQtZbHfY9ujaO6t1DWL/AQDyV4trerIYm2hi14R0Oh0ZWTcinU5HJnZNxFpe N6Bnkfzrz3O8
pqK2S7c9qkFTs1zXoPYfAKCmQU+WA46m4TiOWJbljay+fHK5N+K6ZVneKa+0 wZj/Cb3udNWg
marX4PKmnbjJ8qrpunqqXqPKjVpPVkFrku0s8/4DANQo6Mki0xPsgIIdiruO 4KvLsizvlJYb
8IiIF/i4p7osy4rV2epGAI+TlfCfWgkuH7fj1C2vqpeurrpTPSbZmLD6Z3kK yXQ7Ve1X5v0H
ACDTE3maw11H8NXV7XbFtm3p9XoyuXFSdo7sFBGRnSM7ZXLjpPR6PePre1Sn R9JuW9pMhWkG
JEl9shJ1bVBR41eVff8BABqe6clCu92WbrfrndJyA56RdSPS7XZLcxdX2k5Z d82Km3koY2ec
VQBSh/0HAKhw0JPlNT1ZdCKjJ416GZ9eryejJ42WdqeZBChh2ZEi7/TKav/W KUNCtgcABqOS
z+lxl8+abdveTxGdtmlnrrpeJqoz9c+jW141zXRdYev0l6G73idpG4Ytq1tP 2vUXtf8AADl/
6eSJzPMV8UTmujz/panPseH5PQBQTYy9FZBXwFPkRblg/wEAFMdyMj0AAKAJ Gn/3FgAAIOip
DAIoAAAQhdNbAACgEbiQGQAANAKZnoAiblkHAADFq+TDCU0yO0nKdkdUdxyn NMNPAN43FG6X
B4BqBj1ph6EIWz7p6S53xHXTQUb9nVGQyROEs+4Qg+sfVOebxXabPsG4iDYO riPpOuPuI9P1
lOHzBwBVUItrerIYy2hi14R0Oh0ZWTcinU5HJnZNxFpeN6Bnkfzrz3N8pyK2 a1BtmPf257WP
yvD5AwCCHo0sBxxNw3EcsSzLG1l9+eRyb8R1y7K8U15pgzH/E33d6cFOLzhd t7xpJ2iyvGq6
rp6q16hyo9ZjGrTmsa4kbWJSRlhdTbYv7raV8fMHAAQ9GWd6ggfw4AHZXUfw 1WVZlndKyw14
RMQLfNxTXZZlpe6Ug9/CTcrzDwyaJkOgW15VL11ddadKdPUKKzPYmZq2Sdbr Mm2T4Dqi2jVJ
Rsdk28LmK/PnDwDKorLX9LgdQFjH6a4j+OrqdrviOM5c4CMdkXVzAc/OkZ0y uXFSer2e2LZt
dFFz1qcSVB1s2gAxqnMrcvvyLFe3rVm3adq6BYPKMrVjGdoKAMj0ZKzdbku3 2/VOabkBz8i6
Eel2u6W5i0t1zUba5f3f3OvUqZm0VZLsR9Z1G3Rdivz8AUCjg54sr+nJ4iA8 etKo9Ho9L8Mz
etJoaXea6fUcYR1+nlmCqrUVaFMAzVDJ5/S4y2fNtm3vJ+tvyWG3Fcdd3iSY CV4Hovqbaprp
usLW6S9Dd52Kaccadfot6bpM90mwTJN2zePzkfaOsSI+fwBQ+i9tPJF5viKe yFyX56fwHBj2
GwBUSeOv6QnKK+Dx31lDh4NBBDp8/gA0/lhIpgcAADQBmR4AAEDQAwAAUBec 3gIAAI3A6S0A
ANAItcj0WM64dNtj7E0AAKBV+UyPOwp6mtHQE0eMPJm29G3RlH3U5M8i/4cA jI8XVc/0WM64
dHoivY7EyvaonnQb9xkmSeb3y6rpkz57RdcGSeqW1fNfsnyOTLAs2j/fcsKe +pz3YYbnDwEw
UelMz/odm6XTE1mydpV0enPvy/xtNK9BG+t0sM9rW2j/YrZFN7AtAJSiL65i psdxHLGl5wU8
q/cslXtOeFz2bdoivY6ILZ3I0dHdTtD/DTH4u6oj0GULosYmMh0AVFVeWB38 22C6jGo51atp
O8RZd9T2ha1b996kvWn//Ntf18a6MnWZoCTtQbYHQCUyPaavLssZPyzgERFZ vWepl/GxpSeW
kzyTFMwKBAe/DGYKdPOrDu7uj8myceqQZpms2iHOdoRNN1mH/+9xBs2k/fNt f38bm5Zp0gam
/2cAQKbH8GCq+mapywoFp6s6P9NMk66DDltX3PpFTde1h0ndojIrSb/d67Yz 7HfTb/20f/bt
H5XpSdM+qu0Iqx8AlDLTk0S73ZZue0yWrF0l+zZt8QKeJWtXSbc9Fhnw5CHN 9SJxlvV/yy3i
m27a62CSZjmK3E7af/DbWVR7ACDT09i7t3R3zWTxjTROpidpmVlkqLL4Zh6W aciiTqaZkaSZ
Hto/m/YvItMT5z0A1CLT42dLxzulleW3Sf91Cf67UFTXK+jmDx74Tco0CZZM 59XVL692yHLd
SbZTtV7afzDtH6cupnUM21cEPAAakelxsz08kTnGTm9IB1HW7aSDzr4daFMA jcj0iAgBz4C+
uZddme7waWL7F9UOBDwAjI8XjLIOAACagFHWAQAAQQ8AAEBdcHoLAAA0Aqe3 AABAI3DLOgAA
aITKZ3ocx5n3WmjEyICHhbUfbV2dtmFfASjt8bLJw1CIpBuwMM78wSfQZlFm mk4pi6fZqgay
zGO9usEzacfw9cYZsDTvtgGAMqh0pmf9js3eSOud3tz7svIPIVDWuiVd1j84 Je1YrnZUDdBJ
MAKgqSqZ6XEcR2zpeQHP6j1LvZHW3XG4okZaNxlEUdWZ6b6Vm2QgdOVHlaOb pqp/VJ2DnapJ
GWF11WUcTLbDJMMRNbgm7dg3Lte0/aIGADXNvJHtAUCmJ5DpMX11Wc74YQGP iMjqPUu9jI8t
PbGc5Jkk92Ad/OYdnB41f9Jv9/7yw8oOdipx6hx8H7WuuNtnsm1ZZThoRwnd Nt1gnrptMvnf
SPO5BwAyPQPK9ER9k9VlA4LTVZ2VyTpN1qEqW5cBMZ0v7vaZbHdURizqWhST utKO5u0YlenJ
ov5hn3syPQDI9AQyPUm0223ptsdkydpVsm/TFi/gWbJ2lXTbY5EBTx5U104U WXaSb+1Z123Q
daEdpVafewAg0xOQ5u4t1bfWrL4BZ5npyXK+rDMUJtfhxK1zXpmeprVjEZme uPsTAMj0pGBL
xzulleW3V/91EP67XlTXR+jmD3Y0/leTdZuWHaduqnXE2Y4k7afbtjhl0Y7p 2jHttsb5PyHg
AUCmJ+dsD09krvGHlA60cu3MPgNQRrUYe4uAp964MyjfQCdtRoqAB0BljnmM sg4AAJqAUdYB
AABBDwAAQF1wegsAADQCp7cAAEAjcMs6AABohMpnehzHmfdaaMQ4gNuoVevM 4kF1pYrEU25L
2PJZtxP7o5z/J2VaP4ASHc+aPAyFSLoBEuPMr1tfcJrpOuMOgRFnO5I+ZyXp Nmb9NF/TYUDY
H8XujziDvuYR+HD5IoBKZ3rW79jsjbTe6c29b4qwYRTyKhvsjyy2JThAKZ83 AEWpZKbHcRyx
pecFPKv3LPVGWnfH4YoaaV31zVyVCdB9Uw7+TTd/VEYg6TpV355NyjOZFqeM 4PQk26hav67T
j7tforIX7I/i9kecDFzYckn2GdkeAKXI9Ji+uixn/LCAR0Rk9Z6lXsbHlp5Y TvJMkntwdH/8
g1wGv6WGzZ/nOlXfnsPKU33TDnYQUWWo5o+zvSblhZWfpo3YH+XYH/5hL4L1 TLIfVV9a0vwf
AiDTU+tMT9Q3R11WKDhd1fFFrc+0bNNvuWHLxfkGnrZOYduoaqeoa0iS1sck 08P+KG5/RGV6
slhP2P8hmR4Albymp91uS7c9JkvWrpJ9m7Z4Ac+Stauk2x6LDHjyoLpWoXQR bg4ZkTq2E/uj
uvh8Aahdpscvzd1burtaisg0ZPUtN8636ry+sef1Tb6oTA/7o5j9UUSmJ857 AGR6KpHp8bOl
453SyvLbov+6A/9dJqrrEXTz57nOuOWZ1t+kTnm2a15tFPcaD/ZHvvvDtI3i lBfWPgQ8AGqR
6XGzPTyRGXGze2jO/mLfA6hFpkdECHgQK5OAcgc6WWWyCHgAHHY8YJR1AADQ BIyyDgAACHoA
AADqgtNbAACgETi9BQAAGoFb1gEAQCNUPtPjOM6810IjxhLc/lyHW7C5jRwA UEh/0+RhKETS
DUiY5PkfuvW60q4/TfmmA1DmFfhweRkAIE+VzvSs37HZG2m905t7X0X+x/cP unzVgI0EIwCA
OqhkpsdxHLGl5wU8q/cs9UZad8fhihppXTVoYfD3YNAQnO7/m0k2RbeusHXr yosawDJJ+VED
QuqWjTMIZ1g7ke0BAORp4Jke01eX5YwfFvCIiKzes9TL+NjSE8tJnklyO1/3 x+2og9Oj5k+b
ncmyPNPy/cMABNer236TtsyrnQAAINNjmOmJykyo/q6argoq0mR6oq41Spvp Mdm+ONtvOj2s
ncj0AABqGfSMj4/L2Fi628zX79gs+zZtkSVrV3mvl77g3MQZiKw6d936dBmX LIKeLMovIuiJ
upCaoAcAQKZHI83dW6qgIa/OPU5mJmnQk7b8ooOeuEERAABpVP45PbZ0vFNa WXE7bPfHfxeT
6noX3fxxArCwbE1YHfMq36RdoqabtisBDwCgCDyRuco7b8CBQpbrJ+gBAOSt FmNvNXUIikHc
AZUmo0XAAwAYaLKAUdYBAEATMMo6AAAg6AEAAKgLTm8BAIBG4PQWAABoBG5Z BwAAjVD5TI/j
OPNeC40YKzBgZhMG9WTgUgCAUX/R5GEoRNINeJnm6cu64R5cJuUmGcsqz/Xr BhQt4jk8POsH
ABCl0pme9Ts2eyOtd3pz76ucrej3+97PIB46mMX6/WX4h+8AAGDgfW0VMz2O 44gtPS/gWb1n
qdxzwuOyb9MWbxyudrtt1MmHDcrp78j9ywU7+bD5ddmIsAFAw+oYnK5bZ5oB SJOuP6ocXftF
DVhqsl/CtgMAAJESZHpMX12WM35YwCMisnrPUi/jY0tPLCd5JkmX9QhOL0OW JliXoqnaQjf4
qK79TPbFoNsZAECmp/KZnqjMQtyMR1i2J49Mi0lWqaj1Z12O6TVDZHoAAKUO esbHx2VsLN1t
5ut3bJZ9m7bIkrWrvNdLX3Bu4gxCVp2zbn26TEkRQU8R6y8i6Il74TYAAJXO 9PiluXtLFRTk
1TnHybyY/i1u0JP3+osOeuIGRQCAZqv8c3ps6XintLLidrjuj/8uJNX1Krr5 s1in6Xp15Q1q
/SbriJoep44EPACA2md63GwPT2RW7NySBwJZ1o+gBwAQpRZjbxHwqJXxDqe0 GTECHgBA4v6C
UdYBAEATMMo6AAAg6AEAAKgLTm8BAIBG4PQWAABoBG5ZBwAAjVD5TI/jOPNe C40YSzrgZV0H
4mSAUQBAqn6kycNQiKQbsDLO/KZDU2QRGIQNJJrFOsOeAJ33x4ln8gAAkqp0 pmf9js3eSOud
3tx7FKPf78/7CQaQAACUTSUzPY7jiC09L+BZvWep3HPC47Jv0xZvHK52u22U MdBlRoJjQ/mX
C3b+YfMH16ebplpeN02XVUkyyGiSdUYNLKprp6iBRU3aX7ddAABEGXimx/TV ZTnjhwU8IiKr
9yz1Mj629MRykmeS3E7V/XE74OD0qPmTri+qzKxOUaVZp384ieD26trJpD5Z tCcAAGR6IjpZ
XSbDZHqQSXYiuHxYRkmXLUma6UmzzqhMT5L2M6kHmR4AQCWDnvHxcRkbS3eb +fodm2Xfpi2y
ZO0q7/XSF5ybOLOQVadtEpDogpSo4CaroCfNOosIesLak6AHANCYTI9fmru3 TDv/LDrtuNOS
BFhp65E2KMkr6IkbFAEAoFL55/TY0vFOaWXF7YjdH//dSarrWHTzh5UZzDRF rcukkw+eaiti
nSbtFzXdtP0JeAAAjc70uNkenshc3qAgyzoR9AAAkqrF2FsEPE8ry91OWWSM CHgAAJn2TYyy
DgAAmoBR1gEAAEEPAABAXXB6CwAANAKntwAAQCNwyzoAAGiEymd6HMeZ91po xFjwreFRD/Ur
op5J61DH/QEAqJZGD0Mhkm4gyyTz+6meoJzVunTLFVGHJIOlZhn4cJkaAECl 0pme9Ts2eyOt
d3pz70sbXT7VGft//EFGER11kXUIWw8AAAPpi6uY6XEcR2zpeQHP6j1L5Z4T Hpd9m7Z443C1
222jAEA12nowWxGVKQmb3yQDoVtvVPlx11lUHUxGa9dlnMIGJDXZP1HbCQBo roFnekxfXZYz
fljAIyKyes9SL+NjS08sJ3kmKZgRcTvY4PSo+VWdusk1Mbqy/Os1Wecg6xAc 6DSsfePsk6Tb
DgBA4zM9URkFXVYoOF0VNMRdf1h2Jipro8puRGU88qpDVKYnSfuGZduC7U2m BwBQykxPEu12
W7rtMVmydpXs27TFC3iWrF0l3fZYZMCTB9U1LKC9AQDl0ei7t1TZg6wyEWR6 8s30xG0LAAAq
/5weWzreKa0sswj+61H8dx+prlPRzR/s8FXz+K8XyqKOqnkGWQeT5aKmx1kv AQ8AoLaZHjfb
wxOZNTu4AkFAlnUk6AEA6NRi7C0CHr2y3t2UJENEwAMASNVPMMo6AABoAkZZ BwAABD0AAAB1
wektAADQCJzeAgAAjcAt6wAAoBEqn+lxHGfea6ERYwG3gg/idvO066zrAKAM bAoAFT+ON3kY
CpF0A1Ummd9PN4imaZ2SPJcmztAUZa1z2Cj2eX+ceRYQAFRXpTM963ds9kZa 7/Tm3pc5S6Ab
JDP4N9OMQlEdfBnrrKoXwQgAILRfq2Kmx3EcsaXnBTyr9yz1Rlp3x+GKGmld NZilajyqsOyG
/2+6+aMyBCaDc4atL059g+VFDVBa1jqb1EtVh6gBTU32f9j2AwDKbeCZHtNX l+WMHxbwiIis
3rPUy/jY0hPLSZ5J0mUxgtPjZD1MB9OMymqEnZYzrW/wfdh6y1rn4OCpYfsv zj5Pk8UCAJDp
KXWmJ+obvy4rFJbZ0GV7ojJNJn/X1VsXsMTJUphe7zPoOiddf5zpYfuTTA8A kOlJlOlJot1u
S7c9JkvWrpJ9m7Z4Ac+Stauk2x6LDHjyoLv2pSnrr1udq9ieAIBwjb57S/Xt PqtMgWmmJyqT
YZo1MalXVN3i3Nk1yDoXkemJ8x4AUA2Vf06PLR3vlFaW3/L914v47w5SXUei mz/YIevmiVo+
quw49fVP05VTpTqb7L+o6aZ1I+ABADI9pcj2NPGJzHl0wHl36oMIGrJcJ0EP AFRXLcbeIuDJ
Tp53KxUZMERlmgh4AKB5GGUdAAA0AqOsAwAAgh4AAIC64PQWAABoBE5vAQCA RuCWdQAA0AiV
z/Q4jjPvtdCIsUQDUYbVpah6Dro9GBgUABDaTzR5GAqRdANJJpnfL+lgpXHq EjWYZh51iDOY
aB6BD5epAQBUKp3pWb9jszfSeqc397600eVTnXFwEEvd71Wvg249AAAMrC+u YqbHcRyxpecF
PKv3LPVGWnfH4YoaaV012GTwd38H7l8u2LmHzW+agdCNXxVVB90gn6ppRdXB JOukyziFDQhq
sn9MthMA0EwDz/SYvrosZ/ywgEdEZPWepV7Gx5aeWE7yTFIwI+J2sMHpUfOr OnXTgTNN6xDn
OpYi6xAcrDSs3Dj7JG0bAADI9DQ20xOVUQjLYERdw2K6/jjvTacnyexkVYeo TE/abYtqbzI9
AIBSZnqSaLfb0m2PyZK1q2Tfpi1ewLNk7SrptsciA548qK5hAe0NACiPRt+9 pcoeZJWJINOT
b6YnznsAAERq8JweWzreKa0sswj+61H8dx+prlPRzR/s8KPmSVKHsHKCp94G UQeTcqOmm9aL
gAcAUOtMj5vt4YnMmh1cgSAgyzoS9AAAdGox9hYBj15Z725Kkyki4AEAJOon GGUdAAA0AaOs
AwAAgh4AAIC64PQWAABoBE5vAQCARuCWdQAA0AiVz/Q4jjPvtdCIsaBbwQdx y3kW66zrQKAM
cAoAFT1+N3kYCpF0A1XGmT/YUeqe2qz6e9h6kjybJs7wFGWud9ho9nl/rHkm EABUT6UzPet3
bPZGWu/05t6XmX+AzGCH7Xaiur+HldnkeqsGHiUYAQAov7BWMdPjOI7Y0vMC ntV7lnojrbvj
cEWNtK4azFKX4QjLLkTNH5alUK1XV8ewdcapc7C8qEFKy1zvqPXr9lecAVPj tBUAgExPaKbH
9NVlOeOHBTwiIqv3LPUyPrb0xHKSZ5J02Yvg9LTZjrTZFpM66OocfF9klijL egcHUQ3bj3H2
fVH7FQBApqewTE/UN31dVigso6HLCuj+bpIxicq2xLm+Jc61NmWud9L1x5ke tl/J9AAAmZ5Y
mZ4k2u22dNtjsmTtKtm3aYsX8CxZu0q67bHIgCfvjIauI8w7u2JShzTlVq3e da8bAKABmR6/
NHdvqb7VZ5UhSHOtjC4rEpUxMalbVIYiTT2LrncRmZ447wEAZHoyz/T42dLx Tmll+e3ef52I
/64g1fUjuvlN1mFaRlT5cersnxZVr6rU22Q/Rk03rRsBDwCQ6RlotqepT2TO o/Ot63Nuslwn
QQ8AVE8txt4i4MlW3ncqFRkwxM3AEfAAQI37TUZZBwAATcAo6wAAgKAHAACg Lji9BQAAGoHT
WwAAoBG4ZR0AADRC5TM9juPMey00YizZAJRh9SmyroNuFwYGBQAo+4cmD0Mh km4AyTjzRw3c
GZRkt0QNy1B0PeIMJppH4MPlagAAv0pnetbv2OyNtN7pzb0vM//AlcFhEfzD L+TdWRdZD9WA
nQQjAIBBqGSmx3EcsaXnBTyr9yz1Rlp3x+GKGmldNcikLiMSlg2Jml+XeTAd CNSkHroBPk3W
m2c9kmaeogYENdlPuu0AADTXwDM9pq8uyxk/LOAREVm9Z6mX8bGlJ5aTPJPk dpbBbEhwetT8
qSNSw3rkfQ1Lmnr4h4EI/l3XniZ1GUQ7AADI9FQ60xOVSQjLXERdu6LLlCTN BsWtn66MouoR
lelJu31R7U6mBwBQqkxPEu12W7rtMVmydpXs27TFC3iWrF0l3fZYZMCTB9W1 K7p5Bq0s9Siq
3QEAEGn43VuqrEFWGYi419aYzJNVpqeoehSR6Ym7bQCA5qr8c3ps6XintLLM HvivQ/HfdaS6
PkU3v8k6sqhH2Pqi1lNUPUzKjZpuWi8CHgBALTM9braHJzKH7OSKBABZ1pOg BwAQVIuxtwh4
wpX5zqY0mSICHgBArP6BUdYBAEATMMo6AAAg6AEAAKgLTm8BAIBG4PQWAABo hHrcsm5Z0u12
2ZsAAECr8pkex3HmvaLBEfyAbstnoFMAqEg/UflhKCxLOp2O9Hq9RNkekwE4 i+o4s36icPAp
x6brrsL2qfbboJ7Pw3OBAKAaKp3p2TWxSzqdjqwbWSedTkd2TexK1FmVccDK LOriHy6ibNIG
PAw0CgCI3X9UMdPjOI7Ytu0FPJPLJ2Vk54hsnNwovV5PbNuOHGk96tu5Kkui ywqFZYt02RbV
WFO6rEWcuoRtp0n9o6aZ1C3P7Qvbb3H3Q1b7k0wPAFTDwDM9pq8uy7IOC3hE RCaXT3oZH9u2
xbKszDIJwY7OdLqunOD0YBlp6xKVYQkrK2qdwQ6+atuXx/4EAJDpqWymR3f9 SZLpqk5Zte6s
1hmV6TEtK069i9y+JPvNtJ5Z7k8AAJmewzI9SbTbbel2u7JuZJ1snNzoBTzr RtZJt9uNDHiK
VNVrT0zqrcvolC6yz7CeXEsEAGR6BibN3Vsm2ZEssxJh2YqyZXqynC/r7SvL fjPJPgEAyPRk
9pwe27a9U1pJvrW3Wq15P6rpSTs0XTnB6cFpJmWYBnX+V5N6xlmnajuK2D7d fjOdP02WJ4vP
BQCATE+qbA9PZAYAAGFqMfYWAQ8AAIjCKOsAAKARGGUdAAAQ9AAAANQFp7cA AEAjcHoLAAA0
AresAwCARqh8psdxnHmvjY5gYz54jwEzAQCN6iebOgyF6snA/r+VpVni1CXJ E5vDxtVStYuq
vUyX5fIxAMAgVTrTs2HDBul0OrJs2TLpdDqyYcOGWMv7B4407dCbzD+MBgAA BD2GxsbGEi/r
OI5YliW7d++WZcuWyYoVK2TZsmWye/dusSwr0akuf+DjD4B0Yzapxn4yXV61 XJJTU1H1Mpmu
K1sVDIbVQTemlmndTdoki/GzAAAEPYVzMz2mry7LssS2bS/Ds2LFChERL/Dp dDpi27ZYlpVZ
diMYAPiDgqjRxMOySf4RuqMCDJN6mdY3y6AhSblJ2iTPbQAANEMlr+lxHOew wOe+++6T3bt3
eyOut9tto2yGapr/b7oMhup6FV2ZYcvrfg+rZ5J6qQKPsLJ1dTL5m2qeOG2q W161DQAAVCbT
k0S73ZZut+ud0nIDnmXLlkm3240MeIwjwpCMThHLZ1muf36Ti5BVp+0G3aam 2wAAgLIPavLd
W1EZDNOMTtR0k0yIan7TaVnV12R9cTM9/qDJtC5x9gUAALXO9PjZtu2d0kqS dXB/VB2o29kG
L57VTTddPk09o8pVbVNw/qTBQhaZn6RtktU2AADI9FTaoJ/ITCcMAED51WLs rUEEPGQdAACo
FkZZBwAAjcAo6wAAgKAHAACgLji9BQAAGoHTWwAAoBG4ZR0AADRC5TM97ojq SUZWr10Em2Ck
dgAAGtNPNnkYCr+yDnEQpy5x6x02v//pz2FtZ7K+sGEpytjmAIB6qnSmZ8OG Dd5I651ORzZs
2BBref/glXE78sZGyYEBQ8kWAQAIeiKMjY0lXtZxHLEsyxtZfcWKFd6I65Zl JTrV5e/A/R25
yRhXweWillctl+TUVFS9TKZHBTbBegcDQl276dpBtZzJtpm0WRbjnAEACHoy 52Z6TF9dlmWJ
bdtehmfFihUiIl7g0+l0xLZtsSwrk3qqshrBbIcqYAhb3j9dF2AkqZdpfQcR FKjaKum2qdqM
DBQAIPJLfRWv6XEc57DA57777pPdu3d7I663222jbIZqmv9vqmt/VNeoqKab LK/7PayeSeql
CizCyjatX9j2R01P2ua65VXbCABAaTI9SbTbbel2u94pLTfgWbZsmXS73ciA xzgiDMnoFLF8
luX65w9bRnX6qMisSZo2M91GAACZnkpKc/dWnOxD2oxGWFYjbqYnq3olWZ9J uyVpF1VGJ06b
Ra0DAIDKP6fHtm3vlFaSrIL7o+og3c5UdxFu1EWzpvPFqWdUuaptCs6fJhgI K8ukveKWn0W9
AACoRabHzfYM8onMdLIAAJRfLcbeGkTAQ1YBAIBqYZR1AADQCIyyDgAACHrq 6MB9n5BWq8Vr
w14BAGjc6a1WqyVHrXgHe75BHvraqexzAEDzTm/t/+HH2esNc/TzL6YRAADN u2WdTE/zkOkB
AIjUINPjjqhuOrJ6nTM9cbetKVkvMj0AgIEGPWNjY5mU4w48avpEZrcD3P/D j8/7KWswUHRd
VOvLog6DbGdOaQIABhr0ZJHp2bBhgzfSeqfTkQ0bNsTqAI9+/sXeT3A66oP9 CQAQERke1IrT
ZHocx/EyPMuWLZMVK1aIiMju3bvFsiyxbVs70vrRz79YeX2HG/j4X1VBki57 EGf54DT3fZzO
2aReJtPjMtked1qwLYLv45araieT7SLTAwAQKUGmx/TV5QY1wYBnxYoVXsbH tm2xLCuTDlCV
DXI7bvcnWL5/Wlg2yR8EBP+epF6m9U0aBKi2O6xsXYCTZHtU7WS6XWR6AACl yPSYvrq63e68
TI8b8Nx3332ye/dub8T1uJkek8yGaeddRJZhUBctqwKZOMGGLtuTJhAratsB AAQ9iTM9SU9x
tdtt6Xa7smHDBtm9e7eIzJ3aWrZsWeSt6/t/+HF51n+9N1EHnyTQSLN8luVm ke0Innbyn7Yq
envibNfRz79Y+n1uWQeApqv03VsXXHCB9Ho9L8NzwQUXJO4k45yKqbq0wVdY O5kGYHlkX3Rl
kukBAIhUNNPjZ9u292PaMbqZnqiLYHWds2mnnVXnrrvGxWReVT3CghZV2WEX LGdx51vSdjJd
N5keAIAIT2TOLMPAxbLlxROZAQAiNRl7yzTgcQOUrAId94eAp9zYPwAAEUZZ RwOQ6QEAiIhI
f0Bs2x7Ievf/8ON9EeG1Ya8AAAws05PVhcwAAAAmGnd6CwAANNPwvd+/i1YA AAC1R6YHAAA0
ApkeAADQCEM0AQAAIOgBAAAg6AEAACDoAQAAIOgBAAAg6AEAACDoAQAAIOgB AAAg6AEAAAQ9
AAAABD0AAAB1MHzLV26lFQAAQP2Dnl6vRysAAIDaa/X7/f6gVj4+Ps4eAAAA hRgedAXW/LdX
l7ZxbvnKrbnWL+/yy7bestajqWh/AE3DhcwAAICgBwAAgKAHjXba6WfFml7n bS5ruQCA+Yyv
6Wm1WuK/5jn4Pq8OYPvWO3PvyOKsQzV/WBlJyg/Kuw0Gud4y1sPdZ3H33SA/ xwCADIOeoDxv
+vJ3EGk6nqJkWT+3rKK3e1DrLWM90q63Cp9ZAGhk0NNqtZSBjGq6O63f78/L 9ITNm2WQ5P/2
HOwc/R2Nbr6wwCpNZ2e67jQdoel2hk3Pst1N1pNlPbLc/mAZJp+lqHWaBjxh yweX9dfHv0xY
nfL+LABApYMe1Skr3akr1bSw015Znw7TZYB0vwffm0zP4xt+HuWHdZBZZ8ri tqfJ+6psf3DZ
NGWnqVvUZ92kLQCATE8gI1MGJt/gwzqmQV4YmmdHY7qdWW9/0vKyrkfW29+E 4IDABwB8Qc8A
H8hs3LnpviXHWb7IemdxOitpO2W93jjtXvR+KGL7q6zozyMAlN28W9bLmPXJ otMuQ9A2qO0s
y+3QedcjzvYHsztZZnuC1+CU9UsEADSR8kJm97oe/3T/NH92SDVvXgduk85E deGn6fymnUOc
C2iTlJ+kPVTry2KdYe0etp6s6zGI7U+671Rttn3rnZF1yzpg4iJmAJhv4AOO MvYWY2+B9geA
IvBEZgAAQNADAABA0JNS2U9tAQCAehkeHx8fyIoJeAAAQJFaGzb9a59mAAAA dcc1PQAAoBGG
f/KDr9MKAACg9lrbt97J6S0AAFB7nN4CAAAEPQAAAHUxfMtXbqUVAABA7dXy mh43kONZQLRH
Vnb/9Gdy591bRURkbGyMBknJ/3yws844XZY95z/TKBx/2Fa2maAnyQ6gc6c9 8gh4PvCBD9AY
ObjqqqsIgDgWsa1sM0EPHzTaoywBz/vedwWNUYD/8T+uJvjhmMS2ss0EPXzA 0rXH/bf/Sej8
J5/zP2k0TcDz3ve+h8Yo2DXXfIjAh45R3nr11fLpK65oxLYS+BRjmH/BZpiZ bcnv/vndyr/9
8NZ3yv23/wmBj0Z/doZGKNh7Lr9MPnTth0Xuzj/r8+un/6b3+/e2/iuNXyJP HpwOBEEflk9f
cVmj2mDZvZfKxHeOk5OXP1MWHzEsL3j+CbL/uP/Kh6PJQQ9Znuj2mOm3tPMv Ovo4ed4LXyY/
IvDxuFmev7zsUpmdnZ33twsv/4QsWDAkQ62WDA0tkAXDLVkwNCzDw0OyYHiB DA8Py/CCBTK8
cMHc64IhufSC36NRY/rLyy4VEZG/+vB6OUuyD3z8wU5wGsFPftb8t1cbHbN/ dP+DMj21V350
/4PyvJOf/VQQ9HgttzUs4HnyqGVy8fibRETkrq3PkB3/cZM857j6bjNBT4b+ afIo+eq3fyhP
Pv6QLF76LHnBc4+XN7x0RJYPP1D7bZ/ut2TWdyLz19/+KfneJy+SlvRl0dFz /0Env/Asufef
LpZTf+/jHJmfEgx4RETOWH2KvPT002RmekZmZmbkZ3t+Lr9y7DPk0PS0HJqZ ltnpWZmZmZXp
2VmZnZ2VnT/5mbKcJnjNua/zfv/fm79q/De/v7j0z+Sv138k08AnGPBM9adk UWvRvL8T+BTv
zVdfKXJQZFoOyaGpg7LwhW15/zfulv9PzpDLP/khufbtzTnV7AY8x1pvktd+ 4BH56vuPlJeM
PCR3bJ3mg1KGoOe008+S7VvvNJ5etAs/vVUOHXGcXPPms+V3XnTiXBC05Sdy 9RfulvNfuVLO
Ou6RUuyQvNpreqYls09FPS+5+Ab57scvnHvfEjn+9EvEjYe+/+8vq/y2Zhv0 HH5q6+57fiC/
/MU+aQ21ZGioJUMLhmX4gYdkaMGQLFgwJAsWLJj7GRqS4eEhEWkpy2mKbrcr IiKWZcn/+uqX
RETkta97/bzpUe3z53/2p/I3H/m7TAIfN+DxBzr+gMedXpfAZ9DH5jjruemK D3pZnvd/4265
/ap1sutn2+Wij98tC099hbz/G3fLppNfI695+zvkiCMWyy0f+Ugtj0nBgOcr 7z9SZg7sk9kD
e+X+nQ/LyZ369VGFBz2nnX7WvD9UeaOC/vpbh6S15Fly9zWvFxGRBx97Qp79 jCPl91b9qhx3
zBFy6Wf+Vc5643Mid3SV2+ZQINPj/e4mIJ46+7Xk6CONPvRl+qwE/wmz/KdU ZWhOf9Hz5S8u
/H3v/V3/fr+c+aKT9Z+/G76sLOcZv/LMee8fe/ThQtvtGb/yzHnrDL7PI/ix LGteIBTWzkHv
ftcl8rcfvS6zjI8/0DGZHuf/wZ0W/FwG/x72f1TnY3KU5538bJntiex6cLu8 7SOXypfGPy9T
hw7ILw88LG/82Gb56GVzz8pa+8HLZPiIY7xgqQ7t5w94RES++v6jZObAXpk5 sE+e+NE9MvrS
X8juChyXK5HpyavjGKR7HvsVmej+i9x/3dwH6OXv/ZK8/uwXyKZbvylnveR0 ue78M+XJxx8S
kfCgx20L1cGqCmZm5n7OetcNcudHL5SZGZH3bXDk6/++Q0RE7vzohdJviRx1 1GKj8sr8Wcmy
LroMxDe3/FCGRGR26On3Tw/qMuRFk0MR5TzyiwfnBR3+90Vnsh75xYOZZ6S+ 9MV/FMuyvCAn
GOxYliVf+uI/Gq/3T9/5dvm7j30yceCjuo4naEoOySJZ6M0flu1J89k3Wa6O x+Qwb736wyIi
8ukrLpOrO2fIBR/9jnzV/rwsOeI/yT4RWbhgkfz1BSfLn99wt1xjnSGbrvxw bdrvB//ySRER
+X/9FTJzaEbeYIn0nzwoMwf2yuz+vfLE/ffIwr33y+5T19cu+zKwoCfsn9rf qLqsR1Q2RPX3
4LSwb0hJOrQtux6RFx3XkuXHL5G3fPLf5AXPPV4uPfc0+eLt38wkw6DaHt0/ mkm7mWSXkrTH
odkhme735d/+9q1y1rtukH/727fK+Pm/JVfKb0m/LzLTnxXpt+TIJc9JdPBO +/kIa8s4ZZvM
H+cbkSoDMT09Iy9f9Xzv/Te+8//kt176a9oynG9/T5vJCE6fnZ2VZz7rBHn4 oT3eq4jIM591
gjePapp/etj8wXKPPe7Z3jxR6wubHuaWL2yaF/j4A55bvrAp9vVOl1z8Nrnu 49enzvhMyaG5
zM5TAU7wfdwMY9j/hf81TTCf9P8s7v9k3LLD6haHe2fWmz/4AXniiX3Sf/5v y9TMAdl3UORr
/3ezrD7xxTIr0/L+Nx0tf3njXfLFk19bWPuZHNeTfun6wb98Un717IulP9uX Q4emZergQblx
/fVy3vmvnsvwhAQ8SfqptMfcKp/5GI77zx2288OiapPlVOvJMoKd6G6X+z72 RyIi8u0H+/KR
33qe7Pz5vkwyCib1VM2vapew9kraHodmWzIz0/dlfvpy5cZ/9TI93/ibC+Tb V8+dbnnGqW9P
FQgmqXfYAcX/N5PPXpzPXNS+U3XIT04dkq9/c7v0Ze6sYF9Evv7N7dpte3Jq JlbQ4wYXP3/w
pzI7OyvHP/s58vMHfzov8HDfq6aHze8v17+8+z5sfcHpWVycnbSMd7z9QvnE J2/I5FSXm9lZ
JAu9wKcIaTvLOP9ncf4PkvzfRPURcd105VXyuj99h7Rm+/LL/Q/LwgWL5IwT Xyy33PN5+Y1T
XiZPzk7JzIzIa97+DjnmWUdHZnzyODZkta1uwCMiMjM9I9NTU3LoyUNy/Gnn yac/NiFv7BwT
GfAEA+o0/XXYvqxDBnLYJCLMaoOSRv9pGvWYI+Z/a3ves4+R6/95rqM/c8Uz ZfXF18vH/+wN
Ivt/lMn2qL7dpd3+LExPt2Sm7wt6+n153x//hryv/5sirb4XEJ17zaRsfu+I PO+82wvdz7pl
oq5zyFt/5vDTLgefnJJXvPw07/0/f3P7vPdB//zN7yrLERE5/tlPZ9YefODH 3nz+31X1cN/r
pvvL9U83LVe3/PHPfo48+MCPY7XhH573x4dleUSevsbnHz93Y6J98/aLzpdP fuozsQKf7239
V+8Ulz/I8Qc+wfnTfJs2DUSy/D/LsxMy/T/NwsLFi+Xac86UP/rwnfLJi58n MzIjLz/lZfLZ
7hfkFS/9TZmdbclHLxuT5538bHnzB6+Um678YCH9UZbcU1o/+dbH5cSX/okc mj4kh6am5NCT
UzI1dUhmZ2aNMzymmahB7MvSBj15b2yS8oM7Lm4Zpz/3WLl1SOSBR/fL/7zo t2X1xdfLH7zq
bHnRcS158duvl2vf9hpx/u8e+b2R9BmNLOfP2lR/SNz+7Y5rz5ff/ovPyB3X ni9bPvysw+Z9
xbsn5Ot/e07iwCfuPjJtm0G0oTrTMyVf/ee7RFotkX5fjj7y6Ln32kzPlDaj sWf3LuW6dBmg
4HvddH+5JvObLO9Oe/aJz1XOo7L2TaPzAp7ghcxu4LPpsxOJ9s/b3joq1396 InHGxw18TE9p
mR6nisgS6U7vpjlelukYtvDIJU999kT+5GM/kqvfulSenJ2S3z7jN+Wzt/0v mZk913t+T9yA
pyyd+5nP3CEnvn6NtI7+Dbn52o/J8S8alUMHD8n01JTMTE3LbL+f6JRW1HaW 6Qv5QIOeIsX9
NpL0fPivHfVzeU17tXx4873y2pc8V74w9key/Pgl8pevXSkiIp/p7pD/dNRi ETmQaXBXtpTf
zExL/P3bbdecL1s+fLz87hWfmz/f3m/K4qMWSeetl8kdn3ylvHDdHan2ZdUv sFMFK1MHp+V1
v3Om9/5rztZ574Pu6G0xPr2VVdDjn/6c554sP/3x/YnL9S8vIvLTH98vz3nu ybFPTVmWJf9w
42e83/3BUJpTZRee/8dyw2duNA58/NkeN/DRzZfF/3mWmXLTstJePzRob776 Stl05dxAtP90
8evkNW9/h1x+/atEWk+dVO6/Vr72p6/LrP0GcZx6xr//mRfwiJwhb7z8Jvn7 D/6hHPdf1sqh
qWmZmcn+MRdc8Jwg6NGdOwxGi8GGDVsuaielPXj891OmZdv+Z8nXt/9UfvrI E08fzI89Uta+
cDpRHeIeVMJuUzWZrluvaZtMz4rM9ucPs/bII9MiT/5cOf8RC56QJ6f6sfdL knqbtqVJW5nU
JV7Qc/iB57Ff7pU3vfOv5k37h1tuj12O6fSf7PqhPOe5J8977/5dNT1sfl25 P9n1Q+/vuuV/
9aTnK8s0CXZERG6auMFb5qaJG7zpYe1g6oLRP5INE/+QOPCJG/AUFVzE/Z+J +3mP87+a9v80
juAt6AuOEPnoa+bKdLM7WbZfVD8W9/gdN+CZ05e3XHmpXHfph+SZv7ZGfrb9 H+WV578v9nbm
uS/rEDDVYsBRhqGIbo8vTFwm0/2WtFoiJxy7SH7lmIXyjKOH5cHvfN39KIiI yJuuuEJm90/K
5/7uH+SMi7/e2DZ0h6F4yx+vLW0dR04+RSbv/wEfeJ+/v3FT7LG6GHur/Mfs Ne+5TG750IdL
v12qTIpqW5+16Aty/K/9gS/gERG5W/r7/03+7n2O9Pt944CHPjnnTA+q6b+P qg8Yz33p0/9Y
3/7b35bZ/ZNy4/rPysve/S80WgYZiKbXr2jr3vQHsvGzn481UCmBTrm9+eor Sx3wJMmEtI76
9acCHvf+z7mAZ/qBxyof8JQdQQ/mIeAJBhXlHTPrRzu2N3ZMr9BO8rw1IiJy 0+duyWWgUhRL
9bTlMklyyufnj62Qnz/2ncDUl4uIyCvPZ3Bigh4UgmCnWkEPwv3RG18v/3Dz l2JlfQAQ9ACN
1ef0UaWd9wdzd/h87vNfFbl7bhoBEEDQA0CBTE89vHHNud7vN9+ymQAIaKiW bdt9mgFQ+4PX
/y6NUGOf/9L/oRGAJgU9dbhlHQAAIMoQTQAAAJqg1e/3yfQAQAkFh+sAkM7w vd+/i1YAgJK5
5Su3er9znAaywektAABA0AMAAEDQAwCojDxHgwcaGfTwTwUAgwliOP4CBQc9 AAAApQ16/N8O
Tjv9rHk/wW8Rwenu76oy+CYCAIOhO45HHZfDlgPqYHj71jvltNPPku1b7xQR 8V7df4Dg3/3T
g78HlwcA5MN/bA47Dgf/FhYoJVkOqFTQE+ebg+4fL8k/JQAgH0kzNWR4QNBj ENwAAMoT8AQz
NhzngTlDSf+p4vwTkeUBgOzleXwl64M6Gg77VuC/zkc1XfcPyDcGABhsIBT3 76bHeaDKWtu3
3tn3BzxZf9DJ8gBAfLd85Vbp9XrS7XYZewvICM/pAQAAjdCybbtPMwBA+biZ nvHxcRoDyCLo
6XQ6BD0AAKD+QU+/3yfoAYASuvf7d8mpLz6ThgAywjU9AACAoAcAAICgBwAw cI7jiGVZ4jhO
qnJarVaiv0ctB1Qm6Gm1WnygAaDEbNuWTqcjtm3HCnD8P2mCoTr2IcE6B9vL /Xve26YqP4t1
qvZLXtsyqLZLFPQAAMprYteEdDodGVk3Ip1ORyZ2TRh1Qv1+f95PGO51ebod gm1G21Sv7YZM
/jHCot6409IuP+goEQAGzT2lNblxUkbWjcjyyeUysm5EJjdOhp7mco/rJt/K o7INUVmcMvQh
YRkH03WYZmJMshnB6XHqH2d/mfSbqv0Sp1zT/VK2thuO+8+m+qcxmea+T7u8 yT8uANSZe0rL
DXhEZO51nYj9FltERLrdbqJv5FEBkurYXMY+xKTOYf2Mah2mbWXa6ev6NJM+ Ls9+M6pNVOVG
rbssbZfr6a2wCDos6ouzQwCgiUFPr9eTyY2TsnNkp4iI7BzZKZMbJ8W27UQB Txnl1YckyU7E
OSWYpB9Lmukx3R5VnXXZniR1iVp3WdpuOKwhg+mjuJXVNbK/bH8j+KcBANTa 7bZ0u12Z2DUh
kxsnRdaJd6qrfVK7FMFKVfqQsvQ3SdsmuM1ptydNJm9QbRlnvUNFRbWmUScA wMzoSaPS6XRk
41s2SqfTkdGTRiM7h6Kuh6xiH1KWa0WzCjRMysnrMzGotoxa73CSD3LwYijT acEKhU3TLQ8A
eFq73Z73mqSTi5sZSdOhFdWHmNRZtw7/dJO2MS0/TptE7au8+s2k+zfpuvNq O21QxNhbAFBO
jL2VXzYgz66Pm23K23bDNDEAoAmdqWk2oIzls28IegAAMJJ3Z0qgU422a23f eid7CgAA1B7X
9ABASXFND5Atxt4CAACNwDU9AFARva9dG2v+445fIStf8gYaDkgT9ASfX5DH k5TrdssftzAC
SGtqeliOf/m7jOefockA86BHFcxEDe6VZ+ee5oFaeQQqqvoQ3ADIy8HphSIi svayG+S2a8+X
IxcOyfrPf132HZySR/c9KQ/vPSgPPf6EPLz3CXl030G59/p3zzvMmx7TVcfY sGV1D5cDKhX0
JFHkbYGDDDB06+YfHUBenpha7P2+eLglw8Mtufy833n6uBQ8HqU8riUdmRuo XNATNXS7/0Pu
fx93mPmkA5up6hssU1WXqEeYm3y7MT1o6LaHh1gBSBT0HFr0dNCzcEgWLmjJ VTfdIQempuXx
A1Py6P6D8ou9B+WRvQfl0f1PyuMHpmT/ly8/7PimCmZU04Lzks1GbYOeOBF9 2FgnqqBDlx5N
EwCFBVhR6w5bXvfPHTXeh257ijwdCKBeDvgyPYsWDsmCVkvGR1/19PHkqdxO X9zjTYEPfePL
HOoa9MQJRHTfKLL+x9KVmeW6TQOtONsAAKYOTs9ler77iYtE+n1ptUQ+OHG7 /PKJKXnolwfk
wccOyJ5HD8jDew/IA5+9VKQlsijGsTnNcZ1AB5UNevxZiTwyEmnKUS0bJ0tU hn9MDg4Akjg0
vUBuu3mz3PbU+9eec4ass05Tzjv5kz1yzNFHylEnHEfDAWFBj6pjTpKd0J26 CgtYilSGU0uc
3gJg6vJ3/P5h095zw63au7f2fvHy0C9fwcy56el33R1bQGWDniw7c/8/k+5a mDT/RKbLRl2H
EzZ/VBCouwAwbR0AIMyHLnx1ZmWlOT4V/UgRILOgJ+xW7KjzuCbzhV0cHPUP GedvSaelqWsW
2wkAeTC9CSXushzTUBWMvQUAAAh6AAAA6qK1feud5CUBAED9g54+J2MBoJTu /f5dcuqLz6Qh
gIxwegsAABD0AAAAEPQAAADUJehptVrzfpIwXY6newIAgDwNhwUhRV7jzPXU AACg8KAnKuBR
PaY87BHkwaEcdMurhm7QDSSqWo7ACQAAxAp6woQNSGcyPWy+sL+HrZeABwAA ZB70ZCHr64MI
eAAAQOmCHlXGxhTBDQAASGpIF1yU/W4q7vYCAABxaDM9uouKg9Ojsi/++VXL m4q7XgAAAKOg
JyywUE0Puxg57G/BaXHKIfgBAACmeCIzAAAg6AEAAKiL1vatd3J+CAAA1D/o 6XNRDACU0r3f
v0tOffGZNASQEU5vAQAAgh4AAACCHgAAgAoJfU5P2IjnptIOBhq2fBb1AwAA DQ96qjJyedSI
7QAAANqgJyp4UA0HEZZ18Q9DkcXyJpKuI+56AABAhYOeqGBCl12JOz3J8qbi rCOsTgAAoKFB
TxayHCFdl6GJuw5GbQcAgKAnc1lmUVRlqTI3RdYJAACUz5AuACgq81HGDAtZ HwAA6keb6VEF
Pv1+/7DpURkS//xZLG8ibtAWt04AAKBGQU9Y56+aHpzmfx/2tyTLmwQnWa0D AADUA09kBgAA
BD0AAAB10dq+9U7O6wAAgPoHPX0uZgGAUrr3+3fJqS8+k4YAMsLpLQAA0AjD NAEAVEPva9fG
mv+441fIype8gYYDkgQ9jEkFAIMzNT0sx7/8XaHzLF0498yxxw/1ZYYmA+YZ 0gU3wZ9BCFvv
oOsGAEU7OL1QRETWXnaDHDs7I8fOzP85cXhWrvvsd2TNH39AThzuy7GzM8bH VKAJQp/IXGaq
0dEBoM6emFrs/b54uCX+o9/ihUNy1Y13S+/2zdI551xZtKAlC49cQKMBPokv ZFZlWoLTVJmY
qOV082dVp6j1AUBpg55Di+YFOUcsHJK/2vRdOeaIBXLVjXfL9+7+lnTOOVeu estL5cob75ZX
vOmD2uOk+7vq1T9v2LEUqJrhsADCFcymqEYxd9+7r/5p7u8my4VNjwp4ktRT tywAlM0BX6Zn
0cIh+Y0/fL+IiHxAxMvw/MePH5MP/P13vPdBUcdJk+Mrx0xUlTbT4w4Oqvtg J436+bYAAMkc
nJ7L9Hz3ExeJ9PvyzZuvktPOfKX0bt8sp535SrnmrWfKC5/7DC/guebC6Gf8 xPliybEbVZf4
lvWkUT7fDgAgmUPTC+S2mzfLbb5pV6x5qZx31x1yxZrny87JB+bN/9BDj8qy E47LZN0cu1EH
yicy61KXUaepVKe04i4XNj2snnFOb5GqBVAFcZ/I/Oef/Lb0bt8sW758taz6 /Sukc8658jdv
f1nkMZFjJppiKCyg0KUz3X8C98f0wx93Of/8qvr5X4Nlp6knAFSRG/CIiGz5 8tXSu32z8TFV
dxzlWIo6YewtACgpxt4CssXYWwAAgKAHAACgLlrbt97J6S0AAFB7ZHoAAABB DwAAQF0M0wQA
UA0PPdCLNf9xx6+QoeFlNBxQxaDntNPPku1b72SvAWikqelhOf7l7wqdZ+nC uefrPH6oLzMi
MvST7x52HBWR0GMpx1o0Kuhx/yn8+AcBgME6OL1QRETWXnaD3Hbt+SKB21CO WNySD332u9K7
fbPcunFcDk7Nyl6O1UB40BMV5AAAiveEb5T1xcOteTHP4oVDctWNd3uDjS5a 0JKFRy6YF/QA
TRfrQuZgBsj//rTTz1K+D04Lvqrm0y0PAI0Oeg4tmhfkHLFwSP5q03flmCMW yFU33i3fu/tb
0jnnXLnqLS+VK2+8W17xpg8qj+NRx+qoYzHHZ1TVsEmA42Z9tm+900uPBtOk /t+Df/O/N10u
rDwAaKIDvkzPooVD8ht/+H4REfmAiJfh+Y8fPyYf+PvveO+DgsdS02N3nHmA ygU9ug+xKuCJ
CppMyjVdHgCa6uD0XKbnu5+4SKTfl2/efJW87SPfkN7tm+W0M18p17z1THnv p+/yAp5rLjxT
7rv37lTHWl3gA9Qq6EkrTeSv+iYBAE13aHqB3HbzZrnNN+2KNS+V8+66Q65Y 83zZOfnAvPkf
eujRVMdaf4be/57MDqoq9sMJ/ae34iwDAEjnNS8/8bCfmf275Sb7dTKz/6fy qTt+Ir3bN8tN
9uukd/tm+Zuv7Mj9SyzHd1TJsOkHOXhay//eHwQF3yf5VhA3qAIAiBfwiIjc ZL9O3mx/VS44
+3WJj7Vh13YmPb4Dg8SAowAAoBEYewsAABD0AAAAEPQAAABUSKvf73NNDwCU 0L3fv0tOffGZ
NASQETI9AACAoAcAAICgBwAwcI7jiGVZ4jgOjQEkCXpardZhP+50AEB52LYt nU5HbNuOnLcM
x3bV+vNcV5q/J11HVuXSDxcU9IiI9Pv9eT/uNABAOUzsmpBOpyMj60ak0+nI xK6JyGXKcGz3
rz/PTrzqfRb9cIFBT1REaxKBBqfrlgcAmHNPaU1unJSRdSOyfHK5jKwbkcmN k4lOcw3y2B4M
fHTLq6br6ql6jSo3aj1Jsywm9Y6zDvrhdIZNGjYYXbZarcPem+x4dxnV8kSv AGDGPaXlBjwi
Mve6TsR+iy0iIt1ut3LHdt3yqnJ0Zeum6+oVtf26bUuyPXHXQT9cYKZHlVZL Q7XjyfQAQLKg
p9fryeTGSdk5slNERHaO7JTJjZNi27Y24KnCsT0sI5OkPllJWq7umh/VNgbX QT9cYKYnb2R2
ACCZdrst3W5XJnZNyOTGSZF14p3qap/UHmjd0h7bw7I0budclf5DV++y1L+J /XApblkn2wMA
8Y2eNCqdTkc2vmWjdDodGT1ptFT1i3vKJWr5qnbSYfUuS//XlH54OOkOVDWQ 6ZX4wfnI+gBA
Mu12e95r2s65iGO7bh7d8qppcfuRqDJUd5OZ9E2qtsmy3vTDBQQ9uo0Pfjij PsBxpwEA4gu7
hqdsx/Ykfzepd9T7pGWk2aY4003qQT+cU9BjgkwNANQPx3b2FUFPgmgdAFA9 dTy217W/oh9O
EChu33onrQYAAOof9PQJFQGglO79/l1y6ovPpCGAjDDKOgAAaIRhmgAAqqH3 tWtjzX/c8Stk
5UveQMMBBD0AUC1T08Ny/MvfZTz/DE0GRAc9qkd9MygoAAzWwemFIiKy9rIb 5LZrz5cjFw7J
+s9/XfYdnJJH9z0pD+89KA89/oQ8vPcJeXTfQbn3+nfPO8zHGbgzDvoMVDro AQCUzxNTi73f
Fw+3ZHi4JZef9ztPBxqB+Qk5AMOgx31EtSpSN3lMuC7yDy4HADAMeg4tejro WTgkCxe05Kqb
7pADU9Py+IEpeXT/QfnF3oPyyN6D8uj+J+XxA1Oy/8uXG5dvOgSE2zf4+wj6 DFQ66AmjS2EG
/yF0/xzBeQAA0Q74Mj2LFg7JglZLxkdf9fRx9ancTv+pnE+rZX6MNTn1pTq2 02egNkGPLnJP
Ohoro6kDQHIHp+cyPd/9xEUi/b60WiIfnLhdfvnElDz0ywPy4GMHZM+jB+Th vQfkgc9eKtIS
WRTzGG16vNeN5USfgcoGPSb/FHE+lETpAJDcoekFctvNm+W2p96/9pwzZJ11 mnLeyZ/skWOO
PlKOOuG4WMfn4GmmLC5yps9AZYIe02Hq0/4jAADCXf6O3z9s2ntuuFV799be L14eex1hx3yT
4zZ9Biod9GT1gQ4ux4cXANL70IWvTnX8DrtgOYvjNn0GSh/0BD9cUe+D00x+ BwAUT3ccjjM9
bh9Bn4GyYOwtAABA0AMAAFAXre1b7yR/CAAA6h/09DlpCgCldO/375JTX3wm DQFkhNNbAACg
ERhwFAAqove1a2PNf9zxK2TlS95AwwEEPQBQLVPTw3L8y99lPP8MTQZEBz26 h1fFldUTNLOq
T1b1i1qOJ4cCyMPB6YUiIrL2shvktmvPlyMXDsn6z39d+0Tme69/97zDvG4k c9UDCt35VA8W
NBkQlOMgKhP0hP1TxJFVwFO2fxz+kQEMwhO+UdYXD7dkeLgll5/3O08fL4PH qoyOtRzzUPug
J+qfQxccqb4JxHnseZyAR7V8WFYobP5gfcPqGLVdum9UAJAq6Dn09JjpixcO ycIFLbnqpjvk
wNS0PH5gSh7df1B+sfegPLL3oDy6/0l5/MCU7P/y5Ycdp8jCgKAn4bcBVaAQ 9i3BDQbSpkLD
lo9Tv+C04HxRdTSpAwBk4YAv07No4ZAsaLVkfPRVTx+Dnsrt9MU9zpofh8LG ugoblyvsFahM
0BOWhUk6Aq8qUCmS6QjBJtsKAEU7OD2X6fnuJy4S6fel1RL54MTt8ssnpuSh Xx6QBx87IHse
PSAP7z0gD3z2UpGWyKKQAIcvcSDoCXz4dRexRc0flUEp+h8pqn5lDNIAwO/Q 9AK57ebNcttT
7197zhmyzjpNOe/kT/bIMUcfKUedcBwNB0QFPVHfCHSBgepaF5MMiy4oyjpN qrsbAQDK7vJ3
/P5h095zw63au7f2fvHyXI+FwWM0p7ZQ+aAn+EHWnfc1uSjZ//ew88dR/5hx ltetP1i2LnuV
5KAQVS4AZOVDF746k3JMbwLhuIbaBT1RF/yaXBAcDC5M1xNnPpN6xKlD2u2K KgsABinJMSvu
dZAc+1BmjL0FAAAIegAAAOqitX3rneQiAQBA7f3/AwCAfrCCUBoQlQAAAABJ RU5ErkJggg==
--------------090109020100060401060701--
Re: Error : "Figure must be a child" in refreshBounds() of XXXLabelEditPart [message #169877 is a reply to message #169848] Fri, 25 January 2008 13:45 Go to previous messageGo to next message
Alexander Shatalin is currently offline Alexander ShatalinFriend
Messages: 2928
Registered: July 2009
Senior Member
Hello Guillaume,

Try using separate label (declared in own figure descriptor) for UserName.

-----------------
Alex Shatalin
Re: Error : "Figure must be a child" in refreshBounds() of XXXLabelEditPart [message #169885 is a reply to message #169877] Fri, 25 January 2008 14:15 Go to previous messageGo to next message
Guillaume Gauffre is currently offline Guillaume GauffreFriend
Messages: 65
Registered: July 2009
Member
It works !
But the label is no more included in my UserFigure.
I didn't post on bugzilla at the moment, I will do it when I will
receive my login...
Do you know when the refreshBounds() method has appear in GMF sdk ?

Thanks
Guillaume

Alex Shatalin a écrit :
> Hello Guillaume,
>
> Try using separate label (declared in own figure descriptor) for UserName.
> -----------------
> Alex Shatalin
>
>
Re: Error : "Figure must be a child" in refreshBounds() of XXXLabelEditPart [message #169892 is a reply to message #169885] Fri, 25 January 2008 15:02 Go to previous messageGo to next message
Alexander Shatalin is currently offline Alexander ShatalinFriend
Messages: 2928
Registered: July 2009
Senior Member
Hello Guillaume,

> But the label is no more included in my UserFigure.
To include it into the UserFigure you have to place corresponding feaure
label mapping below UserMapping, i think..

-----------------
Alex Shatalin
Re: Error : "Figure must be a child" in refreshBounds() of XXXLabelEditPart [message #170310 is a reply to message #169892] Tue, 29 January 2008 09:54 Go to previous messageGo to next message
Guillaume Gauffre is currently offline Guillaume GauffreFriend
Messages: 65
Registered: July 2009
Member
Hi,
To link the label with the figure, the feature label mapping is into the
node mapping, but the label figure doesn't appear anymore in the parent
figure but as an affixed child.
I fill a bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=216880
I hope I fill enough information.

Thanks,
Guillaume

Alex Shatalin a écrit :
> Hello Guillaume,
>
>> But the label is no more included in my UserFigure.
> To include it into the UserFigure you have to place corresponding feaure
> label mapping below UserMapping, i think..
>
> -----------------
> Alex Shatalin
>
>
Re: Error : "Figure must be a child" in refreshBounds() of XXXLabelEditPart [message #172199 is a reply to message #169892] Mon, 11 February 2008 17:08 Go to previous message
Guillaume Gauffre is currently offline Guillaume GauffreFriend
Messages: 65
Registered: July 2009
Member
Hi,

I modified in XXXEditPart (the parent of the label, the node part) the
method getContentPanefor by adding :

if (editpart instanceof XXXNameEditPart) {
return this.contentPane ;
}

and it works !
Is it the right solution to this bug ?

The generated version only contains code for other children (port figures) :
if (editPart instanceof InPortEditPart) {
return getBorderedFigure().getBorderItemContainer();
}
if (editPart instanceof OutPortEditPart) {
return getBorderedFigure().getBorderItemContainer();
}
return super.getContentPaneFor(editPart);

Thanks.
https://bugs.eclipse.org/bugs/show_bug.cgi?id=216880


Alex Shatalin a écrit :
> Hello Guillaume,
>
>> But the label is no more included in my UserFigure.
> To include it into the UserFigure you have to place corresponding feaure
> label mapping below UserMapping, i think..
>
> -----------------
> Alex Shatalin
>
>
Previous Topic:Superclasses inside a compartment
Next Topic:add a new instance Programatically in the editor view
Goto Forum:
  


Current Time: Fri Apr 19 01:45:05 GMT 2024

Powered by FUDForum. Page generated in 0.02534 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top