From 18dc515d2bf5e407354da909387798ae62530602 Mon Sep 17 00:00:00 2001 From: Yorik van Havre Date: Tue, 24 Jan 2012 08:41:13 -0200 Subject: [PATCH 01/40] Misc improvements to the Arch module + Added Draft box tracker + Fixed bug in Arch cell + Fixed bugs in Draft Snap + Better Arch Wall tool --- src/Mod/Arch/ArchCell.py | 36 +++++++++---------- src/Mod/Arch/ArchWall.py | 41 ++++++++++++++++++---- src/Mod/Draft/DraftGui.py | 14 +++++--- src/Mod/Draft/DraftSnap.py | 52 ++++++++++++++++++++-------- src/Mod/Draft/DraftTrackers.py | 63 ++++++++++++++++++++++++++++++++++ 5 files changed, 163 insertions(+), 43 deletions(-) diff --git a/src/Mod/Arch/ArchCell.py b/src/Mod/Arch/ArchCell.py index 6076150553..8783602ccf 100644 --- a/src/Mod/Arch/ArchCell.py +++ b/src/Mod/Arch/ArchCell.py @@ -89,30 +89,28 @@ class _Cell(ArchComponent.Component): import Part pl = obj.Placement if obj.Components: + shapes = [] if obj.JoinMode: walls = [] structs = [] - compshapes = [] - for comp in obj.Components: - if Draft.getType(comp) == "Wall": - walls.append(comp.Shape) - elif Draft.getType(comp) == "Structure": - structs.append(comp.Shape) + for c in obj.Components: + if Draft.getType(c) == "Wall": + walls.append(c.Shape) + elif Draft.getType(c) == "Structure": + structs.append(c.Shape) else: - compshapes.append(comp.Shape) - for gr in [walls,structs]: - if gr: - sh = gr.pop(0) - for csh in gr: - sh = sh.oldFuse(csh) - compshapes.append(sh) - baseShape = Part.makeCompound(compshapes) + shapes.append(c.Shape) + for group in [walls,structs]: + if group: + sh = group.pop(0).copy() + for subsh in group: + sh = sh.oldFuse(subsh) + shapes.append(sh) else: - compshapes = [] - for o in obj.Components: - compshapes.append(o.Shape) - baseShape = Part.makeCompound(compshapes) - obj.Shape = baseShape + for c in obj.Components: + shapes.append(c.Shape) + if shapes: + obj.Shape = Part.makeCompound(shapes) obj.Placement = pl class _ViewProviderCell(ArchComponent.ViewProviderComponent): diff --git a/src/Mod/Arch/ArchWall.py b/src/Mod/Arch/ArchWall.py index 9790fd7156..248006f1f3 100644 --- a/src/Mod/Arch/ArchWall.py +++ b/src/Mod/Arch/ArchWall.py @@ -59,13 +59,42 @@ class _CommandWall: def Activated(self): sel = FreeCADGui.Selection.getSelection() + done = False if sel: - FreeCAD.ActiveDocument.openTransaction("Wall") - for obj in sel: - makeWall(obj) - FreeCAD.ActiveDocument.commitTransaction() - else: - wall = makeWall() + import Draft + if Draft.getType(sel[0]) != "Wall": + FreeCAD.ActiveDocument.openTransaction("Wall") + for obj in sel: + makeWall(obj) + FreeCAD.ActiveDocument.commitTransaction() + done = True + if not done: + import DraftTrackers + self.points = [] + self.tracker = DraftTrackers.boxTracker() + FreeCADGui.Snapper.getPoint(callback=self.getPoint) + + def getPoint(self,point): + "this function is called by the snapper when it has a 3D point" + if point == None: + self.tracker.finalize() + return + self.points.append(point) + if len(self.points) == 1: + self.tracker.on() + FreeCADGui.Snapper.getPoint(last=self.points[0],callback=self.getPoint,movecallback=self.update) + elif len(self.points) == 2: + import Draft + l = Draft.makeWire(self.points) + makeWall(l) + self.tracker.finalize() + + def update(self,point): + "this function is called by the Snapper when the mouse is moved" + self.tracker.update([self.points[0],point]) + + + class _Wall(ArchComponent.Component): "The Wall object" diff --git a/src/Mod/Draft/DraftGui.py b/src/Mod/Draft/DraftGui.py index 83b3814e11..d6e2159144 100644 --- a/src/Mod/Draft/DraftGui.py +++ b/src/Mod/Draft/DraftGui.py @@ -154,6 +154,7 @@ class DraftToolBar: def __init__(self): self.tray = None self.sourceCmd = None + self.cancel = None self.taskmode = Draft.getParam("UiMode") self.paramcolor = Draft.getParam("color")>>8 self.color = QtGui.QColor(self.paramcolor) @@ -465,14 +466,14 @@ class DraftToolBar: def taskUi(self,title): if self.taskmode: self.isTaskOn = True - FreeCADGui.Control.closeDialog() + todo.delay(FreeCADGui.Control.closeDialog,None) self.baseWidget = QtGui.QWidget() self.setTitle(title) self.layout = QtGui.QVBoxLayout(self.baseWidget) self.setupToolBar(task=True) self.retranslateUi(self.baseWidget) self.panel = DraftTaskPanel(self.baseWidget) - FreeCADGui.Control.showDialog(self.panel) + todo.delay(FreeCADGui.Control.showDialog,self.panel) else: self.setTitle(title) @@ -509,7 +510,8 @@ class DraftToolBar: self.labelx.setText(translate("draft", "Center X")) self.continueCmd.show() - def pointUi(self,title=translate("draft","Point")): + def pointUi(self,title=translate("draft","Point"),cancel=None): + if cancel: self.cancel = cancel self.taskUi(title) self.xValue.setEnabled(True) self.yValue.setEnabled(True) @@ -832,7 +834,11 @@ class DraftToolBar: def finish(self): "finish button action" - self.sourceCmd.finish(False) + if self.sourceCmd: + self.sourceCmd.finish(False) + if self.cancel: + self.cancel() + self.cancel = None def closeLine(self): "close button action" diff --git a/src/Mod/Draft/DraftSnap.py b/src/Mod/Draft/DraftSnap.py index 337c468e41..3469772fde 100644 --- a/src/Mod/Draft/DraftSnap.py +++ b/src/Mod/Draft/DraftSnap.py @@ -430,13 +430,16 @@ class Snapper: # get the intersection points pt = fcgeo.findIntersection(tmpEdge1,tmpEdge2,True,True) if pt: - return [pt[0],'ortho',pt[0]] + return [pt[0],'ortho',pt[0]] if eline: - tmpEdge2 = Part.Line(self.extLine.p1(),self.extLine.p2()).toShape() - # get the intersection points - pt = fcgeo.findIntersection(eline,tmpEdge2,True,True) - if pt: + try: + tmpEdge2 = Part.Line(self.extLine.p1(),self.extLine.p2()).toShape() + # get the intersection points + pt = fcgeo.findIntersection(eline,tmpEdge2,True,True) + if pt: return [pt[0],'ortho',pt[0]] + except: + return None return None def snapToElines(self,e1,e2): @@ -613,15 +616,23 @@ class Snapper: if self.constrainLine: self.constrainLine.off() - def getPoint(self,last=None,callback=None): - """getPoint([last],[callback]) : gets a 3D point from the screen. You can provide an existing point, - in that case additional snap options and a tracker are available. You can also passa function as - callback, which will get called with the resulting point as argument, when a point is clicked: + def getPoint(self,last=None,callback=None,movecallback=None): + + """getPoint([last],[callback],[movecallback]) : gets a 3D point from the screen. You + can provide an existing point, in that case additional snap options and a tracker + are available. You can also pass a function as callback, which will get called + with the resulting point as argument, when a point is clicked, and optionally + another callback which gets called when the mouse is moved. + + If the operation gets cancelled (the user pressed Escape), no point is returned. + + Example: def cb(point): - print "got a 3D point: ",point - FreeCADGui.Snapper.getPoint(callback=cb) - """ + if point: + print "got a 3D point: ",point + FreeCADGui.Snapper.getPoint(callback=cb)""" + self.pt = None self.ui = FreeCADGui.draftToolBar self.view = FreeCADGui.ActiveDocument.ActiveView @@ -642,6 +653,8 @@ class Snapper: self.ui.displayPoint(self.pt,last,plane=FreeCAD.DraftWorkingPlane,mask=FreeCADGui.Snapper.affinity) if self.trackLine: self.trackLine.p2(self.pt) + if movecallback: + movecallback(self.pt) def click(event_cb): event = event_cb.getEvent() @@ -656,10 +669,21 @@ class Snapper: callback(self.pt) self.pt = None + def cancel(): + self.view.removeEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),self.callbackClick) + self.view.removeEventCallbackPivy(coin.SoLocation2Event.getClassTypeId(),self.callbackMove) + FreeCADGui.Snapper.off() + self.ui.offUi() + if self.trackLine: + self.trackLine.off() + if callback: + callback(None) + # adding 2 callback functions - self.ui.pointUi() + self.ui.pointUi(cancel=cancel) self.callbackClick = self.view.addEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),click) self.callbackMove = self.view.addEventCallbackPivy(coin.SoLocation2Event.getClassTypeId(),move) - + + if not hasattr(FreeCADGui,"Snapper"): FreeCADGui.Snapper = Snapper() diff --git a/src/Mod/Draft/DraftTrackers.py b/src/Mod/Draft/DraftTrackers.py index c071f6ef17..0fc5b3986a 100644 --- a/src/Mod/Draft/DraftTrackers.py +++ b/src/Mod/Draft/DraftTrackers.py @@ -623,3 +623,66 @@ class gridTracker(Tracker): rot = FreeCAD.Rotation() rot.Q = self.trans.rotation.getValue().getValue() return rot.multVec(Vector(pu,pv,0)) + +class boxTracker(Tracker): + "A box tracker, can be based on a line object" + def __init__(self,line=None,width=0.1,height=1): + self.trans = coin.SoTransform() + m = coin.SoMaterial() + m.transparency.setValue(0.8) + m.diffuseColor.setValue([0.4,0.4,0.6]) + self.cube = coin.SoCube() + self.cube.height.setValue(width) + self.cube.depth.setValue(height) + self.baseline = None + if line: + self.baseline = line + self.update() + Tracker.__init__(self,children=[self.trans,m,self.cube]) + + def update(self,line=None,normal=None): + import WorkingPlane + from draftlibs import fcgeo + if not normal: + normal = FreeCAD.DraftWorkingPlane.axis + if line: + if isinstance(line,list): + bp = line[0] + lvec = line[1].sub(line[0]) + else: + lvec = fcgeo.vec(line.Shape.Edges[0]) + bp = line.Shape.Edges[0].Vertexes[0].Point + elif self.baseline: + lvec = fcgeo.vec(self.baseline.Shape.Edges[0]) + bp = self.baseline.Shape.Edges[0].Vertexes[0].Point + else: + return + right = lvec.cross(normal) + self.cube.width.setValue(lvec.Length) + p = WorkingPlane.getPlacementFromPoints([bp,bp.add(lvec),bp.add(right)]) + self.trans.rotation.setValue(p.Rotation.Q) + bp = bp.add(fcvec.scale(lvec,0.5)) + bp = bp.add(fcvec.scaleTo(normal,self.cube.depth.getValue()/2)) + self.pos(bp) + + def pos(self,p): + self.trans.translation.setValue(fcvec.tup(p)) + + def width(self,w=None): + if w: + self.cube.height.setValue(w) + else: + return self.cube.height.getValue() + + def length(self,l=None): + if l: + self.cube.width.setValue(l) + else: + return self.cube.width.getValue() + + def heigth(self,h=None): + if h: + self.cube.depth.setValue(h) + self.update() + else: + return self.cube.depth.getValue() From d243a3457a17e1aa3fe6985ac63518b68901b834 Mon Sep 17 00:00:00 2001 From: Yorik van Havre Date: Tue, 24 Jan 2012 11:15:58 -0200 Subject: [PATCH 02/40] Improvements to Arch IFC importer + Auto download of IFC schema if none found + Use of openshell shapes in Arch objects if available --- src/Mod/Arch/ArchCommands.py | 18 ++ src/Mod/Arch/Arch_rc.py | 241 ++++++++------------ src/Mod/Arch/Resources/ui/archprefs-base.ui | 72 ++---- src/Mod/Arch/importIFC.py | 153 ++++++++----- 4 files changed, 227 insertions(+), 257 deletions(-) diff --git a/src/Mod/Arch/ArchCommands.py b/src/Mod/Arch/ArchCommands.py index 83f6059ad3..a8b09f5e81 100644 --- a/src/Mod/Arch/ArchCommands.py +++ b/src/Mod/Arch/ArchCommands.py @@ -259,6 +259,24 @@ def mergeCells(objectslist): FreeCAD.ActiveDocument.removeObject(o.Name) FreeCAD.ActiveDocument.recompute() return base + +def download(url): + '''downloads a file from the given URL and saves it in the + user directory. Returns the path to the saved file''' + try: + FreeCAD.Console.PrintMessage("downloading "+url+" ...\n") + import urllib2, os + response = urllib2.urlopen(url) + s = response.read() + fp = os.path.join(FreeCAD.ConfigGet("UserAppData"),url.split('/')[-1]) + if not os.path.exists(fp): + f = open(fp,'wb') + f.write(s) + f.close() + except: + return None + else: + return fp # command definitions ############################################### diff --git a/src/Mod/Arch/Arch_rc.py b/src/Mod/Arch/Arch_rc.py index 7c1c30950e..f56440b2c8 100644 --- a/src/Mod/Arch/Arch_rc.py +++ b/src/Mod/Arch/Arch_rc.py @@ -2,7 +2,7 @@ # Resource object code # -# Created: Tue Jan 17 17:15:03 2012 +# Created: Tue Jan 24 10:12:37 2012 # by: The Resource Compiler for PyQt (Qt v4.7.4) # # WARNING! All changes made in this file will be lost! @@ -5697,122 +5697,83 @@ qt_resource_data = "\ \x00\x00\x00\x12\x00\x57\x00\x65\x00\x72\x00\x6b\x00\x7a\x00\x65\ \x00\x75\x00\x67\x00\x65\x08\x00\x00\x00\x00\x06\x00\x00\x00\x05\ \x54\x6f\x6f\x6c\x73\x07\x00\x00\x00\x04\x61\x72\x63\x68\x01\ -\x00\x00\x07\x1c\ +\x00\x00\x04\xaa\ \x00\ -\x00\x27\x43\x78\x9c\xed\x5a\x6d\x73\xda\x38\x10\xfe\x9e\x5f\xa1\ -\xe3\x66\xda\xbb\x99\x80\x21\x81\x34\x21\xc6\x9d\x96\x24\x4d\x66\ -\xd2\x2b\x2d\xb4\x99\xfb\xd4\x31\xb6\xc0\x6a\x65\xcb\xb1\xe4\x1a\ -\x7a\x73\xff\xfd\x56\x92\x0d\x36\x06\xf2\x02\x49\xae\x9d\xce\x24\ -\x13\x4b\xbb\xda\x5d\xad\x76\x9f\x5d\x39\x36\x5f\x4e\x7c\x8a\xbe\ -\xe1\x88\x13\x16\x74\x2a\x8d\x5a\xbd\x82\x70\xe0\x30\x97\x04\xe3\ -\x4e\xe5\xe3\xe0\xac\x7a\x58\x79\x69\xed\x98\x31\x99\x33\x35\x81\ -\xc9\xda\x41\xa6\x43\x6d\xce\xad\x37\x31\x69\xb7\x4f\x88\x4d\xd9\ -\x18\xfe\xd2\x71\x1f\x0b\x01\x8b\xf9\xab\xc8\xf1\x4c\x43\xf3\x00\ -\x73\x42\xdc\x31\x16\x48\x8d\x3b\x95\xf7\x57\x6a\x58\x41\x81\xed\ -\xe3\x4e\x65\x9d\x0c\xa9\x0a\x99\x61\xc4\x42\x1c\x89\x69\xba\x60\ -\x8c\x99\x8f\x45\x34\x55\x44\x64\x46\xd8\x11\xea\x09\x99\x13\xab\ -\x6e\x1a\x93\x74\x30\x95\x83\x69\x3a\x00\x0b\x84\x67\xb5\x5e\xb4\ -\x4c\x43\x3f\xea\x69\x0f\x93\xb1\x27\xac\x83\xbd\x23\xd3\x48\x9f\ -\x95\x4c\x23\x13\x6a\x1a\x99\xf2\x65\x96\x24\x24\x70\x59\x32\x20\ -\x82\xe2\xd4\x18\x2e\x22\xb0\xdd\x7a\x83\x03\x1c\xd9\x14\xf1\x74\ -\x2f\xa6\x91\x12\xca\x22\xa9\x3d\x65\xf1\xdc\x37\x9f\x5e\xb3\xc9\ -\xa5\x9a\x4a\x25\x2e\xa8\xe4\xa1\xed\x80\xa0\x4a\xba\x81\x20\xf6\ -\x87\x38\xb2\x0e\x4c\x23\x7d\xd2\xe6\xe7\x35\x94\x44\xf8\x76\x34\ -\x26\xc1\x82\x84\xa3\xb5\x12\x88\xc0\xfe\xdc\x93\xf9\xb3\x7c\x13\ -\xb1\x38\x04\x9b\xb3\xd3\x1c\x67\x63\xcd\x5e\x52\x2e\xe6\xce\x5a\ -\xe2\x2f\x79\xe6\xa8\xbf\xc4\x69\x65\x9b\xd6\xba\x2e\x55\x06\x51\ -\x2b\x88\x63\x53\x3d\xfb\x79\x6f\xae\x77\xbe\xa1\x25\x82\xce\x4b\ -\x82\x3c\x16\x91\xef\x2c\x10\x4b\x44\x2d\x0a\x2b\xbb\xe8\xd2\x1e\ -\x62\x9a\x49\xa2\x72\x50\x58\xbe\xc4\x47\x78\x22\x0a\x0c\x33\x3f\ -\x9d\xe0\x91\x1d\x53\x10\xcd\x28\x8b\xd0\x08\x7e\x13\x9b\xd2\x45\ -\x4f\x2d\x77\x97\x9e\xd4\xb6\xe5\x8c\x37\x8a\xd6\x97\x36\x23\x03\ -\x0e\x47\x25\x3f\xf4\xd5\xf4\xda\x6d\x00\x2f\x06\x56\x01\xb8\xb1\ -\xb0\x1b\x0c\xa1\x66\xbd\x17\xed\xf6\xf9\x4c\x9e\x69\xa8\xc9\x9b\ -\x36\x50\xce\x07\xf2\x1d\x9f\x93\x00\x4e\x8a\x0b\x17\xd2\xad\x53\ -\xa9\x2f\xba\x0e\x38\x0a\x33\x19\x1a\x34\xeb\x05\x30\x98\x51\x53\ -\x20\xd8\xab\x17\x30\x61\x6e\xd6\xa2\xc0\x15\x9e\xd6\x8e\xbb\x83\ -\xa7\x8b\x61\xa3\x60\xb1\x17\xe1\x51\x57\x9e\xf5\xeb\x58\x08\x70\ -\x63\x96\x64\x92\x16\x02\x4d\xc5\xc1\x50\xd3\xd6\x46\x14\x63\x74\ -\x40\xc2\xe5\x41\x35\xf0\x08\x47\xf0\x23\x3c\x8c\xdc\x52\x80\x05\ -\x38\x41\x57\x10\x64\x88\x0d\xbf\x00\x28\xde\x3e\xd6\x4a\x46\x28\ -\x99\x0b\x26\xa8\xb9\x05\xff\x47\xd8\xb5\xf6\x5a\x2d\x09\xc2\xee\ -\x02\x69\x1c\x61\x1c\x58\x8d\x23\x38\x1a\xfd\x58\x24\x0f\x69\x8c\ -\xad\xc6\x0b\xa0\xaa\xa7\xe2\xb1\x95\x54\xdd\xce\x6a\xe9\xe6\xd3\ -\x40\x96\x9b\x95\x11\xe6\xa4\x1e\x91\x6e\x52\xa7\x05\xca\xee\xeb\ -\x24\xa9\xae\x67\x0b\xef\x66\x6d\x6f\x99\x6b\xa4\x75\x76\x5b\xd9\ -\x6f\x1a\x1a\x09\x67\x30\x59\x20\x6f\x0a\x9a\x1b\x41\xe6\xd6\x00\ -\x13\x08\xb1\x23\xe2\x08\x3f\x1d\x6a\xde\x00\xff\xbf\x70\xf3\x31\ -\x71\xf3\xa6\x5a\xbc\x19\x72\xf6\xb3\x68\x7b\x5c\xf8\x6c\xb4\xea\ -\x6b\xe0\xf3\xe0\x68\x1d\x7c\x1e\x1e\x3c\x11\x7c\xce\x7c\xf5\x0b\ -\x43\x57\x37\x9e\x07\x9b\x35\x9e\xad\xed\x35\x9e\xea\xee\xf3\x84\ -\x20\xda\xfc\x05\xa2\xab\x7d\xfd\xd8\x20\xba\xbf\xf6\x30\xee\x02\ -\x5d\xad\xa3\x35\xc8\xb5\xbf\xb7\x0e\xb9\x9a\x4f\x85\x5c\x57\x2a\ -\x17\x7e\x5e\xd8\x2a\x12\x0b\xb2\x72\x7c\xf7\x78\x4b\x30\x2f\xbe\ -\xb7\x7b\x4f\x70\x71\xd6\x45\xc4\x0f\x59\x24\xb6\xfd\x72\x60\x7b\ -\xaf\x06\xf6\x37\x43\xe8\xf5\x99\xb4\x1a\xa1\x9f\x51\x71\xfc\xdb\ -\xc9\xbb\xee\xe0\xef\xde\x29\x3a\x1f\xbc\xbd\x44\xbd\x8f\xaf\x2f\ -\x2f\xba\xe8\xd9\x75\xcc\xc4\x71\xd5\x30\xae\xf6\xbb\x86\x71\x32\ -\x38\xd1\xd4\x66\xad\x6e\x18\xa7\x7f\x69\x6a\xca\xe4\x09\x11\xb6\ -\x0d\x23\x49\x92\x5a\xb2\x5f\x63\xd1\xd8\x18\x7c\x30\x3e\x9c\x76\ -\xab\x9e\xf0\x69\xb3\xae\x5c\xee\x88\x9a\x2b\x5c\xcd\xff\x6c\x2c\ -\x8e\x77\xa4\x62\x49\x97\x03\xf5\x8c\x6d\x37\x7b\xf6\xb1\xb0\xb5\ -\xe5\x7a\xc1\x35\xac\xf7\xe4\x1e\x52\xb5\x0e\x38\x0e\x60\x3a\xa5\ -\x36\xd2\x59\x23\x5b\xce\xc5\x94\x62\x24\xa6\x61\xb6\x5e\x2e\x85\ -\x98\xe7\x39\xf5\xe1\x2e\xa2\x04\xfd\x83\x12\x0f\x7c\x5d\x55\xb8\ -\xd7\x46\x90\x4a\xd5\x24\xb2\xc3\x63\xf4\xaf\xb2\xcf\x50\x92\x32\ -\xb1\x46\xde\xc4\x21\x73\xa7\x48\x91\x53\x1d\x50\xdd\x02\x51\x1d\ -\xd9\x3e\xa1\xd3\xf6\xf3\x13\xfc\xc5\xfe\x14\xa3\xbe\x1d\xf0\xe7\ -\x29\x49\x42\x70\xfb\x30\xcc\x38\x13\x05\xd3\xed\x66\xbd\x9e\xd1\ -\xa5\xb0\x76\xc0\x22\xdf\xa6\xc7\x0b\x8e\x0a\x8b\xaa\xf4\xab\xb8\ -\xaa\x60\x61\xbb\x1e\x4e\x66\xe3\x21\x03\x50\xf5\x0b\x53\x14\x8f\ -\x44\x61\x22\x52\x5a\xd5\x4c\xf5\x5a\x54\x87\x94\x39\x5f\xab\x80\ -\x43\xe0\xce\x36\x58\x22\x3d\x35\x1b\x02\xd3\xdc\x8e\x33\x28\xde\ -\xb2\x61\x95\xb9\x14\x81\x23\xa0\xc2\x0a\x86\x46\x71\xe0\xc8\x62\ -\xb9\x8b\x20\x88\xa1\x75\xc5\x2e\xb2\x03\xc5\xd3\x77\x3c\xec\xdb\ -\xe8\x74\x02\x4e\xe5\x1c\x8d\x08\x1c\xc9\x1f\x35\x3c\x09\xff\x44\ -\xf6\x37\x9b\x40\xd4\xc2\x84\x87\x23\xdc\x56\xbe\x0d\xff\x4f\x7b\ -\x95\x66\xd8\xc8\x03\x60\xed\x94\x22\x9c\x0b\x1c\xca\xee\x9e\xd7\ -\x1c\xe6\x1b\x3c\x0e\x25\xac\x40\xa0\xb8\xf8\xdb\x67\x97\x39\xdc\ -\xc0\x7a\xc7\x06\x19\x39\x7b\x93\xfd\xf4\xcf\x67\xe1\x34\xe4\xe6\ -\x8b\x3a\x20\xec\x82\xe2\x6e\x95\x4d\x2e\x76\x58\xa4\x7a\x90\x36\ -\x8a\xc1\xbe\x88\x92\x00\x1f\xeb\x26\xaa\xfd\x7b\xab\x7e\x88\xdd\ -\xc3\x9c\xb5\xdb\x33\x4e\x85\x3c\xd8\x34\x8b\x78\x7b\xf6\x14\xce\ -\x9e\x64\xe4\xcf\x53\x22\xcd\xe0\xed\xf5\x73\x0f\xdc\x08\x37\x6f\ -\x0f\xb3\xf3\x6e\xc6\xc3\xce\xd7\x7c\x19\x9a\xb5\x32\x92\x30\xcc\ -\xd7\xa3\xe5\xe8\xbb\xee\x32\x48\x46\x90\x56\xfa\x3e\xa8\xc4\x61\ -\x77\x57\xe5\x19\xf4\x87\x38\x0a\xb2\x97\xdb\x32\xa3\x42\x3b\xe2\ -\x58\x76\xd0\x94\xa2\x21\x46\x31\xc7\x32\x03\x87\x31\xa1\xae\x66\ -\x4a\xef\x8a\x68\x14\x31\x1f\x7d\x0d\x58\xa2\x33\x51\x02\x21\xaf\ -\xdd\xff\x06\xb9\xba\x78\x48\x13\x66\x76\xce\x4d\xdc\xe0\xb2\xaa\ -\x3d\xb0\xa0\x6d\x08\xfe\xb3\xe0\x96\x87\xa1\x4f\x93\x8f\x0f\xd9\ -\x93\xc1\x96\x2e\x46\x4e\x2f\xdd\xc7\x8f\xd9\x94\xdd\xf5\x4a\xb4\ -\xbe\x77\xf8\x75\x25\xda\xe4\x4a\xb4\xac\x57\x5b\x7f\x05\x5d\x9d\ -\x6e\xb9\xb2\xaa\xca\x29\xd4\x33\x75\x2c\x0f\x79\x99\x5e\x01\x89\ -\x67\xa0\xbf\xeb\x31\x06\x59\x52\x42\x45\x69\x9b\x93\xd2\xee\x0d\ -\x8b\xdb\x6b\x37\x6a\x48\xca\xa2\xc4\xc1\x01\x07\xc9\x52\x1a\x67\ -\x01\x47\x09\x46\x76\x84\x51\xc0\x04\xb2\x29\x65\x09\xc8\x02\x0d\ -\xdc\x23\x21\x28\xb6\x85\x16\x91\x10\xe1\xa1\x33\xb8\x3a\x76\x5f\ -\x9d\xec\x22\xce\x94\x5e\x3f\xe6\x02\xc1\xcd\x2d\xa0\xcc\x76\x11\ -\x11\x72\x12\xf0\x82\x8e\x6a\xa8\x47\x21\x5a\x72\xeb\x09\xd4\x77\ -\xe6\xcf\x8f\x0a\xc1\x8f\xe4\x86\x62\xee\x87\x31\x20\xe7\x2e\x6c\ -\xc0\x45\xb0\x18\x90\x5b\x6d\x58\x2d\x93\x7d\xd1\x06\x88\x7d\x07\ -\xbc\x03\xb0\xd3\xae\xfb\x51\xc1\xee\x81\xfb\x85\xd6\x43\xf4\x0b\ -\xf7\x4f\x8b\x8b\x15\xdd\x02\xa4\xc0\xbb\x10\x07\x7d\x0f\x43\x73\ -\xa0\xaf\xba\xc5\x56\xc1\x55\x6f\xdf\xb2\x0e\x41\x06\xbd\x07\x81\ -\x47\x61\x7e\x38\x2d\xf6\x1b\x9b\xd6\xf0\xd5\xf8\xf5\x91\x17\x0d\ -\x7d\x94\x00\xd7\x05\x3d\xa7\xf3\x27\x0c\xf3\x5b\xbd\x68\xc9\x31\ -\xe5\x38\xd2\x94\xc8\xfe\x0d\x91\x7e\x27\xd2\xa9\x1c\x54\xd2\x5b\ -\x54\xa7\xd2\x68\x54\x0c\xc9\x19\x92\x89\x6f\x87\x19\x04\x5b\xd7\ -\x3d\x35\x3e\x83\x66\xf3\x2d\xf1\x71\x1f\x50\xcd\x81\x0e\x6d\x81\ -\x4b\x7e\xf3\x03\x70\xc9\x7c\xad\x91\x2b\x4b\xf2\x33\xda\xca\xdc\ -\x77\x41\xb9\xd2\x32\xff\x16\x48\x76\x1b\x13\xb8\xf3\xbb\xdc\x4a\ -\xbf\x03\x82\x4e\x23\x9d\x50\x54\x4f\xd5\x08\x29\xc1\x90\x02\xf4\ -\x87\x41\x35\xcf\x34\x52\x82\x72\xc0\xa2\xde\xf5\x86\xe4\x5e\x62\ -\x2e\x37\xa4\x17\x73\x2f\xa3\xaf\x32\x46\x1b\xcb\x37\xb3\x64\xa1\ -\xe2\x2e\xb5\xa6\xec\xbb\x55\x26\x49\x69\x5b\x33\xeb\x26\x27\x95\ -\x3d\xf9\x38\x66\xa5\x10\xbc\xfc\xe0\xe6\xd4\xcd\x8d\x29\x4e\xa8\ -\xef\xd6\xa0\x03\x51\xc9\xc0\x55\xda\x38\x2c\x08\xb0\x4a\x06\x39\ -\x36\x8d\x98\x58\x3b\xff\x01\xea\x67\xa5\xfc\ +\x00\x1c\xf4\x78\x9c\xed\x59\x6d\x6f\xa3\x38\x10\xfe\xde\x5f\x61\ +\xf1\xf9\xae\x24\xd9\x24\xbb\xad\x08\xab\x7d\xb9\xbe\x48\xbb\xba\ +\x54\xe9\x6e\x3f\xae\x08\x4c\x82\x6f\xc1\xe6\x8c\xb9\x24\xfb\xeb\ +\xcf\x36\x26\x60\x20\xb4\x69\xb2\xad\x54\x55\x6a\x54\xdb\x63\x66\ +\xc6\x8f\x67\x1e\x0f\xd8\x79\xbf\x8e\x23\xf4\x1f\xb0\x14\x53\x32\ +\xb1\xfa\xa7\x3d\x0b\x01\xf1\x69\x80\xc9\x72\x62\x7d\xbb\xbd\xf8\ +\xf3\x9d\xf5\xde\x3d\x71\x32\x5c\x4e\x1a\x8a\x49\xee\x09\x72\xfc\ +\xc8\x4b\x53\xf7\x32\xc3\xe7\xe7\x9f\xb1\x17\xd1\xa5\xf8\x1f\x2d\ +\x67\xc0\xb9\x78\x38\xfd\xc0\xfc\xd0\xb1\xf3\x39\x62\xf2\x0a\x07\ +\x4b\xe0\x48\xf5\x27\xd6\xcd\x9d\xea\x5a\x88\x78\x31\x4c\xac\x2e\ +\x1d\xd2\x14\x72\x12\x46\x13\x60\x7c\xa3\x1f\x58\x02\x8d\x81\xb3\ +\x8d\x12\x22\x87\x81\xcf\x55\x0b\x39\x6b\xb7\xe7\xd8\x6b\xdd\xd9\ +\xc8\xce\x46\x77\x84\x07\x3c\x74\x47\x6f\x47\x8e\x9d\x37\xf3\xe1\ +\x10\xf0\x32\xe4\xee\x78\x70\xe6\xd8\xba\xad\x74\xda\x85\x52\xc7\ +\x2e\x8c\xb7\x79\xb2\xc2\x24\xa0\xab\x5b\xcc\x23\xd0\xce\xa4\x9c\ +\x09\xdf\xdd\x4b\x20\xc0\xbc\x08\xa5\x7a\x2d\x8e\xad\x05\x4d\x95\ +\x91\xb7\xa1\x59\x89\xcd\xf7\x8f\x74\xfd\x45\x0d\x69\x8d\x35\x93\ +\x69\xe2\xf9\x42\x91\xa5\x17\x40\xb2\x78\x0e\xcc\x1d\x3b\xb6\x6e\ +\xe5\xee\x57\x2d\x34\x54\xc4\x1e\x5b\x62\x52\xd3\x70\xd6\xa9\x01\ +\x73\x88\x4b\x24\xab\x7b\x79\xc9\x68\x96\x08\x9f\x8b\xdd\x5c\x16\ +\xfd\x7c\x7a\xc3\x38\x2f\xc1\x6a\xc1\x4b\xee\x39\x9a\xb5\x80\xd6\ +\xf4\xa9\x13\x3a\x6d\x4c\x44\x2d\xc7\xbe\x17\xe5\xa3\x3f\x06\xa5\ +\xdd\x72\x41\x2d\x8a\xae\x1a\x8a\x42\xca\xf0\x2f\x4a\x78\x8b\xaa\ +\xba\xb2\x26\x44\x5f\xbc\x39\x44\x85\xa6\x48\x76\x8c\xc7\x5b\x30\ +\x82\x35\x37\x26\x6c\x71\xfa\x0c\x0b\x2f\x8b\x84\x6a\x1a\x51\x86\ +\x16\xe2\xb7\xf2\xa2\xa8\x8e\x54\x3b\x5c\xf9\x60\xee\x5b\xc5\x79\ +\xdb\xf4\xbe\xb1\x18\x19\x70\xc0\x1a\x38\xcc\xd4\x70\xe7\x32\xc4\ +\x5c\x10\x53\xb9\xe0\x8d\xda\x6a\x40\x84\x9a\x7b\xc3\xcf\xcf\xaf\ +\xb6\xfa\x1c\x5b\x0d\xde\xb7\x80\x66\x3e\xe0\x5f\x70\x85\x89\xd8\ +\xa9\x94\x07\x22\xdd\x26\x56\xaf\x0e\x9d\x98\x61\x8c\x14\x6c\x30\ +\xec\x19\x64\xb0\x95\x6a\x22\x18\xf4\x0c\x4e\x28\xdd\xaa\x2b\xdc\ +\x81\x74\x0e\xdc\x1e\x48\x9b\x61\xa3\x68\x71\xca\x60\xf1\x49\xee\ +\xf5\xc7\x8c\x73\x01\x63\x91\x64\x52\x96\x08\x99\x8a\x83\x79\x2e\ +\xeb\x8c\x28\x4a\xa3\x5b\x9c\xb4\x07\xd5\x6d\x88\x53\x24\xfe\x78\ +\x08\x28\x68\x04\x18\x81\x15\xba\x13\x41\x86\xe8\xfc\x1f\x41\x8a\ +\x0f\x8f\xb5\x86\x13\x4a\x67\xcd\x05\x35\x56\xc3\x9f\x41\xe0\x0e\ +\x46\x23\x49\xc2\x41\x4d\xb4\x64\x00\xc4\xed\x9f\x89\xad\xc9\x9b\ +\xa6\x78\x1e\x65\xe0\xf6\xdf\x0a\xa9\x6a\x99\xdb\xd6\x30\xf5\x30\ +\xaf\x25\xcc\x7f\x11\x79\xdc\xec\x8c\x30\x5f\x23\x22\x61\x52\xbb\ +\x25\x8c\x3d\x16\x24\x69\x6e\xea\xf1\xf0\x7e\x6b\x5f\x69\x60\xeb\ +\x73\xf6\x58\xd9\xef\xd8\x39\x13\x6e\x69\xd2\x10\x1f\x4a\x9a\x07\ +\x51\xe6\xd1\x08\x53\x08\x32\x9f\x67\x0c\x9e\x8f\x35\xef\xa1\xff\ +\x57\xde\x7c\x4a\xde\xbc\xef\x2c\x3e\x8c\x39\x67\x45\xb4\x3d\x2d\ +\x7d\xf6\x47\xbd\x0e\xfa\x1c\x9f\x75\xd1\xe7\xbb\xf1\x33\xd1\xe7\ +\x16\xab\x57\x0e\xdd\x5d\x78\x8e\x0f\x2b\x3c\x47\xc7\x2b\x3c\xd5\ +\xbb\xcf\x33\x92\xe8\xf0\x95\x44\x77\x63\xfd\xd4\x24\xfa\xa6\x73\ +\x33\xf6\xa1\xae\xd1\x59\x07\x73\xbd\x19\x74\x31\xd7\xf0\xb9\x98\ +\xeb\x4e\xe5\xc2\xcb\xa5\x2d\x53\x68\xe8\xaa\xcc\x7b\xc4\x57\x82\ +\xf2\xf0\x7d\xd8\x77\x82\xeb\x8b\x4f\x08\xc7\x09\x65\xfc\xd8\x1f\ +\x07\x8e\xf7\x69\x60\xf8\x70\x86\x2e\xd3\x2c\x04\xff\x67\x15\x9f\ +\x6d\x8e\x49\xc1\xbc\x0a\x54\x3b\x5a\x5d\x55\x0a\x5e\x88\x02\x25\ +\x2f\x54\x94\x3a\x08\xfe\x50\x15\x8b\x20\x2e\x60\xa4\xf8\xea\x22\ +\xa1\x4d\x3c\x96\x82\xa4\x76\xf1\xba\x37\x07\x94\xa5\x80\x38\x45\ +\xf3\x0c\x47\x41\x3e\x49\x17\x31\x68\xc1\x68\x8c\x7e\x12\xba\x22\ +\xea\x39\xbe\x49\x20\x3d\x7d\x7c\x69\xb3\xfb\xdc\x91\x2e\x6c\xfd\ +\x2c\x5d\x3c\xa0\x8a\xca\x11\xa8\x59\x9b\x0b\xfc\x5c\x51\x7e\x80\ +\x20\x10\xd9\xfc\x9d\x64\x21\x96\x74\xbd\xf0\xa7\x7a\x1d\x2f\x90\ +\x2d\x0e\x4f\xa1\xd1\xef\x48\xa1\xc7\x27\xd0\xf5\x8e\x04\x12\xf1\ +\xf8\x77\x02\x64\x16\x82\xc8\x97\x9c\x96\xcc\xec\x09\x54\xa5\x54\ +\x24\x0d\xa1\x1c\x85\x1e\x09\x22\x31\x3e\xdf\x98\x29\x78\x68\x58\ +\xef\xce\xa0\x6f\xa9\xe9\xe8\xe3\x6d\xec\x1d\xe3\x15\x9b\x2f\x30\ +\xcc\xf7\x3f\x14\x8d\x7a\xb6\x38\x7e\xcc\x0f\xa9\x0f\x29\x63\xcb\ +\x0a\xf6\xbb\xd6\x61\xd4\xaf\xcd\xa3\x70\x8f\xaa\xd5\x2c\x58\x75\ +\xad\x3a\x68\xd4\xaa\x45\x99\x3a\x6c\x94\xa9\x46\x85\x5a\x77\xc5\ +\xa8\x4b\x4b\x90\x2a\x48\x56\x60\xd4\xbc\x51\xbc\x57\xeb\x8b\x8f\ +\x89\x35\xb6\x50\x7e\x83\x31\xb1\xfa\x7d\xcb\x96\x33\x13\xbc\x8e\ +\xbd\x64\x91\x11\x5f\x02\xe5\xfe\x3b\x55\xfd\x0b\x71\x48\x7d\xc5\ +\x31\xcc\x68\xc6\x7c\xc1\xec\xb5\x59\xf2\x12\x2b\x4b\x39\x8d\x73\ +\x8b\xa9\xf2\xa4\x3a\x92\x7b\x59\xb9\xe8\xaa\x14\xc3\xe5\xe5\x96\ +\xdc\x8f\x35\x07\x12\xa4\xee\xcd\x34\x4b\xc3\x42\x5e\x0c\x9e\xe4\ +\x70\x79\x81\x58\xb6\xd0\x62\xe7\x97\x5f\xe9\x69\x28\x91\x53\xa3\ +\x0a\x81\xba\xe1\x6e\x4f\x6a\xa5\x79\xab\x37\x4d\x97\x77\xb9\x24\ +\xb5\x1d\xcf\x2d\xcd\xc3\xed\x08\x95\xd2\xc3\x9d\x31\x07\xd4\x45\ +\x23\x83\x54\x6d\x76\xaa\xc2\xc2\xa7\x84\x80\xda\x6c\xd9\x77\xec\ +\x0c\xbb\x27\xff\x03\x16\x13\x63\x21\ \x00\x00\x07\x4c\ \x00\ \x00\x29\xd1\x78\x9c\xed\x59\x5b\x8f\xe2\x46\x16\x7e\xef\x5f\xe1\ @@ -10089,30 +10050,30 @@ qt_resource_struct = "\ \x00\x00\x00\x86\x00\x00\x00\x00\x00\x01\x00\x00\x3e\x30\ \x00\x00\x01\x70\x00\x00\x00\x00\x00\x01\x00\x01\x08\x08\ \x00\x00\x00\x38\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ -\x00\x00\x05\x12\x00\x01\x00\x00\x00\x01\x00\x02\x30\x38\ -\x00\x00\x04\x1e\x00\x00\x00\x00\x00\x01\x00\x01\xf2\x69\ -\x00\x00\x02\xfc\x00\x00\x00\x00\x00\x01\x00\x01\xa3\xf7\ -\x00\x00\x05\xb2\x00\x01\x00\x00\x00\x01\x00\x02\x5b\xca\ -\x00\x00\x04\xe4\x00\x01\x00\x00\x00\x01\x00\x02\x29\x66\ -\x00\x00\x03\x36\x00\x01\x00\x00\x00\x01\x00\x01\xb2\x66\ -\x00\x00\x03\x88\x00\x01\x00\x00\x00\x01\x00\x01\xc5\xed\ -\x00\x00\x02\xa0\x00\x01\x00\x00\x00\x01\x00\x01\x89\x57\ -\x00\x00\x04\x5e\x00\x00\x00\x00\x00\x01\x00\x02\x0c\x43\ -\x00\x00\x02\x7e\x00\x01\x00\x00\x00\x01\x00\x01\x80\x5e\ -\x00\x00\x03\x64\x00\x01\x00\x00\x00\x01\x00\x01\xbb\xbe\ -\x00\x00\x02\x34\x00\x01\x00\x00\x00\x01\x00\x01\x6f\xb6\ -\x00\x00\x02\x5e\x00\x01\x00\x00\x00\x01\x00\x01\x79\x5e\ -\x00\x00\x04\x8e\x00\x01\x00\x00\x00\x01\x00\x02\x1b\xb1\ -\x00\x00\x03\xf4\x00\x00\x00\x00\x00\x01\x00\x01\xe1\xe8\ -\x00\x00\x04\xbc\x00\x01\x00\x00\x00\x01\x00\x02\x21\x01\ -\x00\x00\x05\x3c\x00\x00\x00\x00\x00\x01\x00\x02\x37\x13\ -\x00\x00\x03\xac\x00\x01\x00\x00\x00\x01\x00\x01\xcb\x04\ -\x00\x00\x05\x86\x00\x01\x00\x00\x00\x01\x00\x02\x53\x50\ -\x00\x00\x05\x66\x00\x01\x00\x00\x00\x01\x00\x02\x49\x16\ -\x00\x00\x04\x3e\x00\x01\x00\x00\x00\x01\x00\x02\x06\x2b\ -\x00\x00\x02\xd2\x00\x00\x00\x00\x00\x01\x00\x01\x91\x99\ -\x00\x00\x03\xd6\x00\x00\x00\x00\x00\x01\x00\x01\xd2\xec\ -\x00\x00\x02\x00\x00\x01\x00\x00\x00\x01\x00\x01\x68\x66\ +\x00\x00\x05\x12\x00\x01\x00\x00\x00\x01\x00\x02\x2d\xc6\ +\x00\x00\x04\x1e\x00\x00\x00\x00\x00\x01\x00\x01\xef\xf7\ +\x00\x00\x02\xfc\x00\x00\x00\x00\x00\x01\x00\x01\xa1\x85\ +\x00\x00\x05\xb2\x00\x01\x00\x00\x00\x01\x00\x02\x59\x58\ +\x00\x00\x04\xe4\x00\x01\x00\x00\x00\x01\x00\x02\x26\xf4\ +\x00\x00\x03\x36\x00\x01\x00\x00\x00\x01\x00\x01\xaf\xf4\ +\x00\x00\x03\x88\x00\x01\x00\x00\x00\x01\x00\x01\xc3\x7b\ +\x00\x00\x02\xa0\x00\x01\x00\x00\x00\x01\x00\x01\x86\xe5\ +\x00\x00\x04\x5e\x00\x00\x00\x00\x00\x01\x00\x02\x09\xd1\ +\x00\x00\x02\x7e\x00\x01\x00\x00\x00\x01\x00\x01\x7d\xec\ +\x00\x00\x03\x64\x00\x01\x00\x00\x00\x01\x00\x01\xb9\x4c\ +\x00\x00\x02\x34\x00\x01\x00\x00\x00\x01\x00\x01\x6d\x44\ +\x00\x00\x02\x5e\x00\x01\x00\x00\x00\x01\x00\x01\x76\xec\ +\x00\x00\x04\x8e\x00\x01\x00\x00\x00\x01\x00\x02\x19\x3f\ +\x00\x00\x03\xf4\x00\x00\x00\x00\x00\x01\x00\x01\xdf\x76\ +\x00\x00\x04\xbc\x00\x01\x00\x00\x00\x01\x00\x02\x1e\x8f\ +\x00\x00\x05\x3c\x00\x00\x00\x00\x00\x01\x00\x02\x34\xa1\ +\x00\x00\x03\xac\x00\x01\x00\x00\x00\x01\x00\x01\xc8\x92\ +\x00\x00\x05\x86\x00\x01\x00\x00\x00\x01\x00\x02\x50\xde\ +\x00\x00\x05\x66\x00\x01\x00\x00\x00\x01\x00\x02\x46\xa4\ +\x00\x00\x04\x3e\x00\x01\x00\x00\x00\x01\x00\x02\x03\xb9\ +\x00\x00\x02\xd2\x00\x00\x00\x00\x00\x01\x00\x01\x8f\x27\ +\x00\x00\x03\xd6\x00\x00\x00\x00\x00\x01\x00\x01\xd0\x7a\ +\x00\x00\x02\x00\x00\x01\x00\x00\x00\x01\x00\x01\x65\xf4\ \x00\x00\x01\xd8\x00\x01\x00\x00\x00\x01\x00\x01\x61\x46\ " diff --git a/src/Mod/Arch/Resources/ui/archprefs-base.ui b/src/Mod/Arch/Resources/ui/archprefs-base.ui index 2963885847..88b1ba306f 100644 --- a/src/Mod/Arch/Resources/ui/archprefs-base.ui +++ b/src/Mod/Arch/Resources/ui/archprefs-base.ui @@ -164,22 +164,6 @@ IFC import - - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'DejaVu Sans'; font-size:8pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">For the IFC reader to function, you need an IFC Schema Express file (.exp) available here:</p> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="http://www.steptools.com/support/stdev_docs/express/ifc2x3/ifc2x3_tc1.exp"><span style=" text-decoration: underline; color:#508ed8;">http://www.steptools.com/support/stdev_docs/express/ifc2x3/ifc2x3_tc1.exp</span></a></p></body></html> - - - - - @@ -201,39 +185,6 @@ p, li { white-space: pre-wrap; } - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - IFC Schema file location - - - - - - - For the IFC reader to function, you need an IFC Schema Express file (.exp). For licensing reasons we are not allowed to ship that file with FreeCAD, so you must download it yourself. Place that file in some location on your computer, and select the file here. - - - IfcSchema - - - Mod/Arch - - - @@ -259,26 +210,29 @@ p, li { white-space: pre-wrap; } + + + + Qt::Vertical + + + + 20 + 40 + + + + qPixmapFromMimeSource - - Gui::FileChooser - QWidget -
Gui/FileDialog.h
-
Gui::ColorButton QPushButton
Gui/Widgets.h
- - Gui::PrefFileChooser - Gui::FileChooser -
Gui/PrefWidgets.h
-
Gui::PrefColorButton Gui::ColorButton diff --git a/src/Mod/Arch/importIFC.py b/src/Mod/Arch/importIFC.py index 9cfdf57c37..3de2aff0ff 100644 --- a/src/Mod/Arch/importIFC.py +++ b/src/Mod/Arch/importIFC.py @@ -21,7 +21,7 @@ #* * #*************************************************************************** -import ifcReader, FreeCAD, Arch, Draft, os, sys, time, tempfile +import ifcReader, FreeCAD, Arch, Draft, os, sys, time, tempfile, Part from draftlibs import fcvec __title__="FreeCAD IFC importer" @@ -29,6 +29,8 @@ __author__ = "Yorik van Havre" __url__ = "http://free-cad.sourceforge.net" DEBUG = True +SCHEMA = "http://www.steptools.com/support/stdev_docs/express/ifc2x3/ifc2x3_tc1.exp" +SKIP = ["IfcOpeningElement"] pyopen = open # because we'll redefine open below def open(filename): @@ -38,9 +40,10 @@ def open(filename): doc.Label = decode(docname) FreeCAD.ActiveDocument = doc p = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Mod/Arch") - p = p.GetBool("useIfcOpenShell") - if p: - readOpenShell(filename) + op = p.GetBool("useIfcOpenShell") + ip = p.GetBool("useIfcParser") + if op: + readOpenShell(filename,useParser=ip) else: read(filename) return doc @@ -59,15 +62,14 @@ def decode(name): def getSchema(): "retrieves the express schema" - default = "IFC2X3_TC1.exp" - p = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Mod/Arch") - p = p.GetString("IfcSchema") - if p: - if os.path.exists(p): - return p - p = os.path.join(FreeCAD.ConfigGet("UserAppData"),default) + p = None + p = os.path.join(FreeCAD.ConfigGet("UserAppData"),SCHEMA.split('/')[-1]) if os.path.exists(p): return p + import ArchCommands + p = ArchCommands.download(SCHEMA) + if p: + return p return None def getIfcOpenShell(): @@ -81,8 +83,12 @@ def getIfcOpenShell(): else: return True -def readOpenShell(filename): +def readOpenShell(filename,useParser=False): "Parses an IFC file with IfcOpenShell" + + altifc = None + if useParser: + altifc = parseFile(filename) if getIfcOpenShell(): USESHAPES = False @@ -97,72 +103,97 @@ def readOpenShell(filename): meshdata = [] n = obj.name if not n: n = "Unnamed" - - if USESHAPES: + if obj.type in SKIP: + pass + + elif altifc and (obj.type == "IfcWallStandardCase"): + makeWall(altifc.Entities[obj.id],shape=getShape(obj)) + + elif USESHAPES: # treat as Parts - import Part - tf = tempfile.mkstemp(suffix=".brp")[1] - of = pyopen(tf,"wb") - of.write(obj.mesh.brep_data) - of.close() - sh = Part.read(tf) + sh = getShape(obj) nobj = FreeCAD.ActiveDocument.addObject("Part::Feature",n) nobj.Shape = sh - os.remove(tf) - else: - # treat as meshes - import Mesh - f = obj.mesh.faces - v = obj.mesh.verts - for i in range(0, len(f), 3): - face = [] - for j in range(3): - vi = f[i+j]*3 - face.append([v[vi],v[vi+1],v[vi+2]]) - meshdata.append(face) - newmesh = Mesh.Mesh(meshdata) + me,pl = getMesh(obj) nobj = FreeCAD.ActiveDocument.addObject("Mesh::Feature",n) - nobj.Mesh = newmesh - - # apply transformation matrix - m = obj.matrix - mat = FreeCAD.Matrix(m[0], m[3], m[6], m[9], - m[1], m[4], m[7], m[10], - m[2], m[5], m[8], m[11], - 0, 0, 0, 1) - nobj.Placement = FreeCAD.Placement(mat) + nobj.Mesh = me + nobj.Placement = pl + if not IfcImport.Next(): break IfcImport.CleanUp() return None + +def getMesh(obj): + "gets mesh and placement from an IfcOpenShell object" + import Mesh + f = obj.mesh.faces + v = obj.mesh.verts + for i in range(0, len(f), 3): + face = [] + for j in range(3): + vi = f[i+j]*3 + face.append([v[vi],v[vi+1],v[vi+2]]) + meshdata.append(face) + me = Mesh.Mesh(meshdata) + # get transformation matrix + m = obj.matrix + mat = FreeCAD.Matrix(m[0], m[3], m[6], m[9], + m[1], m[4], m[7], m[10], + m[2], m[5], m[8], m[11], + 0, 0, 0, 1) + pl = FreeCAD.Placement(mat) + return me,pl + +def getShape(obj): + "gets a shape from an IfcOpenShell object" + tf = tempfile.mkstemp(suffix=".brp")[1] + of = pyopen(tf,"wb") + of.write(obj.mesh.brep_data) + of.close() + sh = Part.read(tf) + os.remove(tf) + m = obj.matrix + mat = FreeCAD.Matrix(m[0], m[3], m[6], m[9], + m[1], m[4], m[7], m[10], + m[2], m[5], m[8], m[11], + 0, 0, 0, 1) + sh.Placement = FreeCAD.Placement(mat) + return sh def read(filename): "processes an ifc file and add its objects to the given document" t1 = time.time() + ifc = parseFile(filename) + t2 = time.time() + if DEBUG: print "Successfully loaded",ifc,"in %s s" % ((t2-t1)) + # getting walls + for w in ifc.getEnt("IFCWALLSTANDARDCASE"): + makeWall(w) + # getting floors + for f in ifc.getEnt("IFCBUILDINGSTOREY"): + makeCell(f,"Floor") + # getting buildings + for b in ifc.getEnt("IFCBUILDING"): + makeCell(b,"Building") + FreeCAD.ActiveDocument.recompute() + t3 = time.time() + if DEBUG: print "done processing",ifc,"in %s s" % ((t3-t1)) + +def parseFile(filename): + "parses an IFC file" schema=getSchema() if schema: if DEBUG: global ifc if DEBUG: print "opening",filename,"..." ifc = ifcReader.IfcDocument(filename,schema=schema,debug=DEBUG) - t2 = time.time() - if DEBUG: print "Successfully loaded",ifc,"in %s s" % ((t2-t1)) - # getting walls - for w in ifc.getEnt("IFCWALLSTANDARDCASE"): - makeWall(w) - # getting floors - for f in ifc.getEnt("IFCBUILDINGSTOREY"): - makeCell(f,"Floor") - # getting buildings - for b in ifc.getEnt("IFCBUILDING"): - makeCell(b,"Building") - FreeCAD.ActiveDocument.recompute() - t3 = time.time() - if DEBUG: print "done processing",ifc,"in %s s" % ((t3-t1)) + return ifc else: - FreeCAD.Console.PrintWarning("IFC Schema not found, IFC import disabled. See Arch Preferences to get a schema") + FreeCAD.Console.PrintWarning("IFC Schema not found, IFC import disabled.\n") + return None def makeCell(entity,mode="Cell"): "makes a cell in the freecad document" @@ -202,10 +233,16 @@ def makeCell(entity,mode="Cell"): except: if DEBUG: print "error: skipping cell",entity.id -def makeWall(entity): +def makeWall(entity,shape=None): "makes a wall in the freecad document" try: if DEBUG: print "=====> making wall",entity.id + if shape: + sh = FreeCAD.ActiveDocument.addObject("Part::Feature","WallBody") + sh.Shape = shape + wall = Arch.makeWall(sh) + if DEBUG: print "made wall object ",entity.id,":",wall + return placement = wall = wire = body = width = height = None placement = getPlacement(entity.ObjectPlacement) if DEBUG: print "got wall placement",entity.id,":",placement From 5e12b1630be362bc3775aabbd93ed5c4784d069d Mon Sep 17 00:00:00 2001 From: Yorik van Havre Date: Tue, 24 Jan 2012 15:44:21 -0200 Subject: [PATCH 03/40] Small fix to Arch IFC importer --- src/Mod/Arch/importIFC.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Mod/Arch/importIFC.py b/src/Mod/Arch/importIFC.py index 3de2aff0ff..0018f27398 100644 --- a/src/Mod/Arch/importIFC.py +++ b/src/Mod/Arch/importIFC.py @@ -108,7 +108,10 @@ def readOpenShell(filename,useParser=False): pass elif altifc and (obj.type == "IfcWallStandardCase"): - makeWall(altifc.Entities[obj.id],shape=getShape(obj)) + if USESHAPES: + makeWall(altifc.Entities[obj.id],shape=getShape(obj)) + else: + makeWall(altifc.Entities[obj.id]) elif USESHAPES: # treat as Parts From 8764e8efcad7e5af1ac7066dc426187f21c8d8d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 10:59:39 +0100 Subject: [PATCH 04/40] Added Surfaces module sources --- src/Mod/Surfaces/Icons/BorderIco.png | Bin 0 -> 5621 bytes src/Mod/Surfaces/Icons/BorderIco.xcf | Bin 0 -> 63790 bytes src/Mod/Surfaces/Icons/BorderIco.xpm | 1213 ++++++++++++++ src/Mod/Surfaces/Icons/CMakeLists.txt | 21 + src/Mod/Surfaces/Icons/ConvertIco.png | Bin 0 -> 6879 bytes src/Mod/Surfaces/Icons/ConvertIco.xcf | Bin 0 -> 62189 bytes src/Mod/Surfaces/Icons/ConvertTo4SidesIco.xpm | 1398 +++++++++++++++++ src/Mod/Surfaces/Icons/Ico.png | Bin 0 -> 7236 bytes src/Mod/Surfaces/Icons/Ico.xcf | Bin 0 -> 21174 bytes src/Mod/Surfaces/Icons/Ico.xpm | 749 +++++++++ src/Mod/Surfaces/Icons/IsoCurveIco.png | Bin 0 -> 6763 bytes src/Mod/Surfaces/Icons/IsoCurveIco.xcf | Bin 0 -> 64629 bytes src/Mod/Surfaces/Icons/IsoCurveIco.xpm | 1280 +++++++++++++++ src/Mod/Surfaces/Icons/Makefile.am | 25 + src/Mod/Surfaces/Icons/SliceIco.png | Bin 0 -> 5547 bytes src/Mod/Surfaces/Icons/SliceIco.xcf | Bin 0 -> 61422 bytes src/Mod/Surfaces/Icons/SliceIco.xpm | 865 ++++++++++ src/Mod/Surfaces/InitGui.py | 38 + src/Mod/Surfaces/SurfGui.py | 75 + src/Mod/Surfaces/surfBorder/CMakeLists.txt | 7 + src/Mod/Surfaces/surfBorder/Makefile.am | 11 + src/Mod/Surfaces/surfBorder/__init__.py | 48 + src/Mod/Surfaces/surfConvert/CMakeLists.txt | 10 + src/Mod/Surfaces/surfConvert/Makefile.am | 14 + src/Mod/Surfaces/surfConvert/Preview.py | 79 + src/Mod/Surfaces/surfConvert/TaskPanel.py | 576 +++++++ src/Mod/Surfaces/surfConvert/TaskPanel.ui | 107 ++ src/Mod/Surfaces/surfConvert/__init__.py | 34 + src/Mod/Surfaces/surfISOCurve/CMakeLists.txt | 11 + src/Mod/Surfaces/surfISOCurve/Makefile.am | 16 + src/Mod/Surfaces/surfISOCurve/PointTracker.py | 85 + src/Mod/Surfaces/surfISOCurve/Preview.py | 122 ++ src/Mod/Surfaces/surfISOCurve/TaskPanel.py | 165 ++ src/Mod/Surfaces/surfISOCurve/TaskPanel.ui | 65 + src/Mod/Surfaces/surfISOCurve/__init__.py | 34 + src/Mod/Surfaces/surfSlice/CMakeLists.txt | 11 + src/Mod/Surfaces/surfSlice/Makefile.am | 15 + src/Mod/Surfaces/surfSlice/PointTracker.py | 68 + src/Mod/Surfaces/surfSlice/Preview.py | 97 ++ src/Mod/Surfaces/surfSlice/TaskPanel.py | 214 +++ src/Mod/Surfaces/surfSlice/TaskPanel.ui | 70 + src/Mod/Surfaces/surfSlice/__init__.py | 34 + src/Mod/Surfaces/surfUtils/CMakeLists.txt | 11 + src/Mod/Surfaces/surfUtils/Geometry.py | 171 ++ src/Mod/Surfaces/surfUtils/Makefile.am | 15 + src/Mod/Surfaces/surfUtils/Math.py | 54 + src/Mod/Surfaces/surfUtils/Paths.py | 52 + src/Mod/Surfaces/surfUtils/Translator.py | 27 + src/Mod/Surfaces/surfUtils/__init__.py | 22 + 49 files changed, 7909 insertions(+) create mode 100644 src/Mod/Surfaces/Icons/BorderIco.png create mode 100644 src/Mod/Surfaces/Icons/BorderIco.xcf create mode 100644 src/Mod/Surfaces/Icons/BorderIco.xpm create mode 100644 src/Mod/Surfaces/Icons/CMakeLists.txt create mode 100644 src/Mod/Surfaces/Icons/ConvertIco.png create mode 100644 src/Mod/Surfaces/Icons/ConvertIco.xcf create mode 100644 src/Mod/Surfaces/Icons/ConvertTo4SidesIco.xpm create mode 100644 src/Mod/Surfaces/Icons/Ico.png create mode 100644 src/Mod/Surfaces/Icons/Ico.xcf create mode 100644 src/Mod/Surfaces/Icons/Ico.xpm create mode 100644 src/Mod/Surfaces/Icons/IsoCurveIco.png create mode 100644 src/Mod/Surfaces/Icons/IsoCurveIco.xcf create mode 100644 src/Mod/Surfaces/Icons/IsoCurveIco.xpm create mode 100644 src/Mod/Surfaces/Icons/Makefile.am create mode 100644 src/Mod/Surfaces/Icons/SliceIco.png create mode 100644 src/Mod/Surfaces/Icons/SliceIco.xcf create mode 100644 src/Mod/Surfaces/Icons/SliceIco.xpm create mode 100644 src/Mod/Surfaces/InitGui.py create mode 100644 src/Mod/Surfaces/SurfGui.py create mode 100644 src/Mod/Surfaces/surfBorder/CMakeLists.txt create mode 100644 src/Mod/Surfaces/surfBorder/Makefile.am create mode 100644 src/Mod/Surfaces/surfBorder/__init__.py create mode 100644 src/Mod/Surfaces/surfConvert/CMakeLists.txt create mode 100644 src/Mod/Surfaces/surfConvert/Makefile.am create mode 100644 src/Mod/Surfaces/surfConvert/Preview.py create mode 100644 src/Mod/Surfaces/surfConvert/TaskPanel.py create mode 100644 src/Mod/Surfaces/surfConvert/TaskPanel.ui create mode 100644 src/Mod/Surfaces/surfConvert/__init__.py create mode 100644 src/Mod/Surfaces/surfISOCurve/CMakeLists.txt create mode 100644 src/Mod/Surfaces/surfISOCurve/Makefile.am create mode 100644 src/Mod/Surfaces/surfISOCurve/PointTracker.py create mode 100644 src/Mod/Surfaces/surfISOCurve/Preview.py create mode 100644 src/Mod/Surfaces/surfISOCurve/TaskPanel.py create mode 100644 src/Mod/Surfaces/surfISOCurve/TaskPanel.ui create mode 100644 src/Mod/Surfaces/surfISOCurve/__init__.py create mode 100644 src/Mod/Surfaces/surfSlice/CMakeLists.txt create mode 100644 src/Mod/Surfaces/surfSlice/Makefile.am create mode 100644 src/Mod/Surfaces/surfSlice/PointTracker.py create mode 100644 src/Mod/Surfaces/surfSlice/Preview.py create mode 100644 src/Mod/Surfaces/surfSlice/TaskPanel.py create mode 100644 src/Mod/Surfaces/surfSlice/TaskPanel.ui create mode 100644 src/Mod/Surfaces/surfSlice/__init__.py create mode 100644 src/Mod/Surfaces/surfUtils/CMakeLists.txt create mode 100644 src/Mod/Surfaces/surfUtils/Geometry.py create mode 100644 src/Mod/Surfaces/surfUtils/Makefile.am create mode 100644 src/Mod/Surfaces/surfUtils/Math.py create mode 100644 src/Mod/Surfaces/surfUtils/Paths.py create mode 100644 src/Mod/Surfaces/surfUtils/Translator.py create mode 100644 src/Mod/Surfaces/surfUtils/__init__.py diff --git a/src/Mod/Surfaces/Icons/BorderIco.png b/src/Mod/Surfaces/Icons/BorderIco.png new file mode 100644 index 0000000000000000000000000000000000000000..8f6f024148322d436f9bd4a49c2a43e141353e93 GIT binary patch literal 5621 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 literal 0 HcmV?d00001 diff --git a/src/Mod/Surfaces/Icons/BorderIco.xcf b/src/Mod/Surfaces/Icons/BorderIco.xcf new file mode 100644 index 0000000000000000000000000000000000000000..0ecd7785b219fe331605eefec220d31b7de36231 GIT binary patch literal 63790 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 literal 0 HcmV?d00001 diff --git a/src/Mod/Surfaces/Icons/BorderIco.xpm b/src/Mod/Surfaces/Icons/BorderIco.xpm new file mode 100644 index 0000000000..a27c8de99b --- /dev/null +++ b/src/Mod/Surfaces/Icons/BorderIco.xpm @@ -0,0 +1,1213 @@ +/* XPM */ +static char * BorderIco_xpm[] = { +"128 128 1082 2", +" c None", +". c #FF0000", +"+ c #005F00", +"@ c #006100", +"# c #00AF05", +"$ c #00B105", +"% c #000000", +"& c #009B03", +"* c #006600", +"= c #008C02", +"- c #00B005", +"; c #00A305", +"> c #006F01", +", c #B5B5B5", +"' c #B4B4B3", +") c #B3B3B2", +"! c #B1B1B2", +"~ c #B1B0B0", +"{ c #AFAFAF", +"] c #AEAEAE", +"^ c #ADACAC", +"/ c #ABABAB", +"( c #AAAAAA", +"_ c #007100", +": c #00AC04", +"< c #008403", +"[ c #BDBDBD", +"} c #BCBDBD", +"| c #BCBCBC", +"1 c #BABBBA", +"2 c #B9B9BA", +"3 c #B8B8B9", +"4 c #B8B7B7", +"5 c #B6B6B6", +"6 c #B5B4B5", +"7 c #B3B3B3", +"8 c #B2B3B2", +"9 c #B1B1B1", +"0 c #B0B0B0", +"a c #AFAFAE", +"b c #ADADAD", +"c c #ACACAC", +"d c #A9A9A9", +"e c #A8A7A8", +"f c #A6A7A6", +"g c #A5A5A5", +"h c #00A704", +"i c #00AE05", +"j c #00AC05", +"k c #009703", +"l c #C1C2C2", +"m c #C1C1C1", +"n c #C0C1C1", +"o c #C0C0C0", +"p c #BFC0C0", +"q c #BFBFBF", +"r c #BEBDBE", +"s c #BCBDBC", +"t c #BBBBBB", +"u c #BABABA", +"v c #B9B9B9", +"w c #B7B8B8", +"x c #B7B6B7", +"y c #B4B4B4", +"z c #B2B1B1", +"A c #B0AFAF", +"B c #ADAEAD", +"C c #AAA9A9", +"D c #A7A7A7", +"E c #A6A6A5", +"F c #A4A4A4", +"G c #008A02", +"H c #00B104", +"I c #00AD05", +"J c #00AA06", +"K c #00A105", +"L c #007101", +"M c #006000", +"N c #C3C3C3", +"O c #C4C3C3", +"P c #C3C3C4", +"Q c #C3C4C3", +"R c #C3C2C3", +"S c #C2C1C2", +"T c #C1C1C2", +"U c #BFC0BF", +"V c #BEBEBF", +"W c #BDBDBE", +"X c #BDBCBC", +"Y c #BCBBBB", +"Z c #BABAB9", +"` c #B6B7B6", +" . c #AFB0AF", +".. c #AEAEAF", +"+. c #ACABAC", +"@. c #A9A9A8", +"#. c #A8A8A8", +"$. c #A6A6A6", +"%. c #A4A5A4", +"&. c #A3A3A3", +"*. c #A2A2A2", +"=. c #008B02", +"-. c #00B305", +";. c #00A906", +">. c #00A505", +",. c #008303", +"'. c #C2C2C3", +"). c #C4C4C4", +"!. c #C5C5C5", +"~. c #C4C5C5", +"{. c #C5C4C4", +"]. c #BEBEBE", +"^. c #BDBEBE", +"/. c #BBBABA", +"(. c #B8B8B8", +"_. c #B4B5B4", +":. c #B2B2B1", +"<. c #B1B1B0", +"[. c #AAABAB", +"}. c #A4A3A3", +"|. c #A1A0A1", +"1. c #00B405", +"2. c #00A706", +"3. c #00A506", +"4. c #009404", +"5. c #006800", +"6. c #C2C2C2", +"7. c #C3C3C2", +"8. c #C5C6C6", +"9. c #C6C6C6", +"0. c #C7C6C6", +"a. c #C6C6C5", +"b. c #C6C5C6", +"c. c #C4C5C4", +"d. c #C3C4C4", +"e. c #C3C2C2", +"f. c #C1C0C0", +"g. c #C0BFBF", +"h. c #BDBCBD", +"i. c #BBBCBB", +"j. c #B8B8B7", +"k. c #B4B5B5", +"l. c #B3B3B4", +"m. c #B2B1B2", +"n. c #ACADAC", +"o. c #A8A9A8", +"p. c #A7A7A6", +"q. c #A3A4A4", +"r. c #A3A3A2", +"s. c #A1A1A1", +"t. c #9FA0A0", +"u. c #006700", +"v. c #007700", +"w. c #008601", +"x. c #009202", +"y. c #009D02", +"z. c #00AC03", +"A. c #00B503", +"B. c #00B404", +"C. c #00A806", +"D. c #00A306", +"E. c #009C05", +"F. c #007702", +"G. c #C2C2C1", +"H. c #C2C3C2", +"I. c #C5C5C4", +"J. c #C7C7C7", +"K. c #C8C8C7", +"L. c #C6C6C7", +"M. c #C5C4C5", +"N. c #BFBFBE", +"O. c #BABBBB", +"P. c #BAB9BA", +"Q. c #B8B7B8", +"R. c #B7B7B6", +"S. c #B2B3B3", +"T. c #AFB0B0", +"U. c #ABACAB", +"V. c #A6A5A6", +"W. c #A4A4A5", +"X. c #9E9E9F", +"Y. c #00A201", +"Z. c #00B302", +"`. c #00C202", +" + c #00C803", +".+ c #00C403", +"++ c #00C204", +"@+ c #00C004", +"#+ c #00BD04", +"$+ c #00BA04", +"%+ c #00B804", +"&+ c #00B504", +"*+ c #00AC06", +"=+ c #00A905", +"-+ c #00A406", +";+ c #00A006", +">+ c #009E07", +",+ c #008A05", +"'+ c #006500", +")+ c #C1C1C0", +"!+ c #C9C8C9", +"~+ c #C9C9C9", +"{+ c #C9C9C8", +"]+ c #C8C9C9", +"^+ c #C8C8C8", +"/+ c #C7C6C7", +"(+ c #B7B7B7", +"_+ c #B6B5B5", +":+ c #B1B2B2", +"<+ c #B0AFB0", +"[+ c #A8A9A9", +"}+ c #A5A4A5", +"|+ c #A2A2A1", +"1+ c #286F28", +"2+ c #276F27", +"3+ c #004700", +"4+ c #007D00", +"5+ c #009500", +"6+ c #00AC00", +"7+ c #00D003", +"8+ c #00CD02", +"9+ c #00CB03", +"0+ c #00C603", +"a+ c #00C303", +"b+ c #00C003", +"c+ c #00BE04", +"d+ c #00BB04", +"e+ c #00B905", +"f+ c #00B704", +"g+ c #00AE06", +"h+ c #00AB05", +"i+ c #00A606", +"j+ c #00A107", +"k+ c #009F07", +"l+ c #009B07", +"m+ c #009506", +"n+ c #007602", +"o+ c #C7C7C6", +"p+ c #C9CACA", +"q+ c #CACBCB", +"r+ c #CACBCA", +"s+ c #CAC9CA", +"t+ c #C7C7C8", +"u+ c #BCBBBC", +"v+ c #BABABB", +"w+ c #B9B8B9", +"x+ c #B1B2B1", +"y+ c #AEAFAE", +"z+ c #ADAEAE", +"A+ c #AAAAAB", +"B+ c #A8A8A7", +"C+ c #297029", +"D+ c #287028", +"E+ c #277427", +"F+ c #278627", +"G+ c #007200", +"H+ c #008600", +"I+ c #009A00", +"J+ c #00E100", +"K+ c #00E101", +"L+ c #00DE01", +"M+ c #00D102", +"N+ c #00CE02", +"O+ c #00C903", +"P+ c #00C703", +"Q+ c #00C404", +"R+ c #00C104", +"S+ c #00BF04", +"T+ c #00BC04", +"U+ c #00A206", +"V+ c #009F06", +"W+ c #009C07", +"X+ c #009907", +"Y+ c #009807", +"Z+ c #008906", +"`+ c #006801", +" @ c #C0C0C1", +".@ c #C8C9C8", +"+@ c #CACACA", +"@@ c #CBCBCB", +"#@ c #CCCCCC", +"$@ c #C9CAC9", +"%@ c #C9C8C8", +"&@ c #BFBEBE", +"*@ c #B5B5B4", +"=@ c #B2B2B2", +"-@ c #2A712A", +";@ c #297D29", +">@ c #289328", +",@ c #28AA29", +"'@ c #28BD28", +")@ c #27CC28", +"!@ c #27CD28", +"~@ c #27CF28", +"{@ c #00AA00", +"]@ c #04DA04", +"^@ c #00E400", +"/@ c #00E201", +"(@ c #00E001", +"_@ c #00CF02", +":@ c #00CD03", +"<@ c #00CA03", +"[@ c #00B205", +"}@ c #00A207", +"|@ c #009D07", +"1@ c #009A07", +"2@ c #009808", +"3@ c #009606", +"4@ c #008004", +"5@ c #006300", +"6@ c #CBCACB", +"7@ c #CDCECD", +"8@ c #CECDCE", +"9@ c #CDCDCD", +"0@ c #CBCBCC", +"a@ c #BBBBBA", +"b@ c #B7B6B6", +"c@ c #B5B4B4", +"d@ c #B0B1B1", +"e@ c #AEADAD", +"f@ c #ACADAD", +"g@ c #2A722A", +"h@ c #2A9F2A", +"i@ c #29BA2A", +"j@ c #29C62A", +"k@ c #28C729", +"l@ c #28CA29", +"m@ c #27CE28", +"n@ c #27D027", +"o@ c #26D127", +"p@ c #00AD00", +"q@ c #00E600", +"r@ c #00E401", +"s@ c #00DF01", +"t@ c #00CF03", +"u@ c #00CC02", +"v@ c #00C503", +"w@ c #00C103", +"x@ c #00BF03", +"y@ c #00B904", +"z@ c #00B505", +"A@ c #00AF06", +"B@ c #00AA05", +"C@ c #00A507", +"D@ c #009D06", +"E@ c #009406", +"F@ c #007803", +"G@ c #C6C7C6", +"H@ c #CACACB", +"I@ c #CFCFCE", +"J@ c #C8C7C8", +"K@ c #BAB9B9", +"L@ c #B6B6B7", +"M@ c #AFAEAF", +"N@ c #297529", +"O@ c #29BB2A", +"P@ c #29C82A", +"Q@ c #28C929", +"R@ c #28CB29", +"S@ c #00AF00", +"T@ c #00E500", +"U@ c #00DC01", +"V@ c #00C203", +"W@ c #00BA05", +"X@ c #009006", +"Y@ c #C4C4C3", +"Z@ c #C9C9CA", +"`@ c #CECECE", +" # c #CBCCCC", +".# c #C2C1C1", +"+# c #C0C1C0", +"@# c #BEBEBD", +"## c #BCBCBB", +"$# c #B7B8B7", +"%# c #B0B1B0", +"&# c #ADADAE", +"*# c #298E29", +"=# c #28C72A", +"-# c #27CF27", +";# c #26D326", +"># c #05DF05", +",# c #00DD01", +"'# c #00CC03", +")# c #00C504", +"!# c #00B805", +"~# c #00A705", +"{# c #C7C8C8", +"]# c #CACAC9", +"^# c #CBCCCB", +"/# c #BFBEBF", +"(# c #B3B4B3", +"_# c #AEAFAF", +":# c #ACACAB", +"<# c #29B029", +"[# c #28C82A", +"}# c #27CC29", +"|# c #27CE27", +"1# c #26CF26", +"2# c #26D126", +"3# c #00A900", +"4# c #00B705", +"5# c #009207", +"6# c #C5C5C6", +"7# c #CBCACA", +"8# c #C6C5C5", +"9# c #C2C3C3", +"0# c #BEBFBE", +"a# c #A8A7A7", +"b# c #298229", +"c# c #28C629", +"d# c #27CB28", +"e# c #26CE27", +"f# c #26CF27", +"g# c #25CF26", +"h# c #00A800", +"i# c #00A700", +"j# c #00DB01", +"k# c #00D802", +"l# c #00B605", +"m# c #00A106", +"n# c #007A03", +"o# c #B8B9B8", +"p# c #B5B6B5", +"q# c #28A829", +"r# c #28C829", +"s# c #27CA29", +"t# c #27CC27", +"u# c #26CC27", +"v# c #26CD27", +"w# c #26CD26", +"x# c #25CC26", +"y# c #00A600", +"z# c #00A500", +"A# c #00D902", +"B# c #00D701", +"C# c #00BE03", +"D# c #C8C7C7", +"E# c #C7C8C7", +"F# c #C5C6C5", +"G# c #C4C4C5", +"H# c #B9BAB9", +"I# c #B6B7B7", +"J# c #B0B0AF", +"K# c #ADADAC", +"L# c #287D28", +"M# c #28C429", +"N# c #27C829", +"O# c #27C928", +"P# c #27CA28", +"Q# c #26CB27", +"R# c #26CA26", +"S# c #25CA27", +"T# c #00A400", +"U# c #00A200", +"V# c #00D502", +"W# c #00AB06", +"X# c #009E06", +"Y# c #008404", +"Z# c #B9B9B8", +"`# c #B1B0B1", +" $ c #ABAAAB", +".$ c #AAA9AA", +"+$ c #A9A8A9", +"@$ c #A5A5A6", +"#$ c #28A329", +"$$ c #28C529", +"%$ c #27C729", +"&$ c #27C728", +"*$ c #26C927", +"=$ c #26C928", +"-$ c #25C926", +";$ c #25C826", +">$ c #25C726", +",$ c #00A101", +"'$ c #00D402", +")$ c #00C604", +"!$ c #00A307", +"~$ c #006C01", +"{$ c #C1C0C1", +"]$ c #AEADAE", +"^$ c #ABAAAA", +"/$ c #287728", +"($ c #27C028", +"_$ c #27C529", +":$ c #27C628", +"<$ c #26C628", +"[$ c #26C727", +"}$ c #25C727", +"|$ c #25C627", +"1$ c #25C526", +"2$ c #009F00", +"3$ c #009E01", +"4$ c #00D002", +"5$ c #008D05", +"6$ c #B8B9B9", +"7$ c #B7B7B8", +"8$ c #ADACAD", +"9$ c #A7A7A8", +"0$ c #27A028", +"a$ c #27C328", +"b$ c #27C428", +"c$ c #26C428", +"d$ c #26C527", +"e$ c #25C426", +"f$ c #25C326", +"g$ c #24C226", +"h$ c #009D01", +"i$ c #009C01", +"j$ c #00B604", +"k$ c #007703", +"l$ c #0B0B0B", +"m$ c #BDBDBC", +"n$ c #B5B5B6", +"o$ c #ACACAD", +"p$ c #A9AAAA", +"q$ c #A5A6A5", +"r$ c #A2A2A3", +"s$ c #A1A2A1", +"t$ c #277927", +"u$ c #27C228", +"v$ c #26C328", +"w$ c #26C227", +"x$ c #25C227", +"y$ c #25C126", +"z$ c #25C226", +"A$ c #24C026", +"B$ c #009B01", +"C$ c #009901", +"D$ c #00A805", +"E$ c #009C06", +"F$ c #009607", +"G$ c #006200", +"H$ c #C0BFC0", +"I$ c #ABACAC", +"J$ c #276E27", +"K$ c #27A428", +"L$ c #26C028", +"M$ c #26C128", +"N$ c #25C028", +"O$ c #25C127", +"P$ c #25C026", +"Q$ c #24BF27", +"R$ c #24BE26", +"S$ c #24BD26", +"T$ c #009801", +"U$ c #009802", +"V$ c #00C902", +"W$ c #008504", +"X$ c #BBBABB", +"Y$ c #B9BABA", +"Z$ c #A0A0A1", +"`$ c #9F9F9F", +" % c #278227", +".% c #26BE28", +"+% c #26BF28", +"@% c #25BF28", +"#% c #25BE27", +"$% c #24BB25", +"%% c #009602", +"&% c #009501", +"*% c #009502", +"=% c #00A904", +"-% c #00A005", +";% c #009504", +">% c #009204", +",% c #009104", +"'% c #007102", +")% c #BDBEBD", +"!% c #A2A1A1", +"~% c #A0A0A0", +"{% c #9F9F9E", +"]% c #26B027", +"^% c #26BC28", +"/% c #25BC27", +"(% c #24BB26", +"_% c #24BA26", +":% c #23B926", +"<% c #23B925", +"[% c #009402", +"}% c #00AF04", +"|% c #009803", +"1% c #007701", +"2% c #009407", +"3% c #B4B3B3", +"4% c #A9A8A8", +"5% c #A7A8A7", +"6% c #A4A5A5", +"7% c #A09F9F", +"8% c #9E9E9E", +"9% c #9A9C9B", +"0% c #269127", +"a% c #26BA28", +"b% c #26BB28", +"c% c #25BA27", +"d% c #25B927", +"e% c #24B926", +"f% c #23B726", +"g% c #23B625", +"h% c #009102", +"i% c #04B106", +"j% c #00A304", +"k% c #008F05", +"l% c #008104", +"m% c #B9B8B8", +"n% c #ACABAB", +"o% c #A5A4A4", +"p% c #A2A3A3", +"q% c #9D9E9D", +"r% c #9C9D9C", +"s% c #266E26", +"t% c #267426", +"u% c #26B728", +"v% c #25B828", +"w% c #25B827", +"x% c #25B728", +"y% c #24B727", +"z% c #24B626", +"A% c #23B526", +"B% c #23B426", +"C% c #008F02", +"D% c #008E02", +"E% c #00B204", +"F% c #008604", +"G% c #006D01", +"H% c #AAAAA9", +"I% c #A5A5A4", +"J% c #9C9C9C", +"K% c #266D26", +"L% c #259E27", +"M% c #25B628", +"N% c #24B627", +"O% c #24B527", +"P% c #24B427", +"Q% c #23B427", +"R% c #23B326", +"S% c #23B125", +"T% c #008D02", +"U% c #01BB05", +"V% c #007401", +"W% c #007E03", +"X% c #009206", +"Y% c #B3B2B3", +"Z% c #A9A9AA", +"`% c #A6A7A7", +" & c #A1A0A0", +".& c #9B9B9B", +"+& c #9A9A9A", +"@& c #258126", +"#& c #25B427", +"$& c #25B428", +"%& c #24B327", +"&& c #24B326", +"*& c #23B226", +"=& c #23B126", +"-& c #23B026", +";& c #22AF25", +">& c #008902", +",& c #007F04", +"'& c #AFAFB0", +")& c #ABABAA", +"!& c #A7A6A6", +"~& c #9F9FA0", +"{& c #9E9F9E", +"]& c #9D9D9D", +"^& c #9C9B9C", +"/& c #9A9A9B", +"(& c #99999A", +"_& c #256C25", +":& c #25A927", +"<& c #25B228", +"[& c #24B127", +"}& c #23AF26", +"|& c #23AE26", +"1& c #22AE25", +"2& c #22AC25", +"3& c #007002", +"4& c #B2B2B3", +"5& c #A5A6A6", +"6& c #A0A09F", +"7& c #9F9E9F", +"8& c #9A9999", +"9& c #999999", +"0& c #939693", +"a& c #259126", +"b& c #24B028", +"c& c #24AF27", +"d& c #24AE26", +"e& c #23AD26", +"f& c #23AC25", +"g& c #22AA25", +"h& c #008703", +"i& c #008602", +"j& c #05B00A", +"k& c #006A01", +"l& c #009106", +"m& c #AEAEAD", +"n& c #A4A4A3", +"o& c #A3A2A3", +"p& c #9D9E9E", +"q& c #9C9C9D", +"r& c #9C9B9B", +"s& c #999998", +"t& c #979797", +"u& c #979696", +"v& c #257925", +"w& c #24AD28", +"x& c #24AE27", +"y& c #24AD27", +"z& c #23AC26", +"A& c #23AB27", +"B& c #23AB26", +"C& c #22AB25", +"D& c #22A925", +"E& c #22A825", +"F& c #21A725", +"G& c #008503", +"H& c #007202", +"I& c #006400", +"J& c #007E04", +"K& c #AFAEAE", +"L& c #ABABAC", +"M& c #9A9B9B", +"N& c #989898", +"O& c #969696", +"P& c #246C25", +"Q& c #24A327", +"R& c #24AA28", +"S& c #23AA27", +"T& c #23A926", +"U& c #22A826", +"V& c #22A726", +"W& c #21A625", +"X& c #004A00", +"Y& c #009706", +"Z& c #006B01", +"`& c #AAABAA", +" * c #A7A8A8", +".* c #9C9D9D", +"+* c #9A999A", +"@* c #999898", +"#* c #979897", +"$* c #979697", +"%* c #959495", +"&* c #919392", +"** c #246B24", +"=* c #249126", +"-* c #24A927", +";* c #23A927", +">* c #23A827", +",* c #23A726", +"'* c #22A525", +")* c #21A425", +"!* c #219A25", +"~* c #004B00", +"{* c #009107", +"]* c #A1A2A2", +"^* c #A0A1A0", +"/* c #9B9C9B", +"(* c #9A9B9A", +"_* c #959596", +":* c #949594", +"<* c #939393", +"[* c #248025", +"}* c #23A627", +"|* c #23A727", +"1* c #23A626", +"2* c #22A626", +"3* c #22A426", +"4* c #22A325", +"5* c #219D24", +"6* c #217021", +"7* c #206820", +"8* c #008C05", +"9* c #A2A3A2", +"0* c #A2A1A2", +"a* c #A1A1A0", +"b* c #9F9E9E", +"c* c #9E9E9D", +"d* c #9B9B9C", +"e* c #969695", +"f* c #959595", +"g* c #939493", +"h* c #929292", +"i* c #247023", +"j* c #23A427", +"k* c #23A327", +"l* c #22A326", +"m* c #22A226", +"n* c #21A025", +"o* c #217622", +"p* c #216821", +"q* c #A09FA0", +"r* c #9D9C9D", +"s* c #939494", +"t* c #919292", +"u* c #236B23", +"v* c #239927", +"w* c #23A227", +"x* c #22A227", +"y* c #22A127", +"z* c #22A026", +"A* c #219F26", +"B* c #217F23", +"C* c #828282", +"D* c #A4A3A4", +"E* c #9FA09F", +"F* c #969796", +"G* c #949494", +"H* c #929192", +"I* c #909191", +"J* c #8F8F8F", +"K* c #236A23", +"L* c #238A25", +"M* c #239F26", +"N* c #229F27", +"O* c #229F26", +"P* c #218524", +"Q* c #838382", +"R* c #818282", +"S* c #808180", +"T* c #A8A8A9", +"U* c #9E9D9D", +"V* c #9B9A9B", +"W* c #999A9A", +"X* c #979798", +"Y* c #909090", +"Z* c #8E8F8F", +"`* c #237B24", +" = c #229E27", +".= c #229D26", +"+= c #218E25", +"@= c #216921", +"#= c #838383", +"$= c #818181", +"%= c #7F7F7F", +"&= c #006F02", +"*= c #A1A1A2", +"== c #A0A1A1", +"-= c #989897", +";= c #929393", +">= c #919192", +",= c #8E8E8F", +"'= c #8E8E8E", +")= c #227022", +"!= c #229B27", +"~= c #229B26", +"{= c #229225", +"]= c #216B21", +"^= c #718071", +"/= c #818182", +"(= c #A6A5A5", +"_= c #9D9D9E", +":= c #989797", +"<= c #929293", +"[= c #919291", +"}= c #909190", +"|= c #8D8D8D", +"1= c #226922", +"2= c #229626", +"3= c #229426", +"4= c #216E21", +"5= c #838384", +"6= c #818180", +"7= c #7F8080", +"8= c #7E7E7F", +"9= c #7D7D7D", +"0= c #A3A3A4", +"a= c #9E9F9F", +"b= c #999A99", +"c= c #989998", +"d= c #969697", +"e= c #969596", +"f= c #949393", +"g= c #929392", +"h= c #919191", +"i= c #8C8B8B", +"j= c #898A88", +"k= c #228D25", +"l= c #217222", +"m= c #838484", +"n= c #828382", +"o= c #818281", +"p= c #808080", +"q= c #7D7E7E", +"r= c #7D7D7C", +"s= c #9D9D9C", +"t= c #959594", +"u= c #949394", +"v= c #939292", +"w= c #8F9090", +"x= c #8E8F8E", +"y= c #8C8C8C", +"z= c #8B8B8B", +"A= c #8A8A8A", +"B= c #217422", +"C= c #848484", +"D= c #828283", +"E= c #818081", +"F= c #7E7E7E", +"G= c #7C7B7C", +"H= c #969595", +"I= c #959494", +"J= c #8F8F90", +"K= c #898989", +"L= c #858484", +"M= c #838483", +"N= c #807F7F", +"O= c #7C7C7C", +"P= c #7B7B7A", +"Q= c #7A7A79", +"R= c #9C9C9B", +"S= c #9B9B9A", +"T= c #929191", +"U= c #8F908F", +"V= c #888888", +"W= c #858584", +"X= c #828281", +"Y= c #7F7E7F", +"Z= c #7E7D7E", +"`= c #7D7C7D", +" - c #7B7B7B", +".- c #7A7A7A", +"+- c #797979", +"@- c #9A9A99", +"#- c #979898", +"$- c #949595", +"%- c #929291", +"&- c #908F8F", +"*- c #8E8E8D", +"=- c #8C8D8C", +"-- c #898A89", +";- c #878787", +">- c #858686", +",- c #858585", +"'- c #818080", +")- c #7B7C7C", +"!- c #7A7B7A", +"~- c #787878", +"{- c #9D9C9C", +"]- c #989798", +"^- c #959696", +"/- c #8A8B8A", +"(- c #868686", +"_- c #808081", +":- c #7F807F", +"<- c #7A7979", +"[- c #787979", +"}- c #777777", +"|- c #9B9C9C", +"1- c #949493", +"2- c #919090", +"3- c #8F8F8E", +"4- c #8C8C8D", +"5- c #898988", +"6- c #888787", +"7- c #828182", +"8- c #808181", +"9- c #7F7F80", +"0- c #7E7F7E", +"a- c #7D7D7E", +"b- c #7D7C7C", +"c- c #797879", +"d- c #777878", +"e- c #767676", +"f- c #969797", +"g- c #90908F", +"h- c #8D8D8E", +"i- c #89898A", +"j- c #7F7E7E", +"k- c #7E7E7D", +"l- c #7C7B7B", +"m- c #787877", +"n- c #757576", +"o- c #8E8D8D", +"p- c #8D8C8D", +"q- c #7A7A7B", +"r- c #787978", +"s- c #767576", +"t- c #757475", +"u- c #979796", +"v- c #898A8A", +"w- c #898889", +"x- c #787879", +"y- c #757575", +"z- c #747473", +"A- c #959695", +"B- c #939293", +"C- c #919091", +"D- c #8C8B8C", +"E- c #8A8989", +"F- c #878788", +"G- c #848585", +"H- c #787777", +"I- c #747474", +"J- c #737373", +"K- c #898888", +"L- c #878887", +"M- c #878686", +"N- c #848483", +"O- c #80807F", +"P- c #7C7D7D", +"Q- c #797A7A", +"R- c #787778", +"S- c #727272", +"T- c #888889", +"U- c #868586", +"V- c #848485", +"W- c #838282", +"X- c #777677", +"Y- c #767575", +"Z- c #747475", +"`- c #737473", +" ; c #717171", +".; c #8E8D8E", +"+; c #8D8D8C", +"@; c #8C8C8B", +"#; c #888788", +"$; c #797978", +"%; c #727171", +"&; c #707170", +"*; c #858685", +"=; c #828383", +"-; c #7F7F7E", +";; c #747575", +">; c #737372", +",; c #717271", +"'; c #707070", +"); c #6F7070", +"!; c #8D8E8D", +"~; c #8B8B8A", +"{; c #868786", +"]; c #858586", +"^; c #7A797A", +"/; c #747374", +"(; c #727373", +"_; c #707171", +":; c #6F6F70", +"<; c #6E6F6E", +"[; c #8D8C8C", +"}; c #8B8A8A", +"|; c #8A8A89", +"1; c #878786", +"2; c #7E7D7D", +"3; c #7C7C7D", +"4; c #7B7B7C", +"5; c #7B7A7A", +"6; c #757676", +"7; c #727172", +"8; c #717170", +"9; c #6E6F6F", +"0; c #6D6D6D", +"a; c #8A8B8B", +"b; c #888988", +"c; c #868685", +"d; c #757574", +"e; c #737273", +"f; c #727271", +"g; c #70706F", +"h; c #6F6E6F", +"i; c #6D6D6E", +"j; c #878687", +"k; c #848384", +"l; c #7C7C7B", +"m; c #767677", +"n; c #757474", +"o; c #6F6E6E", +"p; c #6D6E6E", +"q; c #868787", +"r; c #7A7B7B", +"s; c #757675", +"t; c #848383", +"u; c #828181", +"v; c #79797A", +"w; c #707071", +"x; c #6F6F6E", +"y; c #7B7C7B", +"z; c #807F80", +"A; c #7D7E7D", +"B; c #7C7D7C", +"C; c #7B7A7B", +"D; c #797878", +"E; c #030303", +" ", +" ", +" ", +" ", +" ", +" . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . ", +" . . . . . . . . + . . . . . . ", +" . . . . . . . + + + . . . . . . ", +" . . . . . . + + + . . . . . ", +" . . . . . . + @ + + . . . . . . ", +" . . . . . . . + + # + + . . . . . . ", +" . . . . . . + $ # + + + . . . . . ", +" % % % % % % % % % % % . . . . . . + + $ & * + + . . . . . . ", +" % % % % % % % % % % % % % % % % % % % % % % % . . . . . + = - ; > + + . . . . . ", +" % % % % % % % % % % % % % , ' ) ! ~ { ] ^ / ( % % % % % % . . . . . . + _ $ # : < + + + . . . . . . ", +" % % % % % % % % % % [ } | 1 2 3 4 5 6 7 8 9 0 a b c / d e f g % % % % . . . . . + + h - i j k * + + . . . . . ", +" % % % % % % % % l m n o p q r s t u v w x 5 y 7 z 9 A B ^ / C d D E F % % % % . . . . . . + G H # I J K L + + M . . . . . . ", +" % % % % % % N O P Q N R S T n U V W X Y Z v w ` , y 7 9 ...b +.( @.#.$.%.&.*.% % % . . . . . + =.-.- i j ;.>.,.M + + . . . . . ", +" % % % % % '.Q ).).!.!.~.{.).O R S m q ].^.| /.Z (.x 5 _.7 :.<.{ b c [.d #.f g }.*.|.% % % . . . . . + + + + + + + = 1.$ # j J 2.3.4.5.+ + . . . . . . ", +" % % % % 6.7.).~.!.8.9.0.9.a.b.c.d.e.l f.g.].h.i.u 3 j.` k.l.m.0 { ] n./ ( o.p.g q.r.s.t.% % % . . . . . + + + + u.v.w.x.y.z.A.B.-.- I J C.3.D.E.F.+ + + . . . . . ", +" % % % % o G.H.O I.a.0.J.J.K.J.J.L.a.M.).6.m o N.[ X O.P.Q.R., ' S.9 T.] b U.( @.D V.W.r.*.t.X.% % + + + + . . . . . . Y.Z.`. +.+++@+#+$+%+&+-.- i *+=+3.-+;+>+,+'++ + . . . . . ", +" % % % ].g.)+6.P ).9.J.K.!+~+~+{+]+^+/+b.I.N 6.m U ^.} t Z v (+_+y ) :+<+a b U.( [+D E }+&.|+1+2+3+3+3++ * 4+5+6+. . . . . 7+8+9+ +0+a+b+c+d+e+f+-.$ g+h+;.i+D.j+k+l+m+n++ + + . . . . . ", +" % % % % N.o G.N ).a.o+^+~+p+q+q+r+s+~+t+o+!.).'.T o ].[ u+v+w+Q.5 6 7 x+0 y+z+c A+d B+C+C+D+1+1+E+F+G+H+I+J+K+K+L+. . . . . M+N+9+O+P+Q+R+S+T+e+f+1.$ # j ;.2.-+U+V+W+X+Y+Z+`++ + + . . . . . ", +" % % % % @G.P c.9.t+.@+@@@#@#@#@q+$@%@J.9.).7.G.o &@[ | 1 v (.5 *@' =@0 { b c -@-@-@C+;@>@,@'@)@!@~@{@{@]@^@/@(@L+. . . . . _@:@<@P+.+++S+#+$+f+&+[@# *+J 2.-+}@k+|@1@2@Y+3@4@5@+ + + . . . . . ", +" % % % 6.).~.0.^+~+6@#@7@8@9@0@+@~+K.9.).O 6.o q ^.| a@v (.b@c@7 =@d@{ e@f@g@-@h@i@j@k@l@l@!@m@n@o@6+p@q@r@K+s@. . . . . t@u@O+P+v@w@x@T+y@f+z@$ A@j B@2.C@}@k+D@1@2@Y+Y+Y+E@F@@ + + . . . . . ", +" % % 6.Q !.G@^+$@H@#@8@I@9@#@+@~+J@9.!.N l f.q [ | /.K@w L@, l.:.9 M@z+c [.-@N@O@j@P@Q@R@)@~@n@o@p@S@p@T@/@(@U@. . . . . :@<@P+.+V@S+T+W@f+B.[@# I ;.C.3.U+k+|@X+Y+Y+Y+Y+Y+X@M + . . . . . ", +" % % % Y@!.9.^+Z@q+#@9@`@9@ #r+!+^+9.!.N .#+#q @###/.v $#` _.l.=@%#{ &#c ( -@-@*#j@=#l@R@!@m@-#o@;#p@6+>#K+s@,#. . . . . '#<@P+)#w@S+#+$+!#B.[@# j B@~#3.U+k+W+1@Y+2@Y+2@2@n++ + . . . . . ", +" % % % M.a.{#.@]#@@#@#@^#@@p+^+J.9.M.N l o /#[ u+u v w 5 y (#=@0 _#b :#/ d -@C+<#=#[#l@}#!@|#1#2#2#{@3#K+L+U@. . . . . u@<@P+.+V@S+#+y@4#B.[@# I J 2.3.}@k+W+1@Y+Y+Y+Y+5#M + . . . . . ", +" % % % 6#J.^+~++@7#q+H@p+]+{#G@8#).9#m o 0#[ t /.v $#5 y 7 x+0 M@b +.[.d a#C+b#c#[#l@d#)@|#e#f#g#h#i#i#,#j#k#. . . . . +P+.+w@S+T+y@l#B.[@g+j J 2.3.m#k+W+X+Y+Y+Y+Y+n#+ + . . . . . ", +" % % I.9./+K.!+~+~+~+.@K.J.8#{.N 6.f.q ].} u+u o#(+p#y 7 9 0 y+b +.A+d #.C+C+q#k@r#s#d#t#u#v#w#x#y#z#j#A#B#. . . . . +0+a+@+C#d+y@l#1.$ i *+J i+-+j+>+l+X+Y+Y+Y+3@5@+ . . . . . ", +" % % % !.9.o+{#{#D#^+E#0.F#G#O H..#o 0#W | t H#(.I#_+l.7 9 J#] K#U.( [+D g C+L#M#k@N#O#P#Q#Q#R#S#T#T#U#B#V#. . . . . P+v@a+@+c+d+!#z@-.- I W#=+i+-+j+X#l+X+Y+Y+Y+Y#+ + . . . . . ", +" % % d.!.8#b.9.L.o+9.!.I.).7..#f.U ].[ u+u Z#j.5 , 7 =@`# .] ^ $.$+$D @$C+D+#$$$%$&$*$=$*$-$;$>$Y.,$V#'$M+. . . . )$Q+w@S+T+W@f+&+-.A@I B@2.3.!$;+X#l+Y+2@Y+Y+~$+ . . . . . ", +" % % % P ).).!.!.{.M.).O H.6.{$U /#[ | 1 K@(.R.p#y 7 m.0 { ]$c ^$C B+f g q.1+/$($_$:$<$[$[$}$|$1$2$3$3$M+4$. . . . . a+b+c+d+y@l#1.[@# j =+~#-+U+V+|@1@Y+Y+Y+5$+ + . . . . . ", +" % % 6.R N N P O N '.6.m f.p 0#W | t u 6$7$` , l.) 9 0 ] 8$c A+d 9$$.}+&.1+1+0$a$b$c$d$d$1$e$f$g$h$i$t@N+. . . . . R+S+T+$+!#j$-.$ g+*+;.2.-+j+k+W+1@Y+Y+2@k$+ . . . . . ", +" l$% % m 6.S 6.6.G.S )+o q 0#^.m$i.u v (.R.n$y 7 =@0 { ] o$/ p$#.p.q$%.r$s$1+t$($u$v$w$x$x$y$z$A$B$B$C$u@<@. . . . x@C#d+y@l#z@[@# I B@D$i+D.m#>+E$X+2@Y+F$G$+ . . . . . ", +" % % p o )+o n @H$p N.].^.s i.u K@3 (+5 6 7 ) 9 T.] b I$( d e D g F *.s.1+J$K$L$L$M$N$O$P$Q$R$S$T$U$V$P+. . . . . T+W@%+&+-.$ i j ;.2.3.U+V+|@l+Y+Y+Y+W$+ + . . . . . ", +" % % % q q q q q /#].[ [ | t X$Y$3 (+5 , y 7 m.%#{ z+c / ( #.D $.W.&.*.Z$`$J$ %.%+%+%@%#%#%R$S$$%%%&%*%v@. . . . . $+!#4#1.[@# I =%-%;%>%,%X#|@X+Y+Y+2@'%+ . . . . . ", +" % % ^.].^.^.)%[ m$| i.t u v (.(.5 _+*@7 :+%#<+..b c ^$C #.f q$F r$!%~%{%J$J$]%^%/%/%/%/%(%_%:%<%[%x..+. . . . . y@j$1.[@}%|%1%+ + + + + 3@l+X+Y+2@2%M + . . . . . ", +" % % % | | X | ##Y a@u K@w+(.(+` p#y 3%) 9 0 a e@c / ( 4%5%$.6%&.r$s.7%8%9%J$0%a%b%c%c%d%e%e%f%g%x.h%i%@+. . . . 4#z@-.j%> + + + + k%X+Y+2@Y+l%+ + . . . . . ", +" % % t /.t X$1 Z Z v m%(+(+5 , y 3%=@z 0 { z+K#n%A+d #.D g o%p%|+~%{%q%r%s%t%u%v%w%x%y%y%z%A%B%B%C%D%c+. . . . . E%= @ + + + F%X+Y+Y+Y+G%+ . . . . . ", +" % % v 2 v v Z#o#(.(+(+L@p#c@y 7 =@x+~ { ] b I$/ H%#.D E I%&.r$s.t.8%r%J%s%K%L%M%M%N%O%P%Q%B%R%S%D%T%U%. . . . . V%+ + + + W%Y+Y+2@X%+ + . . . . ", +" % % (.$#j.w (+I#5 _+, _.' Y%=@9 0 { ] b c / Z%@.a#`%g &.*.|+ &`$8%r%.&+&K%@&#&$&%&&&%&*&=&-&;&= =.>&. . . . . + + + F.Y+2@Y+,&+ . . . . . ", +" % % ` 5 5 5 5 n$, y (#7 =@x+<.'&{ ] e@o$)&( @.B+!&E %.&.*.s.~&{&]&^&/&(&K%_&:&<&[&[&[&-&}&|&1&2&>&>&l#. . . . + + 3&Y+Y+Y+~$+ . . . . . ", +" % % % , , c@y y l.7 4&:.9 %#0 _#] b c / ( d #.D 5&}+&.*.s.6&7&]&r%.&8&9&0&_&a&b&c&c&d&|&e&f&2&g&h&i&j&. . . . + k&Y+Y+l&+ + . . . . ", +" % % (#3%l.Y%S.=@! z 9 0 { ] m&8$I$/ .$[+e D $.%.n&o&s. &`$p&q&r&+&s&t&u&_&v&w&x&y&z&A&B&C&D&E&F&G&H&. . . . . + I&Y+Y+J&+ . . . . . ", +" % % =@:+:+9 9 <.%#<+{ K&m&b c L&/ ( @.#.D $.g q.&.*. &7%8%]&J%M&(&N&t&O&_&P&Q&R&S&S&T&U&U&V&W&W&F.X&. . . . . + + Y&Y+Z&+ . . . . . ", +" % % % `#0 0 T. ._#K&B b f@c / `&.$+$ *D $.g F &.|+s.t.{&8%.*.&+*@*#*$*%*&***=*-*;*>*,*V&V&'*)*!*~*3+. . . . . + l&{*+ + . . . . . ", +" % % { { K&] ] B b 8$c I$[.d d #.e $.E 6%q.&.]*^*~&X.q%J%/*(*9&N&$*_*:*<***[*}*|*1*2*3*3*4*5*6*7*3+% . . . . + 8*,&+ . . . . ", +" % % b &#B b n.c U./ A+( H%o.e D $.g W.F 9*0*a*~%b*c*r%d*+&9&N&t&e*f*g*h***i*j*j*k*l*l*m*n*o*p*7*% % . . . . + F%G%+ . . . . ", +" % % c c +.+.U./ [.Z%C d #.D !&$.@$o%&.9**.a*q*X.c*r*J%+&(&@*t&O&f*s*<*t***u*v*w*x*y*z*A*B*p*p*C*% % . . . . + 4@+ + . . . . . ", +" % % / A+( H%d [+o. *D D $.5&W.D*&.9*s.^*E*{%8%]&^&.&(&@*N&F*_*G*<*H*I*J*K*L*M*N*O*O*P*p*p*Q*R*S*% . . . . . + n#+ . . . . . ", +" % % d d d T*#.9$D `%$.E g F n&r.*.s.~%`${%U*J%^&V*W*@*X*F*f*G*<*h*I*Y*Z*K*`* = =.=+=@=p*#=C*$=%=% . . . . . + &=+ . . . . ", +" % % D 9$D !&p.f q$@$%.F }.&.9**===~%`$8%]&.*/*+&9&s&-=F*_*G*<*;=>=Y*,='=K*)=!=~={=]=p*^=#=/=S*%=% . . . . . + M + . . . . ", +" % % % $.$.5&(=g W.F }.&.*.s$s.~%E*7&8%_=J%r&(*9&9&:=O&e*%*<*<=[=}=J*'=|=K*1=2=3=4=p*p*5=C*6=7=8=9=% . . . . + + + . . . . ", +" % % F o%F n&0=&.&.s$*.s. &q*`$a=]&r*J%.&+&b=c=t&d=e=:*f=g=h=Y*J*'=|=i=j=1=k=l=p*p*m=n=o=p=%=q=r=% . . . . + + . . . . . ", +" % % 0=o&*.r$*.]*s.Z$^*~&`${&8%s=r%.&V*+&9&@*t&O&e*t=u=v=h=h=w=x=|=y=z=A=1=B=p*p*C=D=R*E=%=F=9=G=% . . . . + + . . . . . ", +" % % 0*0*s.Z$s.~%t.`$`$8%U*]&J%.&.&(*(&9&N&t&O&H=I=<*h*H*I*J='=|=y=z=A=K=1=@=p*L=M=C*6=N=F=9=O=P=Q=. . . . + + . . . . ", +" % % % ~%~%~&E*{%b*8%]&r*.*R=.&S=+&9&N&t&d=e*f*G*<*g=T=}=U=,=|=y=z=A=K=V=@=p*W=5=C*X=p=Y=Z=`= -.-+-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" % % {%a=8%c*8%]&q&J%/*.&/&@-9&@*#-$*O&_*$-u=<*%-h=Y*&-'=*-=-z=A=--V=;->-,-C=#=o='-%=F=r=)-!-+-~-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" % % U*]&]&{-R=^&.&(*(*b=9&c=]-#-O&^-%*:*g*h*t*h=J=J*'=|=y=z=/-K=V=;-(-,-m=#=/=_-:-8=9=)- -<-[-}-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" % % |-/*/*.&/&/&+&9&s&s&]-:=$*O&e=G*1-<*;=%-2-U=3-'=|=4-z=A=K=5-6-(-,-C=#=7-8-9-0-a-b- -.-c-d-e-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" % % +&+&W*W*9&s&N&N&]-t&f-e*f*:*1-1-g=H*I*Y*g-3-h-|=y=z=A=i-V=;-(-,-C=#=C*$=p=j-k-O=l-P=+-m-}-n-. . . . . . . . . . . . . . . . . . . . . . . . . ", +" % % % 9&N&N&-=]-t&t&O&_*f*$-s*<*;=h*T=h=Y*J*'=o-p-y=z=A=5-V=;-(-,-C=#=C*$=p=%=q=r=)-q-+-r-}-s-t-. . . . . . . . . . . . . . . . . . ", +" % % t&t&u-f-O&^-f*%*G*G*<*h*h*%-Y*Y*J*Z*o-|==-z=z=v-w-V=;-(-,-C=#=C*E=p=%=F=r=G=.-<-x-}-e-y-z-. . . . . . . . . . . . . . . . . . ", +" % % ^-_*A-f*t=G*1-<*;=B-h*h=C-Y*J=x='=|=p-D-z=A=E-V=F-;-(-G-C=#=7-$=p=%=q=`=l- -.-[-H-e-n-I-J-. . . . . . . . . . . . . . . . . ", +" % % G*G*1-g*<*<*<=h*h=I*Y*Y*g-J*'=o-|=y=i=A=v-K=K-L-M->-L=N-D=C*$=O-%=F=P-O= -Q-+-R-}-y-I-J-S-. . . . . . . . . . . . . . . . ", +" % % g=g=<=h*h*%-h=C-}=Y*J*,='=|=|=y=y=z=A=E-T-V=;-(-U-V-C=W-C*S*p=Y=Z=r=O= -Q=+-m-X-Y-Z-`-S- ;. . . . . . . . . . . . . . . . ", +" % % H*T=h=h=Y*Y*w=J*3-,=.;h-+;y=@;z=A=E-w-V=#;(-(-,-C=#=D=/='-p=%=q=r=O= -.-$;R-}-s-Z-`-S-%;&;. . . . . . . . . . . . . ", +" % % % w=J=&-,=J*'='=o-|=y=D-z=z=A=--w-V=V=;-(-*;W=N-=;D=o=S*:--;Z=P-)- -Q=[-d-X-e-;;I->;,;';);. . . . . . . . . . . ", +" % % Z*'='='=!;|=+;y=i=z=~;A=--K=K-F-;-{;];,-C=#=D=R*$=p=%=j-Z=O=O=!-^;x-~-}-s-I-/;(;,;_;:;<;. . . . . . . . . ", +" % % |=|=4-[;D-i=z=/-};|;K=K-K-#;1;1;(-,-L=#=Q*C*o='-%=%=F=2;3;4;5;Q-[-R-e-6;t-z-(;7;8;:;9;0;. . . . . . . ", +" % % i=i=z=z=a;A=K=|;b;T-V=6-;-{;c;,-C=C=Q*D=C*$=p=:-8=q=9=O= -.-+-[-}-}-y-d;/;e;f;_;g;h;i;0;. . . . . ", +" % % A=v-i-K=K=K=b;V=;-j;(-(-*;,-C=k;#==;R*$=_-p=%=F=9=r=l; -^;+-~-d-m;s-n;`-J-,;8;);o;p;0;0;. . . 0;% % ", +" % % V=V=T-V=V=F-j;q;(-];,-W=C=m=#=n=C*$=8-N=%=0-Z=`=O= -r;Q-+-m-}-e-s;I-J-e;7;';);o;0;0;0;0;0;0;0;0;% % ", +" % % ;-1;M-q;(-(-*;,-,-C=m=t;#=C*/=u;E=p=%=-;F=9=P-)- -.-v;~-~-m;e-y-I-J-S- ;w;);x;0;0;0;0;0;0;0;0;0;% % ", +" % % (-U-*;,-W=G-C=m=#=#=n=C*$=$=p=p=%=-;F=a-9=O=y;.-Q-[-% % % % % % % % % % % % % % % % % % % % % 0;% % ", +" % % W=C=m=m=N-#=#=Q*X=o=$=E=p=z;%=-;2;2;P-O= -P=% % % % % % % % % % % % % % % % % % % % % % % % % ", +" % % #=#=n=C*C*$=$=6=6=p=p=%=0-F=k-9=b-O= -% % % % % % % % % % % ", +" % % $=$=$=8-p=p=p=z;%=0--;q=9=9=O=O=% % % % % % % ", +" % % p=p=z;:-%=%=j-F=k-A;9=3;O=% % % % % % % ", +" % % Y=Y=F=F=F=k-9=O=B;G=l;% % % % % % ", +" % % 9=P-9=`=O=O= - -% % % % % % ", +" % % 4;l- - - -P=% % % % % % ", +" % % C;.-.-Q-% % % % % ", +" % % $;D;% % % % % ", +" % % % % % % % ", +" % % % % % ", +" % % % ", +" E;% ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/src/Mod/Surfaces/Icons/CMakeLists.txt b/src/Mod/Surfaces/Icons/CMakeLists.txt new file mode 100644 index 0000000000..5f02f4d4a9 --- /dev/null +++ b/src/Mod/Surfaces/Icons/CMakeLists.txt @@ -0,0 +1,21 @@ +INSTALL( + FILES + BorderIco.png + BorderIco.xpm + ConvertIco.png + ConvertTo4SidesIco.xpm + Ico.xcf + IsoCurveIco.png + IsoCurveIco.xpm + SliceIco.xcf + BorderIco.xcf + ConvertIco.xcf + Ico.png + Ico.xpm + IsoCurveIco.xcf + SliceIco.png + SliceIco.xpm + DESTINATION + Mod/Surfaces/Icons +) + diff --git a/src/Mod/Surfaces/Icons/ConvertIco.png b/src/Mod/Surfaces/Icons/ConvertIco.png new file mode 100644 index 0000000000000000000000000000000000000000..d9fd46d2245b3fa5447fc10688b47ed50499f3d7 GIT binary patch literal 6879 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 literal 0 HcmV?d00001 diff --git a/src/Mod/Surfaces/Icons/ConvertIco.xcf b/src/Mod/Surfaces/Icons/ConvertIco.xcf new file mode 100644 index 0000000000000000000000000000000000000000..31ce0916095c77ae41d4505d08080c52b4dd5bc9 GIT binary patch literal 62189 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Π6n!v)YtFbi*_P$-ImRpH?1GQy*wsfFAzI;*8T&=<_HQtcz}J{y$dC8 zt3%0~Hf~t|HWol(Fk{dO2-%FXO_gmjhDlPhU?kp*#Ov063&&mi2~X zvS>-Yg+;GhyQa4CZ;}2)rpJMLJUj)C0xR5jV05LAD1Fn$jglOWOTR~k6M};HZAbI9 zqxrbn=J3pN&iKC=nol3ZInXdNt`(#(#Nl-T??}wcVczZ&k;8=IQ3eb2?y7(Kv zaKJ&C(p>2Pr59Jzaaf>=~9t!OoKzy_zam@pCpi9v4T|dtI!Fg!j+*+ zYSanHPa)RYEaQ^v$aCrk#7SAcQoF#dEz?0cK(1dIwx~vJwTfhPeE&;Y(1%btd z8vYFdYy~s&&xkGF2ZN*k&V?*PKv-Jrx)nSRPz&?t1yyeON;Jsw`N`I7TMo06a))9B zZgcn|b{cnQAfv1l5@`qDKmh$Ho^WWu3dmwDsY6DO<;^kNhb@8xE`TVLGOII1OjT}q z6`+0|1sdXQni4EKfbn?_GmgKENqrt=0@9%E#)^lS2q04lP#V%8C(59(!+CP7sRRL9 zRn|;`ZI0sM>Bv;_-w8zuAsiY^Lk+{!ENzsE@QeM7=?uRXgppZ>eQYbSWCRSv6^o=y zv~m`L=)@B4rksq!*m#(X-zn$}_ngytnA_zTU<~agIMeM?XpoEP!gDrbF2c*gp9|r- zb0PE&l3G_B|1j+Q3*emtCo;UuPQe9%e+oi$-|ySm6m3S(7hHqAWY&(GF5u2A&e&eXLHM4BwmT47(QQd+0uRZs2tNxou_&v; z%}EXz#4-pVIj{I0C3|a!yVgmdM*?X%*Im+K(b)D15L=D7TEqJkuG%4}++OZvhl%(+ ztZcTqcFFL*CJTIHQ%xG>x4DHWk9~vdvw;&e9ksD?dYr47>@87%E81g*ycCZ7KlZLB zxogC|A)WM6U2(@K_FBY!++9Dy<1Vc0rY*@J5%#&{I32pmy8|@1+#+@1N+LSJ!i6@- zgU!9eEdmu_S#TLeN{hqNDWJ}oOc37=`sS|DN)wbt7jKY3a8Q9B zglA+ROV{@7AWvX)QWiPJAq$zP=ok|R)`NXSK43Zn?^)~;y9IhX6czx_%Ubx7J$S_e zyIS88-Y#X~1@`O!_=l5X;WrzI4=I<~-3d$f)D{ct1Y8lmp@BQ^NSy!eu_eU21FT_N z<5F=`n5cM5FP5Yvm4i5*MR!BHvuw8&3ay5BE1hNGPYX9oY);vJg@}1Mw;%*RcA
^!W$ocK4kFow%BBF3w0@;61%TvPcpd>r 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 q?I0qa0@{AH=BD c #00BDA9", +", c #00BCA8", +"' c #00BBA6", +") c #00B9A6", +"! c #00B8A5", +"~ c #00B7A4", +"{ c #00B6A3", +"] c #00B4A2", +"^ c #00B3A0", +"/ c #00B19E", +"( c #00AD9B", +"_ c #00A997", +": c #00A796", +"< c #00A794", +"[ c #00A594", +"} c #00C2AD", +"| c #00C1AD", +"1 c #00C0AC", +"2 c #00BFAB", +"3 c #00BDAA", +"4 c #00BDA8", +"5 c #00BBA7", +"6 c #00BAA6", +"7 c #00B9A5", +"8 c #00B6A4", +"9 c #00B4A1", +"0 c #00AE9B", +"a c #00A795", +"b c #00A694", +"c c #00A493", +"d c #00C3AE", +"e c #00C3AF", +"f c #00C4AE", +"g c #00C2AE", +"h c #00C0AB", +"i c #00BEAB", +"j c #00BAA5", +"k c #00B7A3", +"l c #00B09C", +"m c #00AB9A", +"n c #00A996", +"o c #00A896", +"p c #00A593", +"q c #00A392", +"r c #00A291", +"s c #00C4AF", +"t c #00C5B0", +"u c #00BEAA", +"v c #00B5A1", +"w c #00B29E", +"x c #00B19D", +"y c #00A090", +"z c #00C3AD", +"A c #00C6B1", +"B c #00C6B0", +"C c #00C5B1", +"D c #00C5AF", +"E c #00BCA9", +"F c #00BCA7", +"G c #00B8A4", +"H c #00B3A1", +"I c #00AD9A", +"J c #00A391", +"K c #00A190", +"L c #00A08F", +"M c #00C7B2", +"N c #00C8B2", +"O c #00C6B2", +"P c #00C4B0", +"Q c #00BFAA", +"R c #00B7A5", +"S c #00AC99", +"T c #00A494", +"U c #009E8E", +"V c #00C1AC", +"W c #00C8B4", +"X c #00C9B4", +"Y c #00C9B3", +"Z c #00C8B3", +"` c #00B29F", +" . c #00AF9D", +".. c #00A290", +"+. c #00A18F", +"@. c #009F8E", +"#. c #00C7B1", +"$. c #00CAB5", +"%. c #00CBB6", +"&. c #00CBB5", +"*. c #00C9B5", +"=. c #00C7B3", +"-. c #00BBA8", +";. c #00BAA7", +">. c #00AA99", +",. c #00A895", +"'. c #009D8C", +"). c #00C0AD", +"!. c #00CCB6", +"~. c #00CAB4", +"{. c #009E8C", +"]. c #00CAB6", +"^. c #00CEB7", +"/. c #00CDB8", +"(. c #00CDB7", +"_. c #00AB98", +":. c #00A998", +"<. c #009E8D", +"[. c #009C8B", +"}. c #009A8B", +"|. c #00CFB8", +"1. c #00A695", +"2. c #00CEB8", +"3. c #00BEA9", +"4. c #00AD9C", +"5. c #00A393", +"6. c #009B8B", +"7. c #009989", +"8. c #00AB7F", +"9. c #009D8D", +"0. c #009888", +"a. c #00AA7F", +"b. c #009F8D", +"c. c #009B8A", +"d. c #009787", +"e. c #00A97E", +"f. c #00A97D", +"g. c #00B6A2", +"h. c #009A8A", +"i. c #009887", +"j. c #009686", +"k. c #00A87C", +"l. c #00A77C", +"m. c #00BF7D", +"n. c #00A67B", +"o. c #00A67A", +"p. c #00B09E", +"q. c #00A897", +"r. c #009889", +"s. c #009685", +"t. c #009484", +"u. c #00A57A", +"v. c #00BE7D", +"w. c #00BD7C", +"x. c #00A579", +"y. c #00A479", +"z. c #00A08E", +"A. c #009A89", +"B. c #009988", +"C. c #009687", +"D. c #009384", +"E. c #00BC7B", +"F. c #00B67A", +"G. c #00A378", +"H. c #00AC9B", +"I. c #009D8B", +"J. c #009585", +"K. c #009283", +"L. c #00C1AB", +"M. c #00B17A", +"N. c #00BB7A", +"O. c #00B77A", +"P. c #00A778", +"Q. c #00A277", +"R. c #00A177", +"S. c #00BBA4", +"T. c #00B5A3", +"U. c #00A292", +"V. c #00A379", +"W. c #00BA78", +"X. c #00B878", +"Y. c #00AC78", +"Z. c #00A075", +"`. c #009E74", +" + c #009C8C", +".+ c #009584", +"++ c #009383", +"@+ c #009183", +"#+ c #009081", +"$+ c #00A278", +"%+ c #00A178", +"&+ c #00B778", +"*+ c #00B978", +"=+ c #00B777", +"-+ c #00B076", +";+ c #009D73", +">+ c #009586", +",+ c #009182", +"'+ c #00A076", +")+ c #00AD76", +"!+ c #00B877", +"~+ c #00B876", +"{+ c #00B676", +"]+ c #00B576", +"^+ c #00B175", +"/+ c #00A274", +"(+ c #009C72", +"_+ c #00A17C", +":+ c #009483", +"<+ c #008F81", +"[+ c #008E7F", +"}+ c #00AC75", +"|+ c #00B776", +"1+ c #00B575", +"2+ c #00B475", +"3+ c #00B375", +"4+ c #00B174", +"5+ c #00A773", +"6+ c #009C71", +"7+ c #009A71", +"8+ c #009970", +"9+ c #009485", +"0+ c #009082", +"a+ c #008F80", +"b+ c #001C00", +"c+ c #009F75", +"d+ c #009E75", +"e+ c #009F74", +"f+ c #00AC74", +"g+ c #00B875", +"h+ c #00B675", +"i+ c #00B374", +"j+ c #00B073", +"k+ c #00AA72", +"l+ c #009C70", +"m+ c #00996F", +"n+ c #00986E", +"o+ c #008D7F", +"p+ c #008C7D", +"q+ c #005F00", +"r+ c #001E00", +"s+ c #00A573", +"t+ c #00A974", +"u+ c #00AD74", +"v+ c #00B074", +"w+ c #00B574", +"x+ c #00B774", +"y+ c #00B474", +"z+ c #00B273", +"A+ c #00B072", +"B+ c #00AF72", +"C+ c #00AE72", +"D+ c #00AB71", +"E+ c #00A06F", +"F+ c #00976E", +"G+ c #00976D", +"H+ c #00966D", +"I+ c #00AA97", +"J+ c #008D7E", +"K+ c #008B7C", +"L+ c #006D00", +"M+ c #007F00", +"N+ c #009200", +"O+ c #00A201", +"P+ c #00B302", +"Q+ c #039D0A", +"R+ c #003B00", +"S+ c #003A00", +"T+ c #00BA75", +"U+ c #00BA74", +"V+ c #00B974", +"W+ c #00B674", +"X+ c #00B573", +"Y+ c #00B373", +"Z+ c #00B272", +"`+ c #00B071", +" @ c #00AD71", +".@ c #00AB70", +"+@ c #00AA70", +"@@ c #00A36E", +"#@ c #00986D", +"$@ c #00956C", +"%@ c #009181", +"&@ c #006600", +"*@ c #007D00", +"=@ c #009500", +"-@ c #00AC00", +";@ c #00C100", +">@ c #00D201", +",@ c #00D601", +"'@ c #00D402", +")@ c #00D202", +"!@ c #00D003", +"~@ c #00CD02", +"{@ c #00CB03", +"]@ c #00BA73", +"^@ c #00B873", +"/@ c #00B773", +"(@ c #00B673", +"_@ c #00B473", +":@ c #00B372", +"<@ c #00AF71", +"[@ c #00AE70", +"}@ c #00AC6F", +"|@ c #00AA6F", +"1@ c #00A86F", +"2@ c #00A56E", +"3@ c #009B6D", +"4@ c #00946A", +"5@ c #00936A", +"6@ c #009269", +"7@ c #009F8F", +"8@ c #00998A", +"9@ c #008F7F", +"0@ c #008E7E", +"a@ c #008B7D", +"b@ c #00897A", +"c@ c #009900", +"d@ c #00B300", +"e@ c #00CE00", +"f@ c #00E100", +"g@ c #00E101", +"h@ c #00DE01", +"i@ c #00DC01", +"j@ c #00DA01", +"k@ c #00D801", +"l@ c #00D502", +"m@ c #00D302", +"n@ c #00D102", +"o@ c #00CE02", +"p@ c #003A01", +"q@ c #00B872", +"r@ c #00B772", +"s@ c #00B672", +"t@ c #00B572", +"u@ c #00B472", +"v@ c #00B271", +"w@ c #00B171", +"x@ c #00B070", +"y@ c #00AE6F", +"z@ c #00AB6F", +"A@ c #00A96F", +"B@ c #00A76E", +"C@ c #00A66E", +"D@ c #00A56D", +"E@ c #00A06C", +"F@ c #00956A", +"G@ c #009168", +"H@ c #009067", +"I@ c #008D7D", +"J@ c #008C7C", +"K@ c #008A7B", +"L@ c #00887A", +"M@ c #007100", +"N@ c #008E00", +"O@ c #00AD01", +"P@ c #00C801", +"Q@ c #00E301", +"R@ c #00E401", +"S@ c #00E500", +"T@ c #00E400", +"U@ c #00E201", +"V@ c #00E001", +"W@ c #00DB01", +"X@ c #00D902", +"Y@ c #00D702", +"Z@ c #00CF02", +"`@ c #00CD03", +" # c #02CB08", +".# c #00B871", +"+# c #00B671", +"@# c #00B471", +"## c #00B270", +"$# c #00AF70", +"%# c #00AA6E", +"&# c #00A86E", +"*# c #00A36D", +"=# c #00A36C", +"-# c #00A16B", +";# c #009B69", +"># c #009267", +",# c #008F66", +"'# c #008E66", +")# c #008B7B", +"!# c #008779", +"~# c #009C01", +"{# c #00C201", +"]# c #00D401", +"^# c #00DD01", +"/# c #00DF01", +"(# c #00E600", +"_# c #00E800", +":# c #00DC02", +"<# c #00D701", +"[# c #00CF03", +"}# c #00CC02", +"|# c #00C903", +"1# c #00B670", +"2# c #00B570", +"3# c #00B470", +"4# c #00B370", +"5# c #00B26F", +"6# c #00B16F", +"7# c #00AF6F", +"8# c #00AE6E", +"9# c #00AC6E", +"0# c #00AB6E", +"a# c #00A96E", +"b# c #00A66D", +"c# c #00A56C", +"d# c #00A36B", +"e# c #00A26A", +"f# c #00A169", +"g# c #009F69", +"h# c #009668", +"i# c #008E65", +"j# c #008C64", +"k# c #009080", +"l# c #00877A", +"m# c #008678", +"n# c #006400", +"o# c #00C301", +"p# c #00DA02", +"q# c #00E700", +"r# c #00EA00", +"s# c #00CA03", +"t# c #003900", +"u# c #00B36F", +"v# c #00B16E", +"w# c #00AF6E", +"x# c #00AD6E", +"y# c #00A96D", +"z# c #00A86D", +"A# c #00A76C", +"B# c #00A069", +"C# c #009D68", +"D# c #008D65", +"E# c #008A7A", +"F# c #008677", +"G# c #008600", +"H# c #00D802", +"I# c #00E801", +"J# c #00CC03", +"K# c #01C706", +"L# c #00B36E", +"M# c #00B06E", +"N# c #00AB6D", +"O# c #00AA6D", +"P# c #00A66B", +"Q# c #00A66C", +"R# c #00A46B", +"S# c #00A16A", +"T# c #009F68", +"U# c #009466", +"V# c #008D64", +"W# c #008B64", +"X# c #009282", +"Y# c #008477", +"Z# c #008475", +"`# c #4D0000", +" $ c #970000", +".$ c #750000", +"+$ c #520000", +"@$ c #300000", +"#$ c #0E0000", +"$$ c #00B501", +"%$ c #00D602", +"&$ c #00E200", +"*$ c #00C703", +"=$ c #00B26D", +"-$ c #00B16D", +";$ c #00AF6D", +">$ c #00AD6D", +",$ c #00AC6C", +"'$ c #00AB6C", +")$ c #00A96C", +"!$ c #00A86B", +"~$ c #00A36A", +"{$ c #00A269", +"]$ c #009F67", +"^$ c #009C67", +"/$ c #00897B", +"($ c #008578", +"_$ c #008476", +":$ c #008375", +"<$ c #A70000", +"[$ c #FF0000", +"}$ c #EA0000", +"|$ c #BE0000", +"1$ c #900000", +"2$ c #5E0000", +"3$ c #200000", +"4$ c #007700", +"5$ c #00D002", +"6$ c #00C803", +"7$ c #00B06D", +"8$ c #00AE6D", +"9$ c #00AE6C", +"0$ c #00AD6C", +"a$ c #00A96B", +"b$ c #00A76B", +"c$ c #00A56A", +"d$ c #00A369", +"e$ c #009565", +"f$ c #008B63", +"g$ c #008778", +"h$ c #008577", +"i$ c #008376", +"j$ c #008274", +"k$ c #1B0000", +"l$ c #F10000", +"m$ c #FE0000", +"n$ c #FD0000", +"o$ c #DF0000", +"p$ c #A00000", +"q$ c #640000", +"r$ c #270000", +"s$ c #00AB01", +"t$ c #00DB02", +"u$ c #00C603", +"v$ c #05BB0D", +"w$ c #003901", +"x$ c #003800", +"y$ c #00AF6C", +"z$ c #00AC6B", +"A$ c #00AB6B", +"B$ c #00AA6B", +"C$ c #00A66A", +"D$ c #00A469", +"E$ c #009E67", +"F$ c #009D66", +"G$ c #008D63", +"H$ c #008B62", +"I$ c #009786", +"J$ c #008374", +"K$ c #008172", +"L$ c #6F0000", +"M$ c #FC0000", +"N$ c #FB0000", +"O$ c #FA0000", +"P$ c #F80000", +"Q$ c #E00000", +"R$ c #A30000", +"S$ c #4C0000", +"T$ c #050000", +"U$ c #00D101", +"V$ c #00D901", +"W$ c #00C503", +"X$ c #00C303", +"Y$ c #003801", +"Z$ c #00AE6B", +"`$ c #00AD6B", +" % c #00AA6A", +".% c #00A86A", +"+% c #00A76A", +"@% c #00A669", +"#% c #00A569", +"$% c #00A268", +"%% c #00A168", +"&% c #00A067", +"*% c #009664", +"=% c #008A62", +"-% c #009788", +";% c #008173", +">% c #007F72", +",% c #040000", +"'% c #D50000", +")% c #FC0001", +"!% c #F90000", +"~% c #F90100", +"{% c #F70000", +"]% c #F60000", +"^% c #F50000", +"/% c #F40000", +"(% c #E50000", +"_% c #9A0000", +":% c #400000", +"<% c #00A401", +"[% c #00C604", +"}% c #00C404", +"|% c #00C103", +"1% c #00AC6A", +"2% c #00AB6A", +"3% c #00AB69", +"4% c #00A969", +"5% c #00A869", +"6% c #00A769", +"7% c #00A568", +"8% c #009C65", +"9% c #008F63", +"0% c #008E80", +"a% c #008174", +"b% c #490000", +"c% c #FC0100", +"d% c #F70100", +"e% c #F30100", +"f% c #F30000", +"g% c #F20000", +"h% c #F10101", +"i% c #B80000", +"j% c #420000", +"k% c #006A00", +"l% c #00CC01", +"m% c #00D501", +"n% c #00CE03", +"o% c #00C003", +"p% c #003701", +"q% c #00AA69", +"r% c #00A468", +"s% c #00A368", +"t% c #00A167", +"u% c #009D65", +"v% c #009864", +"w% c #008961", +"x% c #008679", +"y% c #008072", +"z% c #007E72", +"A% c #007D70", +"B% c #B90000", +"C% c #F50100", +"D% c #F30001", +"E% c #F30101", +"F% c #F20100", +"G% c #F10100", +"H% c #EF0000", +"I% c #EE0000", +"J% c #ED0101", +"K% c #440000", +"L% c #00A101", +"M% c #00C902", +"N% c #00C403", +"O% c #00C104", +"P% c #00BF04", +"Q% c #03BD0A", +"R% c #003601", +"S% c #00A968", +"T% c #00A868", +"U% c #00A768", +"V% c #00A668", +"W% c #00A266", +"X% c #009E66", +"Y% c #009B64", +"Z% c #009063", +"`% c #008273", +" & c #007E71", +".& c #007D6F", +"+& c #280000", +"@& c #F70001", +"#& c #F60100", +"$& c #F40101", +"%& c #F00100", +"&& c #EE0100", +"*& c #ED0100", +"=& c #ED0000", +"-& c #EB0100", +";& c #450000", +">& c #00C204", +",& c #00BF03", +"'& c #00BE03", +")& c #00BB04", +"!& c #00A667", +"~& c #00A567", +"{& c #00A467", +"]& c #00A367", +"^& c #00A066", +"/& c #00A166", +"(& c #009E65", +"_& c #009B63", +":& c #009A63", +"<& c #008A61", +"[& c #008861", +"}& c #008879", +"|& c #008275", +"1& c #008073", +"2& c #007B6F", +"3& c #9B0000", +"4& c #F90001", +"5& c #F40100", +"6& c #F20001", +"7& c #F00001", +"8& c #EF0100", +"9& c #ED0001", +"0& c #EC0001", +"a& c #EB0001", +"b& c #EA0101", +"c& c #E90001", +"d& c #E80001", +"e& c #460000", +"f& c #00A801", +"g& c #00C203", +"h& c #00C004", +"i& c #00BE04", +"j& c #00BC04", +"k& c #00BA05", +"l& c #003501", +"m& c #00A466", +"n& c #00A366", +"o& c #009F65", +"p& c #009C64", +"q& c #009462", +"r& c #008960", +"s& c #008760", +"t& c #007C6F", +"u& c #007B6D", +"v& c #007A6C", +"w& c #150000", +"x& c #F60101", +"y& c #F40001", +"z& c #F00000", +"A& c #EF0101", +"B& c #EC0000", +"C& c #EA0100", +"D& c #E90100", +"E& c #E70001", +"F& c #E70101", +"G& c #E40100", +"H& c #AB0000", +"I& c #007A00", +"J& c #00CB02", +"K& c #00CA02", +"L& c #00C802", +"M& c #00C304", +"N& c #00BA04", +"O& c #00B805", +"P& c #00A465", +"Q& c #00A365", +"R& c #00A165", +"S& c #00A065", +"T& c #009A64", +"U& c #009D64", +"V& c #008D61", +"W& c #008576", +"X& c #007D71", +"Y& c #007C70", +"Z& c #007B6E", +"`& c #007A6D", +" * c #00796C", +".* c #010000", +"+* c #7D0000", +"@* c #EB0000", +"#* c #E80100", +"$* c #E70000", +"%* c #E70100", +"&* c #E60100", +"** c #E40101", +"=* c #E30100", +"-* c #E30101", +";* c #DD0000", +">* c #770000", +",* c #00B801", +"'* c #00BD04", +")* c #00B904", +"!* c #00B604", +"~* c #03B60B", +"{* c #003401", +"]* c #009C63", +"^* c #009363", +"/* c #008962", +"(* c #009963", +"_* c #009962", +":* c #009762", +"<* c #00875F", +"[* c #00786B", +"}* c #0C0000", +"|* c #E30000", +"1* c #EE0001", +"2* c #EC0100", +"3* c #E80101", +"4* c #E60000", +"5* c #E40000", +"6* c #E20101", +"7* c #E10101", +"8* c #E00001", +"9* c #E00101", +"0* c #AC0000", +"a* c #1A0000", +"b* c #008F01", +"c* c #00B705", +"d* c #00B505", +"e* c #00B305", +"f* c #003001", +"g* c #002100", +"h* c #009B88", +"i* c #009A62", +"j* c #009862", +"k* c #009861", +"l* c #009060", +"m* c #00855E", +"n* c #00776A", +"o* c #00766A", +"p* c #630000", +"q* c #EC0101", +"r* c #EA0001", +"s* c #E90000", +"t* c #E80000", +"u* c #E60101", +"v* c #E50100", +"w* c #E10000", +"x* c #DF0100", +"y* c #DE0001", +"z* c #D00000", +"A* c #006800", +"B* c #00B704", +"C* c #00B504", +"D* c #00B204", +"E* c #008C02", +"F* c #008860", +"G* c #009361", +"H* c #009961", +"I* c #009761", +"J* c #009760", +"K* c #00895F", +"L* c #008C7E", +"M* c #007F71", +"N* c #00786C", +"O* c #007669", +"P* c #D40000", +"Q* c #EF0001", +"R* c #E20000", +"S* c #E10001", +"T* c #DE0101", +"U* c #DD0100", +"V* c #DD0101", +"W* c #DC0001", +"X* c #D90000", +"Y* c #740000", +"Z* c #00A102", +"`* c #00A903", +" = c #007401", +".= c #00945F", +"+= c #00845D", +"@= c #00845C", +"#= c #007E70", +"$= c #00786A", +"%= c #00756A", +"&= c #007568", +"*= c #590000", +"== c #E10100", +"-= c #DF0101", +";= c #DB0101", +">= c #DA0101", +",= c #D90101", +"'= c #930000", +")= c #007A01", +"!= c #00B804", +"~= c #00B605", +"{= c #009C03", +"]= c #006300", +"^= c #00865E", +"/= c #008D5F", +"(= c #009660", +"_= c #009560", +":= c #00955F", +"<= c #008E5E", +"[= c #009280", +"}= c #007A6E", +"|= c #00796B", +"1= c #007469", +"2= c #007468", +"3= c #020000", +"4= c #CD0000", +"5= c #E90101", +"6= c #E50001", +"7= c #E20100", +"8= c #D80000", +"9= c #D70001", +"0= c #BD0000", +"a= c #2E0000", +"b= c #00B103", +"c= c #00B405", +"d= c #009803", +"e= c #006100", +"f= c #00895D", +"g= c #00955E", +"h= c #00875C", +"i= c #00825B", +"j= c #007569", +"k= c #007467", +"l= c #007367", +"m= c #007165", +"n= c #5C0000", +"o= c #E50101", +"p= c #DC0101", +"q= c #D80100", +"r= c #D60100", +"s= c #D50101", +"t= c #CC0000", +"u= c #4B0000", +"v= c #009002", +"w= c #00B404", +"x= c #009702", +"y= c #006000", +"z= c #00945E", +"A= c #00915D", +"B= c #007166", +"C= c #030000", +"D= c #CF0000", +"E= c #E30001", +"F= c #DE0100", +"G= c #DB0100", +"H= c #D90100", +"I= c #D80101", +"J= c #D70101", +"K= c #D60101", +"L= c #D50001", +"M= c #D40100", +"N= c #D30101", +"O= c #D10000", +"P= c #007101", +"Q= c #00B205", +"R= c #009903", +"S= c #00835B", +"T= c #00845B", +"U= c #00935E", +"V= c #00935D", +"W= c #008B5C", +"X= c #00815A", +"Y= c #00776B", +"Z= c #007266", +"`= c #006F64", +" - c #5B0000", +".- c #DD0001", +"+- c #DA0001", +"@- c #D80001", +"#- c #D40101", +"$- c #D30001", +"%- c #D20001", +"&- c #D10100", +"*- c #D00101", +"=- c #00A904", +"-- c #00B105", +";- c #009F04", +">- c #00925D", +",- c #00935C", +"'- c #00845A", +")- c #008059", +"!- c #007064", +"~- c #006E63", +"{- c #000303", +"]- c #D20000", +"^- c #EB0101", +"/- c #E20001", +"(- c #DC0100", +"_- c #DA0100", +":- c #D90001", +"<- c #D20101", +"[- c #D10101", +"}- c #CF0100", +"|- c #CE0000", +"1- c #000200", +"2- c #009102", +"3- c #00B005", +"4- c #00AF05", +"5- c #00A105", +"6- c #006500", +"7- c #008F7E", +"8- c #008F5B", +"9- c #007F59", +"0- c #007164", +"a- c #007063", +"b- c #006E62", +"c- c #006D61", +"d- c #6A0000", +"e- c #E40001", +"f- c #D70100", +"g- c #D30100", +"h- c #D20100", +"i- c #CF0101", +"j- c #CD0101", +"k- c #C80000", +"l- c #3B0000", +"m- c #007B01", +"n- c #00AE05", +"o- c #00AD05", +"p- c #00A604", +"q- c #008D5A", +"r- c #008859", +"s- c #007F58", +"t- c #007366", +"u- c #007265", +"v- c #D40001", +"w- c #CE0101", +"x- c #CC0101", +"y- c #C20000", +"z- c #2D0000", +"A- c #00AC05", +"B- c #00AC06", +"C- c #00AB06", +"D- c #00A905", +"E- c #007201", +"F- c #008A58", +"G- c #008258", +"H- c #007D57", +"I- c #00796D", +"J- c #007368", +"K- c #006F62", +"L- c #870000", +"M- c #E60001", +"N- c #DA0000", +"O- c #CB0101", +"P- c #CA0101", +"Q- c #009E05", +"R- c #00AA06", +"S- c #00A906", +"T- c #00A806", +"U- c #007D02", +"V- c #008758", +"W- c #007D56", +"X- c #006F63", +"Y- c #1D0000", +"Z- c #DF0001", +"`- c #C90101", +" ; c #C70101", +".; c #B70000", +"+; c #008903", +"@; c #00A705", +"#; c #00A706", +"$; c #008503", +"%; c #008456", +"&; c #007D55", +"*; c #008977", +"=; c #007267", +"-; c #006D62", +";; c #E00100", +">; c #DE0000", +",; c #D70000", +"'; c #C80101", +"); c #C50201", +"!; c #007602", +"~; c #00A506", +"{; c #00A406", +"]; c #009104", +"^; c #007C55", +"/; c #008156", +"(; c #007B55", +"_; c #007C6E", +":; c #380000", +"<; c #C70102", +"[; c #C50101", +"}; c #006700", +"|; c #00A206", +"1; c #009605", +"2; c #006200", +"3; c #007A54", +"4; c #007B54", +"5; c #B20000", +"6; c #C60101", +"7; c #C40101", +"8; c #009B06", +"9; c #009906", +"0; c #007A53", +"a; c #007953", +"b; c #007065", +"c; c #4E0000", +"d; c #D00100", +"e; c #C80201", +"f; c #C60201", +"g; c #C30101", +"h; c #BE0301", +"i; c #009005", +"j; c #006C01", +"k; c #007852", +"l; c #CA0000", +"m; c #DB0001", +"n; c #CF0001", +"o; c #C30201", +"p; c #C20101", +"q; c #C20102", +"r; c #006E01", +"s; c #670000", +"t; c #DB0000", +"u; c #D60001", +"v; c #D10001", +"w; c #C10102", +"x; c #C00102", +"y; c #8F0101", +"z; c #007650", +"A; c #0F0000", +"B; c #CA0102", +"C; c #C40201", +"D; c #C10101", +"E; c #C00201", +"F; c #BC0201", +"G; c #BB0101", +"H; c #540000", +"I; c #8C0000", +"J; c #BF0101", +"K; c #BE0102", +"L; c #BC0101", +"M; c #BB0202", +"N; c #BA0101", +"O; c #B60000", +"P; c #2A0000", +"Q; c #330000", +"R; c #C00101", +"S; c #BD0201", +"T; c #BC0102", +"U; c #BB0201", +"V; c #B90202", +"W; c #B80102", +"X; c #9E0001", +"Y; c #090000", +"Z; c #C80102", +"`; c #C20202", +" > c #BF0102", +".> c #BE0201", +"+> c #BD0101", +"@> c #BC0202", +"#> c #BB0102", +"$> c #BA0201", +"%> c #B90102", +"&> c #B70101", +"*> c #750101", +"=> c #BE0101", +"-> c #B70102", +";> c #B60102", +">> c #B40102", +",> c #3F0000", +"'> c #160000", +")> c #C20201", +"!> c #BF0201", +"~> c #BD0202", +"{> c #B80101", +"]> c #B70202", +"^> c #B60201", +"/> c #B50201", +"(> c #B30201", +"_> c #A50001", +":> c #100000", +"<> c #960000", +"[> c #C60102", +"}> c #C10201", +"|> c #BD0102", +"1> c #B70201", +"2> c #B30101", +"3> c #B20201", +"4> c #7A0001", +"5> c #B80202", +"6> c #B60101", +"7> c #B50101", +"8> c #B40202", +"9> c #B10201", +"0> c #B10102", +"a> c #AF0102", +"b> c #360000", +"c> c #140000", +"d> c #B90101", +"e> c #B90201", +"f> c #B40201", +"g> c #B30102", +"h> c #B20102", +"i> c #B10101", +"j> c #B00101", +"k> c #AE0201", +"l> c #9C0101", +"m> c #0A0000", +"n> c #A40000", +"o> c #C30102", +"p> c #B80201", +"q> c #B50102", +"r> c #B00102", +"s> c #AF0202", +"t> c #AE0202", +"u> c #AD0102", +"v> c #6B0001", +"w> c #660000", +"x> c #BA0202", +"y> c #B20202", +"z> c #B10202", +"A> c #B00201", +"B> c #AE0102", +"C> c #AC0201", +"D> c #AA0001", +"E> c #2B0000", +"F> c #B50202", +"G> c #AD0202", +"H> c #AC0101", +"I> c #AA0202", +"J> c #940100", +"K> c #070000", +"L> c #BA0000", +"M> c #C70201", +"N> c #C00202", +"O> c #B00202", +"P> c #AB0202", +"Q> c #AA0101", +"R> c #A80102", +"S> c #5D0101", +"T> c #7B0000", +"U> c #AC0102", +"V> c #AA0102", +"W> c #A90202", +"X> c #A70102", +"Y> c #A40101", +"Z> c #260000", +"`> c #B30202", +" , c #B20101", +"., c #AF0201", +"+, c #A80201", +"@, c #A70201", +"#, c #A70101", +"$, c #A60202", +"%, c #850101", +"&, c #C90000", +"*, c #AD0201", +"=, c #AB0201", +"-, c #A90102", +";, c #A70202", +">, c #A60101", +",, c #A50201", +"', c #A40201", +"), c #510000", +"!, c #A10000", +"~, c #B60202", +"{, c #AC0202", +"], c #A50102", +"^, c #A30102", +"/, c #9C0100", +"(, c #170000", +"_, c #720000", +":, c #A30202", +"<, c #A20202", +"[, c #A10202", +"}, c #740101", +"|, c #C90102", +"1, c #BF0202", +"2, c #BE0202", +"3, c #AE0101", +"4, c #AB0101", +"5, c #A90101", +"6, c #A40102", +"7, c #A30201", +"8, c #A10102", +"9, c #A00202", +"0, c #9F0202", +"a, c #390000", +"b, c #B10001", +"c, c #9D0100", +"d, c #880100", +"e, c #5E0101", +"f, c #4A0000", +"g, c #350000", +"h, c #240000", +"i, c #220000", +"j, c #1C0000", +"k, c #630101", +"l, c #790101", +"m, c #9F0102", +"n, c #8E0100", +"o, c #080000", +"p, c #C60001", +"q, c #C40202", +"r, c #B70100", +"s, c #6C0001", +"t, c #430000", +"u, c #290000", +"v, c #130000", +"w, c #060000", +"x, c #5C0101", +"y, c #AF0100", +"z, c #8F0000", +"A, c #2F0000", +"B, c #980001", +"C, c #660101", +"D, c #B50000", +"E, c #3C0000", +"F, c #3A0000", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . + @ # $ % & * = - ; . . . . . . ", +" . . . . . . . . . . > > , ' ) ! ~ { ] ^ # / % & ( = - _ : < [ . . . . ", +" . . . . . . . . } | | 1 1 2 3 4 5 6 7 ! 8 { 9 ^ / / & 0 = - _ _ a b c . . . . ", +" . . . . . . d d e f d g | | | h i 3 , 5 j 7 ! k + 9 ^ / l * ( m ; n o b p q r . . . ", +" . . . . . g f s s t t t s s d g | | 2 u u , 6 j ! 8 { v ^ w x & ( = - _ o < [ q r y . . . ", +" . . . . } z s t t A A A A B C D s } } 1 2 u E F 6 ! G k + H $ % & * I - ; n < [ c J K L . . . ", +" . . . . 1 } z d D B A M M N M M O B P s } | 1 Q > , 5 ) R k + @ ^ / % * ( S ; n a [ T J r L U . . ", +" . . . u 2 V } e s A M N W X X Y X Z O C D d } | h u > 5 j 7 ~ + 9 # ` .& ( S ; _ a b T q ..+.@.. . . ", +" . . . . Q 1 } d s B #.Z X $.%.%.&.*.X =.#.t s g | 1 u > -.;.! R { ] ^ w % & * = >._ ,.b [ q K +.@.'.. . . ", +" . . . . ).} e D A =.Y $.%.!.!.!.%.~.Z M A s z } 1 u > , ' 7 ! { v @ ` % & ( = ; _ : b c q r L U {.'.. . ", +" . . . } s t A Z X ].!.^./.(.%.$.X N A s d } 1 2 u , ' 7 ! { 9 ^ ` / & ( ( _.:.o b [ q r K @.<.[.}.. . ", +" . . } f t #.Z ~.].!./.|.(.!.$.X =.A t d } 1 2 > , 6 7 ! 8 + H w / * * = - :.,.1.[ q r +.@.{.[.}.. . . ", +" . . . f t A Z *.%.!.(.2.(.!.&.W Z A t d | V 2 3.F 6 7 G k v H ` x & 4.= ; _ o b [ 5...K @.<.[.6.7.. . ", +" . . . P B Z Y ~.%.8.&.!.%.$.Z M A P d } 1 i > -.6 7 ! { 9 @ ` % & ( S - _ : b p q r +.@.9.[.}.7.0.. . ", +" . . . C M Z X $.a.a.a.$.X Z #.t s d | 1 Q > 5 6 7 G { 9 ^ w % * ( m - _ a b T q r +.b.{.[.c.7.d.. . . ", +" . . D A O N W X e.e.f.N M t s d } 1 2 u > -.6 7 ~ g.9 ^ / % & ( m >._ o [ c q K L b.'.6.h.7.i.j.. . ", +" . . . t A #.Z Z k.f.k.l.B P d z | 1 Q 3 , 5 j ! ~ + H ^ / l * I S ; _ a [ T q K L b.'.6.h.7.d.j.. . . ", +" . . s t t C A l.k.m.n.o.z z | 1 h u > -.6 7 G { + ^ ` p.l * = >.:.q.a [ c q K @.<.'.6.h.r.d.s.t.. . ", +" . . . e s s t t u.v.w.u.x.y.).h i > , ' 7 ! k g.9 ^ $ % & 4.= ; _ ,.< [ c r y z.<.[.6.A.B.C.j.D.. . . ", +" . . } g d d e u.u.E.F.x.G.G.Q 3 , 5 6 7 R k + H # / % * H.= >._ : b T q r K @.'.I.c.7.0.C.J.D.K.. . ", +" . . | } | } L.y.M.N.O.P.Q.R.S.F 6 7 ! k T.9 ^ ` % & * H.- ; o < b p U...y b.{.[.h.7.d.C.J.t.K.. . . ", +" . . 1 1 V 1 | V.P.N.W.X.Y.Z.Z.`.7 ! ~ { ] ^ # / % * ( = ; _ : a [ c r K L <. +6.h.7.d.j..+++@+#+. . ", +" . . . 2 2 2 2 $+%+&+*+X.=+-+Z.`.;+~ { + 9 ^ $ x & * = - ; o a b T q r y @.<.I.6.h.r.d.>+t.K.,+#+. . . ", +" . . u u u u 4 '+)+!+~+{+]+^+/+;+(+_+v ^ ` x .* ( = ; _ o < b c U.K L b.'.[.h.7.0.j.J.:+K.,+<+[+. . ", +" . . . , , , , Z.}+~+|+1+2+3+4+5+6+7+8+# / % & ( = - ; o ,.b [ q U.K @.<.'.6.h.B.i.j.9+++K.0+a+[+. . ", +" b+b+c+`.c+d+e+f+g+h+1+i+i+4+j+k+l+m+n+& & * I - >._ o a [ c q ..L b.{.I.6.7.0.d.>+t.++,+#+[+o+p+. . ", +" q+q+q+q+q+q+b+r+s+t+u+v+w+x+h+w+y+i+z+A+B+C+D+E+F+G+H+( = - I+o a b p q U.K L <.I.[.6.7.i.j.J.:+K.,+#+[+J+K+. . ", +" q+q+q+q+q+q+q+L+M+N+O+P+Q+R+S+T+U+V+g+x+W+X+Y+z+Z+`+C+ @.@+@@@#@$@$@; :.n a a [ q r ..L @.<.I.6.h.B.d.s.t.++,+%@a+[+J+K+. . . ", +" q+q+q+q+q+q+&@*@=@-@;@>@,@'@)@!@~@{@R+R+]@^@^@/@(@X+_@:@Z+`+<@[@}@+@|@1@2@3@4@5@6@,.b b p q r K 7@b.'.6.}.8@0.j.J.t.++,+#+9@0@a@K+b@. . ", +" q+q+q+q+q+&@M+c@d@e@f@g@g@h@i@j@k@l@m@n@o@{@R+R+p@q@r@s@t@u@:@v@w@x@[@y@}@z@A@B@C@D@E@F@6@G@H@T q r K z.U '.I.6.7.7.d.j.t.D.K.#+a+[+I@J@K@L@. . ", +" q+q+q+q+M@N@O@P@i@h@g@Q@R@S@T@U@V@h@W@X@Y@'@n@Z@`@ #R+S+.#+#t@@#@###w@x@$#y@}@z@%#&#B@D@*#=#-#;#>#H@,#'#K L @.<. +6.h.B.d.j.J.++++,+#+[+o+p+)#b@L@!#. . ", +" q+q+~#{#)@]#k@X@^#/#U@R@(#_#(#R@g@/#:#j@<#'@)@[#}#|#R+S+1#2#3#4###5#6#7#8#9#0#%#a#B@b#c#d#d#e#f#g#h#,#i#j#@.<.'.[.6.8@0.d.j.t.D.K.0+k#[+p+K+K@b@l#m#. . ", +" . . . . . . . . . . q+n#o#)@l@<#p#i@V@U@R@q#r#q#S@U@V@i@j@<#'@)@Z@`@s#R+S+t#3#u#5#5#v#w#8#x#0#0#y#z#A#c#=#d#e#f#f#B#C#i#D#L b.<.'.6.8@0.i.C.9+D.K.@+<+9@[+p+K@E#L@!#F#. . . ", +" . . . . . . . . . . . . . . . q+q+G#)@'@H#j@^#/#g@R@q#I#(#T@g@/#^#j@Y@'@)@Z@J#s#K#p@t#L#L#v#M#w#w#x#9#N#O#y#P#Q#R#d#f#S#f#B#T#U#V#W#U {.[.[.c.7.0.C.>+.+++X#,+a+o+I@J@K@b@!#m#Y#Z#. . ", +" . . `# $.$+$@$#$. . . . . . . . . . q+q+$$'@%$X@:#h@V@&$T@S@R@U@g@h@i@X@Y@'@)@[#}#s#*$S+t#=$v#-$w#;$>$,$'$O#)$!$P#R#~${$f#B#B#]$^$V#j#<.{.I.6.h.7.0.d.s.J.:+K.,+k#[+J+p+K+/$L@!#($_$:$. . ", +" . . . <$[$[$[$[$}$|$1$2$3$. . . . . . . . q+4$>@l@H#j@i@/#V@U@U@g@V@/#^#W@H#%$m@5$o@J#6$*$S+t#-$7$;$8$9$0$N#)$a$!$b$c$d$d$f#B#T#]$]$e$W#f${. +[.h.8@0.d.j.J.t.++K.#+a+[+J+K+K@b@l#g$h$i$j$. . . ", +" . . k$l$[$[$[$[$[$[$m$n$o$p$q$r$. . . . . . . q+q+s$l@%$X@t$^#h@/#/#/#h@^#W@X@<#l@)@5$`@{@6$u$v$w$x$y$9$0$z$A$B$a$!$C$C$D$d$f#B#T#]$E$F$G$H$<.'.6.6.8@0.0.I$>+t.++@+,+a+[+J+a@K@b@L@!#F#_$J$j$K$. . ", +" . . . L$[$[$[$[$[$m$n$M$N$O$O$P$Q$R$S$T$. . . . . q+M@U$l@Y@V$t$i@i@i@:#i@W@V$<#l@m@n@Z@}#s#*$W$X$w$Y$Z$`$z$A$ %.%.%+%@%#%d$$%%%&%]$E$F$*%H$=%[.6.}.h.0.-%I$J.t.++K.,+#+a+o+p+K+K@b@l#m#h$:$j$;%>%. . ", +" . . ,%'%[$[$[$[$n$n$)%N$!%~%{%]%^%/%(%_%:%. . . . . q+q+<%m@l@%$V$X@j@j@V$X@X@Y@l@'@n@Z@`@s#|#[%}%|%Y$Y$1%2%3%4%4%5%6%#%7%d$$%%%&%E$E$F$8%9%=%'.[.h.7.B.i.I$>+t.++++@+#+0%[+I@K+K@b@l#g$h$_$:$a%K$>%. . . ", +" . . b%[$[$[$m$n$c%N$!%P$P$d%^%/%e%f%g%h%i%j%. . . . . q+k%l%m@l@l@Y@Y@H#Y@Y@m%'@m@n@5$n%J#|#*$W$X$o%Y$p%p%q%q%4%6%6%#%r%s%$%t%&%E$F$u%8%v%=%w%6.c.7.7.d.j.s.9+++K.X#%@a+[+J+a@K@E#L@x%m#Y#i$j$K$y%z%A%. . ", +" . . . B%[$m$n$M$O$O$!%P$d%]%C%D%E%F%G%H%I%J%i%K%. . . . . q+q+L%n@)@m@'@l@m%l@'@m@)@n@[#o@J#M%6$u$N%O%P%Q%p%R%S%T%U%V%7%r%r%W%t%&%X%F$8%8%Y%Z%w%6.h.A.B.d.C.>+.+++++,+#+a+[+J+K+K@b@L@!#m#h$_$J$`%y%>% &.&. . ", +" . . +&O$m$M$N$O$!%P$@&#&^%$&f%g%l$%&&&*&=&-&}$i%;&. . . . . q+L+l%5$n@n@n@)@n@)@5$5$Z@~@}#s#6$u$}%>&,&'&)&p%R%T%!&~&~&{&]&W%^&/&X%(&u%8%_&:&<&[&h.7.0.d.j.s..+D.K.,+,+#+9@J+p+K+K@b@}&m#h$_$|&j$1&>% &A%2&. . . ", +" . . . 3&n$M$O$4&P${%]%^%5&f%6&7&%&8&I%9&0&a&b&c&d&i%e&. . . . q+q+f&~@n%[#[#!@Z@[#n%`@}#{@M%*$u$}%g&h&i&j&k&R%l&!&~&m&n&n&W%/&o&o&u%p&Y%:&:&q&r&s&7.0.d.j.J.t.++K.@+,+<+[+J+p+K+K@b@l#!#($_$Z#j$K$>% &A%t&u&v&. . ", +" . . w&=&O$!%!%{%x&^%y&E%D%G%z&A&I%*&B&C&D&d&E&F&(%G&H&3$. . . . q+I&J&J#`@`@J#`@~@J#K&|#L&*$W$}%M&h&i&j&N&O&R%l&l&P&Q&R&S&p&T&T&U&p&Y%:&:&:&V&s&0.d.C.s.J.t.++++,+%@k#0%J+p+K+K@b@L@!#($W&i$j$`%y%z%X&Y&Z&`& *. . ", +" .*. . +*!%P$d%]%C%5&e%D%h%%&H%&&=&B&@*b&#*$*%*&***=*-*;*>*T$. . . q+q+,*|#M%K&s#s#s#|#6$6$u$N%N%>&o%P%'*)&)*!*~*l&{*]*^*H$H$H$=%/*:&_&:&(*_*:*<*<*C.j.>+J.D.++X#,+#+a+[+0@I@K+K@E#L@!#m#h$_$:$`%y%>% &.&t&u& *[*. . ", +" . . }*|*{%d%]%^%f%g%h%%&H%1*=&2*@*C&D&3*F&4*(%5*6*7*8*9*0*a*. . . q+b*u$*$*$*$*$*$*$W$N%}%g&|%h&'&'*)&)*c*d*e*f*g*=%=%=%h*[.6.w%:*i*_*j*k*l*<*m*j.9+.+:+K.K.,+<+a+[+J+p+K+)#b@L@!#m#h$_$:$a%1&y%z%A%t&Z& * *n*o*. . ", +" . . p*{%#&^%/%g%G%l$z&&&1*q*a&r*s*t*F&u*v*|*|*6*w*x*y*;*z*;&. . . q+A*g&}%N%}%N%}%N%M&>&>&o%'&i&j&)&)*B*C*D*E*b+b+w%[.[.6.}.}.F*G*H*k*I*J*K*m*>+t.:+++++X##+k#9@[+J+L*K+K@b@b@!#m#h$_$:$a%;%>%M*X&t&Z&`&N*[*o*O*. . ", +" . . ,%P*5&f%D%F%7&Q*1*1*q*B&r*}$3*3*E&v*G&=*R*S*9*T*U*V*W*X*Y*.*. . . q+q+Z*>&>&>&>&O%O%O%h&P%i&'*)&N&)*c*C*`* =q+b+b+h.h.h.h.7.B.<*l*I*J*I*.=+=@=:+:+++@+,+#+k#9@o+J+p+K+K@/$L@!#m#h$_$:$j$;%y% &#=t&Z&u& *$=n*%=&=. . ", +" . . *=/%f%6&z&7&1*I%=&2*}$c&d&%*4*(%v*=*-*==Q$-=T*V*W*;=>=,='=}*. . . q+)=,&P%,&,&P%P%i&'*j&)&N&!=B*~=d*{=]=q+q+. . . 7.0.0.i.-%^=/=(=_=:=<=@=[=++K.,+,+#+a+[+J+L*p+K+K@b@L@!#m#h$_$:$j$;%y%>% &.&t&}= *|=n*%=1=2=. . . ", +" . . 3=4=g%l$%&H%I%=&@*b&c&5=t*$*4*6==*7=7*9*x*T*V*U*;=>=,=8=9=0=a=. . . q+q+b='*j&'*'*j&)&N&N&)*!=B*~=c=d=e=q+q+ . . d.d.I$d.j.m*f=:=g=g=h=i=K.X##+#+a+a+J+J+I@K+K+K@L@L@!#m#h$_$:$j$1&y%>% &.&2&`& *N*n*o*j=k=l=m=. . ", +" . . n=l$z&8&1*=&B&a&}$s*3*&*o=o==*7=w*9*o$y*y*p=;=>=,=q=9=r=s=t=u=. . . q+v=N&N&N&)*)*O&!=!=!*d*w=e*x=y=q+q+ . . j.>+s.J..+@=h=z=z=A=i=i=0+#+<+9@[+J+L*a@K+K@b@L@l#!#m#h$_$:$a%;%y%>% &Y&Z&Z&`& *n*o*%=2=l=B=m=. . ", +" . . C=D=H%I%J%B&@*C&c&%*$*(%(%E=-*6*S*9*x*F=W*;=G=H=I=J=K=L=M=N=O=n=. . . q+P=c*!=B*B*~=!*!*w=c=e*Q=R=y=q+ . . t.t.:+:+++S=T=U=V=W=X=9@k#a+[+J+J+p+K+K@K@b@L@}&m#m#_$Z#|&j$;%y%>% &A%t&Z&`& *Y=n*j=2=l=Z=m=`=. . ", +" . . -H%=&9&@*@*D&#*F&&*(%=*-*7=w*-=-=F=.-;=+-,=@-@-K=L=#-$-%-&-*-2$. . q+q+=-c=c=c=c=e*e*Q=----;-]=q+y= . . ++++K.K.K.i=i=>-,-'-)-0%[+J+J+p+p+K+K@b@L@L@!#m#($Y#_$j$j$K$y%z%X&.&t&Z&v& *$=o*j=1=k=Z=m=!-~-. . {- ", +" . . ,%]-0&-&^-r*D&d&&*(%G&|*/-==x*x*T*V*(-;=_-:-I=J=L=L=$-N=<-[-}-|-S$. 1-q+2-Q=Q=Q=------3-4-5-6-q+q+ . . @+,+,+,+#+7-X=8-8-9-9-o+I@p+J@K+K@b@L@L@l#m#m#h$_$:$|&a%y%y%>% &.&t&Z&`&|=Y=n*%=1=k=Z=m=0-a-b-c-. . ", +" . . d-^-a&C&3*$*&*(%v*e-R*==Q$-=T*V*(-;=_-H=8=f-'%s=N=g-h-*-*-i-j-k-l-. q+m-4-3-4-4-n-n-o-p-k%q+q+ . . . #+<+a+0%a+9-q-r-s-K+a@K+K+K@E#L@L@L@!#m#F#W&Z#:$|&`%K$y%M*X&A%t&Z&v& *[*o*o*j=2=t-u-!-!-b-c-c-. . ", +" . . }*;*}$s*3*$*4*G&G&-*S*7*-=T*V*W*G=+-,=I=J=K=v-N=N=[-*-*-i-w-j-x-y-z-q+&@A-o-B-A-A-C-D-E-q+q+ . . a+[+[+[+0@s-F-G-H-K+)#K@E#b@L@l#!#g$($h$_$:$|&j$;%y%>% &X&t&t&u&I-N*[*n*%=2=J-l=u-m=`=K-c-c-c-. . ", +" . . L-s*d&%*M-v*=*R*R*7*9*y*V*p=;=N-X*I=f-K=s=M=g-<-[-*-i-j-x-x-O-P-0=q+q+Q-R-R-S-S-T-U-q+q+ . . J+J+L*p+a@H-V-W-W-E#b@L@L@l#g$g$m#h$_$:$J$j$`%y%>%>% &A%Y&2&`&`& *Y=o*o*1=k=l=B=0-`=X-c-c-c-c-. . ", +" . . Y-5*%*4*o=5*|*7*w*-=Z-V*V*G=>=_-@-J=K=s=#-N=<-&-*-i-w-j-O-O-P-`- ;.;q++;@;#;@;#;$;q+q+ . . K+K+K+K+K+W-%;&;*;L@L@!#!#g$F#h$_$_$J$|&j$;%y%y%z% &A%t&Z&`& * *n*n*j=&=J-=;u-m=a-~--;c-c-c-c-. . ", +" . . . p$&*6=G&=*7*7*;;x*>;(-;=>=+-q=f-,;s=M=$-<-[-*-i-w-j-x-O-P-`-'; ;);q+!;~;~;{;];y=q+ . . K@K@/$b@b@^;/;(;!#x%m#m#F#h$_$i$:$:$j$;%1&y%>% &A%.&_;Z&I- *[*[*o*%=2=k=l=u-0-!-b-b-c-c-c-c-c-c-. . ", +" . . :;v*G&-*R*S*;;T*F=(-(->=,=q=J=J=L=s=#-$-[-*-i-w-j-x-O-P-`-';<;);[;q+};|;|;1;2;q+ . . L@L@L@L@L@(;3;4;m#($h$W&_$_$:$J$j$;%;%>%>%M*X&Y&t&Z&Z&`& *$=n*o*O*2=l==;B=!-!-b-c-c-c-c-c-c-c-c-. . ", +" . . . 5;=*|*7*9*-=T*V*p=G=H=:-@-J=K=M=N=N=[-*-i-w-j-x-O-P-`-';<;6;[;7;q+q+8;9;};q+q+ . . !#g$m#!#m#3;0;a;h$_$_$:$:$j$a%;%1&y%>%M* &A%A%t&Z&`&I-[*[*o*o*j=2=l=Z=m=b;!-K-c-c-c-c-c-c-c-c-c-. . ", +" . . c;6*S*;;-=F=V*p=;=>=,=f-J=K=s=#-N=%-[-d;i-w-x-O-P-P-e;';f;[;7;g;h;q+i;j;q+q+. . . m#($F#h$W&a;k;_$:$:$J$j$;%;%y%y%>%M* &X&A%t&_;`&`& *. . . . . . . . . . . . . . . . . . . . . c-. . ", +" . . T$l;8*x*y*.-p=m;>=,=I=f-K=v-M=N=[-*-*-n;w-j-x-O-`-';'; ;6;7;o;p;q;q+r;q+q+. . . . W&_$_$_$Z#k;k;J$`%`%;%1&y%>%>%M*A%A%A%t&Z&u&. . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . s;8*T*U*V*t;>=,=H=J=u;s=M=g-<-v;*-}-w-j-x-O-`-`-';6;6;[;g;p;w;x;q+q+q+y;3=. . . . :$:$J$j$j$z;z;K$K$y%y%>%M* &#=A%t&t&Z&. . . . . . . . . . . ", +" . . A;'%y*U*;=G=,=@-J=u;'%s=N=<-[-*-i-w-j-x-O-B;`-';6;6;C;7;p;D;D;E;q+q+F;G;H;. . . . . ;%;%;%;%y%y%y%>%>%M*M* &A%A%t&t&. . . . . . . ", +" . . I;W*(-m;,=:-J=9=s=s=#-g-[-&-i-w-j-x-O-P-`-';<;[;[;7;o;p;x;J;J;K;L;M;N;O;P;. . . . y%y%>%y%>%>% & &#=#=A%Y&t&. . . . . . . ", +" . . Q;(-;=>=,=I=J=K=L=N=N=%-*-i-w-j-x-O-P-`-e; ;6;[;7;g;D;R;R;J;S;T;T;U;V;W;X;Y;. . . . z%z% & & &#=A%t&.&2&_;. . . . . . ", +" . . . .;>=,=@-J=K=#-N=N=<-*-*-}-j-j-O-P-`-Z; ;6;[;7;g;`;D;R; >.>+>@>#>$>%>&>&>*>. . . . . A%A%A%Y&t&t&Z&Z&. . . . . . ", +" . . q$H=I=,;K=v-v-<-[-[-*-i-w-x-O-P-`-`- ;6;);7;o;p;D;R;J;=>S;L;G;$>%>->&>;>>>,>. . . . . 2&Z&Z&Z&Z&u&. . . . . . ", +" . . '>P*f-r=K=#-g-<-[-*-}-j-j-x-P-`-';';6;[;7;g;)>D;R;!>.>~>L;G;N;V;{>]>^>/>(>_>:>. . . . }=`&`&`&. . . . . ", +" . . . <>J=s=M=N=h-v;*-i-w-j-x-O-P-';'; ;[>[;g;p;}>E;J;J;|>+>#>$>%>W;1>;>/>>>2>3>4>. . . . . |=[*. . . . . ", +" . . c;K=#-N=<-v;*-i-w-j-x-O-`-';'; ;[;[;g;g;p;R;J; >+>L;U;G;N;5>1>6>7>8>(>9>0>a>b>. . . . . . . . . ", +" . . c>]-#-<-[-*-*-w-w-j-O-P-`-'; ;6;[;7;o;q;x;x;.>=>L;F;G;d>e>&>6>;>f>g>h>i>j>k>l>m>. . . . . . . ", +" . . . n><-<-[-i-i-j-j-O-B;`-'; ;6;[;7;o>p;w;R; >K;+>L;U;$>5>p>]>q>f>2>h>0>r>s>t>u>v>. . . . . . ", +" . . w><-&-i-i-w-j-O-P-P-`- ;f;[;7;g;p;D;R;!>=>+>L;$>x>e>{>&>6>q>f>y>z>A>a>k>B>C>D>E>. . {-. ", +" . . +&[-*-i-j-j-x-O-`-';'; ;6;7;g;)>w;R;J;=>~>L;G;$>d>W;->;>F>>>(>3>0>A>a>G>G>H>I>J>K>. . ", +" . . . L>i-w-j-x-P-P-`-M>f;6;C;g;p;D;R;N>=>+>L;G;N;V;W;]>6>f>(>h>i>A>O>t>t>u>P>P>Q>R>S>. . . ", +" . . T>w-j-x-O-P-`- ; ;6;7;7;p;}>R; >J;+>T;G;N;d>{>&>^>/>f>2>y>0>A>s>t>C>U>I>V>W>X>Y>Z>. . ", +" . . ,>j-x-O-P-`-'; ;[>[;7;p;D;D;J;J;.>S;G;#>%>p>->;>F>f>`> ,z>A>.,G>G>U>V>W>+,@,#,$,%,C=. . ", +" . . m>&,x-P-P-'; ;6;[;7;g;p;D;J;=>K;|>#>G;d>{>W;;>/>q>2> , ,A>a>B>*,C>=,I>-,R>;,>,,,',),. . . ", +" . . !,O-`-'; ; ;[;[;g;g;w;R;J;K;@>L;$>$>p>&>~,7>F>8>g>3>i>a>t>*,{,P>V>-,+,@,$,],',^,/,(,. . ", +" . . _,P-'; ; ;6;[;o>p;D;R;!>=>|>L;G;%>d>->]>~,7>>>h> ,A>r>t>*,C>{,I>W>+,#,>,],',:,<,[,},. . . ", +" . . u=|, ; ;[;7;g;p;D;x;1,2,S;L;G;N;e>{>]>^>7>>>`>9>O>O>3,G>U>4,I>5,W>;,$,],6,7,<,8,9,0,a,. . ", +" . . P;';6;6;[;7;g;D;D;!>=>~>T;G;U;e>5>]>^>7>b,c,d,_,e,f,g,h,i,Y-'>'>'>'>j,g,S$k,l,y;0,m,n,o,. . ", +" . . m>p,6;[;q,o;p;R; >=>K;T;L;N;r,<>s,t,u,v,3=. . . . . . . . . . . . . . . . . . . w,Z>S$x,. . . ", +" . . y,[;7;g;q;D;E;J;.>B%z,2$A,o,. . . . . . . . . . . . . . . . . . . . . . . . . . . . . #$. . ", +" . . z,7;g;p;D;+>B,C,g,o,. . . . . . . . . . . . . . . . . . ", +" . . +*g;D,>*E,}*. . . . . . . . . . . . . . ", +" . . L$F,,%. . . . . . . . . . . ", +" . . . . . . . . Y;. . ", +" . . . . . ", +" . . ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/src/Mod/Surfaces/Icons/Ico.png b/src/Mod/Surfaces/Icons/Ico.png new file mode 100644 index 0000000000000000000000000000000000000000..cd1a6149e26c41b424fff4ef5d6a03f11c167aed GIT binary patch literal 7236 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 literal 0 HcmV?d00001 diff --git a/src/Mod/Surfaces/Icons/Ico.xcf b/src/Mod/Surfaces/Icons/Ico.xcf new file mode 100644 index 0000000000000000000000000000000000000000..d17f5f74d596f95c0b9d0ce18c9f24ef45e3452e GIT binary patch literal 21174 zcmeHvX<$@Uw(j0136mgdJCA9!1yn>7#IcoX?ZMllc3f1|iHt#!A(G-?#Uvq>6_3-o3ByulGt%YMph~UVH7e z*SFR_`F5AcJ}@$VbbyMU=Cb}9IKBO}ig*6(ErJ&xCHOIv8m(Lx7w z^HM-J{!aU=?k41I;dte33Rw<+y0uF39hAo3RwK900iEU0a^?ziL`KeiSPl{bG4yIgk__5t<)h z$_tw1!`~e^^F{UhprzwsmvH>(Z3cd=%%+8^*P_a8_uS5j9GQg(d~hsgSGIDpZtur1vUs~4ZmrMx4}^MGTaJ(`Uxg<}!bfWO*t&awFKy9vxn{&Uk6&7@;L ztXpBL*a5#UvFS9>W)3iapy$W(g5_8SdV!_`Mnl)&vi=)5H$;nc)Cl2Nr>|O$A3!g& z>90XA*R*t$f?gBL6U%|IIyRCFC`>(G&@5j!{@Db;L^pe4ea$RK8C0w?@;cH`GqubD z@Z)X%c+ftxeo6UQBl9F^BX9L-0&S1J&*z{Q>$b8_7tpJXp0^Rvj!l~G;J3!PeKJ9! zMI_au)s$E^vmC8J&m;+&h@TZpS`zKe&VrMPAAJ0KxqU8qRBK>n?9WEf+!pjFhVF9; z^aM@IK8>KK#`45+v;qC4=KJ?@`&9BUWKA|=>{CN1H27%d?vFIz zu?@5-Mizl)<6b)ELvwsAg)GNp@Yj$Gh_Tye5kw1m$%clfbt~Ww8lJc53h;leY3bMr z`p-6>upgvpe~;Nd*Ze?_0UhXt9`p5*6)PP7WNTXm{`^>;n6cm-AB%N{wFI9#T2RT; zTPCU?@TDUIZJseQnl>J{9Esq^#qxr5%!w5|$H#Jv0N)u)`aWFx1-?5Bz)e)QevuIo zVS{xXN-*#F+0d}QQDGm4jtq|)82XD}{pR;zky-H*gmp<|6yTK%?7gd-?I!Suqpju zf9^~d;wdDbcm5*8FJ=kx9wz5EaYFoIwod}z5%xh(hx{=zQim2}CK!jp!6+q70pvhU z<4d&jqlp*F@Y5cLk0x4ubVtzC^|(^XgYVXU*Y36HY52B39sgt#J_DhrBj~4|4di!3 zn@3^qqxnKS@kd^ZX%#BGO8ivZsHwYn`NHK(*Eo>p#pOnE`EvF7vu95nK6vKbrHjWz zchPk5!ufO7xth}lx2((BbMC_RjiQ^lP

)5;ZrftE(~>F3S7%ay8mNBcy62uGd^X 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 c #E6E5E6", +", c #E9E8E8", +"' c #EEEEED", +") c #ECECEC", +"! c #EBEBEB", +"~ c #E9E9E9", +"{ c #E9E9E8", +"] c #E5E6E6", +"^ c #D7D7D7", +"/ c #B2B2B1", +"( c #A6A6A6", +"_ c #B7B7B7", +": c #D1D0D1", +"< c #ECEBEB", +"[ c #00B5AA", +"} c #00B4A8", +"| c #00B3A8", +"1 c #00B1A8", +"2 c #00B0A6", +"3 c #00AFA5", +"4 c #00AEA4", +"5 c #00ACA2", +"6 c #00ABA1", +"7 c #00AAA0", +"8 c #EAEBEA", +"9 c #E2E2E2", +"0 c #B6B6B6", +"a c #979898", +"b c #999999", +"c c #BCBCBC", +"d c #D8D9D8", +"e c #EFF0EF", +"f c #00BDB2", +"g c #00BCB1", +"h c #00BBAF", +"i c #00B9AF", +"j c #00B8AE", +"k c #00B7AC", +"l c #00B6AB", +"m c #00B4AA", +"n c #00B1A7", +"o c #00AFA4", +"p c #00ADA3", +"q c #00A99F", +"r c #00A79E", +"s c #00A79C", +"t c #00A59B", +"u c #E3E3E2", +"v c #B0B1B0", +"w c #999898", +"x c #949495", +"y c #00C2B7", +"z c #00C1B6", +"A c #00C0B5", +"B c #00BFB4", +"C c #00BDB3", +"D c #00BDB1", +"E c #00BBB0", +"F c #00BAAF", +"G c #00B9AE", +"H c #00B8AD", +"I c #00B6AC", +"J c #00B4A9", +"K c #00AEA3", +"L c #00A79D", +"M c #00A69B", +"N c #00A49A", +"O c #D7D8D7", +"P c #959696", +"Q c #A0A1A1", +"R c #DFDFE0", +"S c #00C3B8", +"T c #00C4B8", +"U c #00C2B8", +"V c #00C1B7", +"W c #00C0B4", +"X c #00BEB4", +"Y c #00BAAE", +"Z c #00B7AB", +"` c #00B0A5", +" . c #00AEA5", +".. c #00ABA2", +"+. c #00A99E", +"@. c #00A89E", +"#. c #00A69C", +"$. c #00A59A", +"%. c #00A399", +"&. c #00A298", +"*. c #EAEAEA", +"=. c #C6C5C5", +"-. c #9C9B9B", +";. c #9A9A9A", +">. c #959495", +",. c #B5B6B6", +"'. c #E6E6E6", +"). c #00C5B9", +"!. c #00BEB3", +"~. c #00B5A9", +"{. c #00B2A7", +"]. c #00B1A6", +"^. c #00A098", +"/. c #DADBDB", +"(. c #A8A8A8", +"_. c #9B9A9A", +":. c #989898", +"<. c #9E9F9F", +"[. c #D8D8D8", +"}. c #E5E5E5", +"|. c #00C3B7", +"1. c #00C6BA", +"2. c #00C6B9", +"3. c #00C5BA", +"4. c #00C5B8", +"5. c #00BCB2", +"6. c #00BCB0", +"7. c #00B8AC", +"8. c #00B3A9", +"9. c #00ADA2", +"0. c #00A398", +"a. c #00A198", +"b. c #00A097", +"c. c #B6B5B5", +"d. c #989998", +"e. c #9C9D9C", +"f. c #959596", +"g. c #BDBDBD", +"h. c #00C2B6", +"i. c #00C7BB", +"j. c #00C8BB", +"k. c #00C6BB", +"l. c #00C4B9", +"m. c #00BFB3", +"n. c #00B7AD", +"o. c #00ACA1", +"p. c #00A59C", +"q. c #00A49B", +"r. c #009E96", +"s. c #E4E4E4", +"t. c #BABBBA", +"u. c #9C9C9C", +"v. c #9E9E9E", +"w. c #9B9B9C", +"x. c #AAAAAA", +"y. c #DCDCDB", +"z. c #00C1B5", +"A. c #00C8BD", +"B. c #00C9BD", +"C. c #00C9BC", +"D. c #00C8BC", +"E. c #00B2A8", +"F. c #00AFA6", +"G. c #00A197", +"H. c #009F96", +"I. c #E4E5E4", +"J. c #B9B9B8", +"K. c #A0A09F", +"L. c #9D9D9D", +"M. c #9F9F9F", +"N. c #D8D8D9", +"O. c #00C7BA", +"P. c #00CABE", +"Q. c #00CBBF", +"R. c #00CBBE", +"S. c #00C9BE", +"T. c #00C7BC", +"U. c #00BBB1", +"V. c #00BAB0", +"W. c #00AAA1", +"X. c #00A89D", +"Y. c #13A79E", +"Z. c #03A097", +"`. c #009D94", +" + c #9F9FA0", +".+ c #A2A1A1", +"++ c #A0A0A0", +"@+ c #D0D0D0", +"#+ c #00C0B6", +"$+ c #00CCC0", +"%+ c #00CABD", +"&+ c #26ABA4", +"*+ c #10A39C", +"=+ c #009E94", +"-+ c #AEAEAE", +";+ c #A1A1A2", +">+ c #A2A3A2", +",+ c #A0A1A0", +"'+ c #D2D2D3", +")+ c #00CABF", +"!+ c #00CEC1", +"~+ c #00CDC2", +"{+ c #00CDC1", +"]+ c #00CBC0", +"^+ c #00ABA0", +"/+ c #00A9A0", +"(+ c #46B5AF", +"_+ c #63BCB6", +":+ c #009E95", +"<+ c #009C93", +"[+ c #009A92", +"}+ c #D3D3D4", +"|+ c #A8A7A7", +"1+ c #A5A4A4", +"2+ c #A4A5A5", +"3+ c #A2A2A2", +"4+ c #A3A3A2", +"5+ c #D7D7D6", +"6+ c #00CFC2", +"7+ c #00A69D", +"8+ c #0BA59B", +"9+ c #9DCAC7", +"0+ c #2DAAA2", +"a+ c #BABABA", +"b+ c #A7A7A7", +"c+ c #A6A7A6", +"d+ c #A5A6A6", +"e+ c #A3A3A3", +"f+ c #DEDEDE", +"g+ c #00CEC2", +"h+ c #00BEB2", +"i+ c #00ADA4", +"j+ c #00A39A", +"k+ c #06A29A", +"l+ c #9FCBC8", +"m+ c #8FC4C1", +"n+ c #17A39B", +"o+ c #009B92", +"p+ c #009990", +"q+ c #CACACA", +"r+ c #AEAEAD", +"s+ c #A9A9A9", +"t+ c #A8A9A8", +"u+ c #A4A4A4", +"v+ c #B6B5B6", +"w+ c #00CCBF", +"x+ c #47B2AC", +"y+ c #CCD3D4", +"z+ c #9EC8C5", +"A+ c #16A19A", +"B+ c #00988F", +"C+ c #DEDDDD", +"D+ c #AFAEAF", +"E+ c #ABACAC", +"F+ c #ACACAB", +"G+ c #A9A8A8", +"H+ c #A7A6A6", +"I+ c #CDCDCE", +"J+ c #23A9A1", +"K+ c #B5CFCE", +"L+ c #D6D6D6", +"M+ c #BFD0CE", +"N+ c #93C6C3", +"O+ c #3FABA5", +"P+ c #1C1D1D", +"Q+ c #1D1D1D", +"R+ c #292929", +"S+ c #DBDBDA", +"T+ c #DADADA", +"U+ c #C7C6C7", +"V+ c #ADADAD", +"W+ c #AEAEAF", +"X+ c #ACACAC", +"Y+ c #ACABAB", +"Z+ c #ABABAB", +"`+ c #A9AAA9", +" @ c #A5A5A6", +".@ c #D0D0CF", +"+@ c #00B9AD", +"@@ c #00B6AA", +"#@ c #019F95", +"$@ c #56B4AE", +"%@ c #C5D0D0", +"&@ c #D1D2D2", +"*@ c #CDCDCD", +"=@ c #D2D2D2", +"-@ c #D0D2D2", +";@ c #C0C0C0", +">@ c #D3D3D2", +",@ c #CBCCCC", +"'@ c #BEBFBE", +")@ c #B0AFB0", +"!@ c #B1B1B0", +"~@ c #B0B0AF", +"{@ c #ABAAAB", +"]@ c #AAAAAB", +"^@ c #A6A5A5", +"/@ c #B5B5B5", +"(@ c #D0D1D0", +"_@ c #D5D6D5", +":@ c #009F95", +"<@ c #049D95", +"[@ c #73BAB7", +"}@ c #CCD1D1", +"|@ c #C8C8C9", +"1@ c #C2C2C2", +"2@ c #C2C3C3", +"3@ c #C1C1C1", +"4@ c #B8B8B8", +"5@ c #B4B4B4", +"6@ c #B4B4B5", +"7@ c #B3B3B3", +"8@ c #B2B2B2", +"9@ c #B1B1B1", +"0@ c #AFAEAE", +"a@ c #ADAEAE", +"b@ c #ACACAD", +"c@ c #AAA9A9", +"d@ c #BBBCBC", +"e@ c #D1D1D1", +"f@ c #00B0A7", +"g@ c #00A89F", +"h@ c #059C94", +"i@ c #7ABEB9", +"j@ c #BDCCCC", +"k@ c #CBCACB", +"l@ c #C2C1C1", +"m@ c #BBBBBB", +"n@ c #B8B9B8", +"o@ c #B8B9B9", +"p@ c #B4B5B5", +"q@ c #B3B4B4", +"r@ c #B2B3B3", +"s@ c #B0B0B0", +"t@ c #AFAFAF", +"u@ c #AAA9AA", +"v@ c #D3D3D3", +"w@ c #00A096", +"x@ c #059B92", +"y@ c #29A69E", +"z@ c #ACC8C7", +"A@ c #D2D1D1", +"B@ c #CCCCCD", +"C@ c #C4C4C4", +"D@ c #C0BFBF", +"E@ c #BBBCBB", +"F@ c #B2B3B2", +"G@ c #AEADAD", +"H@ c #ADACAD", +"I@ c #00ACA3", +"J@ c #009D93", +"K@ c #009B91", +"L@ c #00968E", +"M@ c #3CA7A1", +"N@ c #8EBFBD", +"O@ c #BDCCCB", +"P@ c #C1C0C0", +"Q@ c #C4C3C3", +"R@ c #C6C6C6", +"S@ c #BAB9B9", +"T@ c #ADACAC", +"U@ c #C8C8C8", +"V@ c #020B0A", +"W@ c #00B5AB", +"X@ c #00A299", +"Y@ c #009A91", +"Z@ c #00978E", +"`@ c #00958C", +" # c #04958D", +".# c #1B9B93", +"+# c #353535", +"@# c #414141", +"## c #464646", +"$# c #CECECE", +"%# c #C4C4C3", +"&# c #B1B2B1", +"*# c #C9C9C9", +"=# c #00BFB5", +"-# c #009C94", +";# c #009B93", +"># c #00968D", +",# c #00958B", +"'# c #00938A", +")# c #009189", +"!# c #009088", +"~# c #CCCCCC", +"{# c #B1B2B2", +"]# c #ADAEAD", +"^# c #CBCCCB", +"/# c #009890", +"(# c #00958D", +"_# c #00948B", +":# c #009289", +"<# c #009188", +"[# c #BFBFBF", +"}# c #CCCBCB", +"|# c #CFCFCE", +"1# c #00948A", +"2# c #008F88", +"3# c #008E86", +"4# c #CDCECE", +"5# c #BEBEBE", +"6# c #B7B7B8", +"7# c #B6B6B5", +"8# c #B3B2B2", +"9# c #B1B0B0", +"0# c #AFAFB0", +"a# c #00998F", +"b# c #00988E", +"c# c #00948C", +"d# c #008F87", +"e# c #B9B8B9", +"f# c #B6B7B6", +"g# c #B4B3B3", +"h# c #B2B1B1", +"i# c #ADADAE", +"j# c #ACADAD", +"k# c #C0C1C0", +"l# c #008D86", +"m# c #008C84", +"n# c #C3C4C4", +"o# c #B9BAB9", +"p# c #B0B0B1", +"q# c #CBCBC9", +"r# c #00AA9F", +"s# c #00928A", +"t# c #008D85", +"u# c #008B83", +"v# c #B7B8B7", +"w# c #B7B7B6", +"x# c #B1B0B1", +"y# c #C5C5C5", +"z# c #00968C", +"A# c #C5C6C6", +"B# c #C0C1C1", +"C# c #BABBBB", +"D# c #BABAB9", +"E# c #B8B7B7", +"F# c #B7B6B7", +"G# c #B5B4B4", +"H# c #B3B2B3", +"I# c #B1B1B2", +"J# c #ACADAE", +"K# c #009F97", +"L# c #009991", +"M# c #009389", +"N# c #008F86", +"O# c #008E85", +"P# c #008B84", +"Q# c #008981", +"R# c #BCBBBC", +"S# c #B9B9B9", +"T# c #B8B8B9", +"U# c #00938B", +"V# c #008D84", +"W# c #008C83", +"X# c #008A82", +"Y# c #008880", +"Z# c #C4C3C4", +"`# c #B7B8B8", +" $ c #AFAFB1", +".$ c #00A499", +"+$ c #008B82", +"@$ c #00877F", +"#$ c #C1C2C1", +"$$ c #B9B8B8", +"%$ c #B5B5B4", +"&$ c #B4B4B3", +"*$ c #B2B1B3", +"=$ c #009087", +"-$ c #008780", +";$ c #00867E", +">$ c #C2C3C2", +",$ c #B9B9BA", +"'$ c #B2B1B2", +")$ c #008A81", +"!$ c #00867D", +"~$ c #C0C0C1", +"{$ c #BFBEBE", +"]$ c #BEBDBD", +"^$ c #BDBCBD", +"/$ c #BFC0C0", +"($ c #C1C3C2", +"_$ c #009C92", +":$ c #009288", +"<$ c #00847D", +"[$ c #00847B", +"}$ c #BBBBBC", +"|$ c #BAB9BA", +"1$ c #B6B6B7", +"2$ c #B3B3B2", +"3$ c #BFC0BF", +"4$ c #008982", +"5$ c #00857E", +"6$ c #00847C", +"7$ c #00837B", +"8$ c #BEBEBF", +"9$ c #BDBCBC", +"0$ c #BCBCBB", +"a$ c #B3B4B3", +"b$ c #00877E", +"c$ c #00857D", +"d$ c #00837C", +"e$ c #00827A", +"f$ c #B7B6B6", +"g$ c #00978D", +"h$ c #00837A", +"i$ c #008178", +"j$ c #BFBFBE", +"k$ c #BDBEBC", +"l$ c #00978F", +"m$ c #008980", +"n$ c #008179", +"o$ c #007F78", +"p$ c #C1C1C2", +"q$ c #008E87", +"r$ c #00817A", +"s$ c #C2C2C1", +"t$ c #C0BFC0", +"u$ c #BDBEBE", +"v$ c #BBBBBA", +"w$ c #B9BABA", +"x$ c #009D95", +"y$ c #00867F", +"z$ c #008078", +"A$ c #007E78", +"B$ c #007D76", +"C$ c #C3C3C3", +"D$ c #BBBABA", +"E$ c #009A90", +"F$ c #008279", +"G$ c #007E77", +"H$ c #007D75", +"I$ c #C0C0BF", +"J$ c #BFBEBF", +"K$ c #BBBABB", +"L$ c #00887F", +"M$ c #00827B", +"N$ c #008079", +"O$ c #007B75", +"P$ c #BABABB", +"Q$ c #007C75", +"R$ c #007B73", +"S$ c #007A72", +"T$ c #C3C2C2", +"U$ c #BFBFC0", +"V$ c #BEBDBE", +"W$ c #BCBBBB", +"X$ c #00857C", +"Y$ c #007D77", +"Z$ c #007C76", +"`$ c #007B74", +" % c #007A73", +".% c #007972", +"+% c #C3C4C3", +"@% c #C5C5C6", +"#% c #BEBFBF", +"$% c #007871", +"%% c #BCBDBC", +"&% c #C4C5C4", +"*% c #C6C6C5", +"=% c #007770", +"-% c #00766F", +";% c #C3C2C3", +">% c #008C85", +",% c #007F77", +"'% c #007872", +")% c #00766E", +"!% c #C8C7C7", +"~% c #C7C6C6", +"{% c #C5C5C4", +"]% c #C2C0C1", +"^% c #B3B3B4", +"/% c #007E76", +"(% c #007870", +"_% c #00756F", +":% c #00756D", +"<% c #C9C8C8", +"[% c #C5C4C4", +"}% c #007A74", +"|% c #007971", +"1% c #00746E", +"2% c #00746D", +"3% c #C7C7C7", +"4% c #008881", +"5% c #00756E", +"6% c #00746C", +"7% c #00736C", +"8% c #00716A", +"9% c #C8C9C8", +"0% c #00716B", +"a% c #C6C7C7", +"b% c #CACBCA", +"c% c #C9C8CA", +"d% c #007771", +"e% c #00726B", +"f% c #006F69", +"g% c #007670", +"h% c #007069", +"i% c #006E68", +"j% c #000303", +"k% c #007169", +"l% c #007068", +"m% c #006D67", +"n% c #AEAFAE", +"o% c #00736B", +"p% c #00726A", +"q% c #A9A9A8", +"r% c #CFCFCF", +"s% c #C5C4C5", +"t% c #007973", +"u% c #00736D", +"v% c #006F68", +"w% c #B0AEB0", +"x% c #00726C", +"y% c #006D68", +"z% c #007C74", +"A% c #00706A", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" . + @ # ", +" $ $ $ $ $ $ $ $ $ $ $ % & * * = - ; > , ' ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ) ! ~ { { ~ ] ^ / ( _ : ~ < ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ [ } | 1 2 3 4 5 6 7 $ $ $ $ $ $ 8 9 0 a b c d e ", +" $ $ $ $ $ $ $ $ $ $ f f g h i j k l m | | n 2 o p 5 6 q r s t $ $ $ $ u v w x ( ^ 8 ", +" $ $ $ $ $ $ $ $ y z z A A B C D E F G H I l J | n n 3 K 5 6 q q L M N $ $ $ $ O ( b P Q R * ", +" $ $ $ $ $ $ S S S T S U V V z W X C g E Y G H Z [ J | n ` .p ..7 +.@.#.$.%.&.$ $ $ *.=.-.;.>.,.'. ", +" $ $ $ $ $ U T T T ).).).T T S U V z B !.!.g F Y H I l ~.| {.].3 p 5 6 q @.s t %.&.^.$ $ $ /.(._.:.<.[.}. ", +" $ $ $ $ y |.T ).).1.1.1.1.2.3.4.T y y A B !.5.6.F j 7.Z [ 8.1 2 3 4 9.6 7 +.s t N 0.a.b.$ $ $ * c.d.e.f.g.'. ", +" $ $ $ $ A h.|.S 4.2.1.i.i.j.i.i.k.2.l.T y z A m.f g E i n.Z [ } | n 2 4 p o.7 +.L p.q.0.&.b.r.$ $ s.t.u.v.w.x.y. ", +" $ $ $ !.B z.y S T 1.i.j.A.B.B.C.B.D.k.3.4.S y z W !.f E Y G k [ J | E.F.o p o.7 q L M q.%.&.G.H.$ $ $ I.J.u.K.L.M.N. ", +" $ $ $ $ m.A h.S T 2.O.D.B.P.Q.Q.R.S.B.T.O.).T U V A !.f U.V.j n.l m | {.2 o 4 5 W.q X.#.t %.a.Y.Z.`.$ $ $ 9 0 +.+++e.@+u ", +" $ $ $ $ #+h.S 4.1.T.C.P.Q.$+$+$+Q.%+D.i.1.T |.h.A !.f g h G H l ~.} E.2 3 p 5 7 q r #.N %.&.&+*+=+`.$ $ - -+;+>+Q ,+'+ ", +" $ $ $ y T ).1.D.B.)+$+!+~+{+]+P.B.j.1.T S y A B !.g h G H l J | E.n 3 p p ^+/+@.#.t %.&.(+_+:+<+[+$ $ 9 }+|+1+2+3+4+5+ ", +" $ $ y T ).O.D.%+)+$+~+6+{+$+P.B.T.1.).S y A B f g F G H I [ 8.{.n .4 5 6 /+X.7+t %.&.8+9+0+<+[+$ $ $ - a+b+c+d+e+-+f+ ", +" $ $ $ T ).1.D.S.Q.$+{+g+{+$+R.A.D.1.).S z z.B h+6.F G 7.Z ~.8.E.].3 i+5 7 q @.#.t j+&.k+l+m+n+o+p+$ $ f+q+r+s+t+b+u+v+f+ ", +" $ $ $ l.2.D.C.%+Q.$+$+w+Q.P.D.i.1.l.S y A X f U.F G H l J } E.2 3 p o.6 q r #.$.%.&.G.x+y+z+A+p+B+$ $ C+q+D+E+F+x.G+H+|+I+O ", +" $ $ $ 3.i.D.B.P.P.Q.)+P.B.D.O.).T S z A m.f E F G 7.l J | {.2 .p ..6 q L #.q.%.&.G.J+K+L+M+N+O+P+Q+R+ S+T+U+V+W+V+X+Y+Z+`+ @-+.@L+ ", +" $ $ 4.1.k.j.A.B.B.B.C.j.i.).T S y A B !.f U.F +@k @@J | n 2 o p ..W.q @.t N %.a.b.#@$@%@&@*@=@-@;@}+>@,@'@)@/ !@~@D+V+X+{@]@^@/@(@_@ ", +" $ $ $ ).1.O.D.D.i.D.j.1.2.l.S |.z A m.C g E Y H k [ 8.| n ` 4 9.o.7 q L t q.%.a.b.:@<@[@}@|@1@;@2@3@g.4@5@6@7@8@9@)@0@a@b@E+c@H+d@e@ ", +" $ $ T ).).3.1.k.O.1.).4.T |.z A W !.f U.F +@7.l [ | E.f@` 4 5 W./+g@L p.N %.a.H.:+`.h@i@j@k@l@m@n@o@_ _ p@5@q@r@9@s@t@-+V+E+u@b+;@v@ ", +" $ $ $ S T T ).).T l.T S |.y #+W X f g h G H Z @@J | 1 2 3 i+5 7 q X.s t N &.^.w@:+<+o+x@y@z@A@B@C@D@a+m@E@4@/@5@7@F@s@t@0@G@H@{@(.=.A@ ", +" $ $ y U S S S S S U y z A A m.C g E F G n.Z [ 8.| n 2 4 I@5 W.q r #.q.%.&.a.H.`.J@K@p+B+L@M@N@O@P@Q@e@v@R@S@/@5@7@8@9@~@t@G@T@x.T@U@e@ ", +" V@$ $ z y V y y h.V z.A B m.!.D 6.F G H Z W@J | E.2 3 4 I@6 7 @.s M $.X@&.^.:@=+<+Y@p+Z@L@`@ #.#+#@### $#%#4@0 /@5@7@9@s@t@-+a@x.&#*#.@ ", +" $ $ A A z.A z #+=#A m.!.!.D 6.F G j k l m | | n 2 4 p 5 7 q r L t N &.a.b.:+-#;#Y@p+Z@>#,#'#)#!#$ $ ~#3@4@_ /@5@r@{#9@s@W+]#x.0 ^#$# ", +" $ $ $ B B B B B X !.f f g E V.F j k l [ J | 1 ].3 4 5 6 7 @.L #.q.%.&.^.H.:+J@o+Y@/#Z@(#_#:#<#!#$ $ $ q+[#4@_ 0 /@q@8@&#s@t@-+c@m@}#|# ", +" $ $ !.!.!.!.h+f D g 6.E F G H H l [ ~.| E.].F. .p 5 7 q @.s M N X@a.b.:@`.<+Y@p+B+>#`@1#:#<#2#3#$ $ 4#U@5#4@6#7#c.5@8#9@9#0#-+]@5#q+ ", +" $ $ $ g g g g 6.E h F G j H k Z @@J | | n 2 o p 5 6 7 @.X.#.t %.X@a.H.:+`.;#Y@a#b#>#c#'#:#!#d#3#$ $ ~#R@c e#4@f#0 5@g#8@h#s@i#j#k#k@ ", +" $ $ E F E V.h Y Y G H k k l [ J | E.n 2 3 4 9.6 W.q @.L t N %.&.b.:@=+J@o+p+B+Z@(#_#'#<#!#3#l#m#$ $ q+n#c o#n@_ 0 /@7@8#9@p#W+s@1@q# ", +" $ $ G i G G +@+@H k k I @@J J | E.{.2 3 4 p 5 6 r#@.L M $.%.X@a.b.:+J@<+o+p+b#>#`@1#s#<#!#3#t#u#$ $ U@2@d@a+4@v#w#0 q@r@9@x#-+7@y#*# ", +" $ $ H 7.7.H k k l [ [ ~.} E.E.n 2 3 4 p 5 6 /++.L L t %.&.&.b.H.:+J@o+Y@a#Z@z#_#'#<#<#d#3#t#u#$ $ $ A#B#d@C#D#E#F#,.G#7@H#I#J#F#y#U@ ", +" $ $ Z l l l l W@[ J } | E.{.].F.3 4 p I@^+7 +.X.#.M $.%.&.a.K#:@`.;#[+L#B+>#`@_#M#<#!#N#O#P#u#Q#$ $ y#;@R#m@S#T#_ 0 /@5@r@/ -+S#=. ", +" $ $ $ [ [ J J J 8.| E.{.n ].2 3 4 p 5 6 7 q @.L #.q.%.&.a.w@r.`.J@o+p+p+Z@>#_#U#:#!#d#3#V#W#X#Y#$ $ Z#[#c m@S#T#`#f#,.p@7@h# $m@y# ", +" $ $ } | 8.E.| E.1 n n 2 3 4 K I@5 6 /+q r L #.$..$X@a.b.H.:+-#o+Y@a#Z@>#`@'#'#<#!#3#l#m#+$Q#Y#@$$ $ C@#$5#g.c a+S@$$_ v+%$&$*$9@g.%# ", +" $ $ E.E.E.n n ].].F.3 4 K p 5 ..6 7 +.@.L #.t N %.&.b.H.:+`.<+o+L#B+Z@>#_#U#:#!#=$3#m#u#X#Q#-$;$$ $ >$3@[#g.c a+,$n@_ ,./@5@'$g#;@C@ ", +" $ $ $ f@2 2 2 ` 3 4 K p p 5 6 ^+/+g@@.L #.t N %.&.a.b.:@:+`.o+L#B+b#L@c#U#:#)#2#N#3#m#X#)$Y#@$!$$ $ $ 3@~${$]$^$m@a+S#4@f#,.5@8@/@/$($ ", +" $ $ 3 3 4 4 4 K p I@5 5 6 q q @.r #.M t N %.&.G.K#r.=+<+_$K@p+B+L@(#,#'#:$<#d#l#V#W#X#Q#@$;$<$[$$ $ ;@3@[#5#g.}$C#|$4@_ 1$/@2$7#3$3@ ", +" $ $ p i+K p 9.5 o.6 W.7 r#+.r L #.t q.N 0.a.G.b.:+=+J@;#Y@p+B+Z@z#`@1#:#<#=$3#t#m#u#4$Y#@$5$6$7$$ $ [#P@;@8$g.9$0$|$S#_ 0 /@a$E#;@ ", +" $ $ 5 5 ....o.6 6 /+q q @.L #.#.p.N %.0.&.G.K#r.=+-#<+Y@L#B+Z@>#`@_#'#:#!#d#3#t#u#X#Q#-$b$c$d$e$$ $ $ [#;@;@[#]$c R#a+,$n@f$0 a$S#{$ ", +" $ $ 6 W.7 r#q q +.@.L L #.#.q.j+%.0.a.G.w@:@:+`.;#o+L#B+B+g$(#_#'#)#<#d#3#t#P#X#Q#Y#@$!$6$h$e$i$$ $ g.{$B#k#D@j$k$0$a+S@n@_ 0 /@m@]$ ", +" $ $ q q q g@@.r L L #.M t N .$0.&.a.b.H.:@`.<+;#[+Y@B+l$g$`@_#'#:#<#!#d#l#m#u#X#m$-$;$c$7$e$n$o$$ $ c '@3@p$;@5#g.c m@a+S#`#0 1$C#c ", +" $ $ L r L #.s s M p.$.N %.%.0.a.a.b.H.:+`.`._$Y@p+a#b#g$(#_#'#'#)#!#q$3#V#u#X#Q#-$b$c$6$7$r$i$o$$ $ $ C#8$#$s$;@t$u$g.m@v$w$4@_ 1$v$0$ ", +" $ $ $ #.#.#.t t q.N %.%.&.&.a.b.w@r.:+x$<+o+K@p+p+Z@>#z#c#'#s#:$<#d#3#t#P#X#)$Y#y$;$<$d$e$i$z$A$B$$ $ a+3$C$l@k#[#'@^$c m@S#e#_ F#a+D$ ", +" $ $ N N N .$j+%.%.&.&.a.b.K#H.H.`.-#<+o+Y@E$a#Z@L@(#,#'#M#<#!#d#3#t#u#X#Q#Y#@$;$c$6$h$F$z$o$G$H$$ $ a+I$Q@1@;@;@J$g.c m@K$4@_ 4@S# ", +" $ $ j+X@&.X@&.&.a.^.G.K#H.:@:+J@J@o+[+Y@p+B+Z@>#z#,#U#:#<#<#!#N#t#m#u#X#Q#L$;$c$6$M$e$N$o$G$B$O$$ $ $ a+k#C@C$l@;@/$5#g.c P$S@4@4@4@ ", +" $ $ a.a.a.^.a.b.b.H.H.:+`.`.<+o+o+K@L#p+B+Z@>#`@_#'#:#)#<#2#3#t#m#u#X#Q#-$@$5$6$[$e$i$o$G$B$Q$R$S$$ $ v+,$T$y#C$1@3@U$J$V$c W$|$S#_ 4@ ", +" $ $ $ b.b.K#w@:@:+:+`.-#`._$o+K@Y@p+B+Z@L@z#`@_#'#M#<#<#=$q$t#m#u#X#Q#Y#@$5$X$d$e$F$z$A$Y$Z$`$ %.%$ $ 5@C#+%@%C$>$3@;@#%5#g.E@t.S#_ v+ ", +" $ $ :@H.:+=+:+`.-#<+_$o+[+E$p+B+B+L@>#(#`@U#'#:$<#!#d#3#O#V#u#X#)$Y#@$;$c$6$7$F$z$o$G$H$Q$R$.%$%$ $ q@%%&%*%n#C$1@3@[#]$g.d@K$,$0 5@ ", +" $ $ `.`.`.<+_$;#o+K@K@E$p+a#l$B+>#>#c#,#1#:#:#<#2#d#3#t#m#u#+$Q#Y#@$;$c$6$7$r$N$z$A$B$Q$`$.%.%=%-%$ $ 5@]$R@R@C@Q@;%k#D@#%5#^$c S#/@5@ ", +" $ $ <+_$_$o+[+[+Y@p+a#a#l$Z@L@>#(#_#1#'#'#:$!#=$N#3#t#>%u#X#Q#m$@$;$c$6$7$r$n$o$,%Y$Q$`$ %'%$%-%)%$ $ 5@[#!%~%{%C@>$]%p$;@t$5#g.4@^%5@ ", +" $ $ Y@Y@Y@Y@p+a#B+B+l$Z@Z@z#`@,#1#1#M#)#<#!#=$N#l#t#m#u#X#4$Y#@$;$c$6$7$e$n$z$G$/%Q$`$R$.%(%=%_%:%$ $ /@3@<%R@=.C@[%C$ /@5@ ", +" $ $ $ p+B+B+b#l$Z@Z@>#(#`@`@_#'#'#:#<#<#!#d#3#t#>%m#u#X#m$Y#@$;$c$6$7$e$n$z$o$G$H$Q$}%.%|%=%_%1%2%$ $ $ ]#,.C$|@3%y#C@ r@o# ", +" $ $ Z@Z@g$Z@>#>#`@c#_#_#'#:#:#:$!#!#d#d#t#t#V#u#u#X#4%Y#@$;$c$6$7$e$N$z$o$G$H$O$ %.%'%=%-%5%6%7%8%$ $ V+_ R@9%U@3% 4@9@ ", +" $ $ >#(#z#`@,#_#1#'#'#s#:#<#!#!#2#N#3#t#>%P#u#X#Q#Y#-$@$;$c$6$7$r$n$z$o$G$Z$`$`$ %.%=%-%_%2%7%0%8%$ $ -+|$a%b%c% c I# ", +" $ $ _#_#1#1#'#'#s#:#<#<#!#!#=$d#3#t#t#m#u#X#X#Q#Y#L$;$;$6$[$M$e$n$z$o$G$B$Q$`$ %.%d%=%5%2%7%e%8%f%$ $ r+%%q+B@ m@s@ ", +" $ $ M#M#s#:#:#:$<#!#<#!#d#q$3#t#t#m#m#u#X#Q#4%Y#@$;$5$<$6$e$e$i$z$A$Y$H$Q$`$S$.%(%g%5%1%6%e%8%h%i%$ $ j% -+[#,@ R@F@s@ ", +" $ $ )#<#<#<#!#!#!#d#N#q$l#l#V#m#W#u#X#Q#4%Y#-$;$;$c$6$7$M$r$z$z$o$G$H$Q$`$ %|%d%=%_%1%6%e%8%k%l%i%m%$ $ ~@3@~# *#%%n% ", +" $ $ $ !#2#d#q$d#3#3#t#t#m#P#u#u#X#)$4%Y#Y#@$;$!$X$[$7$M$F$i$z$,%Y$B$Q$`$S$.%$%g%-%5%2%o%p%h%h%i%m%m%$ $ q%9@m@3%r%}#s%c V+n% ", +" $ $ d#3#3#3#O#t#V#m#u#u#+$X#)$Q#Y#-$@$b$5$c$6$7$M$e$n$z$o$G$Y$Q$Q$R$t%'%$%=%_%2%u%7%p%8%f%v%m%m%m%$ $ 7@-+V+v s@X+X+ ", +" $ $ t#t#>%m#P#u#u#+$X#)$Q#Y#Y#-$b$b$;$c$6$7$h$e$F$z$o$o$G$B$Z$O$ % %.%d%-%-%1%6%7%0%k%f%v%m%m%m%m%$ $ 7@w%F@ ", +" $ $ u#u#u#u#u#X#Q#)$m$4%Y#@$@$b$!$c$6$6$h$M$e$n$z$z$A$G$B$Q$`$ %.%.%=%=%5%:%u%x%p%8%l%i%y%m%m%m%m%$ $ ", +" $ $ X#X#4$Q#Q#Q#m$Y#@$y$;$;$!$c$6$d$7$7$e$n$N$z$o$G$B$H$z%`$t%.%$%$%g%_%2%6%7%p%k%h%i%i%m%m%m%m%m%m%$ $ ", +" $ $ Y#Y#4%Y#Y#-$y$@$;$5$c$X$6$6$7$h$e$n$n$o$o$,%Y$Z$Q$`$`$ %.%(%=%-%)%2%7%x%0%h%h%i%m%m%m%m%m%m%m%m%$ $ ", +" $ $ @$b$;$@$;$;$!$c$c$6$6$7$7$e$r$n$N$z$o$,%G$B$B$Q$`$ %t%$%$%g%-%5%2%7%e%8%A%h%v%m%m%m%m%m%m%m%m%m%$ $ ", +" $ $ ;$5$!$c$X$c$6$6$7$7$h$e$n$n$z$z$o$,%G$Y$B$Q$z% % %.%$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ m%$ $ ", +" $ $ X$6$6$6$[$7$7$h$F$F$n$N$z$o$o$,%B$B$B$Q$`$R$$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ 7$7$h$e$e$n$n$i$i$z$z$o$,%G$/%B$Q$Q$`$$ $ $ $ $ $ $ $ $ $ $ ", +" $ $ n$n$n$n$z$z$z$o$o$,%,%G$B$B$Q$Q$$ $ $ $ $ $ $ ", +" $ $ z$z$o$z$o$o$G$G$/%/%B$Z$Q$$ $ $ $ $ $ $ ", +" $ $ A$A$G$G$G$/%B$Q$H$O$z%$ $ $ $ $ $ ", +" $ $ B$B$B$Z$Q$Q$`$`$$ $ $ $ $ $ ", +" $ $ O$`$`$`$`$R$$ $ $ $ $ $ ", +" $ $ }% % % %$ $ $ $ $ $ $ ", +" $ $ |%$%$ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ ", +" j%$ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ ", +" $ $ $ ", +" ", +" ", +" "}; diff --git a/src/Mod/Surfaces/Icons/IsoCurveIco.png b/src/Mod/Surfaces/Icons/IsoCurveIco.png new file mode 100644 index 0000000000000000000000000000000000000000..3e5dd8f9d8568050a98a642cec04cdda959e787e GIT binary patch literal 6763 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 literal 0 HcmV?d00001 diff --git a/src/Mod/Surfaces/Icons/IsoCurveIco.xcf b/src/Mod/Surfaces/Icons/IsoCurveIco.xcf new file mode 100644 index 0000000000000000000000000000000000000000..6c05b2c4f0e0a529dada67426da25ebecff9377d GIT binary patch literal 64629 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 c #009B03", +", c #006600", +"' c #1B1B1B", +") c #050505", +"! c #000000", +"~ c #171717", +"{ c #008C02", +"] c #00B005", +"^ c #00A305", +"/ c #006F01", +"( c #1D1D1D", +"_ c #4C4C4C", +": c #1F1F1F", +"< c #B5B5B5", +"[ c #B4B4B3", +"} c #B3B3B2", +"| c #B1B1B2", +"1 c #B1B0B0", +"2 c #AFAFAF", +"3 c #AEAEAE", +"4 c #ADACAC", +"5 c #ABABAB", +"6 c #AAAAAA", +"7 c #141414", +"8 c #007100", +"9 c #00AC04", +"0 c #008403", +"a c #232323", +"b c #030303", +"c c #A8A8A8", +"d c #787878", +"e c #8B8B8B", +"f c #B6B7B6", +"g c #B9B9BA", +"h c #B8B8B9", +"i c #B8B7B7", +"j c #B6B6B6", +"k c #B5B4B5", +"l c #B3B3B3", +"m c #B2B3B2", +"n c #B1B1B1", +"o c #B0B0B0", +"p c #AFAFAE", +"q c #ADADAD", +"r c #ACACAC", +"s c #A9A9A9", +"t c #A8A7A8", +"u c #A6A7A6", +"v c #A5A5A5", +"w c #010101", +"x c #00A704", +"y c #00AE05", +"z c #00AC05", +"A c #009703", +"B c #1A1A1A", +"C c #C1C2C2", +"D c #C1C1C1", +"E c #C0C1C1", +"F c #C0C0C0", +"G c #BFC0C0", +"H c #BFBFBF", +"I c #BAB9BA", +"J c #898A89", +"K c #7A7A7A", +"L c #B9B9B9", +"M c #B7B8B8", +"N c #B7B6B7", +"O c #B4B4B4", +"P c #B2B1B1", +"Q c #B0AFAF", +"R c #ADAEAD", +"S c #AAA9A9", +"T c #A7A7A7", +"U c #A6A6A5", +"V c #A4A4A4", +"W c #008A02", +"X c #00B104", +"Y c #00AD05", +"Z c #00AA06", +"` c #00A105", +" . c #007101", +".. c #006000", +"+. c #0C0C0C", +"@. c #C3C3C3", +"#. c #C4C3C3", +"$. c #C3C3C4", +"%. c #C3C4C3", +"&. c #C3C2C3", +"*. c #C2C1C2", +"=. c #C1C1C2", +"-. c #BFC0BF", +";. c #BEBEBF", +">. c #BDBDBE", +",. c #9D9C9C", +"'. c #737373", +"). c #A5A5A4", +"!. c #AFB0AF", +"~. c #AEAEAF", +"{. c #ACABAC", +"]. c #A9A9A8", +"^. c #A6A6A6", +"/. c #A4A5A4", +"(. c #A3A3A3", +"_. c #A2A2A2", +":. c #008B02", +"<. c #00B305", +"[. c #00A906", +"}. c #00A505", +"|. c #008303", +"1. c #020202", +"2. c #C2C2C3", +"3. c #C4C4C4", +"4. c #C5C5C5", +"5. c #C4C5C5", +"6. c #C5C4C4", +"7. c #BEBEBE", +"8. c #BDBEBE", +"9. c #9F9F9E", +"0. c #B8B8B8", +"a. c #B4B5B4", +"b. c #B2B2B1", +"c. c #B1B1B0", +"d. c #AAABAB", +"e. c #A4A3A3", +"f. c #A1A0A1", +"g. c #00B405", +"h. c #00A706", +"i. c #00A506", +"j. c #009404", +"k. c #006800", +"l. c #080808", +"m. c #C2C2C2", +"n. c #C3C3C2", +"o. c #C5C6C6", +"p. c #C6C6C6", +"q. c #C7C6C6", +"r. c #C6C6C5", +"s. c #C6C5C6", +"t. c #C4C5C4", +"u. c #C3C4C4", +"v. c #C3C2C2", +"w. c #C1C0C0", +"x. c #C0BFBF", +"y. c #BDBCBD", +"z. c #757575", +"A. c #9D9D9D", +"B. c #B8B8B7", +"C. c #B4B5B5", +"D. c #B3B3B4", +"E. c #B2B1B2", +"F. c #ACADAC", +"G. c #A8A9A8", +"H. c #A7A7A6", +"I. c #A3A4A4", +"J. c #A3A3A2", +"K. c #A1A1A1", +"L. c #9FA0A0", +"M. c #006700", +"N. c #007700", +"O. c #008601", +"P. c #009202", +"Q. c #009D02", +"R. c #00AC03", +"S. c #00B503", +"T. c #00B404", +"U. c #00A806", +"V. c #00A306", +"W. c #009C05", +"X. c #007702", +"Y. c #C2C2C1", +"Z. c #C2C3C2", +"`. c #C5C5C4", +" + c #C7C7C7", +".+ c #C8C8C7", +"++ c #C6C6C7", +"@+ c #C5C4C5", +"#+ c #BFBFBE", +"$+ c #BDBDBD", +"%+ c #BDBCBC", +"&+ c #ADAEAE", +"*+ c #747474", +"=+ c #B7B7B6", +"-+ c #B2B3B3", +";+ c #AFB0B0", +">+ c #ABACAB", +",+ c #A6A5A6", +"'+ c #A4A4A5", +")+ c #9E9E9F", +"!+ c #006D00", +"~+ c #007F00", +"{+ c #009200", +"]+ c #00A201", +"^+ c #00B302", +"/+ c #00C202", +"(+ c #00C803", +"_+ c #00C403", +":+ c #00C204", +"<+ c #00C004", +"[+ c #00BD04", +"}+ c #00BA04", +"|+ c #00B804", +"1+ c #00B504", +"2+ c #00AC06", +"3+ c #00A905", +"4+ c #00A406", +"5+ c #00A006", +"6+ c #009E07", +"7+ c #008A05", +"8+ c #006500", +"9+ c #C1C1C0", +"0+ c #C9C8C9", +"a+ c #C9C9C9", +"b+ c #C9C9C8", +"c+ c #C8C9C9", +"d+ c #C8C8C8", +"e+ c #C7C6C7", +"f+ c #BCBDBD", +"g+ c #BBBBBB", +"h+ c #ABABAA", +"i+ c #A0A0A0", +"j+ c #B6B5B5", +"k+ c #B1B2B2", +"l+ c #B0AFB0", +"m+ c #A8A9A9", +"n+ c #A5A4A5", +"o+ c #A2A2A1", +"p+ c #286F28", +"q+ c #276F27", +"r+ c #004700", +"s+ c #0D500D", +"t+ c #056205", +"u+ c #007D00", +"v+ c #009500", +"w+ c #00AC00", +"x+ c #00C100", +"y+ c #00D201", +"z+ c #00D601", +"A+ c #00D402", +"B+ c #00D202", +"C+ c #00D003", +"D+ c #00CD02", +"E+ c #00CB03", +"F+ c #00C603", +"G+ c #00C303", +"H+ c #00C003", +"I+ c #00BE04", +"J+ c #00BB04", +"K+ c #00B905", +"L+ c #00B704", +"M+ c #00AE06", +"N+ c #00AB05", +"O+ c #00A606", +"P+ c #00A107", +"Q+ c #009F07", +"R+ c #009B07", +"S+ c #009506", +"T+ c #007602", +"U+ c #C7C7C6", +"V+ c #C9CACA", +"W+ c #CACBCB", +"X+ c #CACBCA", +"Y+ c #CAC9CA", +"Z+ c #C7C7C8", +"`+ c #BCBBBC", +" @ c #BABABB", +".@ c #B1B2B1", +"+@ c #AEAFAE", +"@@ c #AAAAAB", +"#@ c #A8A8A7", +"$@ c #297029", +"%@ c #287028", +"&@ c #277427", +"*@ c #278627", +"=@ c #007200", +"-@ c #008600", +";@ c #25A825", +">@ c #00E100", +",@ c #00E101", +"'@ c #00DE01", +")@ c #00DC01", +"!@ c #00DA01", +"~@ c #00D801", +"{@ c #00D502", +"]@ c #00D302", +"^@ c #00D102", +"/@ c #00CE02", +"(@ c #00C903", +"_@ c #00C703", +":@ c #00C404", +"<@ c #00C104", +"[@ c #00BF04", +"}@ c #00BC04", +"|@ c #00A206", +"1@ c #009F06", +"2@ c #009C07", +"3@ c #009907", +"4@ c #009807", +"5@ c #008906", +"6@ c #006801", +"7@ c #C0C0C1", +"8@ c #C8C9C8", +"9@ c #CACACA", +"0@ c #CBCBCB", +"a@ c #CCCCCC", +"b@ c #C9CAC9", +"c@ c #C9C8C8", +"d@ c #BFBEBE", +"e@ c #BCBCBC", +"f@ c #BABBBA", +"g@ c #AEAEAD", +"h@ c #B2B2B2", +"i@ c #2A712A", +"j@ c #297D29", +"k@ c #289328", +"l@ c #28AA29", +"m@ c #28BD28", +"n@ c #27CC28", +"o@ c #27CD28", +"p@ c #27CF28", +"q@ c #00AA00", +"r@ c #21DE21", +"s@ c #00E400", +"t@ c #00E201", +"u@ c #00E001", +"v@ c #00DB01", +"w@ c #00D902", +"x@ c #00D702", +"y@ c #00CF02", +"z@ c #00CD03", +"A@ c #00CA03", +"B@ c #00B205", +"C@ c #00A207", +"D@ c #009D07", +"E@ c #009A07", +"F@ c #009808", +"G@ c #009606", +"H@ c #008004", +"I@ c #006300", +"J@ c #0F0F0F", +"K@ c #CBCACB", +"L@ c #CDCECD", +"M@ c #CECDCE", +"N@ c #CDCDCD", +"O@ c #CBCBCC", +"P@ c #BBBBBA", +"Q@ c #908F8F", +"R@ c #807F7F", +"S@ c #B0B1B1", +"T@ c #AEADAD", +"U@ c #ACADAD", +"V@ c #2A722A", +"W@ c #2A9F2A", +"X@ c #29BA2A", +"Y@ c #29C62A", +"Z@ c #28C729", +"`@ c #28CA29", +" # c #27CE28", +".# c #27D027", +"+# c #26D127", +"@# c #0BB00B", +"## c #03E603", +"$# c #00E401", +"%# c #00DF01", +"&# c #00DC02", +"*# c #00D701", +"=# c #00CF03", +"-# c #00CC02", +";# c #00C503", +"># c #00C103", +",# c #00BF03", +"'# c #00B904", +")# c #00B505", +"!# c #00AF06", +"~# c #00AA05", +"{# c #00A507", +"]# c #009D06", +"^# c #009406", +"/# c #007803", +"(# c #060606", +"_# c #C6C7C6", +":# c #CACACB", +"<# c #CFCFCE", +"[# c #C8C7C8", +"}# c #BBBABA", +"|# c #BAB9B9", +"1# c #B5B5B6", +"2# c #818181", +"3# c #8D8D8D", +"4# c #AFAEAF", +"5# c #297529", +"6# c #29BB2A", +"7# c #29C82A", +"8# c #28C929", +"9# c #28CB29", +"0# c #00AD00", +"a# c #00AF00", +"b# c #22B722", +"c# c #00E500", +"d# c #00C203", +"e# c #00BA05", +"f# c #009006", +"g# c #1C1C1C", +"h# c #C4C4C3", +"i# c #C9C9CA", +"j# c #CECECE", +"k# c #CBCCCC", +"l# c #C2C1C1", +"m# c #C0C1C0", +"n# c #BEBEBD", +"o# c #BCBCBB", +"p# c #B7B8B7", +"q# c #9F9F9F", +"r# c #B0B1B0", +"s# c #ADADAE", +"t# c #298E29", +"u# c #28C72A", +"v# c #27CF27", +"w# c #26D326", +"x# c #23E223", +"y# c #00DD01", +"z# c #00CC03", +"A# c #00C504", +"B# c #00B805", +"C# c #00A705", +"D# c #C7C8C8", +"E# c #CACAC9", +"F# c #CBCCCB", +"G# c #BFBEBF", +"H# c #BABABA", +"I# c #9E9F9E", +"J# c #AEAFAF", +"K# c #ACACAB", +"L# c #29B029", +"M# c #28C82A", +"N# c #27CC29", +"O# c #27CE27", +"P# c #26CF26", +"Q# c #26D126", +"R# c #11AE11", +"S# c #01E102", +"T# c #00B705", +"U# c #009207", +"V# c #C5C5C6", +"W# c #CBCACA", +"X# c #C6C5C5", +"Y# c #C2C3C3", +"Z# c #BEBFBE", +"`# c #858685", +" $ c #8A8A8A", +".$ c #A8A7A7", +"+$ c #298229", +"@$ c #28C629", +"#$ c #27CB28", +"$$ c #26CE27", +"%$ c #26CF27", +"&$ c #25CF26", +"*$ c #00A800", +"=$ c #00A700", +"-$ c #23B323", +";$ c #00D802", +">$ c #00D602", +",$ c #00D002", +"'$ c #00B605", +")$ c #00A106", +"!$ c #007A03", +"~$ c #B8B9B8", +"{$ c #B7B7B7", +"]$ c #B5B6B5", +"^$ c #727272", +"/$ c #A0A1A0", +"($ c #28A829", +"_$ c #28C829", +":$ c #27CA29", +"<$ c #27CC27", +"[$ c #26CC27", +"}$ c #26CD27", +"|$ c #26CD26", +"1$ c #25CC26", +"2$ c #00A600", +"3$ c #06A706", +"4$ c #05DB06", +"5$ c #00BE03", +"6$ c #C8C7C7", +"7$ c #C7C8C7", +"8$ c #C5C6C5", +"9$ c #C4C4C5", +"0$ c #B9BAB9", +"a$ c #B6B7B7", +"b$ c #979796", +"c$ c #7B7B7B", +"d$ c #287D28", +"e$ c #28C429", +"f$ c #27C829", +"g$ c #27C928", +"h$ c #27CA28", +"i$ c #26CB27", +"j$ c #26CA26", +"k$ c #25CA27", +"l$ c #00A400", +"m$ c #26AF26", +"n$ c #00AB06", +"o$ c #009E06", +"p$ c #008404", +"q$ c #111111", +"r$ c #B9B9B8", +"s$ c #B1B0B1", +"t$ c #969696", +"u$ c #ABAAAB", +"v$ c #AAA9AA", +"w$ c #A9A8A9", +"x$ c #A5A5A6", +"y$ c #28A329", +"z$ c #28C529", +"A$ c #27C729", +"B$ c #27C728", +"C$ c #26C927", +"D$ c #26C928", +"E$ c #25C926", +"F$ c #25C826", +"G$ c #25C726", +"H$ c #05A205", +"I$ c #03D505", +"J$ c #00C604", +"K$ c #00A307", +"L$ c #006C01", +"M$ c #C1C0C1", +"N$ c #A9A8A8", +"O$ c #287728", +"P$ c #27C028", +"Q$ c #27C529", +"R$ c #27C628", +"S$ c #26C628", +"T$ c #26C727", +"U$ c #25C727", +"V$ c #25C627", +"W$ c #25C526", +"X$ c #009F00", +"Y$ c #009E01", +"Z$ c #25AC25", +"`$ c #00CE03", +" % c #008D05", +".% c #161616", +"+% c #B8B9B9", +"@% c #B7B7B8", +"#% c #ADACAD", +"$% c #7E7E7E", +"%% c #919191", +"&% c #A7A7A8", +"*% c #27A028", +"=% c #27C328", +"-% c #27C428", +";% c #26C428", +">% c #26C527", +",% c #25C426", +"'% c #25C326", +")% c #24C226", +"!% c #009D01", +"~% c #039D03", +"{% c #05D008", +"]% c #00C902", +"^% c #00B604", +"/% c #007703", +"(% c #2F2F2F", +"_% c #BDBDBC", +":% c #BBBCBB", +"<% c #ACACAD", +"[% c #A5A6A5", +"}% c #A2A2A3", +"|% c #A1A2A1", +"1% c #277927", +"2% c #27C228", +"3% c #26C328", +"4% c #26C227", +"5% c #25C227", +"6% c #25C126", +"7% c #25C226", +"8% c #24C026", +"9% c #009B01", +"0% c #25A725", +"a% c #00A805", +"b% c #009C06", +"c% c #009607", +"d% c #006200", +"e% c #C0BFC0", +"f% c #BCBDBC", +"g% c #ABACAC", +"h% c #7D7D7D", +"i% c #919091", +"j% c #276E27", +"k% c #27A428", +"l% c #26C028", +"m% c #26C128", +"n% c #25C028", +"o% c #25C127", +"p% c #25C026", +"q% c #24BF27", +"r% c #24BE26", +"s% c #24BD26", +"t% c #009801", +"u% c #059A06", +"v% c #05CA07", +"w% c #008504", +"x% c #BBBABB", +"y% c #B9BABA", +"z% c #989898", +"A% c #777777", +"B% c #A0A0A1", +"C% c #278227", +"D% c #26BE28", +"E% c #26BF28", +"F% c #25BF28", +"G% c #25BE27", +"H% c #24BB25", +"I% c #009602", +"J% c #009501", +"K% c #22A323", +"L% c #00C304", +"M% c #00A904", +"N% c #00A005", +"O% c #009504", +"P% c #009204", +"Q% c #009104", +"R% c #007102", +"S% c #0D0D0D", +"T% c #BDBEBD", +"U% c #B5B5B4", +"V% c #ABAAAA", +"W% c #A2A1A1", +"X% c #26B027", +"Y% c #26BC28", +"Z% c #25BC27", +"`% c #24BB26", +" & c #24BA26", +".& c #23B926", +"+& c #23B925", +"@& c #009402", +"#& c #0D970E", +"$& c #01C404", +"%& c #00AF04", +"&& c #009803", +"*& c #007701", +"=& c #009407", +"-& c #BCBBBB", +";& c #B9B8B9", +">& c #B4B3B3", +",& c #A7A8A7", +"'& c #8F8F8F", +")& c #A09F9F", +"!& c #9E9E9E", +"~& c #9A9C9B", +"{& c #269127", +"]& c #26BA28", +"^& c #26BB28", +"/& c #25BA27", +"(& c #25B927", +"_& c #24B926", +":& c #23B726", +"<& c #23B625", +"[& c #009102", +"}& c #23BA24", +"|& c #00A304", +"1& c #008F05", +"2& c #008104", +"3& c #BABAB9", +"4& c #B9B8B8", +"5& c #ADADAC", +"6& c #ACABAB", +"7& c #717171", +"8& c #9C9D9D", +"9& c #9D9E9D", +"0& c #9C9D9C", +"a& c #266E26", +"b& c #267426", +"c& c #26B728", +"d& c #25B828", +"e& c #25B827", +"f& c #25B728", +"g& c #24B727", +"h& c #24B626", +"i& c #23B526", +"j& c #23B426", +"k& c #008F02", +"l& c #1D9A1E", +"m& c #00B204", +"n& c #008604", +"o& c #006D01", +"p& c #B6B6B7", +"q& c #B5B4B4", +"r& c #AAAAA9", +"s& c #838383", +"t& c #888889", +"u& c #9C9C9C", +"v& c #266D26", +"w& c #259E27", +"x& c #25B628", +"y& c #24B627", +"z& c #24B527", +"A& c #24B427", +"B& c #23B427", +"C& c #23B326", +"D& c #23B125", +"E& c #008E02", +"F& c #008D02", +"G& c #10BF14", +"H& c #00A903", +"I& c #007401", +"J& c #007E03", +"K& c #009206", +"L& c #B3B2B3", +"M& c #A9A9AA", +"N& c #A6A7A7", +"O& c #A1A0A0", +"P& c #9B9B9B", +"Q& c #9A9A9A", +"R& c #258126", +"S& c #25B427", +"T& c #25B428", +"U& c #24B327", +"V& c #24B326", +"W& c #23B226", +"X& c #23B126", +"Y& c #23B026", +"Z& c #22AF25", +"`& c #269A27", +" * c #009C03", +".* c #007F04", +"+* c #B3B4B3", +"@* c #AFAFB0", +"#* c #A7A6A6", +"$* c #959596", +"%* c #9C9B9C", +"&* c #9A9A9B", +"** c #99999A", +"=* c #256C25", +"-* c #25A927", +";* c #25B228", +">* c #24B127", +",* c #23AF26", +"'* c #23AE26", +")* c #22AE25", +"!* c #22AC25", +"~* c #008902", +"{* c #088C09", +"]* c #01B606", +"^* c #007002", +"/* c #B2B2B3", +"(* c #A5A6A6", +"_* c #868685", +":* c #9A9999", +"<* c #999999", +"[* c #939693", +"}* c #259126", +"|* c #24B028", +"1* c #24AF27", +"2* c #24AE26", +"3* c #23AD26", +"4* c #23AC25", +"5* c #22AA25", +"6* c #008703", +"7* c #008602", +"8* c #23B927", +"9* c #009702", +"0* c #006A01", +"a* c #009106", +"b* c #A4A4A3", +"c* c #A3A2A3", +"d* c #9C9C9D", +"e* c #9C9B9B", +"f* c #999998", +"g* c #979797", +"h* c #979696", +"i* c #257925", +"j* c #24AD28", +"k* c #24AE27", +"l* c #24AD27", +"m* c #23AC26", +"n* c #23AB27", +"o* c #23AB26", +"p* c #22AB25", +"q* c #22A925", +"r* c #22A825", +"s* c #21A725", +"t* c #008503", +"u* c #208321", +"v* c #006400", +"w* c #007E04", +"x* c #101010", +"y* c #AFAEAE", +"z* c #ABABAC", +"A* c #939393", +"B* c #9A9B9B", +"C* c #246C25", +"D* c #24A327", +"E* c #24AA28", +"F* c #23AA27", +"G* c #23A926", +"H* c #22A826", +"I* c #22A726", +"J* c #21A625", +"K* c #004A00", +"L* c #0B650B", +"M* c #009706", +"N* c #006B01", +"O* c #AAABAA", +"P* c #A7A8A8", +"Q* c #848484", +"R* c #9A999A", +"S* c #999898", +"T* c #979897", +"U* c #979697", +"V* c #959495", +"W* c #919392", +"X* c #246B24", +"Y* c #249126", +"Z* c #24A927", +"`* c #23A927", +" = c #23A827", +".= c #23A726", +"+= c #22A525", +"@= c #21A425", +"#= c #219A25", +"$= c #004B00", +"%= c #236023", +"&= c #009107", +"*= c #A4A5A5", +"== c #A1A2A2", +"-= c #9F9FA0", +";= c #767776", +">= c #949594", +",= c #248025", +"'= c #23A627", +")= c #23A727", +"!= c #23A626", +"~= c #22A626", +"{= c #22A426", +"]= c #22A325", +"^= c #219D24", +"/= c #217021", +"(= c #206820", +"_= c #008C05", +":= c #A2A3A2", +"<= c #A2A1A2", +"[= c #A1A1A0", +"}= c #9F9E9E", +"|= c #9E9E9D", +"1= c #9B9B9C", +"2= c #6F6F6F", +"3= c #959595", +"4= c #969695", +"5= c #939493", +"6= c #929292", +"7= c #247023", +"8= c #23A427", +"9= c #23A327", +"0= c #22A326", +"a= c #22A226", +"b= c #21A025", +"c= c #217622", +"d= c #216821", +"e= c #A5A4A4", +"f= c #A09FA0", +"g= c #9D9C9D", +"h= c #797979", +"i= c #939494", +"j= c #919292", +"k= c #236B23", +"l= c #239927", +"m= c #23A227", +"n= c #22A227", +"o= c #22A127", +"p= c #22A026", +"q= c #219F26", +"r= c #217F23", +"s= c #828282", +"t= c #A4A3A4", +"u= c #9FA09F", +"v= c #7E7F7E", +"w= c #949494", +"x= c #929192", +"y= c #909191", +"z= c #236A23", +"A= c #238A25", +"B= c #239F26", +"C= c #229F27", +"D= c #229F26", +"E= c #218524", +"F= c #838382", +"G= c #818282", +"H= c #808180", +"I= c #A8A8A9", +"J= c #9E9D9D", +"K= c #9B9A9B", +"L= c #999A9A", +"M= c #979798", +"N= c #8D8E8D", +"O= c #909090", +"P= c #8E8F8F", +"Q= c #237B24", +"R= c #229E27", +"S= c #229D26", +"T= c #218E25", +"U= c #216921", +"V= c #7F7F7F", +"W= c #006F02", +"X= c #A1A1A2", +"Y= c #A0A1A1", +"Z= c #9B9C9B", +"`= c #989897", +" - c #969796", +".- c #949495", +"+- c #929393", +"@- c #919192", +"#- c #8E8E8F", +"$- c #8E8E8E", +"%- c #227022", +"&- c #229B27", +"*- c #229B26", +"=- c #229225", +"-- c #216B21", +";- c #718071", +">- c #818182", +",- c #A6A5A5", +"'- c #9F9E9F", +")- c #9D9D9E", +"!- c #9A9B9A", +"~- c #989797", +"{- c #919291", +"]- c #909190", +"^- c #226922", +"/- c #229626", +"(- c #229426", +"_- c #216E21", +":- c #838384", +"<- c #818180", +"[- c #7F8080", +"}- c #7E7E7F", +"|- c #A3A3A4", +"1- c #9E9F9F", +"2- c #999A99", +"3- c #989998", +"4- c #969697", +"5- c #969596", +"6- c #949393", +"7- c #7D7E7D", +"8- c #808080", +"9- c #8C8B8B", +"0- c #898A88", +"a- c #228D25", +"b- c #217222", +"c- c #838484", +"d- c #828382", +"e- c #818281", +"f- c #7D7E7E", +"g- c #7D7D7C", +"h- c #9D9D9C", +"i- c #959594", +"j- c #949394", +"k- c #939292", +"l- c #8F9090", +"m- c #8E8F8E", +"n- c #8C8C8C", +"o- c #217422", +"p- c #828283", +"q- c #818081", +"r- c #7C7B7C", +"s- c #202020", +"t- c #969595", +"u- c #959494", +"v- c #8A8B8B", +"w- c #898989", +"x- c #858484", +"y- c #838483", +"z- c #7C7C7C", +"A- c #7B7B7A", +"B- c #7A7A79", +"C- c #9C9C9B", +"D- c #9B9B9A", +"E- c #929392", +"F- c #929191", +"G- c #6E6E6E", +"H- c #888888", +"I- c #858584", +"J- c #828281", +"K- c #7F7E7F", +"L- c #7E7D7E", +"M- c #7D7C7D", +"N- c #9A9A99", +"O- c #979898", +"P- c #949595", +"Q- c #929291", +"R- c #878787", +"S- c #858686", +"T- c #858585", +"U- c #818080", +"V- c #7B7C7C", +"W- c #7A7B7A", +"X- c #989798", +"Y- c #959696", +"Z- c #8F8F90", +"`- c #8A8B8A", +" ; c #868686", +".; c #808081", +"+; c #7F807F", +"@; c #7A7979", +"#; c #787979", +"$; c #767676", +"%; c #9B9C9C", +"&; c #949493", +"*; c #919090", +"=; c #8F908F", +"-; c #8F8F8E", +";; c #8C8C8D", +">; c #898988", +",; c #888787", +"'; c #828182", +"); c #808181", +"!; c #7F7F80", +"~; c #7D7D7E", +"{; c #7D7C7C", +"]; c #797879", +"^; c #777878", +"/; c #767675", +"(; c #0E0E0E", +"_; c #969797", +":; c #90908F", +"<; c #8D8D8E", +"[; c #757576", +"}; c #7F7E7E", +"|; c #7E7E7D", +"1; c #7C7B7B", +"2; c #787877", +"3; c #757574", +"4; c #8E8D8D", +"5; c #8D8C8D", +"6; c #7A7A7B", +"7; c #787978", +"8; c #767576", +"9; c #757475", +"0; c #737474", +"a; c #8C8D8C", +"b; c #898A8A", +"c; c #898889", +"d; c #787879", +"e; c #747473", +"f; c #727373", +"g; c #727171", +"h; c #959695", +"i; c #939293", +"j; c #8C8B8C", +"k; c #8A8989", +"l; c #878788", +"m; c #828383", +"n; c #787777", +"o; c #727172", +"p; c #0B0B0B", +"q; c #929293", +"r; c #898888", +"s; c #878887", +"t; c #878686", +"u; c #717070", +"v; c #80807F", +"w; c #7C7D7D", +"x; c #797A7A", +"y; c #787778", +"z; c #706F70", +"A; c #868586", +"B; c #848485", +"C; c #777677", +"D; c #767575", +"E; c #747475", +"F; c #737473", +"G; c #707070", +"H; c #6F6E6F", +"I; c #8E8D8E", +"J; c #8D8D8C", +"K; c #8C8C8B", +"L; c #888788", +"M; c #79797A", +"N; c #797978", +"O; c #707170", +"P; c #6F706F", +"Q; c #6D6D6D", +"R; c #848483", +"S; c #7F7F7E", +"T; c #747575", +"U; c #737372", +"V; c #717271", +"W; c #6F7070", +"X; c #181818", +"Y; c #8B8B8A", +"Z; c #868786", +"`; c #858586", +" > c #7A797A", +".> c #747374", +"+> c #707171", +"@> c #6F6F70", +"#> c #6E6F6E", +"$> c #8D8C8C", +"%> c #8B8A8A", +"&> c #8A8A89", +"*> c #878786", +"=> c #7E7D7D", +"-> c #7C7C7D", +";> c #7B7B7C", +">> c #7B7A7A", +",> c #757676", +"'> c #717170", +")> c #6E6F6F", +"!> c #888988", +"~> c #737273", +"{> c #727271", +"]> c #70706F", +"^> c #6D6D6E", +"/> c #89898A", +"(> c #878687", +"_> c #848384", +":> c #767677", +"<> c #757474", +"[> c #6F6E6E", +"}> c #6D6E6E", +"|> c #868787", +"1> c #757675", +"2> c #848383", +"3> c #828181", +"4> c #707071", +"5> c #6F6F6E", +"6> c #848585", +"7> c #7B7C7B", +"8> c #313131", +"9> c #807F80", +"0> c #090909", +"a> c #121212", +"b> c #7C7D7C", +"c> c #7C7C7B", +"d> c #7B7A7B", +"e> c #797878", +"f> c #070707", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" . . . ", +" . . . . ", +" . . . . ", +" . . . ", +" . . . ", +" . . . ", +" + . . . ", +" + + + . . . ", +" + + + . . . ", +" + @ + + . . . ", +" + + # + + . . . ", +" + $ # + + + . . . ", +" % & * = = - - - - = ; + + $ > , + + . . . ", +" & - ' ) ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ~ ; + { ] ^ / + + . . . ", +" ( = ~ ! ! ! _ : ! ! ! ! ! < [ } | 1 2 3 4 5 6 ! ! ! ! ! 7 + 8 $ # 9 0 + + + . . ", +" % a b ! ! ! ! ! ! ! c d e f g h i j k l m n o p q r 5 s t u v ! ! w % + + x ] y z A , + + . . . ", +" ( B ! ! ! ! ! ! C D E F G H I J K o L M N j O l P n Q R 4 5 S s T U V ! ! ! a + W X # Y Z ` .+ + .. . . . ", +" a +.! ! ! ! @.#.$.%.@.&.*.=.E -.;.>.,.'.).L M f < O l n !.~.q {.6 ].c ^./.(._.! ! - + :.<.] y z [.}.|...+ + . . . ", +" = 1.! ! ! 2.%.3.3.4.4.5.6.3.#.&.*.D H 7.8.v '.9.0.N j a.l b.c.2 q r d.s c u v e._.f.! ! = + + + + + + + { g.$ # z Z h.i.j.k.+ + . . . ", +" l.! ! ! m.n.3.5.4.o.p.q.p.r.s.t.u.v.C w.x.7.y.R z.A.B.f C.D.E.o 2 3 F.5 6 G.H.v I.J.K.L.! ! & + + + + + + + M.N.O.P.Q.R.S.T.<.] Y Z U.i.V.W.X.+ + + . . ", +" = ! ! ! F Y.Z.#.`.r.q. + +.+ + +++r.@+3.m.D F #+$+%+&+*+A.=+< [ -+n ;+3 q >+6 ].T ,+'+J._.L.)+! w + + + + + + + !+~+{+]+^+/+(+_+:+<+[+}+|+1+<.] y 2+3+i.4+5+6+7+8++ + . . . ", +" ; ! ! 7.x.9+m.$.3.p. +.+0+a+a+b+c+d+e+s.`.@.m.D -.8.f+g+h+'.i+j+O } k+l+p q >+6 m+T U n+(.o+p+q+r+r+s+t+, u+v+w+x+y+z+A+B+C+D+E+(+F+G+H+I+J+K+L+<.$ M+N+[.O+V.P+Q+R+S+T++ + + . . ", +" a ! ! ! #+F Y.@.3.r.U+d+a+V+W+W+X+Y+a+Z+U+4.3.2.=.F 7.$+`+ @c '.^.k l .@o +@&+r @@s #@$@$@%@p+p+&@*@=@-@;@>@,@,@'@)@!@~@{@]@^@/@E+(@_@:@<@[@}@K+L+g.$ # z [.h.4+|@1@2@3@4@5@6@+ + + . . . ", +" % ) ! ! 7@Y.$.t.p.Z+8@9@0@a@a@a@W+b@c@ +p.3.n.Y.F d@$+e@f@L i+z.g@[ h@o 2 q r i@i@i@$@j@k@l@m@n@o@p@q@q@r@s@t@u@'@v@w@x@A+^@y@z@A@_@_+:+[@[+}+L+1+B@# 2+Z h.4+C@Q+D@E@F@4@G@H@I@+ + + . . . ", +" J@! ! m.3.5.q.d+a+K@a@L@M@N@O@9@a+.+p.3.#.m.F H 8.e@P@L 0.Q@R@h@h@S@2 T@U@V@i@W@X@Y@Z@`@`@o@ #.#+#w+@###$#,@%#&#!@*#A+B+=#-#(@_@;#>#,#}@'#L+)#$ !#z ~#h.{#C@Q+]#E@F@4@4@4@^#/#@ + + . . ", +" (#! m.%.4._#d+b@:#a@M@<#N@a@9@a+[#p.4.@.C w.H $+e@}#|#M 1#2#3#b.n 4#&+r d.i@5#6#Y@7#8#9#n@p@.#+#0#a#b#c#t@u@)@!@*#A+B+y@z@A@_@_+d#[@}@e#L+T.B@# Y [.U.i.|@Q+D@3@4@4@4@4@4@f#..+ . . . ", +" g#! ! h#4.p.d+i#W+a@N@j#N@k#X+0+d+p.4.@.l#m#H n#o#}#L p#f +@*+q#r#2 s#r 6 i@i@t#Y@u#`@9#o@ #v#+#w#0#w+x#,@%#y#!@x@A+B+y@z#A@_@A#>#[@[+}+B#T.B@# z ~#C#i.|@Q+2@E@4@F@4@F@F@T++ + . . ", +" = ! ! @+r.D#8@E#0@a@a@F#0@V+d+ +p.@+@.C F G#$+`+H#L M j O I#z.r J#q K#5 s i@$@L#u#M#`@N#o@O#P#Q#Q#q@R#S#'@)@w@x@A+B+=#-#A@_@_+d#[@[+'#T#T.B@# Y Z h.i.C@Q+2@E@4@4@4@4@U#..+ . . ", +" & ! ! V# +d+a+9@W#W+:#V+c+D#_#X#3.Y#D F Z#$+g+}#L p#j O l `# $4#q {.d.s .$$@+$@$M#`@#$n@O#$$%$&$*$=$-$y#v@;$>$]@,$/@z#(+_@_+>#[@}@'#'$T.B@M+z Z h.i.)$Q+2@3@4@4@4@4@!$+ + . . ", +" ) ! `.p.e+.+0+a+a+a+8@.+ +X#6.@.m.w.H 7.f+`+H#~${$]$O l 5 ^$/$q {.@@s c $@$@($Z@_$:$#$<$[$}$|$1$2$3$4$w@*#{@B+,$z@E+(+F+G+<+5$J+'#'$g.$ y 2+Z O+4+P+6+R+3@4@4@4@G@I@+ . . ", +" & ! ! 4.p.U+D#D#6$d+7$q.8$9$#.Z.l#F Z#>.e@g+0$0.a$j+D.l n b$c$K#>+6 m+T v $@d$e$Z@f$g$h$i$i$j$k$l$l$m$*#{@]@^@y@-#A@_@;#G+<+I+J+B#)#<.] Y n$3+O+4+P+o$R+3@4@4@4@p$+ + . . ", +" q$! u.4.X#s.p.++U+p.4.`.3.n.l#w.-.7.$+`+H#r$B.j < l h@s$+@c$t$u$v$w$T x$$@%@y$z$A$B$C$D$C$E$F$G$]+H$I$A+^@y@z@A@(@J$:@>#[@}@e#L+1+<.!#Y ~#h.i.K$5+o$R+4@F@4@4@L$+ . . ", +" % ! ! $.3.3.4.4.6.@+3.#.Z.m.M$-.G#$+e@f@|#0.=+]$O l E.o 2 A.z.N$S #@u v I.p+O$P$Q$R$S$T$T$U$V$W$X$Y$Z$^@,$`$z#(@_@;#G+H+I+J+'#'$g.B@# z 3+C#4+|@1@D@E@4@4@4@ %+ + . . ", +" .%! m.&.@.@.$.#.@.2.m.D w.G Z#>.e@g+H#+%@%f < D.} n o 3 #%$%%%s &%^.n+(.p+p+*%=%-%;%>%>%W$,%'%)%!%~%{%/@z#]%(+F+_+<@[@}@}+B#^%<.$ M+2+[.h.4+P+Q+2@E@4@4@F@/%+ . . ", +" (%! ! D m.*.m.m.Y.*.9+F H Z#8._%:%H#L 0.=+1#O l h@o 2 3 <%A.*+^.H.[%/.}%|%p+1%P$2%3%4%5%5%6%7%8%9%9%0%-#A@(+F+:@:+,#5$J+'#'$)#B@# Y ~#a%O+V.)$6+b%3@F@4@c%d%+ . . . ", +" .%! G F 9+F E 7@e%G #+7.8.f%:%H#|#h {$j k l } n ;+3 q g%6 h%i%T v V _.K.p+j%k%l%l%m%n%o%p%q%r%s%t%u%v%_@F+:@d#<+I+}@e#|+1+<.$ y z [.h.i.|@1@D@R+4@4@4@w%+ + . . ", +" g#! ! H H H H H G#7.$+$+e@g+x%y%h {$j < O l E.r#2 &+r 5 6 z%A%v '+(._.B%q#j%C%D%E%E%F%G%G%r%s%H%I%J%K%;#:@L%<+I+}@}+B#T#g.B@# Y M%N%O%P%Q%o$D@3@4@4@F@R%+ . . ", +" S%! 8.7.8.8.T%$+_%e@:%g+H#L 0.0.j j+U%l k+r#l+~.q r V%S T A%t$V }%W%i+9.j%j%X%Y%Z%Z%Z%Z%`% &.&+&@&#&$&:+H+[@[+J+'#^%g.B@%&&&*&+ + + + + G@R+3@4@F@=&..+ . . ", +" * ! ! e@e@%+e@o#-&P@H#|#;&0.{$f ]$O >&} n o p T@r 5 6 N$,&'&h%(.}%K.)&!&~&j%{&]&^&/&/&(&_&_&:&<&P.[&}&<+5$[+J+'#T#)#<.|&/ + + + + 1&3@4@F@4@2&+ + . . . ", +" ! ! g+}#g+x%f@3&3&L 4&{${$j < O >&h@P o 2 &+5&6&@@s c T _.7&8&o+i+9.9&0&a&b&c&d&e&f&g&g&h&i&j&j&k&l&I+}@J+'#L+1+m&{ @ + + + n&3@4@4@4@o&+ . . ", +" & ! L g L L r$~$0.{${$p&]$q&O l h@.@1 2 3 q g%5 r&c T U ).s&t&K.L.!&0&u&a&v&w&x&x&y&z&A&B&j&C&D&E&F&G&}+'#T#1+H&I&+ + + + J&4@4@F@K&+ + . . ", +" ! ! 0.p#B.M {$a$j j+< a.[ L&h@n o 2 3 q r 5 M&]..$N&v (.t$z.O&q#!&0&P&Q&v&R&S&T&U&V&U&W&X&Y&Z&{ :.`&L+'$)# *I@+ + + X.4@F@4@.*+ . . ", +" ) ! f j j j j 1#< O +*l h@.@c.@*2 3 T@<%h+6 ].#@#*U /.(._.*+$*I#A.%*&***v&=*-*;*>*>*>*Y&,*'*)*!*~*{*]*g.&&@ + + + ^*4@4@4@L$+ . . ", +" - ! ! < < q&O O D.l /*b.n r#o J#3 q r 5 6 s c T (*n+(._.K._*s&A.0&P&:*<*[*=*}*|*1*1*2*'*3*4*!*5*6*7*8*9*..+ + + 0*4@4@a*+ + . . . ", +" ! ! +*>&D.L&-+h@| P n o 2 3 g@#%g%5 v$m+t T ^./.b*c*K.O&t$'.d*e*Q&f*g*h*=*i*j*k*l*m*n*o*p*q*r*s*t*u*..+ + v*4@4@w*+ . . ", +" x*! h@k+k+n n c.r#l+2 y*g@q r z*5 6 ].c T ^.v I.(._.O&)&!&'.A*B***z%g*t$=*C*D*E*F*F*G*H*H*I*J*J*X.K*L*.. + + M*4@N*+ . . ", +" - ! ! s$o o ;+!.J#y*R q U@r 5 O*v$w$P*T ^.v V (.o+K.L.I#!&2#Q*R*S*T*U*V*W*X*Y*Z*`* =.=I*I*+=@=#=$=r+%= + a*&=+ + . . ", +" ! ! 2 2 y*3 3 R q #%r g%d.s s c t ^.U *=I.(.==/$-=)+9&u&'&;=<*z%U*$*>=A*X*,='=)=!=~={={=]=^=/=(=r+q$ + _=.*+ . . ", +" +.! q s#R q F.r >+5 @@6 r&G.t T ^.v '+V :=<=[=i+}=|=0&1=z%2=3=g*4=3=5=6=X*7=8=8=9=0=0=a=b=c=d=(=! ! + n&o&+ . . ", +" = ! r r {.{.>+5 d.M&S s c T #*^.x$e=(.:=_.[=f=)+|=g=u&Q&**h= $t$3=i=A*j=X*k=l=m=n=o=p=q=r=d=d=s=! ! - + H@+ + . . ", +" ! ! 5 @@6 r&s m+G.P*T T ^.(*'+t=(.:=K./$u=9.!&A.%*P&**S*Q*v=$*w=A*x=y='&z=A=B=C=D=D=E=d=d=F=G=H=! x* + !$+ . . ", +" ! ! s s s I=c &%T N&^.U v V b*J._.K.i+q#9.J=u&%*K=L=S*M=N=*+w=A*6=y=O=P=z=Q=R=R=S=T=U=d=s&s=2#V=! ! + W=+ . . ", +" B ! T &%T #*H.u [%x$/.V e.(.:=X=Y=i+q#!&A.8&Z=Q&<*f*`= -.-2=O=+-@-O=#-$-z=%-&-*-=---d=;-s&>-H=V=! ! * + ..+ . . ", +" - ! ! ^.^.(*,-v '+V e.(._.|%K.i+u='-!&)-u&e*!-<*<*~-t$4=V*z.t&{-]-'&$-3#z=^-/-(-_-d=d=:-s=<-[-}-h%! .% + + + . . ", +" ! ! V e=V b*|-(.(.|%_.K.O&f=q#1-A.g=u&P&Q&2-3-g*4-5->=6-7-8-O='&$-3#9-0-^-a-b-d=d=c-d-e-8-V=f-g-! ! + + . . ", +" 1.! |-c*_.}%_.==K.B%/$-=q#I#!&h-0&P&K=Q&<*S*g*t$4=i-j-k-Q*d l-m-3#n-e $^-o-d=d=Q*p-G=q-V=$%h%r-! ! & + + . . ", +" s-! <=<=K.B%K.i+L.q#q#!&J=A.u&P&P&!-**<*z%g*t$t-u-A*6=x=v-7&$-3#n-e $w-^-U=d=x-y-s=<-R@$%h%z-A-B-! ( + + . . ", +" a ! ! i+i+-=u=9.}=!&A.g=8&C-P&D-Q&<*z%g*4-4=3=w=A*E-F-]-m-G-e n-e $w-H-U=d=I-:-s=J-8-K-L-M-c$K h=! ! . . ", +" ! ! 9.1-!&|=!&A.d*u&Z=P&&*N-<*S*O-U*t$$*P-j-A*Q-%%O=Q@$-'.`#e $J H-R-S-T-Q*s&e-U-V=$%g-V-W-h=d ! ! . . ", +" ! ! J=A.A.,.C-%*P&!-!-2-<*3-X-O-t$Y-V*>=5=6=j=%%Z-'&$-3#d V=`-w-H-R- ;T-c-s&>-.;+;}-h%V-c$@;#;A%$;! = . . ", +" .%! %;Z=Z=P&&*&*Q&<*f*f*X-~-U*t$5-w=&;A*+-Q-*;=;-;$-3#;;z-K w->;,; ;T-Q*s&';);!;v=~;{;c$K ];^;$;/;! (; . . ", +" - ! Q&Q&L=L=<*f*z%z%X-g*_;4=3=>=&;&;E-x=y=O=:;-;<;3#n-e 8-[;H-R- ;T-Q*s&s=2#8-};|;z-1;A-h=2;A%[;3;! ! . . ", +" & ! ! <*z%z%`=X-g*g*t$$*3=P-i=A*+-6=F-%%O='&$-4;5;n-e $F=^$R- ;T-Q*s&s=2#8-V=f-g-V-6;h=7;A%8;9;0;! ! ( ", +" ! ! g*g*b$_;t$Y-3=V*w=w=A*6=6=Q-O=O='&P=4;3#a;e e b;c; ;G- ;T-Q*s&s=q-8-V=$%g-r-K @;d;A%$;z.e;f;g;! - ", +" ! ! Y-$*h;3=i-w=&;A*+-i;6=%%i%O=Z-m-$-3#5;j;e $k;H-l;R-G-m;Q*s&';2#8-V=f-M-1;c$K #;n;$;[;*+'.o;7&! J@ ", +" p;! w=w=&;5=A*A*q;6=%%y=O=O=:;'&$-4;3#n-9- $b;w-r;s;t;S-u;v;p-s=2#v;V=$%w;z-c$x;h=y;A%z.*+'.^$7&z;! ! ", +" & ! E-E-q;6=6=Q-%%i%]-O='&#-$-3#3#n-n-e $k;t&H-R- ;A;B;'.z-s=H=8-K-L-g-z-c$B-h=2;C;D;E;F;^$7&G;H;! ! s- ", +" - ! x=F-%%%%O=O=l-'&-;#-I;<;J;n-K;e $k;c;H-L; ; ;T-Q*s&E;M;U-8-V=f-g-z-c$K N;y;A%8;E;F;^$g;O;P;G-Q;! = ", +" ( ! ! l-Z-Q@#-'&$-$-4;3#n-j;e e $J c;H-H-R- ;`#I-R;m;p-$;A%+;S;L-w;V-c$B-#;^;C;$;T;*+U;V;G;W;G-Q;Q;! X; ", +" ! ! P=$-$-$-N=3#J;n-9-e Y; $J w-r;l;R-Z;`;T-Q*s&p-G=2#A%z.};L-z-z-W- >d;d A%8;*+.>f;V;+>@>#>Q;Q;Q;! w ", +" ! ! 3#3#;;$>j;9-e `-%>&>w-r;r;L;*>*> ;T-x-s&F=s=e-U-V=d '.=>->;>>>x;#;y;$;,>9;e;f;o;'>@>)>Q;Q;Q;Q;! ! ", +" ! ! 9-9-e e v- $w-&>!>t&H-,;R-Z;_*T-Q*Q*F=p-s=2#8-+;}-^;^$z-c$K h=#;A%A%z.3;.>~>{>+>]>H;^>Q;Q;Q;Q;! ! ", +" (#! $b;/>w-w-w-!>H-R-(> ; ;`#T-Q*_>s&m;G=2#.;8-V=$%h%d G;c$ >h=d ^;:>8;<>F;'.V;'>W;[>}>Q;Q;Q;Q;Q;Q;! * ", +" ~ ! H-H-t&H-H-l;(>|> ;`;T-I-Q*c-s&d-s=2#);R@V=v=L-M-z-A%2=x;h=2;A%$;1>*+'.~>o;G;W;[>Q;Q;Q;Q;Q;Q;Q;Q;! a ", +" & ! R-*>t;|> ; ;`#T-T-Q*c-2>s&s=>-3>q-8-V=S;$%h%w;V-c$A%2=d d :>$;z.*+'.^$7&4>W;5>Q;Q;Q;Q;Q;Q;Q;Q;Q;! x* ", +" - ! ;A;`#T-I-6>Q*c-s&s&d-s=2#2#8-8-V=S;$%~;h%z-7>K x;^;8>! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! Q;! ! ", +" - ! I-Q*c-c-R;s&s&F=J-e-2#q-8-9>V=S;=>=>w;z-c$A-! ! ! ! ! ! ! X;- = = * & % % a = a 7 ! ! ! ! ! ! ", +" a ! s&s&d-s=s=2#2#<-<-8-8-V=v=$%|;h%{;z-c$! ! ! ! ! 0>- s- - a>! ", +" & ! 2#2#2#);8-8-8-9>V=v=S;f-h%h%z-z-! ! ! ! ! q$- ", +" : ! 8-8-9>+;V=V=};$%|;7-h%->z-! ! ! ! ! & s- ", +" % ! K-K-$%$%$%|;h%z-b>r-c>! ! ! ! B : ", +" & ! h%w;h%M-z-z-c$c$! ! ! ! l.- ", +" * ! ;>1;c$c$c$A-! ! ! ! x*& ", +" = ! d>K K x;! ! ! ! % ", +" - ! N;e>! ! ! w = ", +" ; ! ! ! ! b = ", +" p;! ! f>a ", +" ! f>- ", +" s-: ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/src/Mod/Surfaces/Icons/Makefile.am b/src/Mod/Surfaces/Icons/Makefile.am new file mode 100644 index 0000000000..c2f8c716d5 --- /dev/null +++ b/src/Mod/Surfaces/Icons/Makefile.am @@ -0,0 +1,25 @@ +datadir = $(prefix)/Mod/Surfaces/Icons + +data_DATA = \ + BorderIco.png \ + BorderIco.xpm \ + ConvertIco.png \ + ConvertTo4SidesIco.xpm \ + Ico.xcf \ + IsoCurveIco.png \ + IsoCurveIco.xpm \ + SliceIco.png \ + SliceIco.xpm \ + BorderIco.xcf \ + ConvertIco.xcf \ + Ico.png \ + Ico.xpm \ + IsoCurveIco.xcf \ + SliceIco.xcf + +CLEANFILES = $(BUILT_SOURCES) + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt + diff --git a/src/Mod/Surfaces/Icons/SliceIco.png b/src/Mod/Surfaces/Icons/SliceIco.png new file mode 100644 index 0000000000000000000000000000000000000000..c5f29a85c37c6f06c7acc64a7b0eee6762b83b58 GIT binary patch literal 5547 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 J{*wQ7{tInpL!1Br literal 0 HcmV?d00001 diff --git a/src/Mod/Surfaces/Icons/SliceIco.xpm b/src/Mod/Surfaces/Icons/SliceIco.xpm new file mode 100644 index 0000000000..64a796a3fe --- /dev/null +++ b/src/Mod/Surfaces/Icons/SliceIco.xpm @@ -0,0 +1,865 @@ +/* XPM */ +static char * SliceIco_xpm[] = { +"128 128 734 2", +" c None", +". c #008F00", +"+ c #009100", +"@ c #008700", +"# c #007800", +"$ c #007700", +"% c #009900", +"& c #007B00", +"* c #007500", +"= c #007400", +"- c #007F00", +"; c #008D00", +"> c #008000", +", c #007900", +"' c #009F00", +") c #009000", +"! c #007D00", +"~ c #007600", +"{ c #008100", +"] c #008A00", +"^ c #008E00", +"/ c #009300", +"( c #009E00", +"_ c #00B200", +": c #00D600", +"< c #009400", +"[ c #00A100", +"} c #008800", +"| c #007A00", +"1 c #008300", +"2 c #00A500", +"3 c #00C000", +"4 c #00EA00", +"5 c #00FF00", +"6 c #009D00", +"7 c #007C00", +"8 c #008900", +"9 c #00E700", +"0 c #00FD00", +"a c #00FE00", +"b c #009C00", +"c c #00A700", +"d c #007300", +"e c #00A000", +"f c #00C200", +"g c #00F400", +"h c #00F700", +"i c #00FA00", +"j c #00A300", +"k c #007000", +"l c #00C100", +"m c #00DF00", +"n c #00E900", +"o c #00EF00", +"p c #008200", +"q c #008500", +"r c #007100", +"s c #007E00", +"t c #00AE00", +"u c #00CA00", +"v c #00D400", +"w c #00D700", +"x c #00DE00", +"y c #00E800", +"z c #00F600", +"A c #008C00", +"B c #008600", +"C c #007200", +"D c #008400", +"E c #00A900", +"F c #00BE00", +"G c #00C500", +"H c #00CC00", +"I c #00DA00", +"J c #00ED00", +"K c #009200", +"L c #00AD00", +"M c #00B700", +"N c #00C600", +"O c #00D800", +"P c #009800", +"Q c #00A800", +"R c #00BA00", +"S c #00D100", +"T c #00F200", +"U c #00B500", +"V c #00D500", +"W c #00FC00", +"X c #00EE00", +"Y c #00A200", +"Z c #00C900", +"` c #00EB00", +" . c #00F300", +".. c #00FB00", +"+. c #008B00", +"@. c #00E300", +"#. c #00F100", +"$. c #02FF02", +"%. c #03FF03", +"&. c #05F805", +"*. c #00BF00", +"=. c #05FF05", +"-. c #01FF01", +";. c #000000", +">. c #2DEC2D", +",. c #2DEC2C", +"'. c #2CEB2C", +"). c #2BEA2B", +"!. c #2AE92A", +"~. c #BDBDBD", +"{. c #BCBDBD", +"]. c #BCBCBC", +"^. c #BABBBA", +"/. c #FF0000", +"(. c #2AE82A", +"_. c #29E829", +":. c #C1C2C2", +"<. c #C1C1C1", +"[. c #C0C1C1", +"}. c #C0C0C0", +"|. c #BFC0C0", +"1. c #BFBFBF", +"2. c #BEBDBE", +"3. c #BCBDBC", +"4. c #BBBBBB", +"5. c #BABABA", +"6. c #2CEA2B", +"7. c #C3C3C3", +"8. c #C4C3C3", +"9. c #C3C3C4", +"0. c #C3C4C3", +"a. c #C3C2C3", +"b. c #C2C1C2", +"c. c #C1C1C2", +"d. c #BFC0BF", +"e. c #BEBEBF", +"f. c #BDBDBE", +"g. c #BDBCBC", +"h. c #BCBBBB", +"i. c #BABAB9", +"j. c #B9B9B9", +"k. c #2BEB2B", +"l. c #2BE92B", +"m. c #28E728", +"n. c #C2C2C3", +"o. c #C4C4C4", +"p. c #C5C5C5", +"q. c #C4C5C5", +"r. c #C5C4C4", +"s. c #BEBEBE", +"t. c #BDBEBE", +"u. c #BBBABA", +"v. c #B8B8B8", +"w. c #29E728", +"x. c #C2C2C2", +"y. c #C3C3C2", +"z. c #C5C6C6", +"A. c #C6C6C6", +"B. c #C7C6C6", +"C. c #C6C6C5", +"D. c #C6C5C6", +"E. c #C4C5C4", +"F. c #C3C4C4", +"G. c #C3C2C2", +"H. c #C1C0C0", +"I. c #C0BFBF", +"J. c #BDBCBD", +"K. c #BBBCBB", +"L. c #B8B8B9", +"M. c #B8B8B7", +"N. c #28E829", +"O. c #27E728", +"P. c #C2C2C1", +"Q. c #C2C3C2", +"R. c #C5C5C4", +"S. c #C7C7C7", +"T. c #C8C8C7", +"U. c #C6C6C7", +"V. c #C5C4C5", +"W. c #BFBFBE", +"X. c #BABBBB", +"Y. c #BAB9BA", +"Z. c #B8B7B8", +"`. c #B7B7B6", +" + c #2BEB2C", +".+ c #2AEA2A", +"++ c #27E627", +"@+ c #C1C1C0", +"#+ c #C9C8C9", +"$+ c #C9C9C9", +"%+ c #C9C9C8", +"&+ c #C8C9C9", +"*+ c #C8C8C8", +"=+ c #C7C6C7", +"-+ c #B7B7B7", +";+ c #B6B5B5", +">+ c #2CEA2C", +",+ c #C7C7C6", +"'+ c #C9CACA", +")+ c #CACBCB", +"!+ c #CACBCA", +"~+ c #CAC9CA", +"{+ c #C7C7C8", +"]+ c #BCBBBC", +"^+ c #BABABB", +"/+ c #B9B8B9", +"(+ c #B6B6B6", +"_+ c #B5B4B5", +":+ c #2AE929", +"<+ c #C0C0C1", +"[+ c #C8C9C8", +"}+ c #CACACA", +"|+ c #CBCBCB", +"1+ c #CCCCCC", +"2+ c #C9CAC9", +"3+ c #C9C8C8", +"4+ c #BFBEBE", +"5+ c #B5B5B4", +"6+ c #B4B4B3", +"7+ c #04F204", +"8+ c #CBCACB", +"9+ c #CDCECD", +"0+ c #CECDCE", +"a+ c #CDCDCD", +"b+ c #CBCBCC", +"c+ c #BBBBBA", +"d+ c #B7B6B6", +"e+ c #B5B4B4", +"f+ c #B3B3B3", +"g+ c #B2B2B2", +"h+ c #26E526", +"i+ c #C6C7C6", +"j+ c #CACACB", +"k+ c #CFCFCE", +"l+ c #C8C7C8", +"m+ c #BAB9B9", +"n+ c #B7B8B8", +"o+ c #B6B6B7", +"p+ c #B5B5B5", +"q+ c #B3B3B4", +"r+ c #B2B2B1", +"s+ c #29E929", +"t+ c #C4C4C3", +"u+ c #C9C9CA", +"v+ c #CECECE", +"w+ c #CBCCCC", +"x+ c #C2C1C1", +"y+ c #C0C1C0", +"z+ c #BEBEBD", +"A+ c #BCBCBB", +"B+ c #B7B8B7", +"C+ c #B6B7B6", +"D+ c #B4B5B4", +"E+ c #B0B1B0", +"F+ c #28E729", +"G+ c #C7C8C8", +"H+ c #CACAC9", +"I+ c #CBCCCB", +"J+ c #BFBEBF", +"K+ c #B4B4B4", +"L+ c #B3B4B3", +"M+ c #B0B0B0", +"N+ c #AEAFAF", +"O+ c #C5C5C6", +"P+ c #CBCACA", +"Q+ c #C6C5C5", +"R+ c #C2C3C3", +"S+ c #BEBFBE", +"T+ c #B1B2B1", +"U+ c #AFAEAF", +"V+ c #ADADAD", +"W+ c #2AE829", +"X+ c #25E425", +"Y+ c #B8B9B8", +"Z+ c #B5B6B5", +"`+ c #B1B1B1", +" @ c #AEAFAE", +".@ c #27E526", +"+@ c #26E525", +"@@ c #C8C7C7", +"#@ c #C7C8C7", +"$@ c #C5C6C5", +"%@ c #C4C4C5", +"&@ c #B9BAB9", +"*@ c #B6B7B7", +"=@ c #B0B0AF", +"-@ c #AEAEAE", +";@ c #ADADAC", +">@ c #ABACAB", +",@ c #27E527", +"'@ c #26E425", +")@ c #B9B9B8", +"!@ c #B1B0B1", +"~@ c #AFB0AF", +"{@ c #ADACAC", +"]@ c #ABAAAB", +"^@ c #28E627", +"/@ c #26E527", +"(@ c #C1C0C1", +"_@ c #B2B1B2", +":@ c #AFAFAF", +"<@ c #AEADAE", +"[@ c #ACACAC", +"}@ c #ABAAAA", +"|@ c #AAA9A9", +"1@ c #27E727", +"2@ c #25E325", +"3@ c #B8B9B9", +"4@ c #B7B7B8", +"5@ c #B3B3B2", +"6@ c #ADACAD", +"7@ c #AAAAAB", +"8@ c #A9A9A9", +"9@ c #A7A7A8", +"0@ c #24E324", +"a@ c #084808", +"b@ c #BDBDBC", +"c@ c #B5B5B6", +"d@ c #ACACAD", +"e@ c #ABABAB", +"f@ c #A9AAAA", +"g@ c #A8A8A8", +"h@ c #A7A7A6", +"i@ c #C0BFC0", +"j@ c #AFB0B0", +"k@ c #ABACAC", +"l@ c #AAAAAA", +"m@ c #A8A7A8", +"n@ c #A7A7A7", +"o@ c #A5A5A5", +"p@ c #BBBABB", +"q@ c #B9BABA", +"r@ c #ADAEAE", +"s@ c #A6A6A6", +"t@ c #A4A4A5", +"u@ c #BDBEBD", +"v@ c #B1B2B2", +"w@ c #B0AFB0", +"x@ c #AEAEAF", +"y@ c #A6A7A6", +"z@ c #A5A6A5", +"A@ c #A4A4A4", +"B@ c #25E526", +"C@ c #25E424", +"D@ c #23E224", +"E@ c #23E223", +"F@ c #B4B3B3", +"G@ c #AFAFAE", +"H@ c #AEADAD", +"I@ c #A9A8A8", +"J@ c #A7A8A7", +"K@ c #A4A5A5", +"L@ c #A3A3A3", +"M@ c #A2A2A3", +"N@ c #25E324", +"O@ c #04E804", +"P@ c #B9B8B8", +"Q@ c #B2B1B1", +"R@ c #ACABAB", +"S@ c #A5A4A4", +"T@ c #A2A3A3", +"U@ c #A2A2A1", +"V@ c #B9B9BA", +"W@ c #B1B0B0", +"X@ c #AAAAA9", +"Y@ c #A6A6A5", +"Z@ c #A5A5A4", +"`@ c #A1A1A1", +" # c #9FA0A0", +".# c #25E525", +"+# c #24E424", +"@# c #23E324", +"## c #23E122", +"$# c #B3B2B3", +"%# c #A9A9AA", +"&# c #A9A9A8", +"*# c #A8A7A7", +"=# c #A6A7A7", +"-# c #A2A2A2", +";# c #A1A0A0", +"># c #9F9F9F", +",# c #22E122", +"'# c #B1B1B0", +")# c #AFAFB0", +"!# c #ABABAA", +"~# c #A8A8A7", +"{# c #A7A6A6", +"]# c #A4A5A4", +"^# c #9F9FA0", +"/# c #9E9F9E", +"(# c #9D9D9D", +"_# c #23E123", +":# c #B2B2B3", +"<# c #A5A6A6", +"[# c #A5A4A5", +"}# c #A0A09F", +"|# c #9F9E9F", +"1# c #9C9D9C", +"2# c #24E325", +"3# c #24E223", +"4# c #23E222", +"5# c #B2B3B3", +"6# c #B1B1B2", +"7# c #AEAEAD", +"8# c #AAA9AA", +"9# c #A8A9A9", +"0# c #A4A4A3", +"a# c #A3A2A3", +"b# c #9D9E9E", +"c# c #9C9C9D", +"d# c #9C9B9B", +"e# c #21E021", +"f# c #AFAEAE", +"g# c #ABABAC", +"h# c #A3A4A4", +"i# c #A09F9F", +"j# c #9E9E9E", +"k# c #9C9C9C", +"l# c #9A9B9B", +"m# c #99999A", +"n# c #23E323", +"o# c #21E022", +"p# c #ADAEAD", +"q# c #ACADAD", +"r# c #AAABAA", +"s# c #A9A8A9", +"t# c #A7A8A8", +"u# c #9C9D9D", +"v# c #9B9B9B", +"w# c #9A999A", +"x# c #999898", +"y# c #24E224", +"z# c #AAABAB", +"A# c #A1A2A2", +"B# c #A0A1A0", +"C# c #9E9E9F", +"D# c #9D9E9D", +"E# c #9B9C9B", +"F# c #9A9B9A", +"G# c #999999", +"H# c #989898", +"I# c #22E222", +"J# c #22E021", +"K# c #20E020", +"L# c #ADADAE", +"M# c #ACADAC", +"N# c #A8A9A8", +"O# c #A2A3A2", +"P# c #A2A1A2", +"Q# c #A1A1A0", +"R# c #A0A0A0", +"S# c #9F9E9E", +"T# c #9E9E9D", +"U# c #9B9B9C", +"V# c #9A9A9A", +"W# c #979797", +"X# c #24E323", +"Y# c #20DF20", +"Z# c #ACABAC", +"`# c #A5A5A6", +" $ c #A09FA0", +".$ c #9D9C9D", +"+$ c #969696", +"@$ c #959595", +"#$ c #21DF21", +"$$ c #A4A3A4", +"%$ c #9FA09F", +"&$ c #9F9F9E", +"*$ c #9C9B9C", +"=$ c #969796", +"-$ c #959596", +";$ c #949494", +">$ c #A8A8A9", +",$ c #A3A3A2", +"'$ c #9E9D9D", +")$ c #9B9A9B", +"!$ c #999A9A", +"~$ c #979798", +"{$ c #939393", +"]$ c #1FDE1F", +"^$ c #A4A3A3", +"/$ c #A1A1A2", +"($ c #A0A1A1", +"_$ c #999998", +":$ c #989897", +"<$ c #929393", +"[$ c #22E022", +"}$ c #A6A5A5", +"|$ c #A1A2A1", +"1$ c #9D9D9E", +"2$ c #989797", +"3$ c #969695", +"4$ c #959495", +"5$ c #929293", +"6$ c #919291", +"7$ c #909190", +"8$ c #20DF21", +"9$ c #1FDF20", +"0$ c #A3A3A4", +"a$ c #9E9F9F", +"b$ c #999A99", +"c$ c #989998", +"d$ c #969697", +"e$ c #969596", +"f$ c #949594", +"g$ c #949393", +"h$ c #929392", +"i$ c #919191", +"j$ c #909090", +"k$ c #8F8F8F", +"l$ c #20E021", +"m$ c #A0A0A1", +"n$ c #9D9D9C", +"o$ c #959594", +"p$ c #949394", +"q$ c #939292", +"r$ c #8F9090", +"s$ c #8E8F8E", +"t$ c #21E121", +"u$ c #1FDD1F", +"v$ c #969595", +"w$ c #959494", +"x$ c #929292", +"y$ c #929192", +"z$ c #909191", +"A$ c #8F8F90", +"B$ c #8E8E8E", +"C$ c #8D8D8D", +"D$ c #20DE1F", +"E$ c #1EDD1E", +"F$ c #9C9C9B", +"G$ c #9B9B9A", +"H$ c #929191", +"I$ c #8F908F", +"J$ c #8E8E8F", +"K$ c #8C8C8C", +"L$ c #9A9A9B", +"M$ c #9A9A99", +"N$ c #979898", +"O$ c #979697", +"P$ c #949595", +"Q$ c #929291", +"R$ c #908F8F", +"S$ c #8E8E8D", +"T$ c #8C8D8C", +"U$ c #8B8B8B", +"V$ c #8A8A8A", +"W$ c #1EDE1F", +"X$ c #059A05", +"Y$ c #9D9C9C", +"Z$ c #989798", +"`$ c #959696", +" % c #939493", +".% c #919292", +"+% c #8A8B8A", +"@% c #898989", +"#% c #1FDF1F", +"$% c #1DDC1D", +"%% c #9B9C9C", +"&% c #949493", +"*% c #919090", +"=% c #8F8F8E", +"-% c #8C8C8D", +";% c #898988", +">% c #1FDE20", +",% c #1DDD1E", +"'% c #969797", +")% c #90908F", +"!% c #8D8D8E", +"~% c #89898A", +"{% c #888888", +"]% c #878787", +"^% c #1FDD1E", +"/% c #1EDD1D", +"(% c #017501", +"_% c #939494", +":% c #8E8D8D", +"<% c #8D8C8D", +"[% c #868686", +"}% c #1CDC1D", +"|% c #004C00", +"1% c #979796", +"2% c #8E8F8F", +"3% c #898A8A", +"4% c #898889", +"5% c #858585", +"6% c #1DDC1C", +"7% c #1CDB1C", +"8% c #959695", +"9% c #939293", +"0% c #919091", +"a% c #8C8B8C", +"b% c #8A8989", +"c% c #878788", +"d% c #848585", +"e% c #848484", +"f% c #838383", +"g% c #1EDC1D", +"h% c #8C8B8B", +"i% c #898888", +"j% c #878887", +"k% c #878686", +"l% c #858686", +"m% c #858484", +"n% c #848483", +"o% c #828283", +"p% c #828282", +"q% c #1EDC1E", +"r% c #1CDA1C", +"s% c #888889", +"t% c #868586", +"u% c #848485", +"v% c #838282", +"w% c #808180", +"x% c #1CDC1C", +"y% c #1BDA1B", +"z% c #020A02", +"A% c #8E8D8E", +"B% c #8D8D8C", +"C% c #8C8C8B", +"D% c #888788", +"E% c #818182", +"F% c #818080", +"G% c #808080", +"H% c #1BDB1B", +"I% c #1B901B", +"J% c #000600", +"K% c #898A89", +"L% c #858685", +"M% c #858584", +"N% c #828383", +"O% c #818281", +"P% c #7F807F", +"Q% c #7F7F7E", +"R% c #1BDB1C", +"S% c #8D8E8D", +"T% c #8B8B8A", +"U% c #868786", +"V% c #858586", +"W% c #818282", +"X% c #818181", +"Y% c #7F7F7F", +"Z% c #7F7E7E", +"`% c #7E7D7E", +" & c #1DDB1D", +".& c #1BDA1C", +"+& c #8D8C8C", +"@& c #8B8A8A", +"#& c #8A8A89", +"$& c #878786", +"%& c #838382", +"&& c #7E7E7E", +"*& c #7E7D7D", +"=& c #7C7C7D", +"-& c #8A8B8B", +";& c #888988", +">& c #888787", +",& c #868685", +"'& c #7E7E7F", +")& c #7D7E7E", +"!& c #7D7D7D", +"~& c #7C7C7C", +"{& c #7B7B7B", +"]& c #1CDB1B", +"^& c #878687", +"/& c #848384", +"(& c #808081", +"_& c #7D7D7C", +":& c #7C7C7B", +"<& c #7A797A", +"[& c #257225", +"}& c #868787", +"|& c #838484", +"1& c #828382", +"2& c #808181", +"3& c #807F7F", +"4& c #7E7F7E", +"5& c #7D7C7D", +"6& c #7A7B7B", +"7& c #797A7A", +"8& c #797979", +"9& c #848383", +"0& c #828181", +"a& c #818081", +"b& c #7C7D7D", +"c& c #7B7C7C", +"d& c #7A7A7A", +"e& c #79797A", +"f& c #787878", +"g& c #7D7D7E", +"h& c #7B7C7B", +"i& c #787979", +"j& c #828281", +"k& c #807F80", +"l& c #7B7B7A", +"m& c #04FD04", +"n& c #818180", +"o& c #7E7E7D", +"p& c #7D7C7C", +"q& c #7D7E7D", +"r& c #7F7E7F", +"s& c #7C7D7C", +"t& c #7C7B7C", +"u& c #7B7B7C", +"v& c #7C7B7B", +"w& c #7B7A7B", +"x& c #797978", +"y& c #797878", +"z& c #021902", +"A& c #00BD00", +"B& c #00CF00", +"C& c #009700", +"D& c #00D000", +"E& c #00DC00", +"F& c #00E500", +"G& c #00F500", +"H& c #00A400", +"I& c #00B400", +"J& c #00E400", +"K& c #00F900", +"L& c #00B100", +"M& c #00C400", +"N& c #009600", +"O& c #00E600", +"P& c #00B000", +"Q& c #00B800", +"R& c #00C300", +"S& c #00B300", +"T& c #009500", +"U& c #00E100", +"V& c #00BB00", +"W& c #00F800", +"X& c #009B00", +"Y& c #009A00", +" ", +" ", +" ", +" ", +" ", +" . + @ # $ # ", +" % . & * = = $ - ; > , ", +" ' ) ! ~ ~ $ & { ] ^ / ( _ : < ~ ", +" [ } , # # # | ! - 1 + 2 3 4 5 5 5 5 5 6 * ", +" [ } # , , , , # # 7 8 [ 3 9 0 a a a 5 5 5 5 5 5 b * ", +" c ^ 7 | & 7 & $ = d $ @ e f 4 g g h i a 5 5 5 5 5 5 5 5 5 5 b * ", +" j } , ! - - , = k k $ @ e l m 9 n o h 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" 1 7 p q 1 , r k d s / t u v w x y z 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" 8 A B | C r ~ D < E F G H I J 0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" K K 1 ~ d C $ { . e L M N O J 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" P . ! * = = # > A P ' Q R S T 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ( A , ~ ~ , 7 { } A + ' U V W 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" e B # # # , & ! s D < E G n a 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ; , , # $ ! A 2 N X 0 0 0 a 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" A 7 Y Z ` T .z ..5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.+.@...5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.. g 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 $.%.&.*.*.*.*.*.*.*.*.*.*.*.=.-.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 $.;.;.;.;.;.;.;.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 -.;.;.;.;.;.;.;.;.;.;.;.;.*.>.,.'.'.'.).).).!.!.*.*.*.*.*.*.$.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 ;.;.;.;.;.;.;.;.;.;.~.{.].^././././.>.'.'.'.'.).).).!.!.(._._.*.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 ;.;.;.;.;.;.;.;.:.<.[.}.|.1.2.3.4.5././././.>.'.'.'.6.).).!.!.!._._._.*.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ ;.;.;.;.;.;.7.8.9.0.7.a.b.c.[.d.e.f.g.h.i.j./././.>.'.'.k.).).l.!.!.!._._.m.m.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.;.;.n.0.o.o.p.p.q.r.o.8.a.b.<.1.s.t.].u.i.v./././.'.'.'.).).).!.!.!._._.w.m.m.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.;.x.y.o.q.p.z.A.B.A.C.D.E.F.G.:.H.I.s.J.K.5.L.M./././.'.'.).).).!.!.!._._.N.m.m.O.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.;.}.P.Q.8.R.C.B.S.S.T.S.S.U.C.V.o.x.<.}.W.~.g.X.Y.Z.`./././.'. +).)..+!.!._._._.m.m.O.++*.*.%.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.s.I.@+x.9.o.A.S.T.#+$+$+%+&+*+=+D.R.7.x.<.d.t.{.4.i.j.-+;+/././.>+).)..+!.!._._._.m.m.m.++*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.;.W.}.P.7.o.C.,+*+$+'+)+)+!+~+$+{+,+p.o.n.c.}.s.~.]+^+/+Z.(+_+/././.).).).!.!.:+_._.m.m.m.++++*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.;.<+P.9.E.A.{+[+}+|+1+1+1+)+2+3+S.A.o.y.P.}.4+~.].^.j.v.(+5+6+/././.).).!.!.(._._.m.m.m.++++++*.*.7+5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.x.o.q.B.*+$+8+1+9+0+a+b+}+$+T.A.o.8.x.}.1.t.].c+j.v.d+e+f+g+/././.).!.!.!._._.m.m.m.++++++h+*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.x.0.p.i+*+2+j+1+0+k+a+1+}+$+l+A.p.7.:.H.1.~.].u.m+n+o+p+q+r+/././.).!.!.s+_._.w.m.m.++++++h+*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.t+p.A.*+u+)+1+a+v+a+w+!+#+*+A.p.7.x+y+1.z+A+u.j.B+C+D+q+g+E+/././.!.!.!._._.F+m.m.++++++h+h+*.*.&.5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.V.C.G+[+H+|+1+1+I+|+'+*+S.A.V.7.:.}.J+~.]+5.j.n+(+K+L+g+M+N+/././.!.(._._.m.m.m.++++++h+h+h+*.*.5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.;.;.;.O+S.*+$+}+P+)+j+'+&+G+i+Q+o.R+<.}.S+~.4.u.j.B+(+K+f+T+M+U+V+/./.!.W+_._.m.m.m.++++++h+h+X+*.*.*.5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ ;.;.R.A.=+T.#+$+$+$+[+T.S.Q+r.7.x.H.1.s.{.]+5.Y+-+Z+K+f+`+M+ @V+/././.!._._.m.m.m.++++.@h+h++@X+*.*.5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ ;.;.;.p.A.,+G+G+@@*+#@B.$@%@8.Q.x+}.S+f.].4.&@v.*@;+q+f+`+=@-@;@>@/././._._.m.m.m.++++,@h+h+'@X+*.*.*.5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.;.;.F.p.Q+D.A.U.,+A.p.R.o.y.x+H.d.s.~.]+5.)@M.(+p+f+g+!@~@-@{@]@/././._._.m.m.^@++++/@h+h+X+X+X+*.*.5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.;.;.;.9.o.o.p.p.r.V.o.8.Q.x.(@d.J+~.].^.m+v.`.Z+K+f+_@M+:@<@[@}@|@/././.N.m.m.1@++++h+h+h+X+X+2@*.*.*.5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 ;.;.x.a.7.7.9.8.7.n.x.<.H.|.S+f.].4.5.3@4@C+p+q+5@`+M+-@6@[@7@8@9@/./.m.m.m.++++++h+h+h+X+X+2@0@*.*.5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 a@;.;.<.x.b.x.x.P.b.@+}.1.S+t.b@K.5.j.v.`.c@K+f+g+M+:@-@d@e@f@g@h@/././.m.m.++++++h+h+X+X+X+X+0@*.*.*.5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 ;.;.|.}.@+}.[.<+i@|.W.s.t.3.K.5.m+L.-+(+_+f+5@`+j@-@V+k@l@8@m@n@o@/./.m.m.++++/@h+h+X+X+X+0@0@0@*.*.5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 ;.;.;.1.1.1.1.1.J+s.~.~.].4.p@q@L.-+(+p+K+f+_@E+:@r@[@e@l@g@n@s@t@/././.++++++h+h+h+X+X+X+0@0@0@*.*.*.5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 ;.;.t.s.t.t.u@~.b@].K.4.5.j.v.v.(+;+5+f+v@E+w@x@V+[@}@|@g@y@z@A@/././.++++++h+h+B@X+X+C@0@0@D@E@*.*.5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 ;.;.;.].].g.].A+h.c+5.m+/+v.-+C+Z+K+F@5@`+M+G@H@[@e@l@I@J@s@K@L@M@/./.++++,@h+h++@X+X+N@0@0@E@E@*.*.O@5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 ;.;.4.u.4.p@^.i.i.j.P@-+-+(+p+K+F@g+Q@M+:@r@;@R@7@8@g@n@o@S@T@U@/././.++h+h+h+X+X+X+0@0@0@E@E@E@*.*.5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 ;.;.j.V@j.j.)@Y+v.-+-+o+Z+e+K+f+g+T+W@:@-@V+k@e@X@g@n@Y@Z@L@M@`@ #/./.++h+h+.#X+X++#0@0@@#E@E@##*.*.-.5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 O@;.;.v.B+M.n+-+*@(+;+p+D+6+$#g+`+M+:@-@V+[@e@%#&#*#=#o@L@-#U@;#>#/./.h+h+h+X+X+X+0@0@0@E@E@E@,#*.*.*.5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 ;.;.C+(+(+(+(+c@p+K+L+f+g+T+'#)#:@-@H@d@!#l@&#~#{#Y@]#L@-#`@^#/#(#/./.h+h+X+X+X+0@0@0@E@E@_#,#,#*.*.5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 ;.;.;.p+p+e+K+K+q+f+:#r+`+E+M+N+-@V+[@e@l@8@g@n@<#[#L@-#`@}#|#(#1#/./.h+X+X+X+2#0@0@3#E@E@4#,#,#*.*.&.5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 $.;.;.L+F@q+$#5#g+6#Q@`+M+:@-@7#6@k@e@8#9#m@n@s@]#0#a#`@;#>#b#c#d#/./.X+X+X+N@0@0@0@E@E@E@,#,#,#e#*.*.5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 ;.;.g+v@v@`+`+'#E+w@:@f#7#V+[@g#e@l@&#g@n@s@o@h#L@-#;#i#j#(#k#l#m#/./.X+X+2#0@0@n#E@E@,#,#,#o#e#*.*.-.5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 ;.;.;.!@M+M+j@~@N+f#p#V+q#[@e@r#8#s#t#n@s@o@A@L@U@`@ #/#j#u#v#w#x#/./.X+2#0@0@y#E@E@E@,#,#,#e#e#*.*.*.5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 $.;.;.:@:@f#-@-@p#V+6@[@k@z#8@8@g@m@s@Y@K@h#L@A#B#^#C#D#k#E#F#G#H#/./.X+0@0@0@E@E@E@I#,#,#J#e#e#K#*.*.5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 ;.;.V+L#p#V+M#[@>@e@7@l@X@N#m@n@s@o@t@A@O#P#Q#R#S#T#1#U#V#G#H#W#/././.0@0@X#E@E@E@,#,#,#e#e#e#Y#*.*.$.5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 ;.;.[@[@Z#Z#>@e@z#%#|@8@g@n@{#s@`#S@L@O#-#Q# $C#T#.$k#V#m#x#W#+$@$/./.0@0@E@E@E@,#,#,#o#e#e##$Y#*.*.*.5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 &.;.;.e@7@l@X@8@9#N#t#n@n@s@<#t@$$L@O#`@B#%$&$j#(#*$v#m#x#H#=$-$;$/./.0@E@E@E@_#,#,#,#e#e#e#Y#Y#Y#*.*.5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 ;.;.8@8@8@>$g@9@n@=#s@Y@o@A@0#,$-#`@R#>#&$'$k#*$)$!$x#~$=$@$;${$/./.0@E@E@E@,#,#,#o#e#e#Y#Y#Y#]$*.*.-.5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 ;.;.n@9@n@{#h@y@z@`#]#A@^$L@O#/$($R#>#j#(#u#E#V#G#_$:$=$-$;${$<$/././.E@E@,#,#,#[$e#e#e#Y#Y#Y#]$*.*.*.5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 ;.;.;.s@s@<#}$o@t@A@^$L@-#|$`@R#%$|#j#1$k#d#F#G#G#2$+$3$4${$5$6$7$/./.E@_#,#,#,#e#e#e#8$Y#Y#9$]$]$*.*.5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 %.;.;.A@S@A@0#0$L@L@|$-#`@;# $>#a$(#.$k#v#V#b$c$W#d$e$f$g$h$i$j$k$/./.##,#,#,#e#e#e#l$Y#Y#Y#]$]$]$*.*.-.b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 ;.;.0$a#-#M@-#A#`@m$B#^#>#/#j#n$1#v#)$V#G#x#W#+$3$o$p$q$i$i$r$s$/./.,#,#,#t$e#e#e#Y#Y#Y#]$]$]$u$*.*.*.b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 ;.;.P#P#`@m$`@R# #>#>#j#'$(#k#v#v#F#m#G#H#W#+$v$w${$x$y$z$A$B$C$/./.,#,#[$e#e#e#K#Y#Y#D$]$]$]$E$E$*.*.b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 ;.;.;.R#R#^#%$&$S#j#(#.$u#F$v#G$V#G#H#W#d$3$@$;${$h$H$7$I$J$C$K$/././.,#e#e#e#8$Y#Y#Y#]$]$]$E$E$E$*.*.b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 %.;.;.&$a$j#T#j#(#c#k#E#v#L$M$G#x#N$O$+$-$P$p${$Q$i$j$R$B$S$T$U$V$/./.e#e#e#e#Y#Y#Y#]$]$]$W$E$E$E$*.*.X$* ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 ;.;.'$(#(#Y$F$*$v#F#F#b$G#c$Z$N$+$`$4$f$ %x$.%i$A$k$B$C$K$U$+%@%/./.e#e#l$Y#Y#Y##%]$]$W$E$E$E$$%$%*.= * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 ;.;.%%E#E#v#L$L$V#G#_$_$Z$2$O$+$e$;$&%{$<$Q$*%I$=%B$C$-%U$V$@%;%/./.e#e#Y#Y#Y#>%]$]$]$E$E$E$,%$%$%*.= * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 ;.;.V#V#!$!$G#_$H#H#Z$W#'%3$@$f$&%&%h$y$z$j$)%=%!%C$K$U$V$~%{%]%/./.e#Y#Y#Y#Y#]$]$]$^%E$E$/%$%$%$%*.= (% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 ;.;.;.G#H#H#:$Z$W#W#+$-$@$P$_%{$<$x$H$i$j$k$B$:%<%K$U$V$;%{%]%[%/./.Y#Y#Y#Y#]$]$]$W$E$E$E$$%$%$%}%*.= |% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 $.;.;.W#W#1%'%+$`$@$4$;$;${$x$x$Q$j$j$k$2%:%C$T$U$U$3%4%{%]%[%5%/./.Y#Y#Y#]$]$]$u$E$E$E$$%$%$%6%7%7%= |% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.`$-$8%@$o$;$&%{$<$9%x$i$0%j$A$s$B$C$<%a%U$V$b%{%c%]%[%d%e%f%/./.Y#]$]$]$^%E$E$E$g%$%$%$%7%7%7%= |% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.;$;$&% %{${$5$x$i$z$j$j$)%k$B$:%C$K$h%V$3%@%i%j%k%l%m%n%o%p%/./.]$]$]$]$E$E$E$q%$%$%$%7%7%7%r%= |% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.h$h$5$x$x$Q$i$0%7$j$k$J$B$C$C$K$K$U$V$b%s%{%]%[%t%u%e%v%p%w%/./.]$]$]$E$E$E$/%$%$%$%x%7%7%7%y%= |%z% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.y$H$i$i$j$j$r$k$=%J$A%!%B%K$C%U$V$b%4%{%D%[%[%5%e%f%o%E%F%G%/./.]$]$E$E$E$q%$%$%$%x%7%7%7%H%y%I%|%J% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.;.r$A$R$J$k$B$B$:%C$K$a%U$U$V$K%4%{%{%]%[%L%M%n%N%o%O%w%P%Q%/./.W$E$E$E$,%$%$%$%$%7%7%7%R%y%y%I%|%J% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 $.;.;.2%B$B$B$S%C$B%K$h%U$T%V$K%@%i%c%]%U%V%5%e%f%o%W%X%G%Y%Z%`%/./.E$E$E$E$$%$%$% &7%7%7%.&y%y%y%I%|%J% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.C$C$-%+&a%h%U$+%@&#&@%i%i%D%$&$&[%5%m%f%%&p%O%F%Y%Y%&&*&=&/./.E$E$q%$%$%$%6%7%7%7%.&y%y%y%y%I%|%J% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.h%h%U$U$-&V$@%#&;&s%{%>&]%U%,&5%e%e%%&o%p%X%G%P%'&)&!&~&{&/./.E$$%$%$%$% &7%7%7%]&y%y%y%y%y%I%|%J% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.V$3%~%@%@%@%;&{%]%^&[%[%L%5%e%/&f%N%W%X%(&G%Y%&&!&_&:&{&<&/./.,%$%$%$%x%7%7%7%R%y%y%y%y%y%y%I%[&J%;. ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.{%{%s%{%{%c%^&}&[%V%5%M%e%|&f%1&p%X%2&3&Y%4&`%5&~&{&6&7&8&/./.$%$%$%7%7%7%7%R%y%y%y%y%y%y%y%I%[&J%;. ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.]%$&k%}&[%[%L%5%5%e%|&9&f%p%E%0&a&G%Y%Q%&&!&b&c&{&d&e&f&f&/./.$%$%7%7%7%7%R%y%y%y%y%y%y%y%y%I%[&J%;. ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.[%t%L%5%M%d%e%|&f%f%1&p%X%X%G%G%Y%Q%&&g&!&~&h&d&7&i&;.;.;.;.;.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.= [&J%;. ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.M%e%|&|&n%f%f%%&j&O%X%a&G%k&Y%Q%*&*&b&~&{&l&;.;.;.;.;.;.;.;.;.*.*.*.*.*.7+m&O@*.*.*.*.*.*.*.= |%J%;. ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.f%f%1&p%p%X%X%n&n&G%G%Y%4&&&o&!&p&~&{&;.;.;.;.;.;.;.;.$.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 -.X$|%J%;. ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.X%X%X%2&G%G%G%k&Y%4&Q%)&!&!&~&~&;.;.;.;.;.;.;.$.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.G%G%k&P%Y%Y%Z%&&o&q&!&=&~&;.;.;.;.;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.r&r&&&&&&&o&!&~&s&t&:&;.;.;.;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.!&b&!&5&~&~&{&{&;.;.;.;.;.;.-.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.u&v&{&{&{&l&;.;.;.;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.w&d&d&7&;.;.;.;.;.%.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.x&y&;.;.;.;.;.-.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.;.;.;.;.;.-.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 z&;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.) h 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" A D A&B&x T a 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ; ~ r ! C&U D&O E&9 z 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" | > s # d k d > 6 f F&n J G&0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" H&} , | & & # * d 7 ) I&J&z h K&0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" e D # , , , , # s + L&E&5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" c K & # # , 7 > 1 A Y M&o 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" N&s $ * $ & 1 A K 6 U w 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" P ; & = = $ { . ' j t M&O&0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" . ) > * C r # @ 6 P&Q&R&I g 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" } } s d k d s P S&Z D&x .5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.& > D { ~ r r s T&M v E&U&` i 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" 6 7 & - s # C k $ } 2 H 4 ` o z 0 5 5 5 5 5 5 5 5 5 5 b * ", +" H&@ # & & | $ * = - T&V&O&h W&i W 5 5 5 5 5 5 b * ", +" X&s , , , , , | 7 } j Z G&5 5 5 5 5 b * ", +" H&) & $ $ $ & > 1 8 Y&R F&5 ( * ", +" 6 } $ ~ * # p +.C&p , ", +" C&+ 7 = d ~ , ", +" ; ^ 1 ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/src/Mod/Surfaces/InitGui.py b/src/Mod/Surfaces/InitGui.py new file mode 100644 index 0000000000..1a614efaf7 --- /dev/null +++ b/src/Mod/Surfaces/InitGui.py @@ -0,0 +1,38 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +class SurfWorkbench ( Workbench ): + """ @brief Workbench of Ship design module. Here toolbars & icons are append. """ + from surfUtils import Paths, Translator + import SurfGui + + Icon = Paths.iconsPath() + "/Ico.png" + MenuText = str(Translator.translate("Surface tools")) + ToolTip = str(Translator.translate("Surface tools")) + + def Initialize(self): + # ToolBar + list = ["Surf_IsoCurve", "Surf_SliceCurve", "Surf_Border", "Surf_Convert"] + self.appendToolbar("Surface tools",list) + + # Menu + list = ["Surf_IsoCurve", "Surf_SliceCurve", "Surf_Border", "Surf_Convert"] + self.appendMenu("Surface tools",list) +Gui.addWorkbench(SurfWorkbench()) diff --git a/src/Mod/Surfaces/SurfGui.py b/src/Mod/Surfaces/SurfGui.py new file mode 100644 index 0000000000..9f1832bdd8 --- /dev/null +++ b/src/Mod/Surfaces/SurfGui.py @@ -0,0 +1,75 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +from PyQt4 import QtCore, QtGui +import FreeCAD, FreeCADGui, os + +class IsoCurve: + def Activated(self): + import surfISOCurve + surfISOCurve.load() + + def GetResources(self): + from surfUtils import Paths, Translator + IconPath = Paths.iconsPath() + "/IsoCurveIco.png" + MenuText = str(Translator.translate('Get ISO curve')) + ToolTip = str(Translator.translate('Get ISO curve from surface')) + return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} + +class SliceCurve: + def Activated(self): + import surfSlice + surfSlice.load() + + def GetResources(self): + from surfUtils import Paths, Translator + IconPath = Paths.iconsPath() + "/SliceIco.png" + MenuText = str(Translator.translate('Get surface slice')) + ToolTip = str(Translator.translate('Get surface intersection with coordinates planes')) + return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} + +class Border: + def Activated(self): + import surfBorder + surfBorder.load() + + def GetResources(self): + from surfUtils import Paths, Translator + IconPath = Paths.iconsPath() + "/BorderIco.png" + MenuText = str(Translator.translate('Get border')) + ToolTip = str(Translator.translate('Get edges from objects')) + return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} + +class Convert: + def Activated(self): + import surfConvert + surfConvert.load() + + def GetResources(self): + from surfUtils import Paths, Translator + IconPath = Paths.iconsPath() + "/ConvertIco.png" + MenuText = str(Translator.translate('Convert to 4 sides surface')) + ToolTip = str(Translator.translate('Convert a surface (or couple of them) into 4 sides surface')) + return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} + +FreeCADGui.addCommand('Surf_IsoCurve', IsoCurve()) +FreeCADGui.addCommand('Surf_SliceCurve', SliceCurve()) +FreeCADGui.addCommand('Surf_Border', Border()) +FreeCADGui.addCommand('Surf_Convert', Convert()) diff --git a/src/Mod/Surfaces/surfBorder/CMakeLists.txt b/src/Mod/Surfaces/surfBorder/CMakeLists.txt new file mode 100644 index 0000000000..fb9e2befe1 --- /dev/null +++ b/src/Mod/Surfaces/surfBorder/CMakeLists.txt @@ -0,0 +1,7 @@ +INSTALL( + FILES + __init__.py + DESTINATION + Mod/Surfaces/surfBorder +) + diff --git a/src/Mod/Surfaces/surfBorder/Makefile.am b/src/Mod/Surfaces/surfBorder/Makefile.am new file mode 100644 index 0000000000..3bdc6bb1d9 --- /dev/null +++ b/src/Mod/Surfaces/surfBorder/Makefile.am @@ -0,0 +1,11 @@ +datadir = $(prefix)/Mod/Surfaces/surfBorder + +data_DATA = \ + __init__.py + +CLEANFILES = $(BUILT_SOURCES) + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt + diff --git a/src/Mod/Surfaces/surfBorder/__init__.py b/src/Mod/Surfaces/surfBorder/__init__.py new file mode 100644 index 0000000000..f3747dbe93 --- /dev/null +++ b/src/Mod/Surfaces/surfBorder/__init__.py @@ -0,0 +1,48 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD +import FreeCADGui +from FreeCAD import Base +from FreeCAD import Part + +# Qt libraries +from PyQt4 import QtGui,QtCore + +# Main object +from surfUtils import Geometry, Translator + +def load(): + """ Loads the tool. Getting the border don't require any + option, so can be executed directly without any task panel. """ + edges = Geometry.getBorders() + if not edges: + wrn = Translator.translate("Can't get any edge from selected objects") + FreeCAD.Console.PrintWarning(wrn) + return + obj = edges[0] + for i in range(0,len(edges)): + obj = obj.oldFuse(edges[i]) + Part.show(obj) + objs = FreeCAD.ActiveDocument.Objects + obj = objs[len(objs)-1] + obj.Label = 'Border' + diff --git a/src/Mod/Surfaces/surfConvert/CMakeLists.txt b/src/Mod/Surfaces/surfConvert/CMakeLists.txt new file mode 100644 index 0000000000..2bd1f7e58e --- /dev/null +++ b/src/Mod/Surfaces/surfConvert/CMakeLists.txt @@ -0,0 +1,10 @@ +INSTALL( + FILES + __init__.py + Preview.py + TaskPanel.py + TaskPanel.ui + DESTINATION + Mod/Surfaces/surfConvert +) + diff --git a/src/Mod/Surfaces/surfConvert/Makefile.am b/src/Mod/Surfaces/surfConvert/Makefile.am new file mode 100644 index 0000000000..7245ea8a90 --- /dev/null +++ b/src/Mod/Surfaces/surfConvert/Makefile.am @@ -0,0 +1,14 @@ +datadir = $(prefix)/Mod/Surfaces/surfConvert + +data_DATA = \ + __init__.py \ + TaskPanel.py \ + Preview.py \ + TaskPanel.ui + +CLEANFILES = $(BUILT_SOURCES) + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt + diff --git a/src/Mod/Surfaces/surfConvert/Preview.py b/src/Mod/Surfaces/surfConvert/Preview.py new file mode 100644 index 0000000000..2ee908cb87 --- /dev/null +++ b/src/Mod/Surfaces/surfConvert/Preview.py @@ -0,0 +1,79 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD,FreeCADGui +from FreeCAD import Base +from FreeCAD import Part +# FreeCADShip modules +from surfUtils import Paths +from surfUtils import Geometry +from surfUtils import Math + +class Preview(object): + def __init__(self,U,V): + """ Constructor. + @param U Part::topoShape object that contains the U direction edge. + @param V Part::topoShape object that contains the V direction edge. + """ + self.objU = None + self.objV = None + self.U = U + self.V = V + self.buildObjs() + self.setProperties() + + def buildObjs(self): + """ Builds objects to show. + """ + Part.show(self.U) + objs = FreeCAD.ActiveDocument.Objects + self.objU = objs[len(objs)-1] + Part.show(self.V) + objs = FreeCAD.ActiveDocument.Objects + self.objV = objs[len(objs)-1] + + def setProperties(self): + """ Set colour of lines and width. + """ + self.objU.Label = 'U direction' + self.objV.Label = 'V direction' + # Get GUI objects instance + objU = FreeCADGui.ActiveDocument.getObject(self.objU.Name) + objV = FreeCADGui.ActiveDocument.getObject(self.objV.Name) + objU.LineColor = (0.0,0.0,1.0) + objU.LineWidth = 5.00 + objV.LineColor = (1.0,0.0,0.0) + objV.LineWidth = 5.00 + + def clean(self,Destroy=True): + """ Erase all sections from screen. + @param self Auto call object. + @param Destroy True if the object must be destroyed, False otherwise. + """ + if (not self.objU) or (not self.objV): + return + FreeCADGui.ActiveDocument.hide(self.objU.Name) + FreeCADGui.ActiveDocument.hide(self.objV.Name) + if Destroy: + FreeCAD.ActiveDocument.removeObject(self.objU.Name) + FreeCAD.ActiveDocument.removeObject(self.objV.Name) + self.objU=None + self.objV=None diff --git a/src/Mod/Surfaces/surfConvert/TaskPanel.py b/src/Mod/Surfaces/surfConvert/TaskPanel.py new file mode 100644 index 0000000000..49ed1c6e10 --- /dev/null +++ b/src/Mod/Surfaces/surfConvert/TaskPanel.py @@ -0,0 +1,576 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# Alicia Lapique <> +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# Standart libraries +import math +# Import FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui +# Import Qt libraries +from PyQt4 import QtGui,QtCore +# Import surface module utils +from surfUtils import Paths, Geometry, Math, Translator +# Import tool utils +import Preview + +class TaskPanel: + def __init__(self): + """ Class constructor, that loads the user interface and set + minimum data as empty values. + """ + self.ui = Paths.modulePath() + "/surfConvert/TaskPanel.ui" + self.objs = [] + self.edges = [] + self.faces = [] + self.surf = None + self.preview = None + + def accept(self): + """ Method called when accept button is clicked. + @return True if all gone right, False otherwise. + """ + if not self.surf: + return False + App.Part.show(self.surf.toShape()) + objs = App.ActiveDocument.Objects + obj = objs[len(objs)-1] + obj.Label = 'Surface' + self.preview.clean() + return True + + def reject(self): + """ Method called when cancel button is clicked. + @return True if all gone right, False otherwise. + """ + if self.preview : + self.preview.clean() + return True + + def clicked(self, index): + pass + + def open(self): + pass + + def needsFullSpace(self): + return True + + def isAllowedAlterSelection(self): + return False + + def isAllowedAlterView(self): + return True + + def isAllowedAlterDocument(self): + return False + + def helpRequested(self): + pass + + def setupUi(self): + """ Setups the user interface taking and storing all controls. + """ + mw = self.getMainWindow() + form = mw.findChild(QtGui.QWidget, "TaskPanel") + form.nU = form.findChild(QtGui.QSpinBox, "nU") + form.nV = form.findChild(QtGui.QSpinBox, "nV") + form.deg = form.findChild(QtGui.QSpinBox, "deg") + self.form = form + # Initial values + if self.initValues(): + return True + self.retranslateUi() + # Connect Signals and Slots + QtCore.QObject.connect(form.nU, QtCore.SIGNAL("valueChanged(int)"), self.onNUV) + QtCore.QObject.connect(form.nV, QtCore.SIGNAL("valueChanged(int)"), self.onNUV) + QtCore.QObject.connect(form.deg, QtCore.SIGNAL("valueChanged(int)"), self.onNUV) + return False + + def getMainWindow(self): + """ returns the main window """ + # using QtGui.qApp.activeWindow() isn't very reliable because if another + # widget than the mainwindow is active (e.g. a dialog) the wrong widget is + # returned + toplevel = QtGui.qApp.topLevelWidgets() + for i in toplevel: + if i.metaObject().className() == "Gui::MainWindow": + return i + raise Exception("No main window found") + + def initValues(self): + """ Setup initial values. """ + # Objects to work + self.objs = Gui.Selection.getSelection() + if not self.objs: + msg = Translator.translate("4 connected edges and at least 1 surface must be selected (Any object has been selected)") + App.Console.PrintError(msg) + return True + if len(self.objs) < 5: + msg = Translator.translate("4 connected edges and at least 1 surface must be selected (Less than 5 objects selected)") + App.Console.PrintError(msg) + return True + # Separate edge objects and face objects. + if self.getEdgesFaces(): + return True + # Ensure that closed object given + if not self.isClosed(): + return True + # Sort edges (as connect chain) + if self.sortEdges(): + return True + # First surface draft + if self.getPoints(): + return True + if self.createSurface(): + return True + # On screen data + self.preview = Preview.Preview(self.edges[0],self.edges[1]) + msg = Translator.translate("Ready to work") + App.Console.PrintMessage(msg) + return False + + def retranslateUi(self): + """ Set user interface locale strings. + """ + self.form.setWindowTitle(Translator.translate("Convert to 4 side surface")) + nUString = Translator.translate("Points at U") + self.form.findChild(QtGui.QLabel, "nULabel").setText("" + nUString + "") + nVString = Translator.translate("Points at V2") + self.form.findChild(QtGui.QLabel, "nVLabel").setText("" + nVString + "") + self.form.findChild(QtGui.QLabel, "degLabel").setText(Translator.translate("Surface degree")) + + def onNUV(self, value): + """ Answer to nU points or nV points modification events. + @param value Changed value. + """ + if self.getPoints(): + return + if self.createSurface(): + return + self.form.deg.setMaximum(self.surf.MaxDegree) + + def getEdgesFaces(self): + """ Returns two arrays filled with the edges and faces selected. + @return True if error happens. False otherwise + """ + self.edges = [] + self.faces = [] + for i in range(0,len(self.objs)): + objFaces = Geometry.getFaces(self.objs[i]) + if not objFaces: + objEdges = Geometry.getEdges([self.objs[i]]) + if not objEdges: + msg = Translator.translate("4 connected edges and at least 1 surface must be selected (Any edge found)") + App.Console.PrintError(msg) + return True + for j in range(0, len(objEdges)): + self.edges.append(objEdges[j]) + else: + for j in range(0, len(objFaces)): + self.faces.append(objFaces[j]) + if len(self.edges) != 4: + msg = Translator.translate("4 connected edges and at least 1 surface must be selected (More/less edges not allowed)") + App.Console.PrintError(msg) + return True + return False + + def isClosed(self): + """ Returns if the edges objects are a closed curve. + @return True if a closed curve can be built with edge objects. + False otherwise + """ + edges = self.edges + for i in range(0,len(edges)): + edge = edges[i] + vertex1 = edge.Vertexes + count = [0,0] + for j in range(0,len(edges)): + if j== i: + continue + vertex2 = edges[j].Vertexes + for k in range(0,2): + if Math.isSameVertex(vertex1[0],vertex2[k]): + count[0] = count[0]+1 + if Math.isSameVertex(vertex1[1],vertex2[k]): + count[1] = count[1]+1 + if count != [1,1]: + msg = Translator.translate("4 Edges curve must be closed") + App.Console.PrintError(msg) + return False + return True + + def sortEdges(self): + """ Sort the edges by their connection points. Also gives if + an edge is ill oriented (thir connection point is the end + point, not the starting point), with True when is good oriented, + and False otherwise. + @return True if error happens. False otherwise + """ + edges = self.edges + self.edges = [edges[0]] + self.direction = [True] + Vertex = self.edges[0].Vertexes[1] + for i in range(0,len(edges)-1): + for j in range(0,len(edges)): + if self.edges[i] == edges[j]: + continue + Vertexes = edges[j].Vertexes + if Math.isSameVertex(Vertex,Vertexes[0]): + Vertex = Vertexes[1] + self.edges.append(edges[j]) + self.direction.append(True) + break + if Math.isSameVertex(Vertex,Vertexes[1]): + Vertex = Vertexes[0] + self.edges.append(edges[j]) + self.direction.append(False) + break + return False + + def getPoints(self): + """ Get points that will make the surface. + @return True if error happens. False otherwise. + """ + if self.divideEdges(): + return True + if self.samplePoints(): + return True + if self.getSurfacePoints(): + return True + while self.redistributePointsU(): + continue + while self.redistributePointsV(): + continue + return False + + + def divideEdges(self): + """ Get points along the edges. + @return True if error happens. False otherwise. + """ + # Get curves from edges + curves=[] + for i in range(0,len(self.edges)): + curves.append(self.edges[i].Curve) + # Get number of divisions at U,V + nU = self.form.nU.value() + nV = self.form.nV.value() + # Get points at U direction (length parameter will used) + vertexes = self.edges[0].Vertexes + u = curves[0].parameter(App.Base.Vector(vertexes[0].X, vertexes[0].Y, vertexes[0].Z)) + uEnd = curves[0].parameter(App.Base.Vector(vertexes[1].X, vertexes[1].Y, vertexes[1].Z)) + du = (uEnd - u) / (nU-1.0) + Points0=[] + for i in range(0, nU): + knots = curves[0].KnotSequence + point0 = curves[0].value(u) + Points0.append(point0) + u = u + du + vertexes = self.edges[2].Vertexes + u = curves[2].parameter(App.Base.Vector(vertexes[1].X, vertexes[1].Y, vertexes[1].Z)) + uEnd = curves[2].parameter(App.Base.Vector(vertexes[0].X, vertexes[0].Y, vertexes[0].Z)) + du = (uEnd - u) / (nU-1.0) + Points2=[] + for i in range(0, nU): + knots = curves[2].KnotSequence + point2 = curves[2].value(u) + Points2.append(point2) + u = u + du + # Get points at V direction (length parameter will used) + vertexes = self.edges[1].Vertexes + v = curves[1].parameter(App.Base.Vector(vertexes[0].X, vertexes[0].Y, vertexes[0].Z)) + vEnd = curves[1].parameter(App.Base.Vector(vertexes[1].X, vertexes[1].Y, vertexes[1].Z)) + dv = (vEnd - v) / (nV-1.0) + Points1=[] + for i in range(0, nV): + knots = curves[1].KnotSequence + point1 = curves[1].value(v) + Points1.append(point1) + v = v + dv + vertexes = self.edges[3].Vertexes + v = curves[3].parameter(App.Base.Vector(vertexes[1].X, vertexes[1].Y, vertexes[1].Z)) + vEnd = curves[3].parameter(App.Base.Vector(vertexes[0].X, vertexes[0].Y, vertexes[0].Z)) + dv = (vEnd - v) / (nV-1.0) + Points3=[] + for i in range(0, nV): + knots = curves[3].KnotSequence + point3 = curves[3].value(v) + Points3.append(point3) + v = v + dv + # Store points arrays + self.EdgePoints=[Points0,Points1,Points2,Points3] + # Ensure that is good oriented + for i in range(0,4): + if not self.direction[i]: + self.EdgePoints[i].reverse() + return False + + def samplePoints(self): + """ Builds a set of points between the edges points. + @return True if error happens. False otherwise. + """ + # We will advance in V direction, getting point columns, so two + # points columns are knowed from U starting and end curves + startU = self.EdgePoints[0] + endU = self.EdgePoints[2] + endV = self.EdgePoints[1] + startV = self.EdgePoints[3] + self.sample = [startU] + # Take two guides froms the starting and end U curves. All + # sample points will be reprojects with this guides + Guide0 = startU[len(startU)-1] - startU[0] + Length0 = Guide0.Length + Guide0.normalize() + Guide1 = endU[len(endU)-1] - endU[0] + Length1 = Guide1.Length + Guide1.normalize() + # Loop over columns to get + for i in range(1,len(startV)-1): + # Get the guide + Guide = endV[i] - startV[i] + Length = Guide.Length + Guide.normalize() + # Loop over points of the column + points = [] + points.append(startV[i]) + for j in range(1,len(startU)-1): + # Get deviation at starting U + v0 = (startU[j] - startU[0]).multiply(1.0 / Length0) - Guide0 + # Get deviation at ending U + v1 = (endU[j] - endU[0]).multiply(1.0 / Length1) - Guide1 + # Get factor + factor = float(i) / len(startV) + # Interpolate + v = (v0.multiply(1.0-factor) + v1.multiply(factor) + Guide).multiply(Length) + points.append(startV[i]+v) + points.append(endV[i]) + self.sample.append(points) + # Append las points column (end U curve) + self.sample.append(endU) + return False + + def getSurfacePoints(self): + """ Get the points of the surface. + @return True if error happens. False otherwise. + """ + surf = self.faces[0].Surface + self.uv=[] + self.points=[] + self.surfacesID=[] + for j in range(0,len(self.sample)): + points=[] + uv=[] + surfacesID=[] + for k in range(0,len(self.sample[j])): + UV = surf.parameter(self.sample[j][k]) + umax = surf.UKnotSequence[len(surf.UKnotSequence)-1] + umin = surf.UKnotSequence[0] + vmax = surf.VKnotSequence[len(surf.VKnotSequence)-1] + vmin = surf.VKnotSequence[0] + uv.append([UV[0],UV[1]]) + uv[k][0] = max(min(uv[k][0],umax), umin) + uv[k][1] = max(min(uv[k][1],vmax), vmin) + point = surf.value(uv[k][0], uv[k][1]) + points.append(point) + surfacesID.append(0) + self.uv.append(uv) + self.points.append(points) + self.surfacesID.append(surfacesID) + + for i in range(1,len(self.faces)): + surf = self.faces[i].Surface + for j in range(0,len(self.sample)): + for k in range(0,len(self.sample[j])): + UV = surf.parameter(self.sample[j][k]) + uv = [UV[0],UV[1]] + UV = uv[:] + umax = surf.UKnotSequence[len(surf.UKnotSequence)-1] + umin = surf.UKnotSequence[0] + vmax = surf.VKnotSequence[len(surf.VKnotSequence)-1] + vmin = surf.VKnotSequence[0] + UV[0] = uv[0]/(surf.UKnotSequence[len(surf.UKnotSequence)-1]) + UV[1] = uv[1]/(surf.VKnotSequence[len(surf.VKnotSequence)-1]) + ru=abs(UV[0]-0.5) + rv=abs(UV[1]-0.5) + surf2 = self.faces[self.surfacesID[j][k]].Surface + UV2 = surf2.parameter(self.sample[j][k]) + uv2 = [UV2[0],UV2[1]] + UV2 = uv2[:] + umax2 = surf2.UKnotSequence[len(surf2.UKnotSequence)-1] + umin2 = surf2.UKnotSequence[0] + vmax2 = surf2.VKnotSequence[len(surf2.VKnotSequence)-1] + vmin2 = surf2.VKnotSequence[0] + UV2[0] = uv2[0]/(surf2.UKnotSequence[len(surf2.UKnotSequence)-1]) + UV2[1] = uv2[1]/(surf2.VKnotSequence[len(surf2.VKnotSequence)-1]) + ru2=abs(UV2[0]-0.5) + rv2=abs(UV2[1]-0.5) + point=surf.value(UV[0],UV[1]) + point2=surf2.value(UV2[0],UV2[1]) + dif= math.sqrt((point[0]-self.sample[j][k][0])**2+(point[1]-self.sample[j][k][1])**2+(point[2]-self.sample[j][k][2])**2) + dif2= math.sqrt((point2[0]-self.sample[j][k][0])**2+(point2[1]-self.sample[j][k][1])**2+(point2[2]-self.sample[j][k][2])**2) + nU = len(self.points) + nV = len(self.points[j]) + deltaU = 1/(2*nU) + deltaV = 1/(2*nV) + if ((ru < deltaU) and (rv < deltaV)): + uv[0] = max(min(uv[0],umax), umin) + uv[1] = max(min(uv[1],vmax), vmin) + self.uv[j][k]=uv + point = surf.value(uv[0], uv[1]) + self.points[j][k]=point + self.surfacesID[j][k] = i + elif (dif2 > dif): + uv[0] = max(min(uv[0],umax), umin) + uv[1] = max(min(uv[1],vmax), vmin) + self.uv[j][k]=uv + point = surf.value(uv[0], uv[1]) + self.points[j][k]=point + self.surfacesID[j][k] = i + + return False + + def redistributePointsU(self): + """ Redistributes the points of the surface (U direction). + @return False if all points are right placed. True otherwise. + """ + #Redistribute columns + for i in range(0,len(self.points)): + sumdif=0.0 + difs=[] + for j in range(1,len(self.points[i])): + vdif=self.points[i][j]-self.points[i][j-1] + dif=vdif.Length + sumdif=sumdif+dif + difs.append(dif) + for k in range(0,len(difs)): + if self.surfacesID[i][k] != self.surfacesID[i][k+1]: + if difs[k]>=(2*sumdif/len(difs)): + self.points[i][k][0]=self.points[i][k][0]+0.33*(self.points[i][k+1][0]-self.points[i][k][0]) + self.points[i][k][1]=self.points[i][k][1]+0.33*(self.points[i][k+1][1]-self.points[i][k][1]) + self.points[i][k][2]=self.points[i][k][2]+0.33*(self.points[i][k+1][2]-self.points[i][k][2]) + self.points[i][k+1][0]=self.points[i][k+1][0]-0.33*(self.points[i][k+1][0]-self.points[i][k][0]) + self.points[i][k+1][1]=self.points[i][k+1][1]-0.33*(self.points[i][k+1][1]-self.points[i][k][1]) + self.points[i][k+1][2]=self.points[i][k+1][2]-0.33*(self.points[i][k+1][2]-self.points[i][k][2]) + surf1 = self.faces[self.surfacesID[i][k]].Surface + surf2 = self.faces[self.surfacesID[i][k+1]].Surface + uv = surf1.parameter(self.points[i][k]) + self.uv[i][k] = [uv[0], uv[1]] + uv = surf2.parameter(self.points[i][k+1]) + self.uv[i][k+1] = [uv[0], uv[1]] + self.points[i][k]=surf1.value(self.uv[i][k][0],self.uv[i][k][1]) + self.points[i][k+1]=surf2.value(self.uv[i][k+1][0],self.uv[i][k+1][1]) + return True + break + continue + if difs[k]>=(2*sumdif/len(difs)): + self.uv[i][k][0]=self.uv[i][k][0]+0.33*(self.uv[i][k+1][0]-self.uv[i][k][0]) + self.uv[i][k][1]=self.uv[i][k][1]+0.33*(self.uv[i][k+1][1]-self.uv[i][k][1]) + self.uv[i][k+1][0]=self.uv[i][k+1][0]-0.33*(self.uv[i][k+1][0]-self.uv[i][k][0]) + self.uv[i][k+1][1]=self.uv[i][k+1][1]-0.33*(self.uv[i][k+1][1]-self.uv[i][k][1]) + surf = self.faces[self.surfacesID[i][k]].Surface + self.points[i][k] = surf.value(self.uv[i][k][0], self.uv[i][k][1]) + self.points[i][k+1] = surf.value(self.uv[i][k+1][0], self.uv[i][k+1][1]) + return True + break + return False + def redistributePointsV(self): + """ Redistributes the points of the surface (V direction). + @return False if all points are right placed. True otherwise. + """ + #Redistribute files + for i in range(0,len(self.points[0])): + sumdif=0 + difs=[] + for j in range(1,len(self.points)): + vdif=self.points[j][i]-self.points[j-1][i] + dif=vdif.Length + sumdif=sumdif+dif + difs.append(dif) + for k in range(0,len(difs)): + if self.surfacesID[k][i] != self.surfacesID[k+1][i]: + if difs[k]>=(2*sumdif/len(difs)): + self.points[k][i][0]=self.points[k][i][0]+0.33*(self.points[k+1][i][0]-self.points[k][i][0]) + self.points[k][i][1]=self.points[k][i][1]+0.33*(self.points[k+1][i][1]-self.points[k][i][1]) + self.points[k][i][2]=self.points[k][i][2]+0.33*(self.points[k+1][k+1][2]-self.points[k][i][2]) + self.points[k+1][i][0]=self.points[k+1][i][0]-0.33*(self.points[k+1][i][0]-self.points[k][i][0]) + self.points[k+1][i][1]=self.points[k+1][i][1]-0.33*(self.points[k+1][i][1]-self.points[k][i][1]) + self.points[k+1][i][2]=self.points[k+1][i][2]-0.33*(self.points[k+1][i][2]-self.points[k][i][2]) + surf1 = self.faces[self.surfacesID[k][i]].Surface + surf2 = self.faces[self.surfacesID[k+1][i]].Surface + uv = surf1.parameter(self.points[k][i]) + self.uv[k][i] = [uv[0], uv[1]] + uv = surf2.parameter(self.points[k+1][i]) + self.uv[k+1][i] = [uv[0], uv[1]] + self.points[k][i]=surf1.value(self.uv[k][i][0],self.uv[k][i][1]) + self.points[k+1][i]=surf2.value(self.uv[k+1][i][0],self.uv[k+1][i][1]) + return True + break + continue + if difs[k]>=(2*sumdif/len(difs)): + self.uv[k][i][0]=self.uv[k][i][0]+0.33*(self.uv[k+1][i][0]-self.uv[k][i][0]) + self.uv[k][i][1]=self.uv[k][i][1]+0.33*(self.uv[k+1][i][1]-self.uv[k][i][1]) + self.uv[k+1][i][0]=self.uv[k+1][i][0]-0.33*(self.uv[k+1][i][0]-self.uv[k][i][0]) + self.uv[k+1][i][1]=self.uv[k+1][i][1]-0.33*(self.uv[k+1][i][1]-self.uv[k][i][1]) + surf = self.faces[self.surfacesID[k][i]].Surface + self.points[k][i] = surf.value(self.uv[k][i][0], self.uv[k][i][1]) + self.points[k+1][i] = surf.value(self.uv[k+1][i][0], self.uv[k+1][i][1]) + return True + break + return False + + def createSurface(self): + """ Generates the BSpline surface. + @return False if all gone right. True otherwise. + """ + # Create a (1 x 1) plane with (nU x nV) knots + self.surf = App.Part.BSplineSurface() + nU = len(self.points) + nV = len(self.points[0]) + for i in range(1,nU-1): + u = i / float(nU-1) + self.surf.insertUKnot(u,i,0.000001) + for i in range(1,nV-1): + v = i / float(nV-1) + self.surf.insertVKnot(v,i,0.000001) + # Reposition points of surface + for i in range(0,nU): + for j in range(0,nV): + u = i / float(nU-1) + v = j / float(nV-1) + point = self.points[i][j] + self.surf.movePoint(u,v,point,i+1,i+1,j+1,j+1) + # Reaconditionate surface + self.surf.exchangeUV() + deg = self.form.deg.value() + if (deg > 1) and (deg < self.surf.MaxDegree): + self.surf.increaseDegree(deg,deg) + return False + +def createTask(): + """ Create a task panel. + @return Task panel. + """ + panel = TaskPanel() + Gui.Control.showDialog(panel) + if panel.setupUi(): + Gui.Control.closeDialog(panel) + return None + return panel diff --git a/src/Mod/Surfaces/surfConvert/TaskPanel.ui b/src/Mod/Surfaces/surfConvert/TaskPanel.ui new file mode 100644 index 0000000000..73c66e916f --- /dev/null +++ b/src/Mod/Surfaces/surfConvert/TaskPanel.ui @@ -0,0 +1,107 @@ + + + TaskPanel + + + + 0 + 0 + 307 + 268 + + + + Convert surface + + + + + + + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Ubuntu'; font-size:11pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0000ff;">Points at U</span></p></body></html> + + + + + + + 4 + + + 10000 + + + + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Ubuntu'; font-size:11pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#ff0000;">Points at V</span></p></body></html> + + + + + + + 4 + + + 10000 + + + + + + + Surface degree + + + + + + + 1 + + + 25 + + + 3 + + + + + + + Qt::Vertical + + + QSizePolicy::Fixed + + + + 20 + 15 + + + + + + + + + + + + + diff --git a/src/Mod/Surfaces/surfConvert/__init__.py b/src/Mod/Surfaces/surfConvert/__init__.py new file mode 100644 index 0000000000..c104e04e8f --- /dev/null +++ b/src/Mod/Surfaces/surfConvert/__init__.py @@ -0,0 +1,34 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD +import FreeCADGui + +# Qt libraries +from PyQt4 import QtGui,QtCore + +# Main object +import TaskPanel +from surfUtils import Paths + +def load(): + """ Loads the tool """ + TaskPanel.createTask() diff --git a/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt b/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt new file mode 100644 index 0000000000..21445ed821 --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt @@ -0,0 +1,11 @@ +INSTALL( + FILES + __init__.py + PointTracker.py + TaskPanel.py + Preview.py + TaskPanel.ui + DESTINATION + Mod/Surfaces/surfISOCurve +) + diff --git a/src/Mod/Surfaces/surfISOCurve/Makefile.am b/src/Mod/Surfaces/surfISOCurve/Makefile.am new file mode 100644 index 0000000000..e73b4eb12b --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/Makefile.am @@ -0,0 +1,16 @@ +datadir = $(prefix)/Mod/Surfaces/surfISOCurve + +data_DATA = \ + __init__.py \ + Preview.py \ + TaskPanel.ui \ + PointTracker.py \ + TaskPanel.py \ + Preview.py + +CLEANFILES = $(BUILT_SOURCES) + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt + diff --git a/src/Mod/Surfaces/surfISOCurve/PointTracker.py b/src/Mod/Surfaces/surfISOCurve/PointTracker.py new file mode 100644 index 0000000000..0796bab732 --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/PointTracker.py @@ -0,0 +1,85 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui +import Draft +from FreeCAD import Vector +# Qt library +from PyQt4 import QtGui,QtCore +# Pivy +import pivy +from pivy import coin +from pivy.coin import * +# Module +from surfUtils import Paths +from surfUtils import Geometry +from surfISOCurve import Preview + +class PointTracker: + def __init__(self,view,task): + self.view=view + self.task=task + task.tracker = self + self.callback = self.view.addEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),self.mouseButton) + self.callbackMove = self.view.addEventCallbackPivy(SoLocation2Event.getClassTypeId(),self.mouseMove) + + def mouseMove(self, event_cb): + event = event_cb.getEvent() + surf = self.task.surf + if not surf: + return + # Get screen point + screen = event.getPosition() + ctrl = event.wasCtrlDown() + # Get snapped object if exist, else the screen point will used + point = Gui.Snapper.snap(screen, ctrl) + + def mouseButton(self, event_cb): + event = event_cb.getEvent() + if event.getState() != coin.SoMouseButtonEvent.DOWN: + return + surf = self.task.surf + if not surf: + return + # Get screen point + screen = event.getPosition() + ctrl = event.wasCtrlDown() + # Get snapped object if exist, else the screen point will used + point = Gui.Snapper.snap(screen, ctrl) + if not point: + point = self.view.getPoint(screen[0],screen[1]) + # Get the nearest surface point parameter + uv = surf.parameter(point) + uv = [uv[0], uv[1]] + uv[0] = uv[0] / surf.UKnotSequence[len(surf.UKnotSequence)-1] + uv[0] = max(0, min(uv[0], 1)) + uv[1] = uv[1] / surf.VKnotSequence[len(surf.VKnotSequence)-1] + uv[1] = max(0, min(uv[1], 1)) + # Set it into the task panel + self.task.setUV(uv[self.task.dirId]) + + def close(self): + # Switch off snapping + Gui.Snapper.off() + # Remove callback (Program crash otherwise) + self.view.removeEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),self.callback) + self.view.removeEventCallbackPivy(SoLocation2Event.getClassTypeId(),self.callbackMove) diff --git a/src/Mod/Surfaces/surfISOCurve/Preview.py b/src/Mod/Surfaces/surfISOCurve/Preview.py new file mode 100644 index 0000000000..cd8562d4a5 --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/Preview.py @@ -0,0 +1,122 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD,FreeCADGui +from FreeCAD import Base +from FreeCAD import Part +# FreeCADShip modules +from surfUtils import Paths +from surfUtils import Geometry +from surfUtils import Math + +class Preview(object): + def __init__(self): + """ Constructor. + @param self Auto call object. + @note Start it as unactive + """ + self.obj = None + self.reinit() + + def reinit(self): + """ Reinitializate drawer. + @param self Auto call object. + """ + self.clean() + self.obj = None + + def update(self, surf, direction, uv): + """ Update the 3D view printing curve. + @param self Auto call object. + @param surf Surf where get the curve. + @param direction 0 if u direction, 1 if v. + @param uv Curve uv index, between 0 and 1. + @return Curve from object (as Part::Feature). + """ + # Errors + if not surf: + return None + # Get curve + if direction == 0: + curve = self.getU(surf, uv) + elif direction == 1: + curve = self.getV(surf, uv) + else: + return None + # Draw at 3D view + self.clean() + Part.show(curve.toShape()) + objs = FreeCAD.ActiveDocument.Objects + self.obj = objs[len(objs)-1] + self.obj.Label = 'surfISOCurve' + return self.obj + + def getU(self, surf, uv): + """ Get U curve from object. + @param self Auto call object. + @param surf Surf where get the curve. + @param uv Curve uv index, between 0 and 1. + @return Curve from object. + """ + # Errors + if not surf: + return None + if (uv < 0.0) or (uv > 1.0): + return None + # Get UV data + knots = surf.UKnotSequence + id0 = knots[0] + id1 = knots[len(knots)-1] + # Get curve + curve = surf.uIso(id0 + uv*(id1-id0)) + return curve + + def getV(self, surf, uv): + """ Get U curve from object. + @param self Auto call object. + @param surf Surf where get the curve. + @param uv Curve uv index, between 0 and 1. + @return Curve from object. + """ + # Errors + if not surf: + return None + if (uv < 0.0) or (uv > 1.0): + return None + # Get UV data + knots = surf.VKnotSequence + id0 = knots[0] + id1 = knots[len(knots)-1] + # Get curve + curve = surf.vIso(id0 + uv*(id1-id0)) + return curve + + def clean(self,Destroy=True): + """ Erase all sections from screen. + @param self Auto call object. + @param Destroy True if the object must be destroyed, False otherwise. + """ + if not self.obj: + return + FreeCADGui.ActiveDocument.hide(self.obj.Name) + if Destroy: + FreeCAD.ActiveDocument.removeObject(self.obj.Name) + self.obj=None diff --git a/src/Mod/Surfaces/surfISOCurve/TaskPanel.py b/src/Mod/Surfaces/surfISOCurve/TaskPanel.py new file mode 100644 index 0000000000..2361d08242 --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/TaskPanel.py @@ -0,0 +1,165 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui +# Qt library +from PyQt4 import QtGui,QtCore +# Module +from surfUtils import Paths, Geometry, Math, Translator +import Preview +import PointTracker + +class TaskPanel: + def __init__(self): + self.ui = Paths.modulePath() + "/surfISOCurve/TaskPanel.ui" + self.preview = Preview.Preview() + self.tracker = None + + def accept(self): + if not self.obj: + return True + self.obj.Label = 'ISOCurve' + self.close() + return True + + def reject(self): + self.preview.clean() + self.close() + return True + + def clicked(self, index): + pass + + def open(self): + pass + + def needsFullSpace(self): + return True + + def isAllowedAlterSelection(self): + return False + + def isAllowedAlterView(self): + return True + + def isAllowedAlterDocument(self): + return False + + def helpRequested(self): + pass + + def setupUi(self): + mw = self.getMainWindow() + form = mw.findChild(QtGui.QWidget, "TaskPanel") + form.direction = form.findChild(QtGui.QComboBox, "direction") + form.uv = form.findChild(QtGui.QSlider, "uv") + form.uvText = form.findChild(QtGui.QDoubleSpinBox, "uvText") + self.form = form + # Initial values + if self.initValues(): + return True + self.obj = self.preview.update(self.surf, self.dirId, self.uv) + self.retranslateUi() + # Connect Signals and Slots + QtCore.QObject.connect(form.direction, QtCore.SIGNAL("activated(QString)"), self.selectDirection) + QtCore.QObject.connect(form.uv, QtCore.SIGNAL("valueChanged(int)"), self.onUVSlider) + QtCore.QObject.connect(form.uvText, QtCore.SIGNAL("valueChanged(double)"), self.onUVText) + + def getMainWindow(self): + "returns the main window" + # using QtGui.qApp.activeWindow() isn't very reliable because if another + # widget than the mainwindow is active (e.g. a dialog) the wrong widget is + # returned + toplevel = QtGui.qApp.topLevelWidgets() + for i in toplevel: + if i.metaObject().className() == "Gui::MainWindow": + return i + raise Exception("No main window found") + + def selectDirection(self): + self.dirId = self.form.direction.currentIndex() + self.obj = self.preview.update(self.surf, self.dirId, self.uv) + if not self.obj: + msg = Translator.translate("Can't get the curve from selected object") + App.Console.PrintWarning(msg) + + def onUVSlider(self, value): + uv = self.form.uv.value() + uv = uv/(float(self.form.uv.maximum())) + self.setUV(uv) + + def onUVText(self, value): + uv = self.form.uvText.value() + self.setUV(uv) + + def setUV(self, uv): + self.form.uv.setValue(uv*self.form.uv.maximum()) + self.form.uvText.setValue(uv) + self.uv = uv + if not self.surf: + return + self.obj = self.preview.update(self.surf, self.dirId, self.uv) + if not self.obj: + msg = Translator.translate("Can't get the curve from selected object") + App.Console.PrintWarning(msg) + + def initValues(self): + self.obj = None + self.dirId = 0 + self.uv = 0 + self.surf = None + self.selObj = Geometry.getSelectedObj() + if not self.selObj: + msg = Translator.translate("1 surface must be selected (Any object has been selected)") + App.Console.PrintError(msg) + return True + self.surf = Geometry.getSelectedSurface() + if not self.surf: + msg = Translator.translate("1 surface must be selected (Any face object found into selected objects)") + App.Console.PrintError(msg) + return True + msg = Translator.translate("Ready to work") + App.Console.PrintMessage(msg) + return False + + def retranslateUi(self): + """ Set user interface locale strings. + """ + self.form.setWindowTitle(Translator.translate("Get surface ISO curve")) + self.form.direction.setItemText(0, Translator.translate("U direction")) + self.form.direction.setItemText(1, Translator.translate("V direction")) + + def close(self): + """ Destroy all dependant objects + @param self Main object. + """ + if self.tracker: + self.tracker.close() + +def createTask(): + panel = TaskPanel() + Gui.Control.showDialog(panel) + if panel.setupUi(): + Gui.Control.closeDialog(panel) + return None + tracker = PointTracker.PointTracker(Gui.ActiveDocument.ActiveView, panel) + return panel diff --git a/src/Mod/Surfaces/surfISOCurve/TaskPanel.ui b/src/Mod/Surfaces/surfISOCurve/TaskPanel.ui new file mode 100644 index 0000000000..68898bb05e --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/TaskPanel.ui @@ -0,0 +1,65 @@ + + + TaskPanel + + + + 0 + 0 + 307 + 268 + + + + Get ISO curve from surface + + + + + + + U direction + + + + + V direction + + + + + + + + + + 0 + + + 10000 + + + Qt::Horizontal + + + + + + + 0.000000000000000 + + + 1.000000000000000 + + + 0.010000000000000 + + + + + + + + + + diff --git a/src/Mod/Surfaces/surfISOCurve/__init__.py b/src/Mod/Surfaces/surfISOCurve/__init__.py new file mode 100644 index 0000000000..c104e04e8f --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/__init__.py @@ -0,0 +1,34 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD +import FreeCADGui + +# Qt libraries +from PyQt4 import QtGui,QtCore + +# Main object +import TaskPanel +from surfUtils import Paths + +def load(): + """ Loads the tool """ + TaskPanel.createTask() diff --git a/src/Mod/Surfaces/surfSlice/CMakeLists.txt b/src/Mod/Surfaces/surfSlice/CMakeLists.txt new file mode 100644 index 0000000000..7757f84eac --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/CMakeLists.txt @@ -0,0 +1,11 @@ +INSTALL( + FILES + __init__.py + PointTracker.py + TaskPanel.py + Preview.py + TaskPanel.ui + DESTINATION + Mod/Surfaces/surfSlice +) + diff --git a/src/Mod/Surfaces/surfSlice/Makefile.am b/src/Mod/Surfaces/surfSlice/Makefile.am new file mode 100644 index 0000000000..fe2a840b11 --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/Makefile.am @@ -0,0 +1,15 @@ +datadir = $(prefix)/Mod/Surfaces/surfSlice + +data_DATA = \ + __init__.py \ + Preview.py \ + TaskPanel.ui \ + PointTracker.py \ + TaskPanel.py + +CLEANFILES = $(BUILT_SOURCES) + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt + diff --git a/src/Mod/Surfaces/surfSlice/PointTracker.py b/src/Mod/Surfaces/surfSlice/PointTracker.py new file mode 100644 index 0000000000..863c47924e --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/PointTracker.py @@ -0,0 +1,68 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui +import Draft +from FreeCAD import Vector +# Qt library +from PyQt4 import QtGui,QtCore +# Pivy +import pivy +from pivy import coin +from pivy.coin import * +# Module +from surfUtils import Paths +from surfUtils import Geometry +from surfSlice import Preview + +class PointTracker: + def __init__(self,view,task): + self.view=view + self.task=task + task.tracker = self + self.callback = self.view.addEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),self.mouseButton) + self.callbackMove = self.view.addEventCallbackPivy(SoLocation2Event.getClassTypeId(),self.mouseMove) + + def mouseMove(self, event_cb): + event = event_cb.getEvent() + # Get screen point + screen = event.getPosition() + ctrl = event.wasCtrlDown() + # Get snapped object if exist, else the screen point will used + point = Gui.Snapper.snap(screen, ctrl) + + def mouseButton(self, event_cb): + event = event_cb.getEvent() + if event.getState() != coin.SoMouseButtonEvent.DOWN: + return + # Get screen point + screen = event.getPosition() + ctrl = event.wasCtrlDown() + # Get snapped object if exist, else the screen point will used + point = Gui.Snapper.snap(screen, ctrl) + if not point: + point = self.view.getPoint(screen[0],screen[1]) + # Set it into the task panel + self.task.setR3(point) + + def close(self): + self.view.removeEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),self.callback) diff --git a/src/Mod/Surfaces/surfSlice/Preview.py b/src/Mod/Surfaces/surfSlice/Preview.py new file mode 100644 index 0000000000..b0c1f1f8c2 --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/Preview.py @@ -0,0 +1,97 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD,FreeCADGui +from FreeCAD import Base +from FreeCAD import Part +# FreeCADShip modules +from surfUtils import Paths +from surfUtils import Geometry +from surfUtils import Math + +class Preview(object): + def __init__(self): + """ Constructor. + @param self Auto call object. + @note Start it as unactive + """ + self.objs = None + self.reinit() + + def reinit(self): + """ Reinitializate drawer. + @param self Auto call object. + """ + self.clean() + self.objs = None + + def update(self, surf, direction, r): + """ Update the 3D view printing curve. + @param surf Surf where get the curve. + @param direction Slice plane normal vector. + @param r Absolute position at Slice plane normal direction. + @return Curve from object (as Part::Feature). + """ + # Errors + if not surf: + return None + # Get curve + curve = self.getSlice(surf, direction, r) + # Draw at 3D view + self.clean() + self.objs = [] + for i in range(0,len(curve)): + for j in range(0,len(curve[i])): + Part.show(curve[i][j]) + objs = FreeCAD.ActiveDocument.Objects + objs[len(objs)-1].Label = 'surfSliceCurve' + self.objs.append(objs[len(objs)-1]) + return self.objs + + def getSlice(self, surf, direction, r): + """ Get surface slice. + @param surf Surf where get the curve. + @param direction Slice plane normal vector. + @param r Absolute position at Slice plane normal direction. + @return Curve from object. + """ + # Errors + if not surf: + return None + # Get curve + curve = [] + for i in range(0,len(surf)): + curve.append(surf[i].slice(direction, r)) + return curve + + def clean(self,Destroy=True): + """ Erase all sections from screen. + @param self Auto call object. + @param Destroy True if the object must be destroyed, False otherwise. + """ + if not self.objs: + return + for i in range(0,len(self.objs)): + FreeCADGui.ActiveDocument.hide(self.objs[i].Name) + if Destroy: + FreeCAD.ActiveDocument.removeObject(self.objs[i].Name) + if Destroy: + self.objs=None diff --git a/src/Mod/Surfaces/surfSlice/TaskPanel.py b/src/Mod/Surfaces/surfSlice/TaskPanel.py new file mode 100644 index 0000000000..795787b564 --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/TaskPanel.py @@ -0,0 +1,214 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui +from FreeCAD import Vector +# Qt library +from PyQt4 import QtGui,QtCore +# Module +from surfUtils import Paths, Geometry, Math, Translator +import Preview +import PointTracker + +class TaskPanel: + def __init__(self): + self.ui = Paths.modulePath() + "/surfSlice/TaskPanel.ui" + self.preview = Preview.Preview() + self.tracker = None + self.dir = Vector(0.0,0.0,1.0) + + def accept(self): + if not self.objs: + return True + for i in range(0,len(self.objs)): + self.objs[i].Label = 'SliceCurve' + self.close() + return True + + def reject(self): + self.preview.clean() + self.close() + return True + + def clicked(self, index): + pass + + def open(self): + pass + + def needsFullSpace(self): + return True + + def isAllowedAlterSelection(self): + return False + + def isAllowedAlterView(self): + return True + + def isAllowedAlterDocument(self): + return False + + def helpRequested(self): + pass + + def setupUi(self): + mw = self.getMainWindow() + form = mw.findChild(QtGui.QWidget, "TaskPanel") + form.direction = form.findChild(QtGui.QComboBox, "direction") + form.r = form.findChild(QtGui.QSlider, "r") + form.rText = form.findChild(QtGui.QDoubleSpinBox, "rText") + self.form = form + # Initial values + if self.initValues(): + return True + self.retranslateUi() + self.form.rText.setMinimum(self.bound[4]) + self.form.rText.setMaximum(self.bound[5]) + self.setR(self.r) + # Connect Signals and Slots + QtCore.QObject.connect(form.direction, QtCore.SIGNAL("activated(QString)"), self.selectDirection) + QtCore.QObject.connect(form.r, QtCore.SIGNAL("valueChanged(int)"), self.onRSlider) + QtCore.QObject.connect(form.rText, QtCore.SIGNAL("valueChanged(double)"), self.onRText) + return False + + def getMainWindow(self): + "returns the main window" + # using QtGui.qApp.activeWindow() isn't very reliable because if another + # widget than the mainwindow is active (i.e. a dialog) the wrong widget is + # returned + toplevel = QtGui.qApp.topLevelWidgets() + for i in toplevel: + if i.metaObject().className() == "Gui::MainWindow": + return i + raise Exception("No main window found") + + def selectDirection(self): + if(self.form.direction.currentIndex() == 0): # XY + self.dir = Vector(0.0,0.0,1.0) + self.r = max(self.r, self.bound[4]) + self.r = min(self.r, self.bound[5]) + self.form.rText.setMinimum(self.bound[4]) + self.form.rText.setMaximum(self.bound[5]) + if(self.form.direction.currentIndex() == 1): # XZ + self.dir = Vector(0.0,1.0,0.0) + self.r = max(self.r, self.bound[2]) + self.r = min(self.r, self.bound[3]) + self.form.rText.setMinimum(self.bound[2]) + self.form.rText.setMaximum(self.bound[3]) + if(self.form.direction.currentIndex() == 2): # YZ + self.dir = Vector(1.0,0.0,0.0) + self.r = max(self.r, self.bound[0]) + self.r = min(self.r, self.bound[1]) + self.form.rText.setMinimum(self.bound[0]) + self.form.rText.setMaximum(self.bound[1]) + self.objs = self.preview.update(self.face, self.dir, self.r) + if not self.objs: + msg = Translator.translate("Can't calculate section") + App.Console.PrintWarning(msg) + + def onRSlider(self, value): + # Get r at [0,1] interval + r = self.form.r.value() + r = r/(float(self.form.r.maximum())) + # Expand to real interval + dr = self.form.rText.maximum()-self.form.rText.minimum() + r = r*dr + self.form.rText.minimum() + # Set value + self.setR(r) + + def onRText(self, value): + r = self.form.rText.value() + self.setR(r) + + def setR(self, r): + self.form.rText.setValue(r) + self.r = max(self.form.rText.minimum(), min(self.form.rText.maximum(), r)) + dr = self.form.rText.maximum()-self.form.rText.minimum() + r = (r - self.form.rText.minimum())/dr*self.form.r.maximum() + self.form.r.setValue(r) + if not self.face: + return + self.objs = self.preview.update(self.face, self.dir, self.r) + if not self.objs: + msg = Translator.translate("Can't calculate section") + App.Console.PrintWarning(msg) + + def setR3(self, r): + if(self.form.direction.currentIndex() == 0): # XY + self.setR(r.z) + if(self.form.direction.currentIndex() == 1): # XZ + self.setR(r.y) + if(self.form.direction.currentIndex() == 2): # YZ + self.setR(r.x) + + def initValues(self): + self.objs = None + self.dir = Vector(0.0,0.0,1.0) + self.r = 0.0 + self.face = None + self.selObj = Geometry.getSelectedObj() + if not self.selObj: + msg = Translator.translate("At least 1 surface must be selected (Any selected object)") + App.Console.PrintError(msg) + return True + self.face = Geometry.getFaces() + if not self.face: + msg = Translator.translate("At least 1 surface must be selected (Any face object found into selected objects)") + App.Console.PrintError(msg) + return True + bound = self.face[0].BoundBox + self.bound = [bound.XMin, bound.XMax, bound.YMin, bound.YMax, bound.ZMin, bound.ZMax] + for i in range(1,len(self.face)): + face = self.face[i] + bound = face.BoundBox + self.bound[0] = min(self.bound[0],bound.XMin) + self.bound[1] = min(self.bound[1],bound.XMax) + self.bound[2] = min(self.bound[2],bound.YMin) + self.bound[3] = min(self.bound[3],bound.YMax) + self.bound[4] = min(self.bound[4],bound.ZMin) + self.bound[5] = min(self.bound[5],bound.ZMax) + self.r = max(self.r, self.bound[4]) + self.r = min(self.r, self.bound[5]) + msg = Translator.translate("Ready to work") + App.Console.PrintMessage(msg) + return False + + def retranslateUi(self): + """ Set user interface locale strings. + """ + self.form.setWindowTitle(Translator.translate("Get surface slice")) + + def close(self): + """ Destroy all dependant objects + @param self Main object. + """ + if self.tracker: + self.tracker.close() + +def createTask(): + panel = TaskPanel() + Gui.Control.showDialog(panel) + if panel.setupUi(): + Gui.Control.closeDialog(panel) + return None + tracker = PointTracker.PointTracker(Gui.ActiveDocument.ActiveView, panel) + return panel diff --git a/src/Mod/Surfaces/surfSlice/TaskPanel.ui b/src/Mod/Surfaces/surfSlice/TaskPanel.ui new file mode 100644 index 0000000000..20b7029ef7 --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/TaskPanel.ui @@ -0,0 +1,70 @@ + + + TaskPanel + + + + 0 + 0 + 307 + 268 + + + + Get surface slice + + + + + + + XY + + + + + XZ + + + + + YZ + + + + + + + + + + 0 + + + 10000 + + + Qt::Horizontal + + + + + + + 0.000000000000000 + + + 1.000000000000000 + + + 0.010000000000000 + + + + + + + + + + diff --git a/src/Mod/Surfaces/surfSlice/__init__.py b/src/Mod/Surfaces/surfSlice/__init__.py new file mode 100644 index 0000000000..c104e04e8f --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/__init__.py @@ -0,0 +1,34 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD +import FreeCADGui + +# Qt libraries +from PyQt4 import QtGui,QtCore + +# Main object +import TaskPanel +from surfUtils import Paths + +def load(): + """ Loads the tool """ + TaskPanel.createTask() diff --git a/src/Mod/Surfaces/surfUtils/CMakeLists.txt b/src/Mod/Surfaces/surfUtils/CMakeLists.txt new file mode 100644 index 0000000000..46ceac9efc --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/CMakeLists.txt @@ -0,0 +1,11 @@ +INSTALL( + FILES + __init__.py + Geometry.py + Math.py + Paths.py + Translator.py + DESTINATION + Mod/Surfaces/surfUtils +) + diff --git a/src/Mod/Surfaces/surfUtils/Geometry.py b/src/Mod/Surfaces/surfUtils/Geometry.py new file mode 100644 index 0000000000..d34844e1f3 --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/Geometry.py @@ -0,0 +1,171 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +import math +# FreeCAD +import FreeCAD, FreeCADGui +from FreeCAD import Base +from FreeCAD import Part +# FreeCAD ship +from surfUtils import Math + +def getSelectedObjs(): + """ Returns the selected objects list + @return Selected objects list + """ + return FreeCADGui.Selection.getSelection() + +def getSelectedObj(): + """ Returns the first element of the selected objects list + @return Selected object. None if errors happens + """ + objs = FreeCADGui.Selection.getSelection() + if not objs: + return None + if not len(objs): + return None + obj = objs[0] + return FreeCAD.ActiveDocument.getObject(obj.Name) + +def getEdges(objs=None): + """ Returns object edges (list of them) + @param objs Object to get the faces, none if selected + object may used. + @return Selected edges. None if errors happens + """ + edges = [] + if not objs: + objs = FreeCADGui.Selection.getSelection() + if not objs: + return None + for i in range(0, len(objs)): + obj = objs[i] + if obj.isDerivedFrom('Part::Feature'): + # get shape + shape = obj.Shape + if not shape: + return None + obj = shape + if not obj.isDerivedFrom('Part::TopoShape'): + return None + objEdges = obj.Edges + if not objEdges: + continue + for j in range(0, len(objEdges)): + edges.append(objEdges[j]) + return edges + +def getFaces(obj=None): + """ Returns object faces (list of them) + @param obj Object to get the faces, none if selected + object may used. + @return Selected faces. None if errors happens + """ + if not obj: + obj = getSelectedObj() + if not obj: + return None + if obj.isDerivedFrom('Part::Feature'): + # get shape + shape = obj.Shape + if not shape: + return None + obj = shape + if not obj.isDerivedFrom('Part::TopoShape'): + return None + # get face + faces = obj.Faces + if not faces: + return None + if not len(faces): + return None + return faces + +def getSelectedSurface(obj=None): + """ Returns object surface (the first of the list) + @param obj Object to get the surface, none if selected + object may used. + @return Selected surface. None if errors happens + """ + faces = getFaces(obj) + if not faces: + return None + obj = faces[0] + # get surface + surf = obj.Surface + if not surf: + return None + return surf + +def getBorders(objs=None): + """ Returns the borders of all selected objects as edge array + @param objs Objects to get the edges, none if selected objects + may used. + @return Borders + """ + edges = [] + if not objs: + objs = FreeCADGui.Selection.getSelection() + if not objs: + return None + if len(objs) < 1: + return None + for i in range(0, len(objs)): + faces = getFaces(objs[i]) + if not faces: + continue + for j in range(0, len(faces)): + edgList = faces[j].Edges + for k in range(0, len(edgList)): + edges.append(edgList[k]) + return edges + + +def lineFaceSection(line,surface): + """ Returns the point of section of a line with a face + @param line Line object, that can be a curve. + @param surface Surface object (must be a Part::Shape) + @return Section points array, [] if line don't cut surface + """ + # Get initial data + result = [] + vertexes = line.Vertexes + nVertex = len(vertexes) + # Perform the cut + section = line.cut(surface) + # Filter all old points + points = section.Vertexes + nPoint = len(points) + if nPoint <= nVertex: + # Any valid point + result + for i in range(0,nPoint): + disp = len(result) + flag = 0 + if not Math.isAprox(points[i].X,vertexes[i-disp].X,0.0001): + flag = flag+1 + if not Math.isAprox(points[i].Y,vertexes[i-disp].Y,0.0001): + flag = flag+1 + if not Math.isAprox(points[i].Z,vertexes[i-disp].Z,0.0001): + flag = flag+1 + if flag > 0: + result.append(points[i]) + return result + diff --git a/src/Mod/Surfaces/surfUtils/Makefile.am b/src/Mod/Surfaces/surfUtils/Makefile.am new file mode 100644 index 0000000000..eab7072d96 --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/Makefile.am @@ -0,0 +1,15 @@ +datadir = $(prefix)/Mod/Surfaces/surfUtils + +data_DATA = \ + __init__.py \ + Math.py \ + Translator.py \ + Geometry.py \ + Paths.py + +CLEANFILES = $(BUILT_SOURCES) + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt + diff --git a/src/Mod/Surfaces/surfUtils/Math.py b/src/Mod/Surfaces/surfUtils/Math.py new file mode 100644 index 0000000000..9063c9560e --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/Math.py @@ -0,0 +1,54 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +def isAprox(a,b,tol=0.0001): + """returns if a value is into (b-tol,b+tol) + @param a Value to compare. + @param b Center of valid interval + @param tol Radius of valid interval + @return True if a is into (b-tol,b+tol), False otherwise + """ + if (a < b+abs(tol)) and (a > b-abs(tol)): + return True + return False + +def isSamePoint(a,b,tol=0.0001): + """returns if two points are the same with a provided tolerance + @param a Point to compare. + @param b Reference point. + @param tol Radius of valid interval + @return True if twice point are the same, False otherwise + @note FreeCAD::Base::Vector types must be provided + """ + if isAprox(a.x,b.x,tol) and isAprox(a.y,b.y,tol) and isAprox(a.z,b.z,tol): + return True + return False + +def isSameVertex(a,b,tol=0.0001): + """returns if two points are the same with a provided tolerance + @param a Point to compare. + @param b Reference point. + @param tol Radius of valid interval + @return True if twice point are the same, False otherwise + @note FreeCAD::Part::Vertex types must be provided + """ + if isAprox(a.X,b.X,tol) and isAprox(a.Y,b.Y,tol) and isAprox(a.Z,b.Z,tol): + return True + return False diff --git a/src/Mod/Surfaces/surfUtils/Paths.py b/src/Mod/Surfaces/surfUtils/Paths.py new file mode 100644 index 0000000000..fc9f8a1938 --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/Paths.py @@ -0,0 +1,52 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +import FreeCAD, FreeCADGui, os + +def modulePath(): + """returns the current Ship design module path + @return Module path""" + path1 = FreeCAD.ConfigGet("AppHomePath") + "Mod/Surfaces" + path2 = FreeCAD.ConfigGet("UserAppData") + "Mod/Surfaces" + if os.path.exists(path2): + return path2 + else: + return path1 + +def iconsPath(): + """returns the current Ship design module icons path + @return Icons path""" + path = modulePath() + "/Icons" + return path + +def getPathFromFile(fileName): + """ Gets the directory path from a file name + @param fileName Name of the file + @return Directory path. + """ + if not fileName: + return '' + i = 1 + try: + while 1: + i = fileName.index("/", i+1) + except ValueError: + pass + return fileName[0:i+1] diff --git a/src/Mod/Surfaces/surfUtils/Translator.py b/src/Mod/Surfaces/surfUtils/Translator.py new file mode 100644 index 0000000000..8d08d7fe4a --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/Translator.py @@ -0,0 +1,27 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +import FreeCAD, FreeCADGui, os +from PyQt4 import QtCore,QtGui + +def translate(text,context="surfaces"): + "convenience function for Qt translator" + return QtGui.QApplication.translate(context, text, None, + QtGui.QApplication.UnicodeUTF8) diff --git a/src/Mod/Surfaces/surfUtils/__init__.py b/src/Mod/Surfaces/surfUtils/__init__.py new file mode 100644 index 0000000000..e82fff67ce --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/__init__.py @@ -0,0 +1,22 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# Empty file to treat the folder as a package + From fd1dcff46d0d470c516856bfc29dcdf6cacdf518 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 10:59:56 +0100 Subject: [PATCH 05/40] Revert "Added Surfaces module sources" This reverts commit d3714a4281797f3895e1a1b7a0f1b892373fe925. --- src/Mod/Surfaces/Icons/BorderIco.png | Bin 5621 -> 0 bytes src/Mod/Surfaces/Icons/BorderIco.xcf | Bin 63790 -> 0 bytes src/Mod/Surfaces/Icons/BorderIco.xpm | 1213 -------------- src/Mod/Surfaces/Icons/CMakeLists.txt | 21 - src/Mod/Surfaces/Icons/ConvertIco.png | Bin 6879 -> 0 bytes src/Mod/Surfaces/Icons/ConvertIco.xcf | Bin 62189 -> 0 bytes src/Mod/Surfaces/Icons/ConvertTo4SidesIco.xpm | 1398 ----------------- src/Mod/Surfaces/Icons/Ico.png | Bin 7236 -> 0 bytes src/Mod/Surfaces/Icons/Ico.xcf | Bin 21174 -> 0 bytes src/Mod/Surfaces/Icons/Ico.xpm | 749 --------- src/Mod/Surfaces/Icons/IsoCurveIco.png | Bin 6763 -> 0 bytes src/Mod/Surfaces/Icons/IsoCurveIco.xcf | Bin 64629 -> 0 bytes src/Mod/Surfaces/Icons/IsoCurveIco.xpm | 1280 --------------- src/Mod/Surfaces/Icons/Makefile.am | 25 - src/Mod/Surfaces/Icons/SliceIco.png | Bin 5547 -> 0 bytes src/Mod/Surfaces/Icons/SliceIco.xcf | Bin 61422 -> 0 bytes src/Mod/Surfaces/Icons/SliceIco.xpm | 865 ---------- src/Mod/Surfaces/InitGui.py | 38 - src/Mod/Surfaces/SurfGui.py | 75 - src/Mod/Surfaces/surfBorder/CMakeLists.txt | 7 - src/Mod/Surfaces/surfBorder/Makefile.am | 11 - src/Mod/Surfaces/surfBorder/__init__.py | 48 - src/Mod/Surfaces/surfConvert/CMakeLists.txt | 10 - src/Mod/Surfaces/surfConvert/Makefile.am | 14 - src/Mod/Surfaces/surfConvert/Preview.py | 79 - src/Mod/Surfaces/surfConvert/TaskPanel.py | 576 ------- src/Mod/Surfaces/surfConvert/TaskPanel.ui | 107 -- src/Mod/Surfaces/surfConvert/__init__.py | 34 - src/Mod/Surfaces/surfISOCurve/CMakeLists.txt | 11 - src/Mod/Surfaces/surfISOCurve/Makefile.am | 16 - src/Mod/Surfaces/surfISOCurve/PointTracker.py | 85 - src/Mod/Surfaces/surfISOCurve/Preview.py | 122 -- src/Mod/Surfaces/surfISOCurve/TaskPanel.py | 165 -- src/Mod/Surfaces/surfISOCurve/TaskPanel.ui | 65 - src/Mod/Surfaces/surfISOCurve/__init__.py | 34 - src/Mod/Surfaces/surfSlice/CMakeLists.txt | 11 - src/Mod/Surfaces/surfSlice/Makefile.am | 15 - src/Mod/Surfaces/surfSlice/PointTracker.py | 68 - src/Mod/Surfaces/surfSlice/Preview.py | 97 -- src/Mod/Surfaces/surfSlice/TaskPanel.py | 214 --- src/Mod/Surfaces/surfSlice/TaskPanel.ui | 70 - src/Mod/Surfaces/surfSlice/__init__.py | 34 - src/Mod/Surfaces/surfUtils/CMakeLists.txt | 11 - src/Mod/Surfaces/surfUtils/Geometry.py | 171 -- src/Mod/Surfaces/surfUtils/Makefile.am | 15 - src/Mod/Surfaces/surfUtils/Math.py | 54 - src/Mod/Surfaces/surfUtils/Paths.py | 52 - src/Mod/Surfaces/surfUtils/Translator.py | 27 - src/Mod/Surfaces/surfUtils/__init__.py | 22 - 49 files changed, 7909 deletions(-) delete mode 100644 src/Mod/Surfaces/Icons/BorderIco.png delete mode 100644 src/Mod/Surfaces/Icons/BorderIco.xcf delete mode 100644 src/Mod/Surfaces/Icons/BorderIco.xpm delete mode 100644 src/Mod/Surfaces/Icons/CMakeLists.txt delete mode 100644 src/Mod/Surfaces/Icons/ConvertIco.png delete mode 100644 src/Mod/Surfaces/Icons/ConvertIco.xcf delete mode 100644 src/Mod/Surfaces/Icons/ConvertTo4SidesIco.xpm delete mode 100644 src/Mod/Surfaces/Icons/Ico.png delete mode 100644 src/Mod/Surfaces/Icons/Ico.xcf delete mode 100644 src/Mod/Surfaces/Icons/Ico.xpm delete mode 100644 src/Mod/Surfaces/Icons/IsoCurveIco.png delete mode 100644 src/Mod/Surfaces/Icons/IsoCurveIco.xcf delete mode 100644 src/Mod/Surfaces/Icons/IsoCurveIco.xpm delete mode 100644 src/Mod/Surfaces/Icons/Makefile.am delete mode 100644 src/Mod/Surfaces/Icons/SliceIco.png delete mode 100644 src/Mod/Surfaces/Icons/SliceIco.xcf delete mode 100644 src/Mod/Surfaces/Icons/SliceIco.xpm delete mode 100644 src/Mod/Surfaces/InitGui.py delete mode 100644 src/Mod/Surfaces/SurfGui.py delete mode 100644 src/Mod/Surfaces/surfBorder/CMakeLists.txt delete mode 100644 src/Mod/Surfaces/surfBorder/Makefile.am delete mode 100644 src/Mod/Surfaces/surfBorder/__init__.py delete mode 100644 src/Mod/Surfaces/surfConvert/CMakeLists.txt delete mode 100644 src/Mod/Surfaces/surfConvert/Makefile.am delete mode 100644 src/Mod/Surfaces/surfConvert/Preview.py delete mode 100644 src/Mod/Surfaces/surfConvert/TaskPanel.py delete mode 100644 src/Mod/Surfaces/surfConvert/TaskPanel.ui delete mode 100644 src/Mod/Surfaces/surfConvert/__init__.py delete mode 100644 src/Mod/Surfaces/surfISOCurve/CMakeLists.txt delete mode 100644 src/Mod/Surfaces/surfISOCurve/Makefile.am delete mode 100644 src/Mod/Surfaces/surfISOCurve/PointTracker.py delete mode 100644 src/Mod/Surfaces/surfISOCurve/Preview.py delete mode 100644 src/Mod/Surfaces/surfISOCurve/TaskPanel.py delete mode 100644 src/Mod/Surfaces/surfISOCurve/TaskPanel.ui delete mode 100644 src/Mod/Surfaces/surfISOCurve/__init__.py delete mode 100644 src/Mod/Surfaces/surfSlice/CMakeLists.txt delete mode 100644 src/Mod/Surfaces/surfSlice/Makefile.am delete mode 100644 src/Mod/Surfaces/surfSlice/PointTracker.py delete mode 100644 src/Mod/Surfaces/surfSlice/Preview.py delete mode 100644 src/Mod/Surfaces/surfSlice/TaskPanel.py delete mode 100644 src/Mod/Surfaces/surfSlice/TaskPanel.ui delete mode 100644 src/Mod/Surfaces/surfSlice/__init__.py delete mode 100644 src/Mod/Surfaces/surfUtils/CMakeLists.txt delete mode 100644 src/Mod/Surfaces/surfUtils/Geometry.py delete mode 100644 src/Mod/Surfaces/surfUtils/Makefile.am delete mode 100644 src/Mod/Surfaces/surfUtils/Math.py delete mode 100644 src/Mod/Surfaces/surfUtils/Paths.py delete mode 100644 src/Mod/Surfaces/surfUtils/Translator.py delete mode 100644 src/Mod/Surfaces/surfUtils/__init__.py diff --git a/src/Mod/Surfaces/Icons/BorderIco.png b/src/Mod/Surfaces/Icons/BorderIco.png deleted file mode 100644 index 8f6f024148322d436f9bd4a49c2a43e141353e93..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5621 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 diff --git a/src/Mod/Surfaces/Icons/BorderIco.xcf b/src/Mod/Surfaces/Icons/BorderIco.xcf deleted file mode 100644 index 0ecd7785b219fe331605eefec220d31b7de36231..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63790 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 diff --git a/src/Mod/Surfaces/Icons/BorderIco.xpm b/src/Mod/Surfaces/Icons/BorderIco.xpm deleted file mode 100644 index a27c8de99b..0000000000 --- a/src/Mod/Surfaces/Icons/BorderIco.xpm +++ /dev/null @@ -1,1213 +0,0 @@ -/* XPM */ -static char * BorderIco_xpm[] = { -"128 128 1082 2", -" c None", -". c #FF0000", -"+ c #005F00", -"@ c #006100", -"# c #00AF05", -"$ c #00B105", -"% c #000000", -"& c #009B03", -"* c #006600", -"= c #008C02", -"- c #00B005", -"; c #00A305", -"> c #006F01", -", c #B5B5B5", -"' c #B4B4B3", -") c #B3B3B2", -"! c #B1B1B2", -"~ c #B1B0B0", -"{ c #AFAFAF", -"] c #AEAEAE", -"^ c #ADACAC", -"/ c #ABABAB", -"( c #AAAAAA", -"_ c #007100", -": c #00AC04", -"< c #008403", -"[ c #BDBDBD", -"} c #BCBDBD", -"| c #BCBCBC", -"1 c #BABBBA", -"2 c #B9B9BA", -"3 c #B8B8B9", -"4 c #B8B7B7", -"5 c #B6B6B6", -"6 c #B5B4B5", -"7 c #B3B3B3", -"8 c #B2B3B2", -"9 c #B1B1B1", -"0 c #B0B0B0", -"a c #AFAFAE", -"b c #ADADAD", -"c c #ACACAC", -"d c #A9A9A9", -"e c #A8A7A8", -"f c #A6A7A6", -"g c #A5A5A5", -"h c #00A704", -"i c #00AE05", -"j c #00AC05", -"k c #009703", -"l c #C1C2C2", -"m c #C1C1C1", -"n c #C0C1C1", -"o c #C0C0C0", -"p c #BFC0C0", -"q c #BFBFBF", -"r c #BEBDBE", -"s c #BCBDBC", -"t c #BBBBBB", -"u c #BABABA", -"v c #B9B9B9", -"w c #B7B8B8", -"x c #B7B6B7", -"y c #B4B4B4", -"z c #B2B1B1", -"A c #B0AFAF", -"B c #ADAEAD", -"C c #AAA9A9", -"D c #A7A7A7", -"E c #A6A6A5", -"F c #A4A4A4", -"G c #008A02", -"H c #00B104", -"I c #00AD05", -"J c #00AA06", -"K c #00A105", -"L c #007101", -"M c #006000", -"N c #C3C3C3", -"O c #C4C3C3", -"P c #C3C3C4", -"Q c #C3C4C3", -"R c #C3C2C3", -"S c #C2C1C2", -"T c #C1C1C2", -"U c #BFC0BF", -"V c #BEBEBF", -"W c #BDBDBE", -"X c #BDBCBC", -"Y c #BCBBBB", -"Z c #BABAB9", -"` c #B6B7B6", -" . c #AFB0AF", -".. c #AEAEAF", -"+. c #ACABAC", -"@. c #A9A9A8", -"#. c #A8A8A8", -"$. c #A6A6A6", -"%. c #A4A5A4", -"&. c #A3A3A3", -"*. c #A2A2A2", -"=. c #008B02", -"-. c #00B305", -";. c #00A906", -">. c #00A505", -",. c #008303", -"'. c #C2C2C3", -"). c #C4C4C4", -"!. c #C5C5C5", -"~. c #C4C5C5", -"{. c #C5C4C4", -"]. c #BEBEBE", -"^. c #BDBEBE", -"/. c #BBBABA", -"(. c #B8B8B8", -"_. c #B4B5B4", -":. c #B2B2B1", -"<. c #B1B1B0", -"[. c #AAABAB", -"}. c #A4A3A3", -"|. c #A1A0A1", -"1. c #00B405", -"2. c #00A706", -"3. c #00A506", -"4. c #009404", -"5. c #006800", -"6. c #C2C2C2", -"7. c #C3C3C2", -"8. c #C5C6C6", -"9. c #C6C6C6", -"0. c #C7C6C6", -"a. c #C6C6C5", -"b. c #C6C5C6", -"c. c #C4C5C4", -"d. c #C3C4C4", -"e. c #C3C2C2", -"f. c #C1C0C0", -"g. c #C0BFBF", -"h. c #BDBCBD", -"i. c #BBBCBB", -"j. c #B8B8B7", -"k. c #B4B5B5", -"l. c #B3B3B4", -"m. c #B2B1B2", -"n. c #ACADAC", -"o. c #A8A9A8", -"p. c #A7A7A6", -"q. c #A3A4A4", -"r. c #A3A3A2", -"s. c #A1A1A1", -"t. c #9FA0A0", -"u. c #006700", -"v. c #007700", -"w. c #008601", -"x. c #009202", -"y. c #009D02", -"z. c #00AC03", -"A. c #00B503", -"B. c #00B404", -"C. c #00A806", -"D. c #00A306", -"E. c #009C05", -"F. c #007702", -"G. c #C2C2C1", -"H. c #C2C3C2", -"I. c #C5C5C4", -"J. c #C7C7C7", -"K. c #C8C8C7", -"L. c #C6C6C7", -"M. c #C5C4C5", -"N. c #BFBFBE", -"O. c #BABBBB", -"P. c #BAB9BA", -"Q. c #B8B7B8", -"R. c #B7B7B6", -"S. c #B2B3B3", -"T. c #AFB0B0", -"U. c #ABACAB", -"V. c #A6A5A6", -"W. c #A4A4A5", -"X. c #9E9E9F", -"Y. c #00A201", -"Z. c #00B302", -"`. c #00C202", -" + c #00C803", -".+ c #00C403", -"++ c #00C204", -"@+ c #00C004", -"#+ c #00BD04", -"$+ c #00BA04", -"%+ c #00B804", -"&+ c #00B504", -"*+ c #00AC06", -"=+ c #00A905", -"-+ c #00A406", -";+ c #00A006", -">+ c #009E07", -",+ c #008A05", -"'+ c #006500", -")+ c #C1C1C0", -"!+ c #C9C8C9", -"~+ c #C9C9C9", -"{+ c #C9C9C8", -"]+ c #C8C9C9", -"^+ c #C8C8C8", -"/+ c #C7C6C7", -"(+ c #B7B7B7", -"_+ c #B6B5B5", -":+ c #B1B2B2", -"<+ c #B0AFB0", -"[+ c #A8A9A9", -"}+ c #A5A4A5", -"|+ c #A2A2A1", -"1+ c #286F28", -"2+ c #276F27", -"3+ c #004700", -"4+ c #007D00", -"5+ c #009500", -"6+ c #00AC00", -"7+ c #00D003", -"8+ c #00CD02", -"9+ c #00CB03", -"0+ c #00C603", -"a+ c #00C303", -"b+ c #00C003", -"c+ c #00BE04", -"d+ c #00BB04", -"e+ c #00B905", -"f+ c #00B704", -"g+ c #00AE06", -"h+ c #00AB05", -"i+ c #00A606", -"j+ c #00A107", -"k+ c #009F07", -"l+ c #009B07", -"m+ c #009506", -"n+ c #007602", -"o+ c #C7C7C6", -"p+ c #C9CACA", -"q+ c #CACBCB", -"r+ c #CACBCA", -"s+ c #CAC9CA", -"t+ c #C7C7C8", -"u+ c #BCBBBC", -"v+ c #BABABB", -"w+ c #B9B8B9", -"x+ c #B1B2B1", -"y+ c #AEAFAE", -"z+ c #ADAEAE", -"A+ c #AAAAAB", -"B+ c #A8A8A7", -"C+ c #297029", -"D+ c #287028", -"E+ c #277427", -"F+ c #278627", -"G+ c #007200", -"H+ c #008600", -"I+ c #009A00", -"J+ c #00E100", -"K+ c #00E101", -"L+ c #00DE01", -"M+ c #00D102", -"N+ c #00CE02", -"O+ c #00C903", -"P+ c #00C703", -"Q+ c #00C404", -"R+ c #00C104", -"S+ c #00BF04", -"T+ c #00BC04", -"U+ c #00A206", -"V+ c #009F06", -"W+ c #009C07", -"X+ c #009907", -"Y+ c #009807", -"Z+ c #008906", -"`+ c #006801", -" @ c #C0C0C1", -".@ c #C8C9C8", -"+@ c #CACACA", -"@@ c #CBCBCB", -"#@ c #CCCCCC", -"$@ c #C9CAC9", -"%@ c #C9C8C8", -"&@ c #BFBEBE", -"*@ c #B5B5B4", -"=@ c #B2B2B2", -"-@ c #2A712A", -";@ c #297D29", -">@ c #289328", -",@ c #28AA29", -"'@ c #28BD28", -")@ c #27CC28", -"!@ c #27CD28", -"~@ c #27CF28", -"{@ c #00AA00", -"]@ c #04DA04", -"^@ c #00E400", -"/@ c #00E201", -"(@ c #00E001", -"_@ c #00CF02", -":@ c #00CD03", -"<@ c #00CA03", -"[@ c #00B205", -"}@ c #00A207", -"|@ c #009D07", -"1@ c #009A07", -"2@ c #009808", -"3@ c #009606", -"4@ c #008004", -"5@ c #006300", -"6@ c #CBCACB", -"7@ c #CDCECD", -"8@ c #CECDCE", -"9@ c #CDCDCD", -"0@ c #CBCBCC", -"a@ c #BBBBBA", -"b@ c #B7B6B6", -"c@ c #B5B4B4", -"d@ c #B0B1B1", -"e@ c #AEADAD", -"f@ c #ACADAD", -"g@ c #2A722A", -"h@ c #2A9F2A", -"i@ c #29BA2A", -"j@ c #29C62A", -"k@ c #28C729", -"l@ c #28CA29", -"m@ c #27CE28", -"n@ c #27D027", -"o@ c #26D127", -"p@ c #00AD00", -"q@ c #00E600", -"r@ c #00E401", -"s@ c #00DF01", -"t@ c #00CF03", -"u@ c #00CC02", -"v@ c #00C503", -"w@ c #00C103", -"x@ c #00BF03", -"y@ c #00B904", -"z@ c #00B505", -"A@ c #00AF06", -"B@ c #00AA05", -"C@ c #00A507", -"D@ c #009D06", -"E@ c #009406", -"F@ c #007803", -"G@ c #C6C7C6", -"H@ c #CACACB", -"I@ c #CFCFCE", -"J@ c #C8C7C8", -"K@ c #BAB9B9", -"L@ c #B6B6B7", -"M@ c #AFAEAF", -"N@ c #297529", -"O@ c #29BB2A", -"P@ c #29C82A", -"Q@ c #28C929", -"R@ c #28CB29", -"S@ c #00AF00", -"T@ c #00E500", -"U@ c #00DC01", -"V@ c #00C203", -"W@ c #00BA05", -"X@ c #009006", -"Y@ c #C4C4C3", -"Z@ c #C9C9CA", -"`@ c #CECECE", -" # c #CBCCCC", -".# c #C2C1C1", -"+# c #C0C1C0", -"@# c #BEBEBD", -"## c #BCBCBB", -"$# c #B7B8B7", -"%# c #B0B1B0", -"&# c #ADADAE", -"*# c #298E29", -"=# c #28C72A", -"-# c #27CF27", -";# c #26D326", -"># c #05DF05", -",# c #00DD01", -"'# c #00CC03", -")# c #00C504", -"!# c #00B805", -"~# c #00A705", -"{# c #C7C8C8", -"]# c #CACAC9", -"^# c #CBCCCB", -"/# c #BFBEBF", -"(# c #B3B4B3", -"_# c #AEAFAF", -":# c #ACACAB", -"<# c #29B029", -"[# c #28C82A", -"}# c #27CC29", -"|# c #27CE27", -"1# c #26CF26", -"2# c #26D126", -"3# c #00A900", -"4# c #00B705", -"5# c #009207", -"6# c #C5C5C6", -"7# c #CBCACA", -"8# c #C6C5C5", -"9# c #C2C3C3", -"0# c #BEBFBE", -"a# c #A8A7A7", -"b# c #298229", -"c# c #28C629", -"d# c #27CB28", -"e# c #26CE27", -"f# c #26CF27", -"g# c #25CF26", -"h# c #00A800", -"i# c #00A700", -"j# c #00DB01", -"k# c #00D802", -"l# c #00B605", -"m# c #00A106", -"n# c #007A03", -"o# c #B8B9B8", -"p# c #B5B6B5", -"q# c #28A829", -"r# c #28C829", -"s# c #27CA29", -"t# c #27CC27", -"u# c #26CC27", -"v# c #26CD27", -"w# c #26CD26", -"x# c #25CC26", -"y# c #00A600", -"z# c #00A500", -"A# c #00D902", -"B# c #00D701", -"C# c #00BE03", -"D# c #C8C7C7", -"E# c #C7C8C7", -"F# c #C5C6C5", -"G# c #C4C4C5", -"H# c #B9BAB9", -"I# c #B6B7B7", -"J# c #B0B0AF", -"K# c #ADADAC", -"L# c #287D28", -"M# c #28C429", -"N# c #27C829", -"O# c #27C928", -"P# c #27CA28", -"Q# c #26CB27", -"R# c #26CA26", -"S# c #25CA27", -"T# c #00A400", -"U# c #00A200", -"V# c #00D502", -"W# c #00AB06", -"X# c #009E06", -"Y# c #008404", -"Z# c #B9B9B8", -"`# c #B1B0B1", -" $ c #ABAAAB", -".$ c #AAA9AA", -"+$ c #A9A8A9", -"@$ c #A5A5A6", -"#$ c #28A329", -"$$ c #28C529", -"%$ c #27C729", -"&$ c #27C728", -"*$ c #26C927", -"=$ c #26C928", -"-$ c #25C926", -";$ c #25C826", -">$ c #25C726", -",$ c #00A101", -"'$ c #00D402", -")$ c #00C604", -"!$ c #00A307", -"~$ c #006C01", -"{$ c #C1C0C1", -"]$ c #AEADAE", -"^$ c #ABAAAA", -"/$ c #287728", -"($ c #27C028", -"_$ c #27C529", -":$ c #27C628", -"<$ c #26C628", -"[$ c #26C727", -"}$ c #25C727", -"|$ c #25C627", -"1$ c #25C526", -"2$ c #009F00", -"3$ c #009E01", -"4$ c #00D002", -"5$ c #008D05", -"6$ c #B8B9B9", -"7$ c #B7B7B8", -"8$ c #ADACAD", -"9$ c #A7A7A8", -"0$ c #27A028", -"a$ c #27C328", -"b$ c #27C428", -"c$ c #26C428", -"d$ c #26C527", -"e$ c #25C426", -"f$ c #25C326", -"g$ c #24C226", -"h$ c #009D01", -"i$ c #009C01", -"j$ c #00B604", -"k$ c #007703", -"l$ c #0B0B0B", -"m$ c #BDBDBC", -"n$ c #B5B5B6", -"o$ c #ACACAD", -"p$ c #A9AAAA", -"q$ c #A5A6A5", -"r$ c #A2A2A3", -"s$ c #A1A2A1", -"t$ c #277927", -"u$ c #27C228", -"v$ c #26C328", -"w$ c #26C227", -"x$ c #25C227", -"y$ c #25C126", -"z$ c #25C226", -"A$ c #24C026", -"B$ c #009B01", -"C$ c #009901", -"D$ c #00A805", -"E$ c #009C06", -"F$ c #009607", -"G$ c #006200", -"H$ c #C0BFC0", -"I$ c #ABACAC", -"J$ c #276E27", -"K$ c #27A428", -"L$ c #26C028", -"M$ c #26C128", -"N$ c #25C028", -"O$ c #25C127", -"P$ c #25C026", -"Q$ c #24BF27", -"R$ c #24BE26", -"S$ c #24BD26", -"T$ c #009801", -"U$ c #009802", -"V$ c #00C902", -"W$ c #008504", -"X$ c #BBBABB", -"Y$ c #B9BABA", -"Z$ c #A0A0A1", -"`$ c #9F9F9F", -" % c #278227", -".% c #26BE28", -"+% c #26BF28", -"@% c #25BF28", -"#% c #25BE27", -"$% c #24BB25", -"%% c #009602", -"&% c #009501", -"*% c #009502", -"=% c #00A904", -"-% c #00A005", -";% c #009504", -">% c #009204", -",% c #009104", -"'% c #007102", -")% c #BDBEBD", -"!% c #A2A1A1", -"~% c #A0A0A0", -"{% c #9F9F9E", -"]% c #26B027", -"^% c #26BC28", -"/% c #25BC27", -"(% c #24BB26", -"_% c #24BA26", -":% c #23B926", -"<% c #23B925", -"[% c #009402", -"}% c #00AF04", -"|% c #009803", -"1% c #007701", -"2% c #009407", -"3% c #B4B3B3", -"4% c #A9A8A8", -"5% c #A7A8A7", -"6% c #A4A5A5", -"7% c #A09F9F", -"8% c #9E9E9E", -"9% c #9A9C9B", -"0% c #269127", -"a% c #26BA28", -"b% c #26BB28", -"c% c #25BA27", -"d% c #25B927", -"e% c #24B926", -"f% c #23B726", -"g% c #23B625", -"h% c #009102", -"i% c #04B106", -"j% c #00A304", -"k% c #008F05", -"l% c #008104", -"m% c #B9B8B8", -"n% c #ACABAB", -"o% c #A5A4A4", -"p% c #A2A3A3", -"q% c #9D9E9D", -"r% c #9C9D9C", -"s% c #266E26", -"t% c #267426", -"u% c #26B728", -"v% c #25B828", -"w% c #25B827", -"x% c #25B728", -"y% c #24B727", -"z% c #24B626", -"A% c #23B526", -"B% c #23B426", -"C% c #008F02", -"D% c #008E02", -"E% c #00B204", -"F% c #008604", -"G% c #006D01", -"H% c #AAAAA9", -"I% c #A5A5A4", -"J% c #9C9C9C", -"K% c #266D26", -"L% c #259E27", -"M% c #25B628", -"N% c #24B627", -"O% c #24B527", -"P% c #24B427", -"Q% c #23B427", -"R% c #23B326", -"S% c #23B125", -"T% c #008D02", -"U% c #01BB05", -"V% c #007401", -"W% c #007E03", -"X% c #009206", -"Y% c #B3B2B3", -"Z% c #A9A9AA", -"`% c #A6A7A7", -" & c #A1A0A0", -".& c #9B9B9B", -"+& c #9A9A9A", -"@& c #258126", -"#& c #25B427", -"$& c #25B428", -"%& c #24B327", -"&& c #24B326", -"*& c #23B226", -"=& c #23B126", -"-& c #23B026", -";& c #22AF25", -">& c #008902", -",& c #007F04", -"'& c #AFAFB0", -")& c #ABABAA", -"!& c #A7A6A6", -"~& c #9F9FA0", -"{& c #9E9F9E", -"]& c #9D9D9D", -"^& c #9C9B9C", -"/& c #9A9A9B", -"(& c #99999A", -"_& c #256C25", -":& c #25A927", -"<& c #25B228", -"[& c #24B127", -"}& c #23AF26", -"|& c #23AE26", -"1& c #22AE25", -"2& c #22AC25", -"3& c #007002", -"4& c #B2B2B3", -"5& c #A5A6A6", -"6& c #A0A09F", -"7& c #9F9E9F", -"8& c #9A9999", -"9& c #999999", -"0& c #939693", -"a& c #259126", -"b& c #24B028", -"c& c #24AF27", -"d& c #24AE26", -"e& c #23AD26", -"f& c #23AC25", -"g& c #22AA25", -"h& c #008703", -"i& c #008602", -"j& c #05B00A", -"k& c #006A01", -"l& c #009106", -"m& c #AEAEAD", -"n& c #A4A4A3", -"o& c #A3A2A3", -"p& c #9D9E9E", -"q& c #9C9C9D", -"r& c #9C9B9B", -"s& c #999998", -"t& c #979797", -"u& c #979696", -"v& c #257925", -"w& c #24AD28", -"x& c #24AE27", -"y& c #24AD27", -"z& c #23AC26", -"A& c #23AB27", -"B& c #23AB26", -"C& c #22AB25", -"D& c #22A925", -"E& c #22A825", -"F& c #21A725", -"G& c #008503", -"H& c #007202", -"I& c #006400", -"J& c #007E04", -"K& c #AFAEAE", -"L& c #ABABAC", -"M& c #9A9B9B", -"N& c #989898", -"O& c #969696", -"P& c #246C25", -"Q& c #24A327", -"R& c #24AA28", -"S& c #23AA27", -"T& c #23A926", -"U& c #22A826", -"V& c #22A726", -"W& c #21A625", -"X& c #004A00", -"Y& c #009706", -"Z& c #006B01", -"`& c #AAABAA", -" * c #A7A8A8", -".* c #9C9D9D", -"+* c #9A999A", -"@* c #999898", -"#* c #979897", -"$* c #979697", -"%* c #959495", -"&* c #919392", -"** c #246B24", -"=* c #249126", -"-* c #24A927", -";* c #23A927", -">* c #23A827", -",* c #23A726", -"'* c #22A525", -")* c #21A425", -"!* c #219A25", -"~* c #004B00", -"{* c #009107", -"]* c #A1A2A2", -"^* c #A0A1A0", -"/* c #9B9C9B", -"(* c #9A9B9A", -"_* c #959596", -":* c #949594", -"<* c #939393", -"[* c #248025", -"}* c #23A627", -"|* c #23A727", -"1* c #23A626", -"2* c #22A626", -"3* c #22A426", -"4* c #22A325", -"5* c #219D24", -"6* c #217021", -"7* c #206820", -"8* c #008C05", -"9* c #A2A3A2", -"0* c #A2A1A2", -"a* c #A1A1A0", -"b* c #9F9E9E", -"c* c #9E9E9D", -"d* c #9B9B9C", -"e* c #969695", -"f* c #959595", -"g* c #939493", -"h* c #929292", -"i* c #247023", -"j* c #23A427", -"k* c #23A327", -"l* c #22A326", -"m* c #22A226", -"n* c #21A025", -"o* c #217622", -"p* c #216821", -"q* c #A09FA0", -"r* c #9D9C9D", -"s* c #939494", -"t* c #919292", -"u* c #236B23", -"v* c #239927", -"w* c #23A227", -"x* c #22A227", -"y* c #22A127", -"z* c #22A026", -"A* c #219F26", -"B* c #217F23", -"C* c #828282", -"D* c #A4A3A4", -"E* c #9FA09F", -"F* c #969796", -"G* c #949494", -"H* c #929192", -"I* c #909191", -"J* c #8F8F8F", -"K* c #236A23", -"L* c #238A25", -"M* c #239F26", -"N* c #229F27", -"O* c #229F26", -"P* c #218524", -"Q* c #838382", -"R* c #818282", -"S* c #808180", -"T* c #A8A8A9", -"U* c #9E9D9D", -"V* c #9B9A9B", -"W* c #999A9A", -"X* c #979798", -"Y* c #909090", -"Z* c #8E8F8F", -"`* c #237B24", -" = c #229E27", -".= c #229D26", -"+= c #218E25", -"@= c #216921", -"#= c #838383", -"$= c #818181", -"%= c #7F7F7F", -"&= c #006F02", -"*= c #A1A1A2", -"== c #A0A1A1", -"-= c #989897", -";= c #929393", -">= c #919192", -",= c #8E8E8F", -"'= c #8E8E8E", -")= c #227022", -"!= c #229B27", -"~= c #229B26", -"{= c #229225", -"]= c #216B21", -"^= c #718071", -"/= c #818182", -"(= c #A6A5A5", -"_= c #9D9D9E", -":= c #989797", -"<= c #929293", -"[= c #919291", -"}= c #909190", -"|= c #8D8D8D", -"1= c #226922", -"2= c #229626", -"3= c #229426", -"4= c #216E21", -"5= c #838384", -"6= c #818180", -"7= c #7F8080", -"8= c #7E7E7F", -"9= c #7D7D7D", -"0= c #A3A3A4", -"a= c #9E9F9F", -"b= c #999A99", -"c= c #989998", -"d= c #969697", -"e= c #969596", -"f= c #949393", -"g= c #929392", -"h= c #919191", -"i= c #8C8B8B", -"j= c #898A88", -"k= c #228D25", -"l= c #217222", -"m= c #838484", -"n= c #828382", -"o= c #818281", -"p= c #808080", -"q= c #7D7E7E", -"r= c #7D7D7C", -"s= c #9D9D9C", -"t= c #959594", -"u= c #949394", -"v= c #939292", -"w= c #8F9090", -"x= c #8E8F8E", -"y= c #8C8C8C", -"z= c #8B8B8B", -"A= c #8A8A8A", -"B= c #217422", -"C= c #848484", -"D= c #828283", -"E= c #818081", -"F= c #7E7E7E", -"G= c #7C7B7C", -"H= c #969595", -"I= c #959494", -"J= c #8F8F90", -"K= c #898989", -"L= c #858484", -"M= c #838483", -"N= c #807F7F", -"O= c #7C7C7C", -"P= c #7B7B7A", -"Q= c #7A7A79", -"R= c #9C9C9B", -"S= c #9B9B9A", -"T= c #929191", -"U= c #8F908F", -"V= c #888888", -"W= c #858584", -"X= c #828281", -"Y= c #7F7E7F", -"Z= c #7E7D7E", -"`= c #7D7C7D", -" - c #7B7B7B", -".- c #7A7A7A", -"+- c #797979", -"@- c #9A9A99", -"#- c #979898", -"$- c #949595", -"%- c #929291", -"&- c #908F8F", -"*- c #8E8E8D", -"=- c #8C8D8C", -"-- c #898A89", -";- c #878787", -">- c #858686", -",- c #858585", -"'- c #818080", -")- c #7B7C7C", -"!- c #7A7B7A", -"~- c #787878", -"{- c #9D9C9C", -"]- c #989798", -"^- c #959696", -"/- c #8A8B8A", -"(- c #868686", -"_- c #808081", -":- c #7F807F", -"<- c #7A7979", -"[- c #787979", -"}- c #777777", -"|- c #9B9C9C", -"1- c #949493", -"2- c #919090", -"3- c #8F8F8E", -"4- c #8C8C8D", -"5- c #898988", -"6- c #888787", -"7- c #828182", -"8- c #808181", -"9- c #7F7F80", -"0- c #7E7F7E", -"a- c #7D7D7E", -"b- c #7D7C7C", -"c- c #797879", -"d- c #777878", -"e- c #767676", -"f- c #969797", -"g- c #90908F", -"h- c #8D8D8E", -"i- c #89898A", -"j- c #7F7E7E", -"k- c #7E7E7D", -"l- c #7C7B7B", -"m- c #787877", -"n- c #757576", -"o- c #8E8D8D", -"p- c #8D8C8D", -"q- c #7A7A7B", -"r- c #787978", -"s- c #767576", -"t- c #757475", -"u- c #979796", -"v- c #898A8A", -"w- c #898889", -"x- c #787879", -"y- c #757575", -"z- c #747473", -"A- c #959695", -"B- c #939293", -"C- c #919091", -"D- c #8C8B8C", -"E- c #8A8989", -"F- c #878788", -"G- c #848585", -"H- c #787777", -"I- c #747474", -"J- c #737373", -"K- c #898888", -"L- c #878887", -"M- c #878686", -"N- c #848483", -"O- c #80807F", -"P- c #7C7D7D", -"Q- c #797A7A", -"R- c #787778", -"S- c #727272", -"T- c #888889", -"U- c #868586", -"V- c #848485", -"W- c #838282", -"X- c #777677", -"Y- c #767575", -"Z- c #747475", -"`- c #737473", -" ; c #717171", -".; c #8E8D8E", -"+; c #8D8D8C", -"@; c #8C8C8B", -"#; c #888788", -"$; c #797978", -"%; c #727171", -"&; c #707170", -"*; c #858685", -"=; c #828383", -"-; c #7F7F7E", -";; c #747575", -">; c #737372", -",; c #717271", -"'; c #707070", -"); c #6F7070", -"!; c #8D8E8D", -"~; c #8B8B8A", -"{; c #868786", -"]; c #858586", -"^; c #7A797A", -"/; c #747374", -"(; c #727373", -"_; c #707171", -":; c #6F6F70", -"<; c #6E6F6E", -"[; c #8D8C8C", -"}; c #8B8A8A", -"|; c #8A8A89", -"1; c #878786", -"2; c #7E7D7D", -"3; c #7C7C7D", -"4; c #7B7B7C", -"5; c #7B7A7A", -"6; c #757676", -"7; c #727172", -"8; c #717170", -"9; c #6E6F6F", -"0; c #6D6D6D", -"a; c #8A8B8B", -"b; c #888988", -"c; c #868685", -"d; c #757574", -"e; c #737273", -"f; c #727271", -"g; c #70706F", -"h; c #6F6E6F", -"i; c #6D6D6E", -"j; c #878687", -"k; c #848384", -"l; c #7C7C7B", -"m; c #767677", -"n; c #757474", -"o; c #6F6E6E", -"p; c #6D6E6E", -"q; c #868787", -"r; c #7A7B7B", -"s; c #757675", -"t; c #848383", -"u; c #828181", -"v; c #79797A", -"w; c #707071", -"x; c #6F6F6E", -"y; c #7B7C7B", -"z; c #807F80", -"A; c #7D7E7D", -"B; c #7C7D7C", -"C; c #7B7A7B", -"D; c #797878", -"E; c #030303", -" ", -" ", -" ", -" ", -" ", -" . . . . . . . . . . . . . ", -" . . . . . . . . . . . . . . . . . . . . . . . . . ", -" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", -" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", -" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", -" . . . . . . . . . . . . . . . . . . . . . . . . . ", -" . . . . . . . . . . . . . . . . . . . . . . ", -" . . . . . . . . . . . . . . . . . . ", -" . . . . . . . . . . . . . . . . ", -" . . . . . . . . . . . . . . . ", -" . . . . . . . . . . . . . . ", -" . . . . . . . . . . . . . ", -" . . . . . . . . + . . . . . . ", -" . . . . . . . + + + . . . . . . ", -" . . . . . . + + + . . . . . ", -" . . . . . . + @ + + . . . . . . ", -" . . . . . . . + + # + + . . . . . . ", -" . . . . . . + $ # + + + . . . . . ", -" % % % % % % % % % % % . . . . . . + + $ & * + + . . . . . . ", -" % % % % % % % % % % % % % % % % % % % % % % % . . . . . + = - ; > + + . . . . . ", -" % % % % % % % % % % % % % , ' ) ! ~ { ] ^ / ( % % % % % % . . . . . . + _ $ # : < + + + . . . . . . ", -" % % % % % % % % % % [ } | 1 2 3 4 5 6 7 8 9 0 a b c / d e f g % % % % . . . . . + + h - i j k * + + . . . . . ", -" % % % % % % % % l m n o p q r s t u v w x 5 y 7 z 9 A B ^ / C d D E F % % % % . . . . . . + G H # I J K L + + M . . . . . . ", -" % % % % % % N O P Q N R S T n U V W X Y Z v w ` , y 7 9 ...b +.( @.#.$.%.&.*.% % % . . . . . + =.-.- i j ;.>.,.M + + . . . . . ", -" % % % % % '.Q ).).!.!.~.{.).O R S m q ].^.| /.Z (.x 5 _.7 :.<.{ b c [.d #.f g }.*.|.% % % . . . . . + + + + + + + = 1.$ # j J 2.3.4.5.+ + . . . . . . ", -" % % % % 6.7.).~.!.8.9.0.9.a.b.c.d.e.l f.g.].h.i.u 3 j.` k.l.m.0 { ] n./ ( o.p.g q.r.s.t.% % % . . . . . + + + + u.v.w.x.y.z.A.B.-.- I J C.3.D.E.F.+ + + . . . . . ", -" % % % % o G.H.O I.a.0.J.J.K.J.J.L.a.M.).6.m o N.[ X O.P.Q.R., ' S.9 T.] b U.( @.D V.W.r.*.t.X.% % + + + + . . . . . . Y.Z.`. +.+++@+#+$+%+&+-.- i *+=+3.-+;+>+,+'++ + . . . . . ", -" % % % ].g.)+6.P ).9.J.K.!+~+~+{+]+^+/+b.I.N 6.m U ^.} t Z v (+_+y ) :+<+a b U.( [+D E }+&.|+1+2+3+3+3++ * 4+5+6+. . . . . 7+8+9+ +0+a+b+c+d+e+f+-.$ g+h+;.i+D.j+k+l+m+n++ + + . . . . . ", -" % % % % N.o G.N ).a.o+^+~+p+q+q+r+s+~+t+o+!.).'.T o ].[ u+v+w+Q.5 6 7 x+0 y+z+c A+d B+C+C+D+1+1+E+F+G+H+I+J+K+K+L+. . . . . M+N+9+O+P+Q+R+S+T+e+f+1.$ # j ;.2.-+U+V+W+X+Y+Z+`++ + + . . . . . ", -" % % % % @G.P c.9.t+.@+@@@#@#@#@q+$@%@J.9.).7.G.o &@[ | 1 v (.5 *@' =@0 { b c -@-@-@C+;@>@,@'@)@!@~@{@{@]@^@/@(@L+. . . . . _@:@<@P+.+++S+#+$+f+&+[@# *+J 2.-+}@k+|@1@2@Y+3@4@5@+ + + . . . . . ", -" % % % 6.).~.0.^+~+6@#@7@8@9@0@+@~+K.9.).O 6.o q ^.| a@v (.b@c@7 =@d@{ e@f@g@-@h@i@j@k@l@l@!@m@n@o@6+p@q@r@K+s@. . . . . t@u@O+P+v@w@x@T+y@f+z@$ A@j B@2.C@}@k+D@1@2@Y+Y+Y+E@F@@ + + . . . . . ", -" % % 6.Q !.G@^+$@H@#@8@I@9@#@+@~+J@9.!.N l f.q [ | /.K@w L@, l.:.9 M@z+c [.-@N@O@j@P@Q@R@)@~@n@o@p@S@p@T@/@(@U@. . . . . :@<@P+.+V@S+T+W@f+B.[@# I ;.C.3.U+k+|@X+Y+Y+Y+Y+Y+X@M + . . . . . ", -" % % % Y@!.9.^+Z@q+#@9@`@9@ #r+!+^+9.!.N .#+#q @###/.v $#` _.l.=@%#{ &#c ( -@-@*#j@=#l@R@!@m@-#o@;#p@6+>#K+s@,#. . . . . '#<@P+)#w@S+#+$+!#B.[@# j B@~#3.U+k+W+1@Y+2@Y+2@2@n++ + . . . . . ", -" % % % M.a.{#.@]#@@#@#@^#@@p+^+J.9.M.N l o /#[ u+u v w 5 y (#=@0 _#b :#/ d -@C+<#=#[#l@}#!@|#1#2#2#{@3#K+L+U@. . . . . u@<@P+.+V@S+#+y@4#B.[@# I J 2.3.}@k+W+1@Y+Y+Y+Y+5#M + . . . . . ", -" % % % 6#J.^+~++@7#q+H@p+]+{#G@8#).9#m o 0#[ t /.v $#5 y 7 x+0 M@b +.[.d a#C+b#c#[#l@d#)@|#e#f#g#h#i#i#,#j#k#. . . . . +P+.+w@S+T+y@l#B.[@g+j J 2.3.m#k+W+X+Y+Y+Y+Y+n#+ + . . . . . ", -" % % I.9./+K.!+~+~+~+.@K.J.8#{.N 6.f.q ].} u+u o#(+p#y 7 9 0 y+b +.A+d #.C+C+q#k@r#s#d#t#u#v#w#x#y#z#j#A#B#. . . . . +0+a+@+C#d+y@l#1.$ i *+J i+-+j+>+l+X+Y+Y+Y+3@5@+ . . . . . ", -" % % % !.9.o+{#{#D#^+E#0.F#G#O H..#o 0#W | t H#(.I#_+l.7 9 J#] K#U.( [+D g C+L#M#k@N#O#P#Q#Q#R#S#T#T#U#B#V#. . . . . P+v@a+@+c+d+!#z@-.- I W#=+i+-+j+X#l+X+Y+Y+Y+Y#+ + . . . . . ", -" % % d.!.8#b.9.L.o+9.!.I.).7..#f.U ].[ u+u Z#j.5 , 7 =@`# .] ^ $.$+$D @$C+D+#$$$%$&$*$=$*$-$;$>$Y.,$V#'$M+. . . . )$Q+w@S+T+W@f+&+-.A@I B@2.3.!$;+X#l+Y+2@Y+Y+~$+ . . . . . ", -" % % % P ).).!.!.{.M.).O H.6.{$U /#[ | 1 K@(.R.p#y 7 m.0 { ]$c ^$C B+f g q.1+/$($_$:$<$[$[$}$|$1$2$3$3$M+4$. . . . . a+b+c+d+y@l#1.[@# j =+~#-+U+V+|@1@Y+Y+Y+5$+ + . . . . . ", -" % % 6.R N N P O N '.6.m f.p 0#W | t u 6$7$` , l.) 9 0 ] 8$c A+d 9$$.}+&.1+1+0$a$b$c$d$d$1$e$f$g$h$i$t@N+. . . . . R+S+T+$+!#j$-.$ g+*+;.2.-+j+k+W+1@Y+Y+2@k$+ . . . . . ", -" l$% % m 6.S 6.6.G.S )+o q 0#^.m$i.u v (.R.n$y 7 =@0 { ] o$/ p$#.p.q$%.r$s$1+t$($u$v$w$x$x$y$z$A$B$B$C$u@<@. . . . x@C#d+y@l#z@[@# I B@D$i+D.m#>+E$X+2@Y+F$G$+ . . . . . ", -" % % p o )+o n @H$p N.].^.s i.u K@3 (+5 6 7 ) 9 T.] b I$( d e D g F *.s.1+J$K$L$L$M$N$O$P$Q$R$S$T$U$V$P+. . . . . T+W@%+&+-.$ i j ;.2.3.U+V+|@l+Y+Y+Y+W$+ + . . . . . ", -" % % % q q q q q /#].[ [ | t X$Y$3 (+5 , y 7 m.%#{ z+c / ( #.D $.W.&.*.Z$`$J$ %.%+%+%@%#%#%R$S$$%%%&%*%v@. . . . . $+!#4#1.[@# I =%-%;%>%,%X#|@X+Y+Y+2@'%+ . . . . . ", -" % % ^.].^.^.)%[ m$| i.t u v (.(.5 _+*@7 :+%#<+..b c ^$C #.f q$F r$!%~%{%J$J$]%^%/%/%/%/%(%_%:%<%[%x..+. . . . . y@j$1.[@}%|%1%+ + + + + 3@l+X+Y+2@2%M + . . . . . ", -" % % % | | X | ##Y a@u K@w+(.(+` p#y 3%) 9 0 a e@c / ( 4%5%$.6%&.r$s.7%8%9%J$0%a%b%c%c%d%e%e%f%g%x.h%i%@+. . . . 4#z@-.j%> + + + + k%X+Y+2@Y+l%+ + . . . . . ", -" % % t /.t X$1 Z Z v m%(+(+5 , y 3%=@z 0 { z+K#n%A+d #.D g o%p%|+~%{%q%r%s%t%u%v%w%x%y%y%z%A%B%B%C%D%c+. . . . . E%= @ + + + F%X+Y+Y+Y+G%+ . . . . . ", -" % % v 2 v v Z#o#(.(+(+L@p#c@y 7 =@x+~ { ] b I$/ H%#.D E I%&.r$s.t.8%r%J%s%K%L%M%M%N%O%P%Q%B%R%S%D%T%U%. . . . . V%+ + + + W%Y+Y+2@X%+ + . . . . ", -" % % (.$#j.w (+I#5 _+, _.' Y%=@9 0 { ] b c / Z%@.a#`%g &.*.|+ &`$8%r%.&+&K%@&#&$&%&&&%&*&=&-&;&= =.>&. . . . . + + + F.Y+2@Y+,&+ . . . . . ", -" % % ` 5 5 5 5 n$, y (#7 =@x+<.'&{ ] e@o$)&( @.B+!&E %.&.*.s.~&{&]&^&/&(&K%_&:&<&[&[&[&-&}&|&1&2&>&>&l#. . . . + + 3&Y+Y+Y+~$+ . . . . . ", -" % % % , , c@y y l.7 4&:.9 %#0 _#] b c / ( d #.D 5&}+&.*.s.6&7&]&r%.&8&9&0&_&a&b&c&c&d&|&e&f&2&g&h&i&j&. . . . + k&Y+Y+l&+ + . . . . ", -" % % (#3%l.Y%S.=@! z 9 0 { ] m&8$I$/ .$[+e D $.%.n&o&s. &`$p&q&r&+&s&t&u&_&v&w&x&y&z&A&B&C&D&E&F&G&H&. . . . . + I&Y+Y+J&+ . . . . . ", -" % % =@:+:+9 9 <.%#<+{ K&m&b c L&/ ( @.#.D $.g q.&.*. &7%8%]&J%M&(&N&t&O&_&P&Q&R&S&S&T&U&U&V&W&W&F.X&. . . . . + + Y&Y+Z&+ . . . . . ", -" % % % `#0 0 T. ._#K&B b f@c / `&.$+$ *D $.g F &.|+s.t.{&8%.*.&+*@*#*$*%*&***=*-*;*>*,*V&V&'*)*!*~*3+. . . . . + l&{*+ + . . . . . ", -" % % { { K&] ] B b 8$c I$[.d d #.e $.E 6%q.&.]*^*~&X.q%J%/*(*9&N&$*_*:*<***[*}*|*1*2*3*3*4*5*6*7*3+% . . . . + 8*,&+ . . . . ", -" % % b &#B b n.c U./ A+( H%o.e D $.g W.F 9*0*a*~%b*c*r%d*+&9&N&t&e*f*g*h***i*j*j*k*l*l*m*n*o*p*7*% % . . . . + F%G%+ . . . . ", -" % % c c +.+.U./ [.Z%C d #.D !&$.@$o%&.9**.a*q*X.c*r*J%+&(&@*t&O&f*s*<*t***u*v*w*x*y*z*A*B*p*p*C*% % . . . . + 4@+ + . . . . . ", -" % % / A+( H%d [+o. *D D $.5&W.D*&.9*s.^*E*{%8%]&^&.&(&@*N&F*_*G*<*H*I*J*K*L*M*N*O*O*P*p*p*Q*R*S*% . . . . . + n#+ . . . . . ", -" % % d d d T*#.9$D `%$.E g F n&r.*.s.~%`${%U*J%^&V*W*@*X*F*f*G*<*h*I*Y*Z*K*`* = =.=+=@=p*#=C*$=%=% . . . . . + &=+ . . . . ", -" % % D 9$D !&p.f q$@$%.F }.&.9**===~%`$8%]&.*/*+&9&s&-=F*_*G*<*;=>=Y*,='=K*)=!=~={=]=p*^=#=/=S*%=% . . . . . + M + . . . . ", -" % % % $.$.5&(=g W.F }.&.*.s$s.~%E*7&8%_=J%r&(*9&9&:=O&e*%*<*<=[=}=J*'=|=K*1=2=3=4=p*p*5=C*6=7=8=9=% . . . . + + + . . . . ", -" % % F o%F n&0=&.&.s$*.s. &q*`$a=]&r*J%.&+&b=c=t&d=e=:*f=g=h=Y*J*'=|=i=j=1=k=l=p*p*m=n=o=p=%=q=r=% . . . . + + . . . . . ", -" % % 0=o&*.r$*.]*s.Z$^*~&`${&8%s=r%.&V*+&9&@*t&O&e*t=u=v=h=h=w=x=|=y=z=A=1=B=p*p*C=D=R*E=%=F=9=G=% . . . . + + . . . . . ", -" % % 0*0*s.Z$s.~%t.`$`$8%U*]&J%.&.&(*(&9&N&t&O&H=I=<*h*H*I*J='=|=y=z=A=K=1=@=p*L=M=C*6=N=F=9=O=P=Q=. . . . + + . . . . ", -" % % % ~%~%~&E*{%b*8%]&r*.*R=.&S=+&9&N&t&d=e*f*G*<*g=T=}=U=,=|=y=z=A=K=V=@=p*W=5=C*X=p=Y=Z=`= -.-+-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", -" % % {%a=8%c*8%]&q&J%/*.&/&@-9&@*#-$*O&_*$-u=<*%-h=Y*&-'=*-=-z=A=--V=;->-,-C=#=o='-%=F=r=)-!-+-~-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", -" % % U*]&]&{-R=^&.&(*(*b=9&c=]-#-O&^-%*:*g*h*t*h=J=J*'=|=y=z=/-K=V=;-(-,-m=#=/=_-:-8=9=)- -<-[-}-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", -" % % |-/*/*.&/&/&+&9&s&s&]-:=$*O&e=G*1-<*;=%-2-U=3-'=|=4-z=A=K=5-6-(-,-C=#=7-8-9-0-a-b- -.-c-d-e-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", -" % % +&+&W*W*9&s&N&N&]-t&f-e*f*:*1-1-g=H*I*Y*g-3-h-|=y=z=A=i-V=;-(-,-C=#=C*$=p=j-k-O=l-P=+-m-}-n-. . . . . . . . . . . . . . . . . . . . . . . . . ", -" % % % 9&N&N&-=]-t&t&O&_*f*$-s*<*;=h*T=h=Y*J*'=o-p-y=z=A=5-V=;-(-,-C=#=C*$=p=%=q=r=)-q-+-r-}-s-t-. . . . . . . . . . . . . . . . . . ", -" % % t&t&u-f-O&^-f*%*G*G*<*h*h*%-Y*Y*J*Z*o-|==-z=z=v-w-V=;-(-,-C=#=C*E=p=%=F=r=G=.-<-x-}-e-y-z-. . . . . . . . . . . . . . . . . . ", -" % % ^-_*A-f*t=G*1-<*;=B-h*h=C-Y*J=x='=|=p-D-z=A=E-V=F-;-(-G-C=#=7-$=p=%=q=`=l- -.-[-H-e-n-I-J-. . . . . . . . . . . . . . . . . ", -" % % G*G*1-g*<*<*<=h*h=I*Y*Y*g-J*'=o-|=y=i=A=v-K=K-L-M->-L=N-D=C*$=O-%=F=P-O= -Q-+-R-}-y-I-J-S-. . . . . . . . . . . . . . . . ", -" % % g=g=<=h*h*%-h=C-}=Y*J*,='=|=|=y=y=z=A=E-T-V=;-(-U-V-C=W-C*S*p=Y=Z=r=O= -Q=+-m-X-Y-Z-`-S- ;. . . . . . . . . . . . . . . . ", -" % % H*T=h=h=Y*Y*w=J*3-,=.;h-+;y=@;z=A=E-w-V=#;(-(-,-C=#=D=/='-p=%=q=r=O= -.-$;R-}-s-Z-`-S-%;&;. . . . . . . . . . . . . ", -" % % % w=J=&-,=J*'='=o-|=y=D-z=z=A=--w-V=V=;-(-*;W=N-=;D=o=S*:--;Z=P-)- -Q=[-d-X-e-;;I->;,;';);. . . . . . . . . . . ", -" % % Z*'='='=!;|=+;y=i=z=~;A=--K=K-F-;-{;];,-C=#=D=R*$=p=%=j-Z=O=O=!-^;x-~-}-s-I-/;(;,;_;:;<;. . . . . . . . . ", -" % % |=|=4-[;D-i=z=/-};|;K=K-K-#;1;1;(-,-L=#=Q*C*o='-%=%=F=2;3;4;5;Q-[-R-e-6;t-z-(;7;8;:;9;0;. . . . . . . ", -" % % i=i=z=z=a;A=K=|;b;T-V=6-;-{;c;,-C=C=Q*D=C*$=p=:-8=q=9=O= -.-+-[-}-}-y-d;/;e;f;_;g;h;i;0;. . . . . ", -" % % A=v-i-K=K=K=b;V=;-j;(-(-*;,-C=k;#==;R*$=_-p=%=F=9=r=l; -^;+-~-d-m;s-n;`-J-,;8;);o;p;0;0;. . . 0;% % ", -" % % V=V=T-V=V=F-j;q;(-];,-W=C=m=#=n=C*$=8-N=%=0-Z=`=O= -r;Q-+-m-}-e-s;I-J-e;7;';);o;0;0;0;0;0;0;0;0;% % ", -" % % ;-1;M-q;(-(-*;,-,-C=m=t;#=C*/=u;E=p=%=-;F=9=P-)- -.-v;~-~-m;e-y-I-J-S- ;w;);x;0;0;0;0;0;0;0;0;0;% % ", -" % % (-U-*;,-W=G-C=m=#=#=n=C*$=$=p=p=%=-;F=a-9=O=y;.-Q-[-% % % % % % % % % % % % % % % % % % % % % 0;% % ", -" % % W=C=m=m=N-#=#=Q*X=o=$=E=p=z;%=-;2;2;P-O= -P=% % % % % % % % % % % % % % % % % % % % % % % % % ", -" % % #=#=n=C*C*$=$=6=6=p=p=%=0-F=k-9=b-O= -% % % % % % % % % % % ", -" % % $=$=$=8-p=p=p=z;%=0--;q=9=9=O=O=% % % % % % % ", -" % % p=p=z;:-%=%=j-F=k-A;9=3;O=% % % % % % % ", -" % % Y=Y=F=F=F=k-9=O=B;G=l;% % % % % % ", -" % % 9=P-9=`=O=O= - -% % % % % % ", -" % % 4;l- - - -P=% % % % % % ", -" % % C;.-.-Q-% % % % % ", -" % % $;D;% % % % % ", -" % % % % % % % ", -" % % % % % ", -" % % % ", -" E;% ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" "}; diff --git a/src/Mod/Surfaces/Icons/CMakeLists.txt b/src/Mod/Surfaces/Icons/CMakeLists.txt deleted file mode 100644 index 5f02f4d4a9..0000000000 --- a/src/Mod/Surfaces/Icons/CMakeLists.txt +++ /dev/null @@ -1,21 +0,0 @@ -INSTALL( - FILES - BorderIco.png - BorderIco.xpm - ConvertIco.png - ConvertTo4SidesIco.xpm - Ico.xcf - IsoCurveIco.png - IsoCurveIco.xpm - SliceIco.xcf - BorderIco.xcf - ConvertIco.xcf - Ico.png - Ico.xpm - IsoCurveIco.xcf - SliceIco.png - SliceIco.xpm - DESTINATION - Mod/Surfaces/Icons -) - diff --git a/src/Mod/Surfaces/Icons/ConvertIco.png b/src/Mod/Surfaces/Icons/ConvertIco.png deleted file mode 100644 index d9fd46d2245b3fa5447fc10688b47ed50499f3d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6879 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 diff --git a/src/Mod/Surfaces/Icons/ConvertIco.xcf b/src/Mod/Surfaces/Icons/ConvertIco.xcf deleted file mode 100644 index 31ce0916095c77ae41d4505d08080c52b4dd5bc9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62189 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Π6n!v)YtFbi*_P$-ImRpH?1GQy*wsfFAzI;*8T&=<_HQtcz}J{y$dC8 zt3%0~Hf~t|HWol(Fk{dO2-%FXO_gmjhDlPhU?kp*#Ov063&&mi2~X zvS>-Yg+;GhyQa4CZ;}2)rpJMLJUj)C0xR5jV05LAD1Fn$jglOWOTR~k6M};HZAbI9 zqxrbn=J3pN&iKC=nol3ZInXdNt`(#(#Nl-T??}wcVczZ&k;8=IQ3eb2?y7(Kv zaKJ&C(p>2Pr59Jzaaf>=~9t!OoKzy_zam@pCpi9v4T|dtI!Fg!j+*+ zYSanHPa)RYEaQ^v$aCrk#7SAcQoF#dEz?0cK(1dIwx~vJwTfhPeE&;Y(1%btd z8vYFdYy~s&&xkGF2ZN*k&V?*PKv-Jrx)nSRPz&?t1yyeON;Jsw`N`I7TMo06a))9B zZgcn|b{cnQAfv1l5@`qDKmh$Ho^WWu3dmwDsY6DO<;^kNhb@8xE`TVLGOII1OjT}q z6`+0|1sdXQni4EKfbn?_GmgKENqrt=0@9%E#)^lS2q04lP#V%8C(59(!+CP7sRRL9 zRn|;`ZI0sM>Bv;_-w8zuAsiY^Lk+{!ENzsE@QeM7=?uRXgppZ>eQYbSWCRSv6^o=y zv~m`L=)@B4rksq!*m#(X-zn$}_ngytnA_zTU<~agIMeM?XpoEP!gDrbF2c*gp9|r- zb0PE&l3G_B|1j+Q3*emtCo;UuPQe9%e+oi$-|ySm6m3S(7hHqAWY&(GF5u2A&e&eXLHM4BwmT47(QQd+0uRZs2tNxou_&v; z%}EXz#4-pVIj{I0C3|a!yVgmdM*?X%*Im+K(b)D15L=D7TEqJkuG%4}++OZvhl%(+ ztZcTqcFFL*CJTIHQ%xG>x4DHWk9~vdvw;&e9ksD?dYr47>@87%E81g*ycCZ7KlZLB zxogC|A)WM6U2(@K_FBY!++9Dy<1Vc0rY*@J5%#&{I32pmy8|@1+#+@1N+LSJ!i6@- zgU!9eEdmu_S#TLeN{hqNDWJ}oOc37=`sS|DN)wbt7jKY3a8Q9B zglA+ROV{@7AWvX)QWiPJAq$zP=ok|R)`NXSK43Zn?^)~;y9IhX6czx_%Ubx7J$S_e zyIS88-Y#X~1@`O!_=l5X;WrzI4=I<~-3d$f)D{ct1Y8lmp@BQ^NSy!eu_eU21FT_N z<5F=`n5cM5FP5Yvm4i5*MR!BHvuw8&3ay5BE1hNGPYX9oY);vJg@}1Mw;%*RcA
^!W$ocK4kFow%BBF3w0@;61%TvPcpd>r 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 q?I0qa0@{AH=BD c #00BDA9", -", c #00BCA8", -"' c #00BBA6", -") c #00B9A6", -"! c #00B8A5", -"~ c #00B7A4", -"{ c #00B6A3", -"] c #00B4A2", -"^ c #00B3A0", -"/ c #00B19E", -"( c #00AD9B", -"_ c #00A997", -": c #00A796", -"< c #00A794", -"[ c #00A594", -"} c #00C2AD", -"| c #00C1AD", -"1 c #00C0AC", -"2 c #00BFAB", -"3 c #00BDAA", -"4 c #00BDA8", -"5 c #00BBA7", -"6 c #00BAA6", -"7 c #00B9A5", -"8 c #00B6A4", -"9 c #00B4A1", -"0 c #00AE9B", -"a c #00A795", -"b c #00A694", -"c c #00A493", -"d c #00C3AE", -"e c #00C3AF", -"f c #00C4AE", -"g c #00C2AE", -"h c #00C0AB", -"i c #00BEAB", -"j c #00BAA5", -"k c #00B7A3", -"l c #00B09C", -"m c #00AB9A", -"n c #00A996", -"o c #00A896", -"p c #00A593", -"q c #00A392", -"r c #00A291", -"s c #00C4AF", -"t c #00C5B0", -"u c #00BEAA", -"v c #00B5A1", -"w c #00B29E", -"x c #00B19D", -"y c #00A090", -"z c #00C3AD", -"A c #00C6B1", -"B c #00C6B0", -"C c #00C5B1", -"D c #00C5AF", -"E c #00BCA9", -"F c #00BCA7", -"G c #00B8A4", -"H c #00B3A1", -"I c #00AD9A", -"J c #00A391", -"K c #00A190", -"L c #00A08F", -"M c #00C7B2", -"N c #00C8B2", -"O c #00C6B2", -"P c #00C4B0", -"Q c #00BFAA", -"R c #00B7A5", -"S c #00AC99", -"T c #00A494", -"U c #009E8E", -"V c #00C1AC", -"W c #00C8B4", -"X c #00C9B4", -"Y c #00C9B3", -"Z c #00C8B3", -"` c #00B29F", -" . c #00AF9D", -".. c #00A290", -"+. c #00A18F", -"@. c #009F8E", -"#. c #00C7B1", -"$. c #00CAB5", -"%. c #00CBB6", -"&. c #00CBB5", -"*. c #00C9B5", -"=. c #00C7B3", -"-. c #00BBA8", -";. c #00BAA7", -">. c #00AA99", -",. c #00A895", -"'. c #009D8C", -"). c #00C0AD", -"!. c #00CCB6", -"~. c #00CAB4", -"{. c #009E8C", -"]. c #00CAB6", -"^. c #00CEB7", -"/. c #00CDB8", -"(. c #00CDB7", -"_. c #00AB98", -":. c #00A998", -"<. c #009E8D", -"[. c #009C8B", -"}. c #009A8B", -"|. c #00CFB8", -"1. c #00A695", -"2. c #00CEB8", -"3. c #00BEA9", -"4. c #00AD9C", -"5. c #00A393", -"6. c #009B8B", -"7. c #009989", -"8. c #00AB7F", -"9. c #009D8D", -"0. c #009888", -"a. c #00AA7F", -"b. c #009F8D", -"c. c #009B8A", -"d. c #009787", -"e. c #00A97E", -"f. c #00A97D", -"g. c #00B6A2", -"h. c #009A8A", -"i. c #009887", -"j. c #009686", -"k. c #00A87C", -"l. c #00A77C", -"m. c #00BF7D", -"n. c #00A67B", -"o. c #00A67A", -"p. c #00B09E", -"q. c #00A897", -"r. c #009889", -"s. c #009685", -"t. c #009484", -"u. c #00A57A", -"v. c #00BE7D", -"w. c #00BD7C", -"x. c #00A579", -"y. c #00A479", -"z. c #00A08E", -"A. c #009A89", -"B. c #009988", -"C. c #009687", -"D. c #009384", -"E. c #00BC7B", -"F. c #00B67A", -"G. c #00A378", -"H. c #00AC9B", -"I. c #009D8B", -"J. c #009585", -"K. c #009283", -"L. c #00C1AB", -"M. c #00B17A", -"N. c #00BB7A", -"O. c #00B77A", -"P. c #00A778", -"Q. c #00A277", -"R. c #00A177", -"S. c #00BBA4", -"T. c #00B5A3", -"U. c #00A292", -"V. c #00A379", -"W. c #00BA78", -"X. c #00B878", -"Y. c #00AC78", -"Z. c #00A075", -"`. c #009E74", -" + c #009C8C", -".+ c #009584", -"++ c #009383", -"@+ c #009183", -"#+ c #009081", -"$+ c #00A278", -"%+ c #00A178", -"&+ c #00B778", -"*+ c #00B978", -"=+ c #00B777", -"-+ c #00B076", -";+ c #009D73", -">+ c #009586", -",+ c #009182", -"'+ c #00A076", -")+ c #00AD76", -"!+ c #00B877", -"~+ c #00B876", -"{+ c #00B676", -"]+ c #00B576", -"^+ c #00B175", -"/+ c #00A274", -"(+ c #009C72", -"_+ c #00A17C", -":+ c #009483", -"<+ c #008F81", -"[+ c #008E7F", -"}+ c #00AC75", -"|+ c #00B776", -"1+ c #00B575", -"2+ c #00B475", -"3+ c #00B375", -"4+ c #00B174", -"5+ c #00A773", -"6+ c #009C71", -"7+ c #009A71", -"8+ c #009970", -"9+ c #009485", -"0+ c #009082", -"a+ c #008F80", -"b+ c #001C00", -"c+ c #009F75", -"d+ c #009E75", -"e+ c #009F74", -"f+ c #00AC74", -"g+ c #00B875", -"h+ c #00B675", -"i+ c #00B374", -"j+ c #00B073", -"k+ c #00AA72", -"l+ c #009C70", -"m+ c #00996F", -"n+ c #00986E", -"o+ c #008D7F", -"p+ c #008C7D", -"q+ c #005F00", -"r+ c #001E00", -"s+ c #00A573", -"t+ c #00A974", -"u+ c #00AD74", -"v+ c #00B074", -"w+ c #00B574", -"x+ c #00B774", -"y+ c #00B474", -"z+ c #00B273", -"A+ c #00B072", -"B+ c #00AF72", -"C+ c #00AE72", -"D+ c #00AB71", -"E+ c #00A06F", -"F+ c #00976E", -"G+ c #00976D", -"H+ c #00966D", -"I+ c #00AA97", -"J+ c #008D7E", -"K+ c #008B7C", -"L+ c #006D00", -"M+ c #007F00", -"N+ c #009200", -"O+ c #00A201", -"P+ c #00B302", -"Q+ c #039D0A", -"R+ c #003B00", -"S+ c #003A00", -"T+ c #00BA75", -"U+ c #00BA74", -"V+ c #00B974", -"W+ c #00B674", -"X+ c #00B573", -"Y+ c #00B373", -"Z+ c #00B272", -"`+ c #00B071", -" @ c #00AD71", -".@ c #00AB70", -"+@ c #00AA70", -"@@ c #00A36E", -"#@ c #00986D", -"$@ c #00956C", -"%@ c #009181", -"&@ c #006600", -"*@ c #007D00", -"=@ c #009500", -"-@ c #00AC00", -";@ c #00C100", -">@ c #00D201", -",@ c #00D601", -"'@ c #00D402", -")@ c #00D202", -"!@ c #00D003", -"~@ c #00CD02", -"{@ c #00CB03", -"]@ c #00BA73", -"^@ c #00B873", -"/@ c #00B773", -"(@ c #00B673", -"_@ c #00B473", -":@ c #00B372", -"<@ c #00AF71", -"[@ c #00AE70", -"}@ c #00AC6F", -"|@ c #00AA6F", -"1@ c #00A86F", -"2@ c #00A56E", -"3@ c #009B6D", -"4@ c #00946A", -"5@ c #00936A", -"6@ c #009269", -"7@ c #009F8F", -"8@ c #00998A", -"9@ c #008F7F", -"0@ c #008E7E", -"a@ c #008B7D", -"b@ c #00897A", -"c@ c #009900", -"d@ c #00B300", -"e@ c #00CE00", -"f@ c #00E100", -"g@ c #00E101", -"h@ c #00DE01", -"i@ c #00DC01", -"j@ c #00DA01", -"k@ c #00D801", -"l@ c #00D502", -"m@ c #00D302", -"n@ c #00D102", -"o@ c #00CE02", -"p@ c #003A01", -"q@ c #00B872", -"r@ c #00B772", -"s@ c #00B672", -"t@ c #00B572", -"u@ c #00B472", -"v@ c #00B271", -"w@ c #00B171", -"x@ c #00B070", -"y@ c #00AE6F", -"z@ c #00AB6F", -"A@ c #00A96F", -"B@ c #00A76E", -"C@ c #00A66E", -"D@ c #00A56D", -"E@ c #00A06C", -"F@ c #00956A", -"G@ c #009168", -"H@ c #009067", -"I@ c #008D7D", -"J@ c #008C7C", -"K@ c #008A7B", -"L@ c #00887A", -"M@ c #007100", -"N@ c #008E00", -"O@ c #00AD01", -"P@ c #00C801", -"Q@ c #00E301", -"R@ c #00E401", -"S@ c #00E500", -"T@ c #00E400", -"U@ c #00E201", -"V@ c #00E001", -"W@ c #00DB01", -"X@ c #00D902", -"Y@ c #00D702", -"Z@ c #00CF02", -"`@ c #00CD03", -" # c #02CB08", -".# c #00B871", -"+# c #00B671", -"@# c #00B471", -"## c #00B270", -"$# c #00AF70", -"%# c #00AA6E", -"&# c #00A86E", -"*# c #00A36D", -"=# c #00A36C", -"-# c #00A16B", -";# c #009B69", -"># c #009267", -",# c #008F66", -"'# c #008E66", -")# c #008B7B", -"!# c #008779", -"~# c #009C01", -"{# c #00C201", -"]# c #00D401", -"^# c #00DD01", -"/# c #00DF01", -"(# c #00E600", -"_# c #00E800", -":# c #00DC02", -"<# c #00D701", -"[# c #00CF03", -"}# c #00CC02", -"|# c #00C903", -"1# c #00B670", -"2# c #00B570", -"3# c #00B470", -"4# c #00B370", -"5# c #00B26F", -"6# c #00B16F", -"7# c #00AF6F", -"8# c #00AE6E", -"9# c #00AC6E", -"0# c #00AB6E", -"a# c #00A96E", -"b# c #00A66D", -"c# c #00A56C", -"d# c #00A36B", -"e# c #00A26A", -"f# c #00A169", -"g# c #009F69", -"h# c #009668", -"i# c #008E65", -"j# c #008C64", -"k# c #009080", -"l# c #00877A", -"m# c #008678", -"n# c #006400", -"o# c #00C301", -"p# c #00DA02", -"q# c #00E700", -"r# c #00EA00", -"s# c #00CA03", -"t# c #003900", -"u# c #00B36F", -"v# c #00B16E", -"w# c #00AF6E", -"x# c #00AD6E", -"y# c #00A96D", -"z# c #00A86D", -"A# c #00A76C", -"B# c #00A069", -"C# c #009D68", -"D# c #008D65", -"E# c #008A7A", -"F# c #008677", -"G# c #008600", -"H# c #00D802", -"I# c #00E801", -"J# c #00CC03", -"K# c #01C706", -"L# c #00B36E", -"M# c #00B06E", -"N# c #00AB6D", -"O# c #00AA6D", -"P# c #00A66B", -"Q# c #00A66C", -"R# c #00A46B", -"S# c #00A16A", -"T# c #009F68", -"U# c #009466", -"V# c #008D64", -"W# c #008B64", -"X# c #009282", -"Y# c #008477", -"Z# c #008475", -"`# c #4D0000", -" $ c #970000", -".$ c #750000", -"+$ c #520000", -"@$ c #300000", -"#$ c #0E0000", -"$$ c #00B501", -"%$ c #00D602", -"&$ c #00E200", -"*$ c #00C703", -"=$ c #00B26D", -"-$ c #00B16D", -";$ c #00AF6D", -">$ c #00AD6D", -",$ c #00AC6C", -"'$ c #00AB6C", -")$ c #00A96C", -"!$ c #00A86B", -"~$ c #00A36A", -"{$ c #00A269", -"]$ c #009F67", -"^$ c #009C67", -"/$ c #00897B", -"($ c #008578", -"_$ c #008476", -":$ c #008375", -"<$ c #A70000", -"[$ c #FF0000", -"}$ c #EA0000", -"|$ c #BE0000", -"1$ c #900000", -"2$ c #5E0000", -"3$ c #200000", -"4$ c #007700", -"5$ c #00D002", -"6$ c #00C803", -"7$ c #00B06D", -"8$ c #00AE6D", -"9$ c #00AE6C", -"0$ c #00AD6C", -"a$ c #00A96B", -"b$ c #00A76B", -"c$ c #00A56A", -"d$ c #00A369", -"e$ c #009565", -"f$ c #008B63", -"g$ c #008778", -"h$ c #008577", -"i$ c #008376", -"j$ c #008274", -"k$ c #1B0000", -"l$ c #F10000", -"m$ c #FE0000", -"n$ c #FD0000", -"o$ c #DF0000", -"p$ c #A00000", -"q$ c #640000", -"r$ c #270000", -"s$ c #00AB01", -"t$ c #00DB02", -"u$ c #00C603", -"v$ c #05BB0D", -"w$ c #003901", -"x$ c #003800", -"y$ c #00AF6C", -"z$ c #00AC6B", -"A$ c #00AB6B", -"B$ c #00AA6B", -"C$ c #00A66A", -"D$ c #00A469", -"E$ c #009E67", -"F$ c #009D66", -"G$ c #008D63", -"H$ c #008B62", -"I$ c #009786", -"J$ c #008374", -"K$ c #008172", -"L$ c #6F0000", -"M$ c #FC0000", -"N$ c #FB0000", -"O$ c #FA0000", -"P$ c #F80000", -"Q$ c #E00000", -"R$ c #A30000", -"S$ c #4C0000", -"T$ c #050000", -"U$ c #00D101", -"V$ c #00D901", -"W$ c #00C503", -"X$ c #00C303", -"Y$ c #003801", -"Z$ c #00AE6B", -"`$ c #00AD6B", -" % c #00AA6A", -".% c #00A86A", -"+% c #00A76A", -"@% c #00A669", -"#% c #00A569", -"$% c #00A268", -"%% c #00A168", -"&% c #00A067", -"*% c #009664", -"=% c #008A62", -"-% c #009788", -";% c #008173", -">% c #007F72", -",% c #040000", -"'% c #D50000", -")% c #FC0001", -"!% c #F90000", -"~% c #F90100", -"{% c #F70000", -"]% c #F60000", -"^% c #F50000", -"/% c #F40000", -"(% c #E50000", -"_% c #9A0000", -":% c #400000", -"<% c #00A401", -"[% c #00C604", -"}% c #00C404", -"|% c #00C103", -"1% c #00AC6A", -"2% c #00AB6A", -"3% c #00AB69", -"4% c #00A969", -"5% c #00A869", -"6% c #00A769", -"7% c #00A568", -"8% c #009C65", -"9% c #008F63", -"0% c #008E80", -"a% c #008174", -"b% c #490000", -"c% c #FC0100", -"d% c #F70100", -"e% c #F30100", -"f% c #F30000", -"g% c #F20000", -"h% c #F10101", -"i% c #B80000", -"j% c #420000", -"k% c #006A00", -"l% c #00CC01", -"m% c #00D501", -"n% c #00CE03", -"o% c #00C003", -"p% c #003701", -"q% c #00AA69", -"r% c #00A468", -"s% c #00A368", -"t% c #00A167", -"u% c #009D65", -"v% c #009864", -"w% c #008961", -"x% c #008679", -"y% c #008072", -"z% c #007E72", -"A% c #007D70", -"B% c #B90000", -"C% c #F50100", -"D% c #F30001", -"E% c #F30101", -"F% c #F20100", -"G% c #F10100", -"H% c #EF0000", -"I% c #EE0000", -"J% c #ED0101", -"K% c #440000", -"L% c #00A101", -"M% c #00C902", -"N% c #00C403", -"O% c #00C104", -"P% c #00BF04", -"Q% c #03BD0A", -"R% c #003601", -"S% c #00A968", -"T% c #00A868", -"U% c #00A768", -"V% c #00A668", -"W% c #00A266", -"X% c #009E66", -"Y% c #009B64", -"Z% c #009063", -"`% c #008273", -" & c #007E71", -".& c #007D6F", -"+& c #280000", -"@& c #F70001", -"#& c #F60100", -"$& c #F40101", -"%& c #F00100", -"&& c #EE0100", -"*& c #ED0100", -"=& c #ED0000", -"-& c #EB0100", -";& c #450000", -">& c #00C204", -",& c #00BF03", -"'& c #00BE03", -")& c #00BB04", -"!& c #00A667", -"~& c #00A567", -"{& c #00A467", -"]& c #00A367", -"^& c #00A066", -"/& c #00A166", -"(& c #009E65", -"_& c #009B63", -":& c #009A63", -"<& c #008A61", -"[& c #008861", -"}& c #008879", -"|& c #008275", -"1& c #008073", -"2& c #007B6F", -"3& c #9B0000", -"4& c #F90001", -"5& c #F40100", -"6& c #F20001", -"7& c #F00001", -"8& c #EF0100", -"9& c #ED0001", -"0& c #EC0001", -"a& c #EB0001", -"b& c #EA0101", -"c& c #E90001", -"d& c #E80001", -"e& c #460000", -"f& c #00A801", -"g& c #00C203", -"h& c #00C004", -"i& c #00BE04", -"j& c #00BC04", -"k& c #00BA05", -"l& c #003501", -"m& c #00A466", -"n& c #00A366", -"o& c #009F65", -"p& c #009C64", -"q& c #009462", -"r& c #008960", -"s& c #008760", -"t& c #007C6F", -"u& c #007B6D", -"v& c #007A6C", -"w& c #150000", -"x& c #F60101", -"y& c #F40001", -"z& c #F00000", -"A& c #EF0101", -"B& c #EC0000", -"C& c #EA0100", -"D& c #E90100", -"E& c #E70001", -"F& c #E70101", -"G& c #E40100", -"H& c #AB0000", -"I& c #007A00", -"J& c #00CB02", -"K& c #00CA02", -"L& c #00C802", -"M& c #00C304", -"N& c #00BA04", -"O& c #00B805", -"P& c #00A465", -"Q& c #00A365", -"R& c #00A165", -"S& c #00A065", -"T& c #009A64", -"U& c #009D64", -"V& c #008D61", -"W& c #008576", -"X& c #007D71", -"Y& c #007C70", -"Z& c #007B6E", -"`& c #007A6D", -" * c #00796C", -".* c #010000", -"+* c #7D0000", -"@* c #EB0000", -"#* c #E80100", -"$* c #E70000", -"%* c #E70100", -"&* c #E60100", -"** c #E40101", -"=* c #E30100", -"-* c #E30101", -";* c #DD0000", -">* c #770000", -",* c #00B801", -"'* c #00BD04", -")* c #00B904", -"!* c #00B604", -"~* c #03B60B", -"{* c #003401", -"]* c #009C63", -"^* c #009363", -"/* c #008962", -"(* c #009963", -"_* c #009962", -":* c #009762", -"<* c #00875F", -"[* c #00786B", -"}* c #0C0000", -"|* c #E30000", -"1* c #EE0001", -"2* c #EC0100", -"3* c #E80101", -"4* c #E60000", -"5* c #E40000", -"6* c #E20101", -"7* c #E10101", -"8* c #E00001", -"9* c #E00101", -"0* c #AC0000", -"a* c #1A0000", -"b* c #008F01", -"c* c #00B705", -"d* c #00B505", -"e* c #00B305", -"f* c #003001", -"g* c #002100", -"h* c #009B88", -"i* c #009A62", -"j* c #009862", -"k* c #009861", -"l* c #009060", -"m* c #00855E", -"n* c #00776A", -"o* c #00766A", -"p* c #630000", -"q* c #EC0101", -"r* c #EA0001", -"s* c #E90000", -"t* c #E80000", -"u* c #E60101", -"v* c #E50100", -"w* c #E10000", -"x* c #DF0100", -"y* c #DE0001", -"z* c #D00000", -"A* c #006800", -"B* c #00B704", -"C* c #00B504", -"D* c #00B204", -"E* c #008C02", -"F* c #008860", -"G* c #009361", -"H* c #009961", -"I* c #009761", -"J* c #009760", -"K* c #00895F", -"L* c #008C7E", -"M* c #007F71", -"N* c #00786C", -"O* c #007669", -"P* c #D40000", -"Q* c #EF0001", -"R* c #E20000", -"S* c #E10001", -"T* c #DE0101", -"U* c #DD0100", -"V* c #DD0101", -"W* c #DC0001", -"X* c #D90000", -"Y* c #740000", -"Z* c #00A102", -"`* c #00A903", -" = c #007401", -".= c #00945F", -"+= c #00845D", -"@= c #00845C", -"#= c #007E70", -"$= c #00786A", -"%= c #00756A", -"&= c #007568", -"*= c #590000", -"== c #E10100", -"-= c #DF0101", -";= c #DB0101", -">= c #DA0101", -",= c #D90101", -"'= c #930000", -")= c #007A01", -"!= c #00B804", -"~= c #00B605", -"{= c #009C03", -"]= c #006300", -"^= c #00865E", -"/= c #008D5F", -"(= c #009660", -"_= c #009560", -":= c #00955F", -"<= c #008E5E", -"[= c #009280", -"}= c #007A6E", -"|= c #00796B", -"1= c #007469", -"2= c #007468", -"3= c #020000", -"4= c #CD0000", -"5= c #E90101", -"6= c #E50001", -"7= c #E20100", -"8= c #D80000", -"9= c #D70001", -"0= c #BD0000", -"a= c #2E0000", -"b= c #00B103", -"c= c #00B405", -"d= c #009803", -"e= c #006100", -"f= c #00895D", -"g= c #00955E", -"h= c #00875C", -"i= c #00825B", -"j= c #007569", -"k= c #007467", -"l= c #007367", -"m= c #007165", -"n= c #5C0000", -"o= c #E50101", -"p= c #DC0101", -"q= c #D80100", -"r= c #D60100", -"s= c #D50101", -"t= c #CC0000", -"u= c #4B0000", -"v= c #009002", -"w= c #00B404", -"x= c #009702", -"y= c #006000", -"z= c #00945E", -"A= c #00915D", -"B= c #007166", -"C= c #030000", -"D= c #CF0000", -"E= c #E30001", -"F= c #DE0100", -"G= c #DB0100", -"H= c #D90100", -"I= c #D80101", -"J= c #D70101", -"K= c #D60101", -"L= c #D50001", -"M= c #D40100", -"N= c #D30101", -"O= c #D10000", -"P= c #007101", -"Q= c #00B205", -"R= c #009903", -"S= c #00835B", -"T= c #00845B", -"U= c #00935E", -"V= c #00935D", -"W= c #008B5C", -"X= c #00815A", -"Y= c #00776B", -"Z= c #007266", -"`= c #006F64", -" - c #5B0000", -".- c #DD0001", -"+- c #DA0001", -"@- c #D80001", -"#- c #D40101", -"$- c #D30001", -"%- c #D20001", -"&- c #D10100", -"*- c #D00101", -"=- c #00A904", -"-- c #00B105", -";- c #009F04", -">- c #00925D", -",- c #00935C", -"'- c #00845A", -")- c #008059", -"!- c #007064", -"~- c #006E63", -"{- c #000303", -"]- c #D20000", -"^- c #EB0101", -"/- c #E20001", -"(- c #DC0100", -"_- c #DA0100", -":- c #D90001", -"<- c #D20101", -"[- c #D10101", -"}- c #CF0100", -"|- c #CE0000", -"1- c #000200", -"2- c #009102", -"3- c #00B005", -"4- c #00AF05", -"5- c #00A105", -"6- c #006500", -"7- c #008F7E", -"8- c #008F5B", -"9- c #007F59", -"0- c #007164", -"a- c #007063", -"b- c #006E62", -"c- c #006D61", -"d- c #6A0000", -"e- c #E40001", -"f- c #D70100", -"g- c #D30100", -"h- c #D20100", -"i- c #CF0101", -"j- c #CD0101", -"k- c #C80000", -"l- c #3B0000", -"m- c #007B01", -"n- c #00AE05", -"o- c #00AD05", -"p- c #00A604", -"q- c #008D5A", -"r- c #008859", -"s- c #007F58", -"t- c #007366", -"u- c #007265", -"v- c #D40001", -"w- c #CE0101", -"x- c #CC0101", -"y- c #C20000", -"z- c #2D0000", -"A- c #00AC05", -"B- c #00AC06", -"C- c #00AB06", -"D- c #00A905", -"E- c #007201", -"F- c #008A58", -"G- c #008258", -"H- c #007D57", -"I- c #00796D", -"J- c #007368", -"K- c #006F62", -"L- c #870000", -"M- c #E60001", -"N- c #DA0000", -"O- c #CB0101", -"P- c #CA0101", -"Q- c #009E05", -"R- c #00AA06", -"S- c #00A906", -"T- c #00A806", -"U- c #007D02", -"V- c #008758", -"W- c #007D56", -"X- c #006F63", -"Y- c #1D0000", -"Z- c #DF0001", -"`- c #C90101", -" ; c #C70101", -".; c #B70000", -"+; c #008903", -"@; c #00A705", -"#; c #00A706", -"$; c #008503", -"%; c #008456", -"&; c #007D55", -"*; c #008977", -"=; c #007267", -"-; c #006D62", -";; c #E00100", -">; c #DE0000", -",; c #D70000", -"'; c #C80101", -"); c #C50201", -"!; c #007602", -"~; c #00A506", -"{; c #00A406", -"]; c #009104", -"^; c #007C55", -"/; c #008156", -"(; c #007B55", -"_; c #007C6E", -":; c #380000", -"<; c #C70102", -"[; c #C50101", -"}; c #006700", -"|; c #00A206", -"1; c #009605", -"2; c #006200", -"3; c #007A54", -"4; c #007B54", -"5; c #B20000", -"6; c #C60101", -"7; c #C40101", -"8; c #009B06", -"9; c #009906", -"0; c #007A53", -"a; c #007953", -"b; c #007065", -"c; c #4E0000", -"d; c #D00100", -"e; c #C80201", -"f; c #C60201", -"g; c #C30101", -"h; c #BE0301", -"i; c #009005", -"j; c #006C01", -"k; c #007852", -"l; c #CA0000", -"m; c #DB0001", -"n; c #CF0001", -"o; c #C30201", -"p; c #C20101", -"q; c #C20102", -"r; c #006E01", -"s; c #670000", -"t; c #DB0000", -"u; c #D60001", -"v; c #D10001", -"w; c #C10102", -"x; c #C00102", -"y; c #8F0101", -"z; c #007650", -"A; c #0F0000", -"B; c #CA0102", -"C; c #C40201", -"D; c #C10101", -"E; c #C00201", -"F; c #BC0201", -"G; c #BB0101", -"H; c #540000", -"I; c #8C0000", -"J; c #BF0101", -"K; c #BE0102", -"L; c #BC0101", -"M; c #BB0202", -"N; c #BA0101", -"O; c #B60000", -"P; c #2A0000", -"Q; c #330000", -"R; c #C00101", -"S; c #BD0201", -"T; c #BC0102", -"U; c #BB0201", -"V; c #B90202", -"W; c #B80102", -"X; c #9E0001", -"Y; c #090000", -"Z; c #C80102", -"`; c #C20202", -" > c #BF0102", -".> c #BE0201", -"+> c #BD0101", -"@> c #BC0202", -"#> c #BB0102", -"$> c #BA0201", -"%> c #B90102", -"&> c #B70101", -"*> c #750101", -"=> c #BE0101", -"-> c #B70102", -";> c #B60102", -">> c #B40102", -",> c #3F0000", -"'> c #160000", -")> c #C20201", -"!> c #BF0201", -"~> c #BD0202", -"{> c #B80101", -"]> c #B70202", -"^> c #B60201", -"/> c #B50201", -"(> c #B30201", -"_> c #A50001", -":> c #100000", -"<> c #960000", -"[> c #C60102", -"}> c #C10201", -"|> c #BD0102", -"1> c #B70201", -"2> c #B30101", -"3> c #B20201", -"4> c #7A0001", -"5> c #B80202", -"6> c #B60101", -"7> c #B50101", -"8> c #B40202", -"9> c #B10201", -"0> c #B10102", -"a> c #AF0102", -"b> c #360000", -"c> c #140000", -"d> c #B90101", -"e> c #B90201", -"f> c #B40201", -"g> c #B30102", -"h> c #B20102", -"i> c #B10101", -"j> c #B00101", -"k> c #AE0201", -"l> c #9C0101", -"m> c #0A0000", -"n> c #A40000", -"o> c #C30102", -"p> c #B80201", -"q> c #B50102", -"r> c #B00102", -"s> c #AF0202", -"t> c #AE0202", -"u> c #AD0102", -"v> c #6B0001", -"w> c #660000", -"x> c #BA0202", -"y> c #B20202", -"z> c #B10202", -"A> c #B00201", -"B> c #AE0102", -"C> c #AC0201", -"D> c #AA0001", -"E> c #2B0000", -"F> c #B50202", -"G> c #AD0202", -"H> c #AC0101", -"I> c #AA0202", -"J> c #940100", -"K> c #070000", -"L> c #BA0000", -"M> c #C70201", -"N> c #C00202", -"O> c #B00202", -"P> c #AB0202", -"Q> c #AA0101", -"R> c #A80102", -"S> c #5D0101", -"T> c #7B0000", -"U> c #AC0102", -"V> c #AA0102", -"W> c #A90202", -"X> c #A70102", -"Y> c #A40101", -"Z> c #260000", -"`> c #B30202", -" , c #B20101", -"., c #AF0201", -"+, c #A80201", -"@, c #A70201", -"#, c #A70101", -"$, c #A60202", -"%, c #850101", -"&, c #C90000", -"*, c #AD0201", -"=, c #AB0201", -"-, c #A90102", -";, c #A70202", -">, c #A60101", -",, c #A50201", -"', c #A40201", -"), c #510000", -"!, c #A10000", -"~, c #B60202", -"{, c #AC0202", -"], c #A50102", -"^, c #A30102", -"/, c #9C0100", -"(, c #170000", -"_, c #720000", -":, c #A30202", -"<, c #A20202", -"[, c #A10202", -"}, c #740101", -"|, c #C90102", -"1, c #BF0202", -"2, c #BE0202", -"3, c #AE0101", -"4, c #AB0101", -"5, c #A90101", -"6, c #A40102", -"7, c #A30201", -"8, c #A10102", -"9, c #A00202", -"0, c #9F0202", -"a, c #390000", -"b, c #B10001", -"c, c #9D0100", -"d, c #880100", -"e, c #5E0101", -"f, c #4A0000", -"g, c #350000", -"h, c #240000", -"i, c #220000", -"j, c #1C0000", -"k, c #630101", -"l, c #790101", -"m, c #9F0102", -"n, c #8E0100", -"o, c #080000", -"p, c #C60001", -"q, c #C40202", -"r, c #B70100", -"s, c #6C0001", -"t, c #430000", -"u, c #290000", -"v, c #130000", -"w, c #060000", -"x, c #5C0101", -"y, c #AF0100", -"z, c #8F0000", -"A, c #2F0000", -"B, c #980001", -"C, c #660101", -"D, c #B50000", -"E, c #3C0000", -"F, c #3A0000", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" . . . . . . . . . . . ", -" . . . . . . . . . . . . . . . . . . . . . . . ", -" . . . . . . . . . . . . . + @ # $ % & * = - ; . . . . . . ", -" . . . . . . . . . . > > , ' ) ! ~ { ] ^ # / % & ( = - _ : < [ . . . . ", -" . . . . . . . . } | | 1 1 2 3 4 5 6 7 ! 8 { 9 ^ / / & 0 = - _ _ a b c . . . . ", -" . . . . . . d d e f d g | | | h i 3 , 5 j 7 ! k + 9 ^ / l * ( m ; n o b p q r . . . ", -" . . . . . g f s s t t t s s d g | | 2 u u , 6 j ! 8 { v ^ w x & ( = - _ o < [ q r y . . . ", -" . . . . } z s t t A A A A B C D s } } 1 2 u E F 6 ! G k + H $ % & * I - ; n < [ c J K L . . . ", -" . . . . 1 } z d D B A M M N M M O B P s } | 1 Q > , 5 ) R k + @ ^ / % * ( S ; n a [ T J r L U . . ", -" . . . u 2 V } e s A M N W X X Y X Z O C D d } | h u > 5 j 7 ~ + 9 # ` .& ( S ; _ a b T q ..+.@.. . . ", -" . . . . Q 1 } d s B #.Z X $.%.%.&.*.X =.#.t s g | 1 u > -.;.! R { ] ^ w % & * = >._ ,.b [ q K +.@.'.. . . ", -" . . . . ).} e D A =.Y $.%.!.!.!.%.~.Z M A s z } 1 u > , ' 7 ! { v @ ` % & ( = ; _ : b c q r L U {.'.. . ", -" . . . } s t A Z X ].!.^./.(.%.$.X N A s d } 1 2 u , ' 7 ! { 9 ^ ` / & ( ( _.:.o b [ q r K @.<.[.}.. . ", -" . . } f t #.Z ~.].!./.|.(.!.$.X =.A t d } 1 2 > , 6 7 ! 8 + H w / * * = - :.,.1.[ q r +.@.{.[.}.. . . ", -" . . . f t A Z *.%.!.(.2.(.!.&.W Z A t d | V 2 3.F 6 7 G k v H ` x & 4.= ; _ o b [ 5...K @.<.[.6.7.. . ", -" . . . P B Z Y ~.%.8.&.!.%.$.Z M A P d } 1 i > -.6 7 ! { 9 @ ` % & ( S - _ : b p q r +.@.9.[.}.7.0.. . ", -" . . . C M Z X $.a.a.a.$.X Z #.t s d | 1 Q > 5 6 7 G { 9 ^ w % * ( m - _ a b T q r +.b.{.[.c.7.d.. . . ", -" . . D A O N W X e.e.f.N M t s d } 1 2 u > -.6 7 ~ g.9 ^ / % & ( m >._ o [ c q K L b.'.6.h.7.i.j.. . ", -" . . . t A #.Z Z k.f.k.l.B P d z | 1 Q 3 , 5 j ! ~ + H ^ / l * I S ; _ a [ T q K L b.'.6.h.7.d.j.. . . ", -" . . s t t C A l.k.m.n.o.z z | 1 h u > -.6 7 G { + ^ ` p.l * = >.:.q.a [ c q K @.<.'.6.h.r.d.s.t.. . ", -" . . . e s s t t u.v.w.u.x.y.).h i > , ' 7 ! k g.9 ^ $ % & 4.= ; _ ,.< [ c r y z.<.[.6.A.B.C.j.D.. . . ", -" . . } g d d e u.u.E.F.x.G.G.Q 3 , 5 6 7 R k + H # / % * H.= >._ : b T q r K @.'.I.c.7.0.C.J.D.K.. . ", -" . . | } | } L.y.M.N.O.P.Q.R.S.F 6 7 ! k T.9 ^ ` % & * H.- ; o < b p U...y b.{.[.h.7.d.C.J.t.K.. . . ", -" . . 1 1 V 1 | V.P.N.W.X.Y.Z.Z.`.7 ! ~ { ] ^ # / % * ( = ; _ : a [ c r K L <. +6.h.7.d.j..+++@+#+. . ", -" . . . 2 2 2 2 $+%+&+*+X.=+-+Z.`.;+~ { + 9 ^ $ x & * = - ; o a b T q r y @.<.I.6.h.r.d.>+t.K.,+#+. . . ", -" . . u u u u 4 '+)+!+~+{+]+^+/+;+(+_+v ^ ` x .* ( = ; _ o < b c U.K L b.'.[.h.7.0.j.J.:+K.,+<+[+. . ", -" . . . , , , , Z.}+~+|+1+2+3+4+5+6+7+8+# / % & ( = - ; o ,.b [ q U.K @.<.'.6.h.B.i.j.9+++K.0+a+[+. . ", -" b+b+c+`.c+d+e+f+g+h+1+i+i+4+j+k+l+m+n+& & * I - >._ o a [ c q ..L b.{.I.6.7.0.d.>+t.++,+#+[+o+p+. . ", -" q+q+q+q+q+q+b+r+s+t+u+v+w+x+h+w+y+i+z+A+B+C+D+E+F+G+H+( = - I+o a b p q U.K L <.I.[.6.7.i.j.J.:+K.,+#+[+J+K+. . ", -" q+q+q+q+q+q+q+L+M+N+O+P+Q+R+S+T+U+V+g+x+W+X+Y+z+Z+`+C+ @.@+@@@#@$@$@; :.n a a [ q r ..L @.<.I.6.h.B.d.s.t.++,+%@a+[+J+K+. . . ", -" q+q+q+q+q+q+&@*@=@-@;@>@,@'@)@!@~@{@R+R+]@^@^@/@(@X+_@:@Z+`+<@[@}@+@|@1@2@3@4@5@6@,.b b p q r K 7@b.'.6.}.8@0.j.J.t.++,+#+9@0@a@K+b@. . ", -" q+q+q+q+q+&@M+c@d@e@f@g@g@h@i@j@k@l@m@n@o@{@R+R+p@q@r@s@t@u@:@v@w@x@[@y@}@z@A@B@C@D@E@F@6@G@H@T q r K z.U '.I.6.7.7.d.j.t.D.K.#+a+[+I@J@K@L@. . ", -" q+q+q+q+M@N@O@P@i@h@g@Q@R@S@T@U@V@h@W@X@Y@'@n@Z@`@ #R+S+.#+#t@@#@###w@x@$#y@}@z@%#&#B@D@*#=#-#;#>#H@,#'#K L @.<. +6.h.B.d.j.J.++++,+#+[+o+p+)#b@L@!#. . ", -" q+q+~#{#)@]#k@X@^#/#U@R@(#_#(#R@g@/#:#j@<#'@)@[#}#|#R+S+1#2#3#4###5#6#7#8#9#0#%#a#B@b#c#d#d#e#f#g#h#,#i#j#@.<.'.[.6.8@0.d.j.t.D.K.0+k#[+p+K+K@b@l#m#. . ", -" . . . . . . . . . . q+n#o#)@l@<#p#i@V@U@R@q#r#q#S@U@V@i@j@<#'@)@Z@`@s#R+S+t#3#u#5#5#v#w#8#x#0#0#y#z#A#c#=#d#e#f#f#B#C#i#D#L b.<.'.6.8@0.i.C.9+D.K.@+<+9@[+p+K@E#L@!#F#. . . ", -" . . . . . . . . . . . . . . . q+q+G#)@'@H#j@^#/#g@R@q#I#(#T@g@/#^#j@Y@'@)@Z@J#s#K#p@t#L#L#v#M#w#w#x#9#N#O#y#P#Q#R#d#f#S#f#B#T#U#V#W#U {.[.[.c.7.0.C.>+.+++X#,+a+o+I@J@K@b@!#m#Y#Z#. . ", -" . . `# $.$+$@$#$. . . . . . . . . . q+q+$$'@%$X@:#h@V@&$T@S@R@U@g@h@i@X@Y@'@)@[#}#s#*$S+t#=$v#-$w#;$>$,$'$O#)$!$P#R#~${$f#B#B#]$^$V#j#<.{.I.6.h.7.0.d.s.J.:+K.,+k#[+J+p+K+/$L@!#($_$:$. . ", -" . . . <$[$[$[$[$}$|$1$2$3$. . . . . . . . q+4$>@l@H#j@i@/#V@U@U@g@V@/#^#W@H#%$m@5$o@J#6$*$S+t#-$7$;$8$9$0$N#)$a$!$b$c$d$d$f#B#T#]$]$e$W#f${. +[.h.8@0.d.j.J.t.++K.#+a+[+J+K+K@b@l#g$h$i$j$. . . ", -" . . k$l$[$[$[$[$[$[$m$n$o$p$q$r$. . . . . . . q+q+s$l@%$X@t$^#h@/#/#/#h@^#W@X@<#l@)@5$`@{@6$u$v$w$x$y$9$0$z$A$B$a$!$C$C$D$d$f#B#T#]$E$F$G$H$<.'.6.6.8@0.0.I$>+t.++@+,+a+[+J+a@K@b@L@!#F#_$J$j$K$. . ", -" . . . L$[$[$[$[$[$m$n$M$N$O$O$P$Q$R$S$T$. . . . . q+M@U$l@Y@V$t$i@i@i@:#i@W@V$<#l@m@n@Z@}#s#*$W$X$w$Y$Z$`$z$A$ %.%.%+%@%#%d$$%%%&%]$E$F$*%H$=%[.6.}.h.0.-%I$J.t.++K.,+#+a+o+p+K+K@b@l#m#h$:$j$;%>%. . ", -" . . ,%'%[$[$[$[$n$n$)%N$!%~%{%]%^%/%(%_%:%. . . . . q+q+<%m@l@%$V$X@j@j@V$X@X@Y@l@'@n@Z@`@s#|#[%}%|%Y$Y$1%2%3%4%4%5%6%#%7%d$$%%%&%E$E$F$8%9%=%'.[.h.7.B.i.I$>+t.++++@+#+0%[+I@K+K@b@l#g$h$_$:$a%K$>%. . . ", -" . . b%[$[$[$m$n$c%N$!%P$P$d%^%/%e%f%g%h%i%j%. . . . . q+k%l%m@l@l@Y@Y@H#Y@Y@m%'@m@n@5$n%J#|#*$W$X$o%Y$p%p%q%q%4%6%6%#%r%s%$%t%&%E$F$u%8%v%=%w%6.c.7.7.d.j.s.9+++K.X#%@a+[+J+a@K@E#L@x%m#Y#i$j$K$y%z%A%. . ", -" . . . B%[$m$n$M$O$O$!%P$d%]%C%D%E%F%G%H%I%J%i%K%. . . . . q+q+L%n@)@m@'@l@m%l@'@m@)@n@[#o@J#M%6$u$N%O%P%Q%p%R%S%T%U%V%7%r%r%W%t%&%X%F$8%8%Y%Z%w%6.h.A.B.d.C.>+.+++++,+#+a+[+J+K+K@b@L@!#m#h$_$J$`%y%>% &.&. . ", -" . . +&O$m$M$N$O$!%P$@&#&^%$&f%g%l$%&&&*&=&-&}$i%;&. . . . . q+L+l%5$n@n@n@)@n@)@5$5$Z@~@}#s#6$u$}%>&,&'&)&p%R%T%!&~&~&{&]&W%^&/&X%(&u%8%_&:&<&[&h.7.0.d.j.s..+D.K.,+,+#+9@J+p+K+K@b@}&m#h$_$|&j$1&>% &A%2&. . . ", -" . . . 3&n$M$O$4&P${%]%^%5&f%6&7&%&8&I%9&0&a&b&c&d&i%e&. . . . q+q+f&~@n%[#[#!@Z@[#n%`@}#{@M%*$u$}%g&h&i&j&k&R%l&!&~&m&n&n&W%/&o&o&u%p&Y%:&:&q&r&s&7.0.d.j.J.t.++K.@+,+<+[+J+p+K+K@b@l#!#($_$Z#j$K$>% &A%t&u&v&. . ", -" . . w&=&O$!%!%{%x&^%y&E%D%G%z&A&I%*&B&C&D&d&E&F&(%G&H&3$. . . . q+I&J&J#`@`@J#`@~@J#K&|#L&*$W$}%M&h&i&j&N&O&R%l&l&P&Q&R&S&p&T&T&U&p&Y%:&:&:&V&s&0.d.C.s.J.t.++++,+%@k#0%J+p+K+K@b@L@!#($W&i$j$`%y%z%X&Y&Z&`& *. . ", -" .*. . +*!%P$d%]%C%5&e%D%h%%&H%&&=&B&@*b&#*$*%*&***=*-*;*>*T$. . . q+q+,*|#M%K&s#s#s#|#6$6$u$N%N%>&o%P%'*)&)*!*~*l&{*]*^*H$H$H$=%/*:&_&:&(*_*:*<*<*C.j.>+J.D.++X#,+#+a+[+0@I@K+K@E#L@!#m#h$_$:$`%y%>% &.&t&u& *[*. . ", -" . . }*|*{%d%]%^%f%g%h%%&H%1*=&2*@*C&D&3*F&4*(%5*6*7*8*9*0*a*. . . q+b*u$*$*$*$*$*$*$W$N%}%g&|%h&'&'*)&)*c*d*e*f*g*=%=%=%h*[.6.w%:*i*_*j*k*l*<*m*j.9+.+:+K.K.,+<+a+[+J+p+K+)#b@L@!#m#h$_$:$a%1&y%z%A%t&Z& * *n*o*. . ", -" . . p*{%#&^%/%g%G%l$z&&&1*q*a&r*s*t*F&u*v*|*|*6*w*x*y*;*z*;&. . . q+A*g&}%N%}%N%}%N%M&>&>&o%'&i&j&)&)*B*C*D*E*b+b+w%[.[.6.}.}.F*G*H*k*I*J*K*m*>+t.:+++++X##+k#9@[+J+L*K+K@b@b@!#m#h$_$:$a%;%>%M*X&t&Z&`&N*[*o*O*. . ", -" . . ,%P*5&f%D%F%7&Q*1*1*q*B&r*}$3*3*E&v*G&=*R*S*9*T*U*V*W*X*Y*.*. . . q+q+Z*>&>&>&>&O%O%O%h&P%i&'*)&N&)*c*C*`* =q+b+b+h.h.h.h.7.B.<*l*I*J*I*.=+=@=:+:+++@+,+#+k#9@o+J+p+K+K@/$L@!#m#h$_$:$j$;%y% &#=t&Z&u& *$=n*%=&=. . ", -" . . *=/%f%6&z&7&1*I%=&2*}$c&d&%*4*(%v*=*-*==Q$-=T*V*W*;=>=,='=}*. . . q+)=,&P%,&,&P%P%i&'*j&)&N&!=B*~=d*{=]=q+q+. . . 7.0.0.i.-%^=/=(=_=:=<=@=[=++K.,+,+#+a+[+J+L*p+K+K@b@L@!#m#h$_$:$j$;%y%>% &.&t&}= *|=n*%=1=2=. . . ", -" . . 3=4=g%l$%&H%I%=&@*b&c&5=t*$*4*6==*7=7*9*x*T*V*U*;=>=,=8=9=0=a=. . . q+q+b='*j&'*'*j&)&N&N&)*!=B*~=c=d=e=q+q+ . . d.d.I$d.j.m*f=:=g=g=h=i=K.X##+#+a+a+J+J+I@K+K+K@L@L@!#m#h$_$:$j$1&y%>% &.&2&`& *N*n*o*j=k=l=m=. . ", -" . . n=l$z&8&1*=&B&a&}$s*3*&*o=o==*7=w*9*o$y*y*p=;=>=,=q=9=r=s=t=u=. . . q+v=N&N&N&)*)*O&!=!=!*d*w=e*x=y=q+q+ . . j.>+s.J..+@=h=z=z=A=i=i=0+#+<+9@[+J+L*a@K+K@b@L@l#!#m#h$_$:$a%;%y%>% &Y&Z&Z&`& *n*o*%=2=l=B=m=. . ", -" . . C=D=H%I%J%B&@*C&c&%*$*(%(%E=-*6*S*9*x*F=W*;=G=H=I=J=K=L=M=N=O=n=. . . q+P=c*!=B*B*~=!*!*w=c=e*Q=R=y=q+ . . t.t.:+:+++S=T=U=V=W=X=9@k#a+[+J+J+p+K+K@K@b@L@}&m#m#_$Z#|&j$;%y%>% &A%t&Z&`& *Y=n*j=2=l=Z=m=`=. . ", -" . . -H%=&9&@*@*D&#*F&&*(%=*-*7=w*-=-=F=.-;=+-,=@-@-K=L=#-$-%-&-*-2$. . q+q+=-c=c=c=c=e*e*Q=----;-]=q+y= . . ++++K.K.K.i=i=>-,-'-)-0%[+J+J+p+p+K+K@b@L@L@!#m#($Y#_$j$j$K$y%z%X&.&t&Z&v& *$=o*j=1=k=Z=m=!-~-. . {- ", -" . . ,%]-0&-&^-r*D&d&&*(%G&|*/-==x*x*T*V*(-;=_-:-I=J=L=L=$-N=<-[-}-|-S$. 1-q+2-Q=Q=Q=------3-4-5-6-q+q+ . . @+,+,+,+#+7-X=8-8-9-9-o+I@p+J@K+K@b@L@L@l#m#m#h$_$:$|&a%y%y%>% &.&t&Z&`&|=Y=n*%=1=k=Z=m=0-a-b-c-. . ", -" . . d-^-a&C&3*$*&*(%v*e-R*==Q$-=T*V*(-;=_-H=8=f-'%s=N=g-h-*-*-i-j-k-l-. q+m-4-3-4-4-n-n-o-p-k%q+q+ . . . #+<+a+0%a+9-q-r-s-K+a@K+K+K@E#L@L@L@!#m#F#W&Z#:$|&`%K$y%M*X&A%t&Z&v& *[*o*o*j=2=t-u-!-!-b-c-c-. . ", -" . . }*;*}$s*3*$*4*G&G&-*S*7*-=T*V*W*G=+-,=I=J=K=v-N=N=[-*-*-i-w-j-x-y-z-q+&@A-o-B-A-A-C-D-E-q+q+ . . a+[+[+[+0@s-F-G-H-K+)#K@E#b@L@l#!#g$($h$_$:$|&j$;%y%>% &X&t&t&u&I-N*[*n*%=2=J-l=u-m=`=K-c-c-c-. . ", -" . . L-s*d&%*M-v*=*R*R*7*9*y*V*p=;=N-X*I=f-K=s=M=g-<-[-*-i-j-x-x-O-P-0=q+q+Q-R-R-S-S-T-U-q+q+ . . J+J+L*p+a@H-V-W-W-E#b@L@L@l#g$g$m#h$_$:$J$j$`%y%>%>% &A%Y&2&`&`& *Y=o*o*1=k=l=B=0-`=X-c-c-c-c-. . ", -" . . Y-5*%*4*o=5*|*7*w*-=Z-V*V*G=>=_-@-J=K=s=#-N=<-&-*-i-w-j-O-O-P-`- ;.;q++;@;#;@;#;$;q+q+ . . K+K+K+K+K+W-%;&;*;L@L@!#!#g$F#h$_$_$J$|&j$;%y%y%z% &A%t&Z&`& * *n*n*j=&=J-=;u-m=a-~--;c-c-c-c-. . ", -" . . . p$&*6=G&=*7*7*;;x*>;(-;=>=+-q=f-,;s=M=$-<-[-*-i-w-j-x-O-P-`-'; ;);q+!;~;~;{;];y=q+ . . K@K@/$b@b@^;/;(;!#x%m#m#F#h$_$i$:$:$j$;%1&y%>% &A%.&_;Z&I- *[*[*o*%=2=k=l=u-0-!-b-b-c-c-c-c-c-c-. . ", -" . . :;v*G&-*R*S*;;T*F=(-(->=,=q=J=J=L=s=#-$-[-*-i-w-j-x-O-P-`-';<;);[;q+};|;|;1;2;q+ . . L@L@L@L@L@(;3;4;m#($h$W&_$_$:$J$j$;%;%>%>%M*X&Y&t&Z&Z&`& *$=n*o*O*2=l==;B=!-!-b-c-c-c-c-c-c-c-c-. . ", -" . . . 5;=*|*7*9*-=T*V*p=G=H=:-@-J=K=M=N=N=[-*-i-w-j-x-O-P-`-';<;6;[;7;q+q+8;9;};q+q+ . . !#g$m#!#m#3;0;a;h$_$_$:$:$j$a%;%1&y%>%M* &A%A%t&Z&`&I-[*[*o*o*j=2=l=Z=m=b;!-K-c-c-c-c-c-c-c-c-c-. . ", -" . . c;6*S*;;-=F=V*p=;=>=,=f-J=K=s=#-N=%-[-d;i-w-x-O-P-P-e;';f;[;7;g;h;q+i;j;q+q+. . . m#($F#h$W&a;k;_$:$:$J$j$;%;%y%y%>%M* &X&A%t&_;`&`& *. . . . . . . . . . . . . . . . . . . . . c-. . ", -" . . T$l;8*x*y*.-p=m;>=,=I=f-K=v-M=N=[-*-*-n;w-j-x-O-`-';'; ;6;7;o;p;q;q+r;q+q+. . . . W&_$_$_$Z#k;k;J$`%`%;%1&y%>%>%M*A%A%A%t&Z&u&. . . . . . . . . . . . . . . . . . . . . . . . . ", -" . . s;8*T*U*V*t;>=,=H=J=u;s=M=g-<-v;*-}-w-j-x-O-`-`-';6;6;[;g;p;w;x;q+q+q+y;3=. . . . :$:$J$j$j$z;z;K$K$y%y%>%M* &#=A%t&t&Z&. . . . . . . . . . . ", -" . . A;'%y*U*;=G=,=@-J=u;'%s=N=<-[-*-i-w-j-x-O-B;`-';6;6;C;7;p;D;D;E;q+q+F;G;H;. . . . . ;%;%;%;%y%y%y%>%>%M*M* &A%A%t&t&. . . . . . . ", -" . . I;W*(-m;,=:-J=9=s=s=#-g-[-&-i-w-j-x-O-P-`-';<;[;[;7;o;p;x;J;J;K;L;M;N;O;P;. . . . y%y%>%y%>%>% & &#=#=A%Y&t&. . . . . . . ", -" . . Q;(-;=>=,=I=J=K=L=N=N=%-*-i-w-j-x-O-P-`-e; ;6;[;7;g;D;R;R;J;S;T;T;U;V;W;X;Y;. . . . z%z% & & &#=A%t&.&2&_;. . . . . . ", -" . . . .;>=,=@-J=K=#-N=N=<-*-*-}-j-j-O-P-`-Z; ;6;[;7;g;`;D;R; >.>+>@>#>$>%>&>&>*>. . . . . A%A%A%Y&t&t&Z&Z&. . . . . . ", -" . . q$H=I=,;K=v-v-<-[-[-*-i-w-x-O-P-`-`- ;6;);7;o;p;D;R;J;=>S;L;G;$>%>->&>;>>>,>. . . . . 2&Z&Z&Z&Z&u&. . . . . . ", -" . . '>P*f-r=K=#-g-<-[-*-}-j-j-x-P-`-';';6;[;7;g;)>D;R;!>.>~>L;G;N;V;{>]>^>/>(>_>:>. . . . }=`&`&`&. . . . . ", -" . . . <>J=s=M=N=h-v;*-i-w-j-x-O-P-';'; ;[>[;g;p;}>E;J;J;|>+>#>$>%>W;1>;>/>>>2>3>4>. . . . . |=[*. . . . . ", -" . . c;K=#-N=<-v;*-i-w-j-x-O-`-';'; ;[;[;g;g;p;R;J; >+>L;U;G;N;5>1>6>7>8>(>9>0>a>b>. . . . . . . . . ", -" . . c>]-#-<-[-*-*-w-w-j-O-P-`-'; ;6;[;7;o;q;x;x;.>=>L;F;G;d>e>&>6>;>f>g>h>i>j>k>l>m>. . . . . . . ", -" . . . n><-<-[-i-i-j-j-O-B;`-'; ;6;[;7;o>p;w;R; >K;+>L;U;$>5>p>]>q>f>2>h>0>r>s>t>u>v>. . . . . . ", -" . . w><-&-i-i-w-j-O-P-P-`- ;f;[;7;g;p;D;R;!>=>+>L;$>x>e>{>&>6>q>f>y>z>A>a>k>B>C>D>E>. . {-. ", -" . . +&[-*-i-j-j-x-O-`-';'; ;6;7;g;)>w;R;J;=>~>L;G;$>d>W;->;>F>>>(>3>0>A>a>G>G>H>I>J>K>. . ", -" . . . L>i-w-j-x-P-P-`-M>f;6;C;g;p;D;R;N>=>+>L;G;N;V;W;]>6>f>(>h>i>A>O>t>t>u>P>P>Q>R>S>. . . ", -" . . T>w-j-x-O-P-`- ; ;6;7;7;p;}>R; >J;+>T;G;N;d>{>&>^>/>f>2>y>0>A>s>t>C>U>I>V>W>X>Y>Z>. . ", -" . . ,>j-x-O-P-`-'; ;[>[;7;p;D;D;J;J;.>S;G;#>%>p>->;>F>f>`> ,z>A>.,G>G>U>V>W>+,@,#,$,%,C=. . ", -" . . m>&,x-P-P-'; ;6;[;7;g;p;D;J;=>K;|>#>G;d>{>W;;>/>q>2> , ,A>a>B>*,C>=,I>-,R>;,>,,,',),. . . ", -" . . !,O-`-'; ; ;[;[;g;g;w;R;J;K;@>L;$>$>p>&>~,7>F>8>g>3>i>a>t>*,{,P>V>-,+,@,$,],',^,/,(,. . ", -" . . _,P-'; ; ;6;[;o>p;D;R;!>=>|>L;G;%>d>->]>~,7>>>h> ,A>r>t>*,C>{,I>W>+,#,>,],',:,<,[,},. . . ", -" . . u=|, ; ;[;7;g;p;D;x;1,2,S;L;G;N;e>{>]>^>7>>>`>9>O>O>3,G>U>4,I>5,W>;,$,],6,7,<,8,9,0,a,. . ", -" . . P;';6;6;[;7;g;D;D;!>=>~>T;G;U;e>5>]>^>7>b,c,d,_,e,f,g,h,i,Y-'>'>'>'>j,g,S$k,l,y;0,m,n,o,. . ", -" . . m>p,6;[;q,o;p;R; >=>K;T;L;N;r,<>s,t,u,v,3=. . . . . . . . . . . . . . . . . . . w,Z>S$x,. . . ", -" . . y,[;7;g;q;D;E;J;.>B%z,2$A,o,. . . . . . . . . . . . . . . . . . . . . . . . . . . . . #$. . ", -" . . z,7;g;p;D;+>B,C,g,o,. . . . . . . . . . . . . . . . . . ", -" . . +*g;D,>*E,}*. . . . . . . . . . . . . . ", -" . . L$F,,%. . . . . . . . . . . ", -" . . . . . . . . Y;. . ", -" . . . . . ", -" . . ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" "}; diff --git a/src/Mod/Surfaces/Icons/Ico.png b/src/Mod/Surfaces/Icons/Ico.png deleted file mode 100644 index cd1a6149e26c41b424fff4ef5d6a03f11c167aed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7236 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 diff --git a/src/Mod/Surfaces/Icons/Ico.xcf b/src/Mod/Surfaces/Icons/Ico.xcf deleted file mode 100644 index d17f5f74d596f95c0b9d0ce18c9f24ef45e3452e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21174 zcmeHvX<$@Uw(j0136mgdJCA9!1yn>7#IcoX?ZMllc3f1|iHt#!A(G-?#Uvq>6_3-o3ByulGt%YMph~UVH7e z*SFR_`F5AcJ}@$VbbyMU=Cb}9IKBO}ig*6(ErJ&xCHOIv8m(Lx7w z^HM-J{!aU=?k41I;dte33Rw<+y0uF39hAo3RwK900iEU0a^?ziL`KeiSPl{bG4yIgk__5t<)h z$_tw1!`~e^^F{UhprzwsmvH>(Z3cd=%%+8^*P_a8_uS5j9GQg(d~hsgSGIDpZtur1vUs~4ZmrMx4}^MGTaJ(`Uxg<}!bfWO*t&awFKy9vxn{&Uk6&7@;L ztXpBL*a5#UvFS9>W)3iapy$W(g5_8SdV!_`Mnl)&vi=)5H$;nc)Cl2Nr>|O$A3!g& z>90XA*R*t$f?gBL6U%|IIyRCFC`>(G&@5j!{@Db;L^pe4ea$RK8C0w?@;cH`GqubD z@Z)X%c+ftxeo6UQBl9F^BX9L-0&S1J&*z{Q>$b8_7tpJXp0^Rvj!l~G;J3!PeKJ9! zMI_au)s$E^vmC8J&m;+&h@TZpS`zKe&VrMPAAJ0KxqU8qRBK>n?9WEf+!pjFhVF9; z^aM@IK8>KK#`45+v;qC4=KJ?@`&9BUWKA|=>{CN1H27%d?vFIz zu?@5-Mizl)<6b)ELvwsAg)GNp@Yj$Gh_Tye5kw1m$%clfbt~Ww8lJc53h;leY3bMr z`p-6>upgvpe~;Nd*Ze?_0UhXt9`p5*6)PP7WNTXm{`^>;n6cm-AB%N{wFI9#T2RT; zTPCU?@TDUIZJseQnl>J{9Esq^#qxr5%!w5|$H#Jv0N)u)`aWFx1-?5Bz)e)QevuIo zVS{xXN-*#F+0d}QQDGm4jtq|)82XD}{pR;zky-H*gmp<|6yTK%?7gd-?I!Suqpju zf9^~d;wdDbcm5*8FJ=kx9wz5EaYFoIwod}z5%xh(hx{=zQim2}CK!jp!6+q70pvhU z<4d&jqlp*F@Y5cLk0x4ubVtzC^|(^XgYVXU*Y36HY52B39sgt#J_DhrBj~4|4di!3 zn@3^qqxnKS@kd^ZX%#BGO8ivZsHwYn`NHK(*Eo>p#pOnE`EvF7vu95nK6vKbrHjWz zchPk5!ufO7xth}lx2((BbMC_RjiQ^lP

)5;ZrftE(~>F3S7%ay8mNBcy62uGd^X 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 c #E6E5E6", -", c #E9E8E8", -"' c #EEEEED", -") c #ECECEC", -"! c #EBEBEB", -"~ c #E9E9E9", -"{ c #E9E9E8", -"] c #E5E6E6", -"^ c #D7D7D7", -"/ c #B2B2B1", -"( c #A6A6A6", -"_ c #B7B7B7", -": c #D1D0D1", -"< c #ECEBEB", -"[ c #00B5AA", -"} c #00B4A8", -"| c #00B3A8", -"1 c #00B1A8", -"2 c #00B0A6", -"3 c #00AFA5", -"4 c #00AEA4", -"5 c #00ACA2", -"6 c #00ABA1", -"7 c #00AAA0", -"8 c #EAEBEA", -"9 c #E2E2E2", -"0 c #B6B6B6", -"a c #979898", -"b c #999999", -"c c #BCBCBC", -"d c #D8D9D8", -"e c #EFF0EF", -"f c #00BDB2", -"g c #00BCB1", -"h c #00BBAF", -"i c #00B9AF", -"j c #00B8AE", -"k c #00B7AC", -"l c #00B6AB", -"m c #00B4AA", -"n c #00B1A7", -"o c #00AFA4", -"p c #00ADA3", -"q c #00A99F", -"r c #00A79E", -"s c #00A79C", -"t c #00A59B", -"u c #E3E3E2", -"v c #B0B1B0", -"w c #999898", -"x c #949495", -"y c #00C2B7", -"z c #00C1B6", -"A c #00C0B5", -"B c #00BFB4", -"C c #00BDB3", -"D c #00BDB1", -"E c #00BBB0", -"F c #00BAAF", -"G c #00B9AE", -"H c #00B8AD", -"I c #00B6AC", -"J c #00B4A9", -"K c #00AEA3", -"L c #00A79D", -"M c #00A69B", -"N c #00A49A", -"O c #D7D8D7", -"P c #959696", -"Q c #A0A1A1", -"R c #DFDFE0", -"S c #00C3B8", -"T c #00C4B8", -"U c #00C2B8", -"V c #00C1B7", -"W c #00C0B4", -"X c #00BEB4", -"Y c #00BAAE", -"Z c #00B7AB", -"` c #00B0A5", -" . c #00AEA5", -".. c #00ABA2", -"+. c #00A99E", -"@. c #00A89E", -"#. c #00A69C", -"$. c #00A59A", -"%. c #00A399", -"&. c #00A298", -"*. c #EAEAEA", -"=. c #C6C5C5", -"-. c #9C9B9B", -";. c #9A9A9A", -">. c #959495", -",. c #B5B6B6", -"'. c #E6E6E6", -"). c #00C5B9", -"!. c #00BEB3", -"~. c #00B5A9", -"{. c #00B2A7", -"]. c #00B1A6", -"^. c #00A098", -"/. c #DADBDB", -"(. c #A8A8A8", -"_. c #9B9A9A", -":. c #989898", -"<. c #9E9F9F", -"[. c #D8D8D8", -"}. c #E5E5E5", -"|. c #00C3B7", -"1. c #00C6BA", -"2. c #00C6B9", -"3. c #00C5BA", -"4. c #00C5B8", -"5. c #00BCB2", -"6. c #00BCB0", -"7. c #00B8AC", -"8. c #00B3A9", -"9. c #00ADA2", -"0. c #00A398", -"a. c #00A198", -"b. c #00A097", -"c. c #B6B5B5", -"d. c #989998", -"e. c #9C9D9C", -"f. c #959596", -"g. c #BDBDBD", -"h. c #00C2B6", -"i. c #00C7BB", -"j. c #00C8BB", -"k. c #00C6BB", -"l. c #00C4B9", -"m. c #00BFB3", -"n. c #00B7AD", -"o. c #00ACA1", -"p. c #00A59C", -"q. c #00A49B", -"r. c #009E96", -"s. c #E4E4E4", -"t. c #BABBBA", -"u. c #9C9C9C", -"v. c #9E9E9E", -"w. c #9B9B9C", -"x. c #AAAAAA", -"y. c #DCDCDB", -"z. c #00C1B5", -"A. c #00C8BD", -"B. c #00C9BD", -"C. c #00C9BC", -"D. c #00C8BC", -"E. c #00B2A8", -"F. c #00AFA6", -"G. c #00A197", -"H. c #009F96", -"I. c #E4E5E4", -"J. c #B9B9B8", -"K. c #A0A09F", -"L. c #9D9D9D", -"M. c #9F9F9F", -"N. c #D8D8D9", -"O. c #00C7BA", -"P. c #00CABE", -"Q. c #00CBBF", -"R. c #00CBBE", -"S. c #00C9BE", -"T. c #00C7BC", -"U. c #00BBB1", -"V. c #00BAB0", -"W. c #00AAA1", -"X. c #00A89D", -"Y. c #13A79E", -"Z. c #03A097", -"`. c #009D94", -" + c #9F9FA0", -".+ c #A2A1A1", -"++ c #A0A0A0", -"@+ c #D0D0D0", -"#+ c #00C0B6", -"$+ c #00CCC0", -"%+ c #00CABD", -"&+ c #26ABA4", -"*+ c #10A39C", -"=+ c #009E94", -"-+ c #AEAEAE", -";+ c #A1A1A2", -">+ c #A2A3A2", -",+ c #A0A1A0", -"'+ c #D2D2D3", -")+ c #00CABF", -"!+ c #00CEC1", -"~+ c #00CDC2", -"{+ c #00CDC1", -"]+ c #00CBC0", -"^+ c #00ABA0", -"/+ c #00A9A0", -"(+ c #46B5AF", -"_+ c #63BCB6", -":+ c #009E95", -"<+ c #009C93", -"[+ c #009A92", -"}+ c #D3D3D4", -"|+ c #A8A7A7", -"1+ c #A5A4A4", -"2+ c #A4A5A5", -"3+ c #A2A2A2", -"4+ c #A3A3A2", -"5+ c #D7D7D6", -"6+ c #00CFC2", -"7+ c #00A69D", -"8+ c #0BA59B", -"9+ c #9DCAC7", -"0+ c #2DAAA2", -"a+ c #BABABA", -"b+ c #A7A7A7", -"c+ c #A6A7A6", -"d+ c #A5A6A6", -"e+ c #A3A3A3", -"f+ c #DEDEDE", -"g+ c #00CEC2", -"h+ c #00BEB2", -"i+ c #00ADA4", -"j+ c #00A39A", -"k+ c #06A29A", -"l+ c #9FCBC8", -"m+ c #8FC4C1", -"n+ c #17A39B", -"o+ c #009B92", -"p+ c #009990", -"q+ c #CACACA", -"r+ c #AEAEAD", -"s+ c #A9A9A9", -"t+ c #A8A9A8", -"u+ c #A4A4A4", -"v+ c #B6B5B6", -"w+ c #00CCBF", -"x+ c #47B2AC", -"y+ c #CCD3D4", -"z+ c #9EC8C5", -"A+ c #16A19A", -"B+ c #00988F", -"C+ c #DEDDDD", -"D+ c #AFAEAF", -"E+ c #ABACAC", -"F+ c #ACACAB", -"G+ c #A9A8A8", -"H+ c #A7A6A6", -"I+ c #CDCDCE", -"J+ c #23A9A1", -"K+ c #B5CFCE", -"L+ c #D6D6D6", -"M+ c #BFD0CE", -"N+ c #93C6C3", -"O+ c #3FABA5", -"P+ c #1C1D1D", -"Q+ c #1D1D1D", -"R+ c #292929", -"S+ c #DBDBDA", -"T+ c #DADADA", -"U+ c #C7C6C7", -"V+ c #ADADAD", -"W+ c #AEAEAF", -"X+ c #ACACAC", -"Y+ c #ACABAB", -"Z+ c #ABABAB", -"`+ c #A9AAA9", -" @ c #A5A5A6", -".@ c #D0D0CF", -"+@ c #00B9AD", -"@@ c #00B6AA", -"#@ c #019F95", -"$@ c #56B4AE", -"%@ c #C5D0D0", -"&@ c #D1D2D2", -"*@ c #CDCDCD", -"=@ c #D2D2D2", -"-@ c #D0D2D2", -";@ c #C0C0C0", -">@ c #D3D3D2", -",@ c #CBCCCC", -"'@ c #BEBFBE", -")@ c #B0AFB0", -"!@ c #B1B1B0", -"~@ c #B0B0AF", -"{@ c #ABAAAB", -"]@ c #AAAAAB", -"^@ c #A6A5A5", -"/@ c #B5B5B5", -"(@ c #D0D1D0", -"_@ c #D5D6D5", -":@ c #009F95", -"<@ c #049D95", -"[@ c #73BAB7", -"}@ c #CCD1D1", -"|@ c #C8C8C9", -"1@ c #C2C2C2", -"2@ c #C2C3C3", -"3@ c #C1C1C1", -"4@ c #B8B8B8", -"5@ c #B4B4B4", -"6@ c #B4B4B5", -"7@ c #B3B3B3", -"8@ c #B2B2B2", -"9@ c #B1B1B1", -"0@ c #AFAEAE", -"a@ c #ADAEAE", -"b@ c #ACACAD", -"c@ c #AAA9A9", -"d@ c #BBBCBC", -"e@ c #D1D1D1", -"f@ c #00B0A7", -"g@ c #00A89F", -"h@ c #059C94", -"i@ c #7ABEB9", -"j@ c #BDCCCC", -"k@ c #CBCACB", -"l@ c #C2C1C1", -"m@ c #BBBBBB", -"n@ c #B8B9B8", -"o@ c #B8B9B9", -"p@ c #B4B5B5", -"q@ c #B3B4B4", -"r@ c #B2B3B3", -"s@ c #B0B0B0", -"t@ c #AFAFAF", -"u@ c #AAA9AA", -"v@ c #D3D3D3", -"w@ c #00A096", -"x@ c #059B92", -"y@ c #29A69E", -"z@ c #ACC8C7", -"A@ c #D2D1D1", -"B@ c #CCCCCD", -"C@ c #C4C4C4", -"D@ c #C0BFBF", -"E@ c #BBBCBB", -"F@ c #B2B3B2", -"G@ c #AEADAD", -"H@ c #ADACAD", -"I@ c #00ACA3", -"J@ c #009D93", -"K@ c #009B91", -"L@ c #00968E", -"M@ c #3CA7A1", -"N@ c #8EBFBD", -"O@ c #BDCCCB", -"P@ c #C1C0C0", -"Q@ c #C4C3C3", -"R@ c #C6C6C6", -"S@ c #BAB9B9", -"T@ c #ADACAC", -"U@ c #C8C8C8", -"V@ c #020B0A", -"W@ c #00B5AB", -"X@ c #00A299", -"Y@ c #009A91", -"Z@ c #00978E", -"`@ c #00958C", -" # c #04958D", -".# c #1B9B93", -"+# c #353535", -"@# c #414141", -"## c #464646", -"$# c #CECECE", -"%# c #C4C4C3", -"&# c #B1B2B1", -"*# c #C9C9C9", -"=# c #00BFB5", -"-# c #009C94", -";# c #009B93", -"># c #00968D", -",# c #00958B", -"'# c #00938A", -")# c #009189", -"!# c #009088", -"~# c #CCCCCC", -"{# c #B1B2B2", -"]# c #ADAEAD", -"^# c #CBCCCB", -"/# c #009890", -"(# c #00958D", -"_# c #00948B", -":# c #009289", -"<# c #009188", -"[# c #BFBFBF", -"}# c #CCCBCB", -"|# c #CFCFCE", -"1# c #00948A", -"2# c #008F88", -"3# c #008E86", -"4# c #CDCECE", -"5# c #BEBEBE", -"6# c #B7B7B8", -"7# c #B6B6B5", -"8# c #B3B2B2", -"9# c #B1B0B0", -"0# c #AFAFB0", -"a# c #00998F", -"b# c #00988E", -"c# c #00948C", -"d# c #008F87", -"e# c #B9B8B9", -"f# c #B6B7B6", -"g# c #B4B3B3", -"h# c #B2B1B1", -"i# c #ADADAE", -"j# c #ACADAD", -"k# c #C0C1C0", -"l# c #008D86", -"m# c #008C84", -"n# c #C3C4C4", -"o# c #B9BAB9", -"p# c #B0B0B1", -"q# c #CBCBC9", -"r# c #00AA9F", -"s# c #00928A", -"t# c #008D85", -"u# c #008B83", -"v# c #B7B8B7", -"w# c #B7B7B6", -"x# c #B1B0B1", -"y# c #C5C5C5", -"z# c #00968C", -"A# c #C5C6C6", -"B# c #C0C1C1", -"C# c #BABBBB", -"D# c #BABAB9", -"E# c #B8B7B7", -"F# c #B7B6B7", -"G# c #B5B4B4", -"H# c #B3B2B3", -"I# c #B1B1B2", -"J# c #ACADAE", -"K# c #009F97", -"L# c #009991", -"M# c #009389", -"N# c #008F86", -"O# c #008E85", -"P# c #008B84", -"Q# c #008981", -"R# c #BCBBBC", -"S# c #B9B9B9", -"T# c #B8B8B9", -"U# c #00938B", -"V# c #008D84", -"W# c #008C83", -"X# c #008A82", -"Y# c #008880", -"Z# c #C4C3C4", -"`# c #B7B8B8", -" $ c #AFAFB1", -".$ c #00A499", -"+$ c #008B82", -"@$ c #00877F", -"#$ c #C1C2C1", -"$$ c #B9B8B8", -"%$ c #B5B5B4", -"&$ c #B4B4B3", -"*$ c #B2B1B3", -"=$ c #009087", -"-$ c #008780", -";$ c #00867E", -">$ c #C2C3C2", -",$ c #B9B9BA", -"'$ c #B2B1B2", -")$ c #008A81", -"!$ c #00867D", -"~$ c #C0C0C1", -"{$ c #BFBEBE", -"]$ c #BEBDBD", -"^$ c #BDBCBD", -"/$ c #BFC0C0", -"($ c #C1C3C2", -"_$ c #009C92", -":$ c #009288", -"<$ c #00847D", -"[$ c #00847B", -"}$ c #BBBBBC", -"|$ c #BAB9BA", -"1$ c #B6B6B7", -"2$ c #B3B3B2", -"3$ c #BFC0BF", -"4$ c #008982", -"5$ c #00857E", -"6$ c #00847C", -"7$ c #00837B", -"8$ c #BEBEBF", -"9$ c #BDBCBC", -"0$ c #BCBCBB", -"a$ c #B3B4B3", -"b$ c #00877E", -"c$ c #00857D", -"d$ c #00837C", -"e$ c #00827A", -"f$ c #B7B6B6", -"g$ c #00978D", -"h$ c #00837A", -"i$ c #008178", -"j$ c #BFBFBE", -"k$ c #BDBEBC", -"l$ c #00978F", -"m$ c #008980", -"n$ c #008179", -"o$ c #007F78", -"p$ c #C1C1C2", -"q$ c #008E87", -"r$ c #00817A", -"s$ c #C2C2C1", -"t$ c #C0BFC0", -"u$ c #BDBEBE", -"v$ c #BBBBBA", -"w$ c #B9BABA", -"x$ c #009D95", -"y$ c #00867F", -"z$ c #008078", -"A$ c #007E78", -"B$ c #007D76", -"C$ c #C3C3C3", -"D$ c #BBBABA", -"E$ c #009A90", -"F$ c #008279", -"G$ c #007E77", -"H$ c #007D75", -"I$ c #C0C0BF", -"J$ c #BFBEBF", -"K$ c #BBBABB", -"L$ c #00887F", -"M$ c #00827B", -"N$ c #008079", -"O$ c #007B75", -"P$ c #BABABB", -"Q$ c #007C75", -"R$ c #007B73", -"S$ c #007A72", -"T$ c #C3C2C2", -"U$ c #BFBFC0", -"V$ c #BEBDBE", -"W$ c #BCBBBB", -"X$ c #00857C", -"Y$ c #007D77", -"Z$ c #007C76", -"`$ c #007B74", -" % c #007A73", -".% c #007972", -"+% c #C3C4C3", -"@% c #C5C5C6", -"#% c #BEBFBF", -"$% c #007871", -"%% c #BCBDBC", -"&% c #C4C5C4", -"*% c #C6C6C5", -"=% c #007770", -"-% c #00766F", -";% c #C3C2C3", -">% c #008C85", -",% c #007F77", -"'% c #007872", -")% c #00766E", -"!% c #C8C7C7", -"~% c #C7C6C6", -"{% c #C5C5C4", -"]% c #C2C0C1", -"^% c #B3B3B4", -"/% c #007E76", -"(% c #007870", -"_% c #00756F", -":% c #00756D", -"<% c #C9C8C8", -"[% c #C5C4C4", -"}% c #007A74", -"|% c #007971", -"1% c #00746E", -"2% c #00746D", -"3% c #C7C7C7", -"4% c #008881", -"5% c #00756E", -"6% c #00746C", -"7% c #00736C", -"8% c #00716A", -"9% c #C8C9C8", -"0% c #00716B", -"a% c #C6C7C7", -"b% c #CACBCA", -"c% c #C9C8CA", -"d% c #007771", -"e% c #00726B", -"f% c #006F69", -"g% c #007670", -"h% c #007069", -"i% c #006E68", -"j% c #000303", -"k% c #007169", -"l% c #007068", -"m% c #006D67", -"n% c #AEAFAE", -"o% c #00736B", -"p% c #00726A", -"q% c #A9A9A8", -"r% c #CFCFCF", -"s% c #C5C4C5", -"t% c #007973", -"u% c #00736D", -"v% c #006F68", -"w% c #B0AEB0", -"x% c #00726C", -"y% c #006D68", -"z% c #007C74", -"A% c #00706A", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" . + @ # ", -" $ $ $ $ $ $ $ $ $ $ $ % & * * = - ; > , ' ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ) ! ~ { { ~ ] ^ / ( _ : ~ < ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ [ } | 1 2 3 4 5 6 7 $ $ $ $ $ $ 8 9 0 a b c d e ", -" $ $ $ $ $ $ $ $ $ $ f f g h i j k l m | | n 2 o p 5 6 q r s t $ $ $ $ u v w x ( ^ 8 ", -" $ $ $ $ $ $ $ $ y z z A A B C D E F G H I l J | n n 3 K 5 6 q q L M N $ $ $ $ O ( b P Q R * ", -" $ $ $ $ $ $ S S S T S U V V z W X C g E Y G H Z [ J | n ` .p ..7 +.@.#.$.%.&.$ $ $ *.=.-.;.>.,.'. ", -" $ $ $ $ $ U T T T ).).).T T S U V z B !.!.g F Y H I l ~.| {.].3 p 5 6 q @.s t %.&.^.$ $ $ /.(._.:.<.[.}. ", -" $ $ $ $ y |.T ).).1.1.1.1.2.3.4.T y y A B !.5.6.F j 7.Z [ 8.1 2 3 4 9.6 7 +.s t N 0.a.b.$ $ $ * c.d.e.f.g.'. ", -" $ $ $ $ A h.|.S 4.2.1.i.i.j.i.i.k.2.l.T y z A m.f g E i n.Z [ } | n 2 4 p o.7 +.L p.q.0.&.b.r.$ $ s.t.u.v.w.x.y. ", -" $ $ $ !.B z.y S T 1.i.j.A.B.B.C.B.D.k.3.4.S y z W !.f E Y G k [ J | E.F.o p o.7 q L M q.%.&.G.H.$ $ $ I.J.u.K.L.M.N. ", -" $ $ $ $ m.A h.S T 2.O.D.B.P.Q.Q.R.S.B.T.O.).T U V A !.f U.V.j n.l m | {.2 o 4 5 W.q X.#.t %.a.Y.Z.`.$ $ $ 9 0 +.+++e.@+u ", -" $ $ $ $ #+h.S 4.1.T.C.P.Q.$+$+$+Q.%+D.i.1.T |.h.A !.f g h G H l ~.} E.2 3 p 5 7 q r #.N %.&.&+*+=+`.$ $ - -+;+>+Q ,+'+ ", -" $ $ $ y T ).1.D.B.)+$+!+~+{+]+P.B.j.1.T S y A B !.g h G H l J | E.n 3 p p ^+/+@.#.t %.&.(+_+:+<+[+$ $ 9 }+|+1+2+3+4+5+ ", -" $ $ y T ).O.D.%+)+$+~+6+{+$+P.B.T.1.).S y A B f g F G H I [ 8.{.n .4 5 6 /+X.7+t %.&.8+9+0+<+[+$ $ $ - a+b+c+d+e+-+f+ ", -" $ $ $ T ).1.D.S.Q.$+{+g+{+$+R.A.D.1.).S z z.B h+6.F G 7.Z ~.8.E.].3 i+5 7 q @.#.t j+&.k+l+m+n+o+p+$ $ f+q+r+s+t+b+u+v+f+ ", -" $ $ $ l.2.D.C.%+Q.$+$+w+Q.P.D.i.1.l.S y A X f U.F G H l J } E.2 3 p o.6 q r #.$.%.&.G.x+y+z+A+p+B+$ $ C+q+D+E+F+x.G+H+|+I+O ", -" $ $ $ 3.i.D.B.P.P.Q.)+P.B.D.O.).T S z A m.f E F G 7.l J | {.2 .p ..6 q L #.q.%.&.G.J+K+L+M+N+O+P+Q+R+ S+T+U+V+W+V+X+Y+Z+`+ @-+.@L+ ", -" $ $ 4.1.k.j.A.B.B.B.C.j.i.).T S y A B !.f U.F +@k @@J | n 2 o p ..W.q @.t N %.a.b.#@$@%@&@*@=@-@;@}+>@,@'@)@/ !@~@D+V+X+{@]@^@/@(@_@ ", -" $ $ $ ).1.O.D.D.i.D.j.1.2.l.S |.z A m.C g E Y H k [ 8.| n ` 4 9.o.7 q L t q.%.a.b.:@<@[@}@|@1@;@2@3@g.4@5@6@7@8@9@)@0@a@b@E+c@H+d@e@ ", -" $ $ T ).).3.1.k.O.1.).4.T |.z A W !.f U.F +@7.l [ | E.f@` 4 5 W./+g@L p.N %.a.H.:+`.h@i@j@k@l@m@n@o@_ _ p@5@q@r@9@s@t@-+V+E+u@b+;@v@ ", -" $ $ $ S T T ).).T l.T S |.y #+W X f g h G H Z @@J | 1 2 3 i+5 7 q X.s t N &.^.w@:+<+o+x@y@z@A@B@C@D@a+m@E@4@/@5@7@F@s@t@0@G@H@{@(.=.A@ ", -" $ $ y U S S S S S U y z A A m.C g E F G n.Z [ 8.| n 2 4 I@5 W.q r #.q.%.&.a.H.`.J@K@p+B+L@M@N@O@P@Q@e@v@R@S@/@5@7@8@9@~@t@G@T@x.T@U@e@ ", -" V@$ $ z y V y y h.V z.A B m.!.D 6.F G H Z W@J | E.2 3 4 I@6 7 @.s M $.X@&.^.:@=+<+Y@p+Z@L@`@ #.#+#@### $#%#4@0 /@5@7@9@s@t@-+a@x.&#*#.@ ", -" $ $ A A z.A z #+=#A m.!.!.D 6.F G j k l m | | n 2 4 p 5 7 q r L t N &.a.b.:+-#;#Y@p+Z@>#,#'#)#!#$ $ ~#3@4@_ /@5@r@{#9@s@W+]#x.0 ^#$# ", -" $ $ $ B B B B B X !.f f g E V.F j k l [ J | 1 ].3 4 5 6 7 @.L #.q.%.&.^.H.:+J@o+Y@/#Z@(#_#:#<#!#$ $ $ q+[#4@_ 0 /@q@8@&#s@t@-+c@m@}#|# ", -" $ $ !.!.!.!.h+f D g 6.E F G H H l [ ~.| E.].F. .p 5 7 q @.s M N X@a.b.:@`.<+Y@p+B+>#`@1#:#<#2#3#$ $ 4#U@5#4@6#7#c.5@8#9@9#0#-+]@5#q+ ", -" $ $ $ g g g g 6.E h F G j H k Z @@J | | n 2 o p 5 6 7 @.X.#.t %.X@a.H.:+`.;#Y@a#b#>#c#'#:#!#d#3#$ $ ~#R@c e#4@f#0 5@g#8@h#s@i#j#k#k@ ", -" $ $ E F E V.h Y Y G H k k l [ J | E.n 2 3 4 9.6 W.q @.L t N %.&.b.:@=+J@o+p+B+Z@(#_#'#<#!#3#l#m#$ $ q+n#c o#n@_ 0 /@7@8#9@p#W+s@1@q# ", -" $ $ G i G G +@+@H k k I @@J J | E.{.2 3 4 p 5 6 r#@.L M $.%.X@a.b.:+J@<+o+p+b#>#`@1#s#<#!#3#t#u#$ $ U@2@d@a+4@v#w#0 q@r@9@x#-+7@y#*# ", -" $ $ H 7.7.H k k l [ [ ~.} E.E.n 2 3 4 p 5 6 /++.L L t %.&.&.b.H.:+J@o+Y@a#Z@z#_#'#<#<#d#3#t#u#$ $ $ A#B#d@C#D#E#F#,.G#7@H#I#J#F#y#U@ ", -" $ $ Z l l l l W@[ J } | E.{.].F.3 4 p I@^+7 +.X.#.M $.%.&.a.K#:@`.;#[+L#B+>#`@_#M#<#!#N#O#P#u#Q#$ $ y#;@R#m@S#T#_ 0 /@5@r@/ -+S#=. ", -" $ $ $ [ [ J J J 8.| E.{.n ].2 3 4 p 5 6 7 q @.L #.q.%.&.a.w@r.`.J@o+p+p+Z@>#_#U#:#!#d#3#V#W#X#Y#$ $ Z#[#c m@S#T#`#f#,.p@7@h# $m@y# ", -" $ $ } | 8.E.| E.1 n n 2 3 4 K I@5 6 /+q r L #.$..$X@a.b.H.:+-#o+Y@a#Z@>#`@'#'#<#!#3#l#m#+$Q#Y#@$$ $ C@#$5#g.c a+S@$$_ v+%$&$*$9@g.%# ", -" $ $ E.E.E.n n ].].F.3 4 K p 5 ..6 7 +.@.L #.t N %.&.b.H.:+`.<+o+L#B+Z@>#_#U#:#!#=$3#m#u#X#Q#-$;$$ $ >$3@[#g.c a+,$n@_ ,./@5@'$g#;@C@ ", -" $ $ $ f@2 2 2 ` 3 4 K p p 5 6 ^+/+g@@.L #.t N %.&.a.b.:@:+`.o+L#B+b#L@c#U#:#)#2#N#3#m#X#)$Y#@$!$$ $ $ 3@~${$]$^$m@a+S#4@f#,.5@8@/@/$($ ", -" $ $ 3 3 4 4 4 K p I@5 5 6 q q @.r #.M t N %.&.G.K#r.=+<+_$K@p+B+L@(#,#'#:$<#d#l#V#W#X#Q#@$;$<$[$$ $ ;@3@[#5#g.}$C#|$4@_ 1$/@2$7#3$3@ ", -" $ $ p i+K p 9.5 o.6 W.7 r#+.r L #.t q.N 0.a.G.b.:+=+J@;#Y@p+B+Z@z#`@1#:#<#=$3#t#m#u#4$Y#@$5$6$7$$ $ [#P@;@8$g.9$0$|$S#_ 0 /@a$E#;@ ", -" $ $ 5 5 ....o.6 6 /+q q @.L #.#.p.N %.0.&.G.K#r.=+-#<+Y@L#B+Z@>#`@_#'#:#!#d#3#t#u#X#Q#-$b$c$d$e$$ $ $ [#;@;@[#]$c R#a+,$n@f$0 a$S#{$ ", -" $ $ 6 W.7 r#q q +.@.L L #.#.q.j+%.0.a.G.w@:@:+`.;#o+L#B+B+g$(#_#'#)#<#d#3#t#P#X#Q#Y#@$!$6$h$e$i$$ $ g.{$B#k#D@j$k$0$a+S@n@_ 0 /@m@]$ ", -" $ $ q q q g@@.r L L #.M t N .$0.&.a.b.H.:@`.<+;#[+Y@B+l$g$`@_#'#:#<#!#d#l#m#u#X#m$-$;$c$7$e$n$o$$ $ c '@3@p$;@5#g.c m@a+S#`#0 1$C#c ", -" $ $ L r L #.s s M p.$.N %.%.0.a.a.b.H.:+`.`._$Y@p+a#b#g$(#_#'#'#)#!#q$3#V#u#X#Q#-$b$c$6$7$r$i$o$$ $ $ C#8$#$s$;@t$u$g.m@v$w$4@_ 1$v$0$ ", -" $ $ $ #.#.#.t t q.N %.%.&.&.a.b.w@r.:+x$<+o+K@p+p+Z@>#z#c#'#s#:$<#d#3#t#P#X#)$Y#y$;$<$d$e$i$z$A$B$$ $ a+3$C$l@k#[#'@^$c m@S#e#_ F#a+D$ ", -" $ $ N N N .$j+%.%.&.&.a.b.K#H.H.`.-#<+o+Y@E$a#Z@L@(#,#'#M#<#!#d#3#t#u#X#Q#Y#@$;$c$6$h$F$z$o$G$H$$ $ a+I$Q@1@;@;@J$g.c m@K$4@_ 4@S# ", -" $ $ j+X@&.X@&.&.a.^.G.K#H.:@:+J@J@o+[+Y@p+B+Z@>#z#,#U#:#<#<#!#N#t#m#u#X#Q#L$;$c$6$M$e$N$o$G$B$O$$ $ $ a+k#C@C$l@;@/$5#g.c P$S@4@4@4@ ", -" $ $ a.a.a.^.a.b.b.H.H.:+`.`.<+o+o+K@L#p+B+Z@>#`@_#'#:#)#<#2#3#t#m#u#X#Q#-$@$5$6$[$e$i$o$G$B$Q$R$S$$ $ v+,$T$y#C$1@3@U$J$V$c W$|$S#_ 4@ ", -" $ $ $ b.b.K#w@:@:+:+`.-#`._$o+K@Y@p+B+Z@L@z#`@_#'#M#<#<#=$q$t#m#u#X#Q#Y#@$5$X$d$e$F$z$A$Y$Z$`$ %.%$ $ 5@C#+%@%C$>$3@;@#%5#g.E@t.S#_ v+ ", -" $ $ :@H.:+=+:+`.-#<+_$o+[+E$p+B+B+L@>#(#`@U#'#:$<#!#d#3#O#V#u#X#)$Y#@$;$c$6$7$F$z$o$G$H$Q$R$.%$%$ $ q@%%&%*%n#C$1@3@[#]$g.d@K$,$0 5@ ", -" $ $ `.`.`.<+_$;#o+K@K@E$p+a#l$B+>#>#c#,#1#:#:#<#2#d#3#t#m#u#+$Q#Y#@$;$c$6$7$r$N$z$A$B$Q$`$.%.%=%-%$ $ 5@]$R@R@C@Q@;%k#D@#%5#^$c S#/@5@ ", -" $ $ <+_$_$o+[+[+Y@p+a#a#l$Z@L@>#(#_#1#'#'#:$!#=$N#3#t#>%u#X#Q#m$@$;$c$6$7$r$n$o$,%Y$Q$`$ %'%$%-%)%$ $ 5@[#!%~%{%C@>$]%p$;@t$5#g.4@^%5@ ", -" $ $ Y@Y@Y@Y@p+a#B+B+l$Z@Z@z#`@,#1#1#M#)#<#!#=$N#l#t#m#u#X#4$Y#@$;$c$6$7$e$n$z$G$/%Q$`$R$.%(%=%_%:%$ $ /@3@<%R@=.C@[%C$ /@5@ ", -" $ $ $ p+B+B+b#l$Z@Z@>#(#`@`@_#'#'#:#<#<#!#d#3#t#>%m#u#X#m$Y#@$;$c$6$7$e$n$z$o$G$H$Q$}%.%|%=%_%1%2%$ $ $ ]#,.C$|@3%y#C@ r@o# ", -" $ $ Z@Z@g$Z@>#>#`@c#_#_#'#:#:#:$!#!#d#d#t#t#V#u#u#X#4%Y#@$;$c$6$7$e$N$z$o$G$H$O$ %.%'%=%-%5%6%7%8%$ $ V+_ R@9%U@3% 4@9@ ", -" $ $ >#(#z#`@,#_#1#'#'#s#:#<#!#!#2#N#3#t#>%P#u#X#Q#Y#-$@$;$c$6$7$r$n$z$o$G$Z$`$`$ %.%=%-%_%2%7%0%8%$ $ -+|$a%b%c% c I# ", -" $ $ _#_#1#1#'#'#s#:#<#<#!#!#=$d#3#t#t#m#u#X#X#Q#Y#L$;$;$6$[$M$e$n$z$o$G$B$Q$`$ %.%d%=%5%2%7%e%8%f%$ $ r+%%q+B@ m@s@ ", -" $ $ M#M#s#:#:#:$<#!#<#!#d#q$3#t#t#m#m#u#X#Q#4%Y#@$;$5$<$6$e$e$i$z$A$Y$H$Q$`$S$.%(%g%5%1%6%e%8%h%i%$ $ j% -+[#,@ R@F@s@ ", -" $ $ )#<#<#<#!#!#!#d#N#q$l#l#V#m#W#u#X#Q#4%Y#-$;$;$c$6$7$M$r$z$z$o$G$H$Q$`$ %|%d%=%_%1%6%e%8%k%l%i%m%$ $ ~@3@~# *#%%n% ", -" $ $ $ !#2#d#q$d#3#3#t#t#m#P#u#u#X#)$4%Y#Y#@$;$!$X$[$7$M$F$i$z$,%Y$B$Q$`$S$.%$%g%-%5%2%o%p%h%h%i%m%m%$ $ q%9@m@3%r%}#s%c V+n% ", -" $ $ d#3#3#3#O#t#V#m#u#u#+$X#)$Q#Y#-$@$b$5$c$6$7$M$e$n$z$o$G$Y$Q$Q$R$t%'%$%=%_%2%u%7%p%8%f%v%m%m%m%$ $ 7@-+V+v s@X+X+ ", -" $ $ t#t#>%m#P#u#u#+$X#)$Q#Y#Y#-$b$b$;$c$6$7$h$e$F$z$o$o$G$B$Z$O$ % %.%d%-%-%1%6%7%0%k%f%v%m%m%m%m%$ $ 7@w%F@ ", -" $ $ u#u#u#u#u#X#Q#)$m$4%Y#@$@$b$!$c$6$6$h$M$e$n$z$z$A$G$B$Q$`$ %.%.%=%=%5%:%u%x%p%8%l%i%y%m%m%m%m%$ $ ", -" $ $ X#X#4$Q#Q#Q#m$Y#@$y$;$;$!$c$6$d$7$7$e$n$N$z$o$G$B$H$z%`$t%.%$%$%g%_%2%6%7%p%k%h%i%i%m%m%m%m%m%m%$ $ ", -" $ $ Y#Y#4%Y#Y#-$y$@$;$5$c$X$6$6$7$h$e$n$n$o$o$,%Y$Z$Q$`$`$ %.%(%=%-%)%2%7%x%0%h%h%i%m%m%m%m%m%m%m%m%$ $ ", -" $ $ @$b$;$@$;$;$!$c$c$6$6$7$7$e$r$n$N$z$o$,%G$B$B$Q$`$ %t%$%$%g%-%5%2%7%e%8%A%h%v%m%m%m%m%m%m%m%m%m%$ $ ", -" $ $ ;$5$!$c$X$c$6$6$7$7$h$e$n$n$z$z$o$,%G$Y$B$Q$z% % %.%$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ m%$ $ ", -" $ $ X$6$6$6$[$7$7$h$F$F$n$N$z$o$o$,%B$B$B$Q$`$R$$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ 7$7$h$e$e$n$n$i$i$z$z$o$,%G$/%B$Q$Q$`$$ $ $ $ $ $ $ $ $ $ $ ", -" $ $ n$n$n$n$z$z$z$o$o$,%,%G$B$B$Q$Q$$ $ $ $ $ $ $ ", -" $ $ z$z$o$z$o$o$G$G$/%/%B$Z$Q$$ $ $ $ $ $ $ ", -" $ $ A$A$G$G$G$/%B$Q$H$O$z%$ $ $ $ $ $ ", -" $ $ B$B$B$Z$Q$Q$`$`$$ $ $ $ $ $ ", -" $ $ O$`$`$`$`$R$$ $ $ $ $ $ ", -" $ $ }% % % %$ $ $ $ $ $ $ ", -" $ $ |%$%$ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ ", -" j%$ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", -" $ $ $ ", -" $ $ $ ", -" ", -" ", -" "}; diff --git a/src/Mod/Surfaces/Icons/IsoCurveIco.png b/src/Mod/Surfaces/Icons/IsoCurveIco.png deleted file mode 100644 index 3e5dd8f9d8568050a98a642cec04cdda959e787e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6763 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 diff --git a/src/Mod/Surfaces/Icons/IsoCurveIco.xcf b/src/Mod/Surfaces/Icons/IsoCurveIco.xcf deleted file mode 100644 index 6c05b2c4f0e0a529dada67426da25ebecff9377d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64629 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 c #009B03", -", c #006600", -"' c #1B1B1B", -") c #050505", -"! c #000000", -"~ c #171717", -"{ c #008C02", -"] c #00B005", -"^ c #00A305", -"/ c #006F01", -"( c #1D1D1D", -"_ c #4C4C4C", -": c #1F1F1F", -"< c #B5B5B5", -"[ c #B4B4B3", -"} c #B3B3B2", -"| c #B1B1B2", -"1 c #B1B0B0", -"2 c #AFAFAF", -"3 c #AEAEAE", -"4 c #ADACAC", -"5 c #ABABAB", -"6 c #AAAAAA", -"7 c #141414", -"8 c #007100", -"9 c #00AC04", -"0 c #008403", -"a c #232323", -"b c #030303", -"c c #A8A8A8", -"d c #787878", -"e c #8B8B8B", -"f c #B6B7B6", -"g c #B9B9BA", -"h c #B8B8B9", -"i c #B8B7B7", -"j c #B6B6B6", -"k c #B5B4B5", -"l c #B3B3B3", -"m c #B2B3B2", -"n c #B1B1B1", -"o c #B0B0B0", -"p c #AFAFAE", -"q c #ADADAD", -"r c #ACACAC", -"s c #A9A9A9", -"t c #A8A7A8", -"u c #A6A7A6", -"v c #A5A5A5", -"w c #010101", -"x c #00A704", -"y c #00AE05", -"z c #00AC05", -"A c #009703", -"B c #1A1A1A", -"C c #C1C2C2", -"D c #C1C1C1", -"E c #C0C1C1", -"F c #C0C0C0", -"G c #BFC0C0", -"H c #BFBFBF", -"I c #BAB9BA", -"J c #898A89", -"K c #7A7A7A", -"L c #B9B9B9", -"M c #B7B8B8", -"N c #B7B6B7", -"O c #B4B4B4", -"P c #B2B1B1", -"Q c #B0AFAF", -"R c #ADAEAD", -"S c #AAA9A9", -"T c #A7A7A7", -"U c #A6A6A5", -"V c #A4A4A4", -"W c #008A02", -"X c #00B104", -"Y c #00AD05", -"Z c #00AA06", -"` c #00A105", -" . c #007101", -".. c #006000", -"+. c #0C0C0C", -"@. c #C3C3C3", -"#. c #C4C3C3", -"$. c #C3C3C4", -"%. c #C3C4C3", -"&. c #C3C2C3", -"*. c #C2C1C2", -"=. c #C1C1C2", -"-. c #BFC0BF", -";. c #BEBEBF", -">. c #BDBDBE", -",. c #9D9C9C", -"'. c #737373", -"). c #A5A5A4", -"!. c #AFB0AF", -"~. c #AEAEAF", -"{. c #ACABAC", -"]. c #A9A9A8", -"^. c #A6A6A6", -"/. c #A4A5A4", -"(. c #A3A3A3", -"_. c #A2A2A2", -":. c #008B02", -"<. c #00B305", -"[. c #00A906", -"}. c #00A505", -"|. c #008303", -"1. c #020202", -"2. c #C2C2C3", -"3. c #C4C4C4", -"4. c #C5C5C5", -"5. c #C4C5C5", -"6. c #C5C4C4", -"7. c #BEBEBE", -"8. c #BDBEBE", -"9. c #9F9F9E", -"0. c #B8B8B8", -"a. c #B4B5B4", -"b. c #B2B2B1", -"c. c #B1B1B0", -"d. c #AAABAB", -"e. c #A4A3A3", -"f. c #A1A0A1", -"g. c #00B405", -"h. c #00A706", -"i. c #00A506", -"j. c #009404", -"k. c #006800", -"l. c #080808", -"m. c #C2C2C2", -"n. c #C3C3C2", -"o. c #C5C6C6", -"p. c #C6C6C6", -"q. c #C7C6C6", -"r. c #C6C6C5", -"s. c #C6C5C6", -"t. c #C4C5C4", -"u. c #C3C4C4", -"v. c #C3C2C2", -"w. c #C1C0C0", -"x. c #C0BFBF", -"y. c #BDBCBD", -"z. c #757575", -"A. c #9D9D9D", -"B. c #B8B8B7", -"C. c #B4B5B5", -"D. c #B3B3B4", -"E. c #B2B1B2", -"F. c #ACADAC", -"G. c #A8A9A8", -"H. c #A7A7A6", -"I. c #A3A4A4", -"J. c #A3A3A2", -"K. c #A1A1A1", -"L. c #9FA0A0", -"M. c #006700", -"N. c #007700", -"O. c #008601", -"P. c #009202", -"Q. c #009D02", -"R. c #00AC03", -"S. c #00B503", -"T. c #00B404", -"U. c #00A806", -"V. c #00A306", -"W. c #009C05", -"X. c #007702", -"Y. c #C2C2C1", -"Z. c #C2C3C2", -"`. c #C5C5C4", -" + c #C7C7C7", -".+ c #C8C8C7", -"++ c #C6C6C7", -"@+ c #C5C4C5", -"#+ c #BFBFBE", -"$+ c #BDBDBD", -"%+ c #BDBCBC", -"&+ c #ADAEAE", -"*+ c #747474", -"=+ c #B7B7B6", -"-+ c #B2B3B3", -";+ c #AFB0B0", -">+ c #ABACAB", -",+ c #A6A5A6", -"'+ c #A4A4A5", -")+ c #9E9E9F", -"!+ c #006D00", -"~+ c #007F00", -"{+ c #009200", -"]+ c #00A201", -"^+ c #00B302", -"/+ c #00C202", -"(+ c #00C803", -"_+ c #00C403", -":+ c #00C204", -"<+ c #00C004", -"[+ c #00BD04", -"}+ c #00BA04", -"|+ c #00B804", -"1+ c #00B504", -"2+ c #00AC06", -"3+ c #00A905", -"4+ c #00A406", -"5+ c #00A006", -"6+ c #009E07", -"7+ c #008A05", -"8+ c #006500", -"9+ c #C1C1C0", -"0+ c #C9C8C9", -"a+ c #C9C9C9", -"b+ c #C9C9C8", -"c+ c #C8C9C9", -"d+ c #C8C8C8", -"e+ c #C7C6C7", -"f+ c #BCBDBD", -"g+ c #BBBBBB", -"h+ c #ABABAA", -"i+ c #A0A0A0", -"j+ c #B6B5B5", -"k+ c #B1B2B2", -"l+ c #B0AFB0", -"m+ c #A8A9A9", -"n+ c #A5A4A5", -"o+ c #A2A2A1", -"p+ c #286F28", -"q+ c #276F27", -"r+ c #004700", -"s+ c #0D500D", -"t+ c #056205", -"u+ c #007D00", -"v+ c #009500", -"w+ c #00AC00", -"x+ c #00C100", -"y+ c #00D201", -"z+ c #00D601", -"A+ c #00D402", -"B+ c #00D202", -"C+ c #00D003", -"D+ c #00CD02", -"E+ c #00CB03", -"F+ c #00C603", -"G+ c #00C303", -"H+ c #00C003", -"I+ c #00BE04", -"J+ c #00BB04", -"K+ c #00B905", -"L+ c #00B704", -"M+ c #00AE06", -"N+ c #00AB05", -"O+ c #00A606", -"P+ c #00A107", -"Q+ c #009F07", -"R+ c #009B07", -"S+ c #009506", -"T+ c #007602", -"U+ c #C7C7C6", -"V+ c #C9CACA", -"W+ c #CACBCB", -"X+ c #CACBCA", -"Y+ c #CAC9CA", -"Z+ c #C7C7C8", -"`+ c #BCBBBC", -" @ c #BABABB", -".@ c #B1B2B1", -"+@ c #AEAFAE", -"@@ c #AAAAAB", -"#@ c #A8A8A7", -"$@ c #297029", -"%@ c #287028", -"&@ c #277427", -"*@ c #278627", -"=@ c #007200", -"-@ c #008600", -";@ c #25A825", -">@ c #00E100", -",@ c #00E101", -"'@ c #00DE01", -")@ c #00DC01", -"!@ c #00DA01", -"~@ c #00D801", -"{@ c #00D502", -"]@ c #00D302", -"^@ c #00D102", -"/@ c #00CE02", -"(@ c #00C903", -"_@ c #00C703", -":@ c #00C404", -"<@ c #00C104", -"[@ c #00BF04", -"}@ c #00BC04", -"|@ c #00A206", -"1@ c #009F06", -"2@ c #009C07", -"3@ c #009907", -"4@ c #009807", -"5@ c #008906", -"6@ c #006801", -"7@ c #C0C0C1", -"8@ c #C8C9C8", -"9@ c #CACACA", -"0@ c #CBCBCB", -"a@ c #CCCCCC", -"b@ c #C9CAC9", -"c@ c #C9C8C8", -"d@ c #BFBEBE", -"e@ c #BCBCBC", -"f@ c #BABBBA", -"g@ c #AEAEAD", -"h@ c #B2B2B2", -"i@ c #2A712A", -"j@ c #297D29", -"k@ c #289328", -"l@ c #28AA29", -"m@ c #28BD28", -"n@ c #27CC28", -"o@ c #27CD28", -"p@ c #27CF28", -"q@ c #00AA00", -"r@ c #21DE21", -"s@ c #00E400", -"t@ c #00E201", -"u@ c #00E001", -"v@ c #00DB01", -"w@ c #00D902", -"x@ c #00D702", -"y@ c #00CF02", -"z@ c #00CD03", -"A@ c #00CA03", -"B@ c #00B205", -"C@ c #00A207", -"D@ c #009D07", -"E@ c #009A07", -"F@ c #009808", -"G@ c #009606", -"H@ c #008004", -"I@ c #006300", -"J@ c #0F0F0F", -"K@ c #CBCACB", -"L@ c #CDCECD", -"M@ c #CECDCE", -"N@ c #CDCDCD", -"O@ c #CBCBCC", -"P@ c #BBBBBA", -"Q@ c #908F8F", -"R@ c #807F7F", -"S@ c #B0B1B1", -"T@ c #AEADAD", -"U@ c #ACADAD", -"V@ c #2A722A", -"W@ c #2A9F2A", -"X@ c #29BA2A", -"Y@ c #29C62A", -"Z@ c #28C729", -"`@ c #28CA29", -" # c #27CE28", -".# c #27D027", -"+# c #26D127", -"@# c #0BB00B", -"## c #03E603", -"$# c #00E401", -"%# c #00DF01", -"&# c #00DC02", -"*# c #00D701", -"=# c #00CF03", -"-# c #00CC02", -";# c #00C503", -"># c #00C103", -",# c #00BF03", -"'# c #00B904", -")# c #00B505", -"!# c #00AF06", -"~# c #00AA05", -"{# c #00A507", -"]# c #009D06", -"^# c #009406", -"/# c #007803", -"(# c #060606", -"_# c #C6C7C6", -":# c #CACACB", -"<# c #CFCFCE", -"[# c #C8C7C8", -"}# c #BBBABA", -"|# c #BAB9B9", -"1# c #B5B5B6", -"2# c #818181", -"3# c #8D8D8D", -"4# c #AFAEAF", -"5# c #297529", -"6# c #29BB2A", -"7# c #29C82A", -"8# c #28C929", -"9# c #28CB29", -"0# c #00AD00", -"a# c #00AF00", -"b# c #22B722", -"c# c #00E500", -"d# c #00C203", -"e# c #00BA05", -"f# c #009006", -"g# c #1C1C1C", -"h# c #C4C4C3", -"i# c #C9C9CA", -"j# c #CECECE", -"k# c #CBCCCC", -"l# c #C2C1C1", -"m# c #C0C1C0", -"n# c #BEBEBD", -"o# c #BCBCBB", -"p# c #B7B8B7", -"q# c #9F9F9F", -"r# c #B0B1B0", -"s# c #ADADAE", -"t# c #298E29", -"u# c #28C72A", -"v# c #27CF27", -"w# c #26D326", -"x# c #23E223", -"y# c #00DD01", -"z# c #00CC03", -"A# c #00C504", -"B# c #00B805", -"C# c #00A705", -"D# c #C7C8C8", -"E# c #CACAC9", -"F# c #CBCCCB", -"G# c #BFBEBF", -"H# c #BABABA", -"I# c #9E9F9E", -"J# c #AEAFAF", -"K# c #ACACAB", -"L# c #29B029", -"M# c #28C82A", -"N# c #27CC29", -"O# c #27CE27", -"P# c #26CF26", -"Q# c #26D126", -"R# c #11AE11", -"S# c #01E102", -"T# c #00B705", -"U# c #009207", -"V# c #C5C5C6", -"W# c #CBCACA", -"X# c #C6C5C5", -"Y# c #C2C3C3", -"Z# c #BEBFBE", -"`# c #858685", -" $ c #8A8A8A", -".$ c #A8A7A7", -"+$ c #298229", -"@$ c #28C629", -"#$ c #27CB28", -"$$ c #26CE27", -"%$ c #26CF27", -"&$ c #25CF26", -"*$ c #00A800", -"=$ c #00A700", -"-$ c #23B323", -";$ c #00D802", -">$ c #00D602", -",$ c #00D002", -"'$ c #00B605", -")$ c #00A106", -"!$ c #007A03", -"~$ c #B8B9B8", -"{$ c #B7B7B7", -"]$ c #B5B6B5", -"^$ c #727272", -"/$ c #A0A1A0", -"($ c #28A829", -"_$ c #28C829", -":$ c #27CA29", -"<$ c #27CC27", -"[$ c #26CC27", -"}$ c #26CD27", -"|$ c #26CD26", -"1$ c #25CC26", -"2$ c #00A600", -"3$ c #06A706", -"4$ c #05DB06", -"5$ c #00BE03", -"6$ c #C8C7C7", -"7$ c #C7C8C7", -"8$ c #C5C6C5", -"9$ c #C4C4C5", -"0$ c #B9BAB9", -"a$ c #B6B7B7", -"b$ c #979796", -"c$ c #7B7B7B", -"d$ c #287D28", -"e$ c #28C429", -"f$ c #27C829", -"g$ c #27C928", -"h$ c #27CA28", -"i$ c #26CB27", -"j$ c #26CA26", -"k$ c #25CA27", -"l$ c #00A400", -"m$ c #26AF26", -"n$ c #00AB06", -"o$ c #009E06", -"p$ c #008404", -"q$ c #111111", -"r$ c #B9B9B8", -"s$ c #B1B0B1", -"t$ c #969696", -"u$ c #ABAAAB", -"v$ c #AAA9AA", -"w$ c #A9A8A9", -"x$ c #A5A5A6", -"y$ c #28A329", -"z$ c #28C529", -"A$ c #27C729", -"B$ c #27C728", -"C$ c #26C927", -"D$ c #26C928", -"E$ c #25C926", -"F$ c #25C826", -"G$ c #25C726", -"H$ c #05A205", -"I$ c #03D505", -"J$ c #00C604", -"K$ c #00A307", -"L$ c #006C01", -"M$ c #C1C0C1", -"N$ c #A9A8A8", -"O$ c #287728", -"P$ c #27C028", -"Q$ c #27C529", -"R$ c #27C628", -"S$ c #26C628", -"T$ c #26C727", -"U$ c #25C727", -"V$ c #25C627", -"W$ c #25C526", -"X$ c #009F00", -"Y$ c #009E01", -"Z$ c #25AC25", -"`$ c #00CE03", -" % c #008D05", -".% c #161616", -"+% c #B8B9B9", -"@% c #B7B7B8", -"#% c #ADACAD", -"$% c #7E7E7E", -"%% c #919191", -"&% c #A7A7A8", -"*% c #27A028", -"=% c #27C328", -"-% c #27C428", -";% c #26C428", -">% c #26C527", -",% c #25C426", -"'% c #25C326", -")% c #24C226", -"!% c #009D01", -"~% c #039D03", -"{% c #05D008", -"]% c #00C902", -"^% c #00B604", -"/% c #007703", -"(% c #2F2F2F", -"_% c #BDBDBC", -":% c #BBBCBB", -"<% c #ACACAD", -"[% c #A5A6A5", -"}% c #A2A2A3", -"|% c #A1A2A1", -"1% c #277927", -"2% c #27C228", -"3% c #26C328", -"4% c #26C227", -"5% c #25C227", -"6% c #25C126", -"7% c #25C226", -"8% c #24C026", -"9% c #009B01", -"0% c #25A725", -"a% c #00A805", -"b% c #009C06", -"c% c #009607", -"d% c #006200", -"e% c #C0BFC0", -"f% c #BCBDBC", -"g% c #ABACAC", -"h% c #7D7D7D", -"i% c #919091", -"j% c #276E27", -"k% c #27A428", -"l% c #26C028", -"m% c #26C128", -"n% c #25C028", -"o% c #25C127", -"p% c #25C026", -"q% c #24BF27", -"r% c #24BE26", -"s% c #24BD26", -"t% c #009801", -"u% c #059A06", -"v% c #05CA07", -"w% c #008504", -"x% c #BBBABB", -"y% c #B9BABA", -"z% c #989898", -"A% c #777777", -"B% c #A0A0A1", -"C% c #278227", -"D% c #26BE28", -"E% c #26BF28", -"F% c #25BF28", -"G% c #25BE27", -"H% c #24BB25", -"I% c #009602", -"J% c #009501", -"K% c #22A323", -"L% c #00C304", -"M% c #00A904", -"N% c #00A005", -"O% c #009504", -"P% c #009204", -"Q% c #009104", -"R% c #007102", -"S% c #0D0D0D", -"T% c #BDBEBD", -"U% c #B5B5B4", -"V% c #ABAAAA", -"W% c #A2A1A1", -"X% c #26B027", -"Y% c #26BC28", -"Z% c #25BC27", -"`% c #24BB26", -" & c #24BA26", -".& c #23B926", -"+& c #23B925", -"@& c #009402", -"#& c #0D970E", -"$& c #01C404", -"%& c #00AF04", -"&& c #009803", -"*& c #007701", -"=& c #009407", -"-& c #BCBBBB", -";& c #B9B8B9", -">& c #B4B3B3", -",& c #A7A8A7", -"'& c #8F8F8F", -")& c #A09F9F", -"!& c #9E9E9E", -"~& c #9A9C9B", -"{& c #269127", -"]& c #26BA28", -"^& c #26BB28", -"/& c #25BA27", -"(& c #25B927", -"_& c #24B926", -":& c #23B726", -"<& c #23B625", -"[& c #009102", -"}& c #23BA24", -"|& c #00A304", -"1& c #008F05", -"2& c #008104", -"3& c #BABAB9", -"4& c #B9B8B8", -"5& c #ADADAC", -"6& c #ACABAB", -"7& c #717171", -"8& c #9C9D9D", -"9& c #9D9E9D", -"0& c #9C9D9C", -"a& c #266E26", -"b& c #267426", -"c& c #26B728", -"d& c #25B828", -"e& c #25B827", -"f& c #25B728", -"g& c #24B727", -"h& c #24B626", -"i& c #23B526", -"j& c #23B426", -"k& c #008F02", -"l& c #1D9A1E", -"m& c #00B204", -"n& c #008604", -"o& c #006D01", -"p& c #B6B6B7", -"q& c #B5B4B4", -"r& c #AAAAA9", -"s& c #838383", -"t& c #888889", -"u& c #9C9C9C", -"v& c #266D26", -"w& c #259E27", -"x& c #25B628", -"y& c #24B627", -"z& c #24B527", -"A& c #24B427", -"B& c #23B427", -"C& c #23B326", -"D& c #23B125", -"E& c #008E02", -"F& c #008D02", -"G& c #10BF14", -"H& c #00A903", -"I& c #007401", -"J& c #007E03", -"K& c #009206", -"L& c #B3B2B3", -"M& c #A9A9AA", -"N& c #A6A7A7", -"O& c #A1A0A0", -"P& c #9B9B9B", -"Q& c #9A9A9A", -"R& c #258126", -"S& c #25B427", -"T& c #25B428", -"U& c #24B327", -"V& c #24B326", -"W& c #23B226", -"X& c #23B126", -"Y& c #23B026", -"Z& c #22AF25", -"`& c #269A27", -" * c #009C03", -".* c #007F04", -"+* c #B3B4B3", -"@* c #AFAFB0", -"#* c #A7A6A6", -"$* c #959596", -"%* c #9C9B9C", -"&* c #9A9A9B", -"** c #99999A", -"=* c #256C25", -"-* c #25A927", -";* c #25B228", -">* c #24B127", -",* c #23AF26", -"'* c #23AE26", -")* c #22AE25", -"!* c #22AC25", -"~* c #008902", -"{* c #088C09", -"]* c #01B606", -"^* c #007002", -"/* c #B2B2B3", -"(* c #A5A6A6", -"_* c #868685", -":* c #9A9999", -"<* c #999999", -"[* c #939693", -"}* c #259126", -"|* c #24B028", -"1* c #24AF27", -"2* c #24AE26", -"3* c #23AD26", -"4* c #23AC25", -"5* c #22AA25", -"6* c #008703", -"7* c #008602", -"8* c #23B927", -"9* c #009702", -"0* c #006A01", -"a* c #009106", -"b* c #A4A4A3", -"c* c #A3A2A3", -"d* c #9C9C9D", -"e* c #9C9B9B", -"f* c #999998", -"g* c #979797", -"h* c #979696", -"i* c #257925", -"j* c #24AD28", -"k* c #24AE27", -"l* c #24AD27", -"m* c #23AC26", -"n* c #23AB27", -"o* c #23AB26", -"p* c #22AB25", -"q* c #22A925", -"r* c #22A825", -"s* c #21A725", -"t* c #008503", -"u* c #208321", -"v* c #006400", -"w* c #007E04", -"x* c #101010", -"y* c #AFAEAE", -"z* c #ABABAC", -"A* c #939393", -"B* c #9A9B9B", -"C* c #246C25", -"D* c #24A327", -"E* c #24AA28", -"F* c #23AA27", -"G* c #23A926", -"H* c #22A826", -"I* c #22A726", -"J* c #21A625", -"K* c #004A00", -"L* c #0B650B", -"M* c #009706", -"N* c #006B01", -"O* c #AAABAA", -"P* c #A7A8A8", -"Q* c #848484", -"R* c #9A999A", -"S* c #999898", -"T* c #979897", -"U* c #979697", -"V* c #959495", -"W* c #919392", -"X* c #246B24", -"Y* c #249126", -"Z* c #24A927", -"`* c #23A927", -" = c #23A827", -".= c #23A726", -"+= c #22A525", -"@= c #21A425", -"#= c #219A25", -"$= c #004B00", -"%= c #236023", -"&= c #009107", -"*= c #A4A5A5", -"== c #A1A2A2", -"-= c #9F9FA0", -";= c #767776", -">= c #949594", -",= c #248025", -"'= c #23A627", -")= c #23A727", -"!= c #23A626", -"~= c #22A626", -"{= c #22A426", -"]= c #22A325", -"^= c #219D24", -"/= c #217021", -"(= c #206820", -"_= c #008C05", -":= c #A2A3A2", -"<= c #A2A1A2", -"[= c #A1A1A0", -"}= c #9F9E9E", -"|= c #9E9E9D", -"1= c #9B9B9C", -"2= c #6F6F6F", -"3= c #959595", -"4= c #969695", -"5= c #939493", -"6= c #929292", -"7= c #247023", -"8= c #23A427", -"9= c #23A327", -"0= c #22A326", -"a= c #22A226", -"b= c #21A025", -"c= c #217622", -"d= c #216821", -"e= c #A5A4A4", -"f= c #A09FA0", -"g= c #9D9C9D", -"h= c #797979", -"i= c #939494", -"j= c #919292", -"k= c #236B23", -"l= c #239927", -"m= c #23A227", -"n= c #22A227", -"o= c #22A127", -"p= c #22A026", -"q= c #219F26", -"r= c #217F23", -"s= c #828282", -"t= c #A4A3A4", -"u= c #9FA09F", -"v= c #7E7F7E", -"w= c #949494", -"x= c #929192", -"y= c #909191", -"z= c #236A23", -"A= c #238A25", -"B= c #239F26", -"C= c #229F27", -"D= c #229F26", -"E= c #218524", -"F= c #838382", -"G= c #818282", -"H= c #808180", -"I= c #A8A8A9", -"J= c #9E9D9D", -"K= c #9B9A9B", -"L= c #999A9A", -"M= c #979798", -"N= c #8D8E8D", -"O= c #909090", -"P= c #8E8F8F", -"Q= c #237B24", -"R= c #229E27", -"S= c #229D26", -"T= c #218E25", -"U= c #216921", -"V= c #7F7F7F", -"W= c #006F02", -"X= c #A1A1A2", -"Y= c #A0A1A1", -"Z= c #9B9C9B", -"`= c #989897", -" - c #969796", -".- c #949495", -"+- c #929393", -"@- c #919192", -"#- c #8E8E8F", -"$- c #8E8E8E", -"%- c #227022", -"&- c #229B27", -"*- c #229B26", -"=- c #229225", -"-- c #216B21", -";- c #718071", -">- c #818182", -",- c #A6A5A5", -"'- c #9F9E9F", -")- c #9D9D9E", -"!- c #9A9B9A", -"~- c #989797", -"{- c #919291", -"]- c #909190", -"^- c #226922", -"/- c #229626", -"(- c #229426", -"_- c #216E21", -":- c #838384", -"<- c #818180", -"[- c #7F8080", -"}- c #7E7E7F", -"|- c #A3A3A4", -"1- c #9E9F9F", -"2- c #999A99", -"3- c #989998", -"4- c #969697", -"5- c #969596", -"6- c #949393", -"7- c #7D7E7D", -"8- c #808080", -"9- c #8C8B8B", -"0- c #898A88", -"a- c #228D25", -"b- c #217222", -"c- c #838484", -"d- c #828382", -"e- c #818281", -"f- c #7D7E7E", -"g- c #7D7D7C", -"h- c #9D9D9C", -"i- c #959594", -"j- c #949394", -"k- c #939292", -"l- c #8F9090", -"m- c #8E8F8E", -"n- c #8C8C8C", -"o- c #217422", -"p- c #828283", -"q- c #818081", -"r- c #7C7B7C", -"s- c #202020", -"t- c #969595", -"u- c #959494", -"v- c #8A8B8B", -"w- c #898989", -"x- c #858484", -"y- c #838483", -"z- c #7C7C7C", -"A- c #7B7B7A", -"B- c #7A7A79", -"C- c #9C9C9B", -"D- c #9B9B9A", -"E- c #929392", -"F- c #929191", -"G- c #6E6E6E", -"H- c #888888", -"I- c #858584", -"J- c #828281", -"K- c #7F7E7F", -"L- c #7E7D7E", -"M- c #7D7C7D", -"N- c #9A9A99", -"O- c #979898", -"P- c #949595", -"Q- c #929291", -"R- c #878787", -"S- c #858686", -"T- c #858585", -"U- c #818080", -"V- c #7B7C7C", -"W- c #7A7B7A", -"X- c #989798", -"Y- c #959696", -"Z- c #8F8F90", -"`- c #8A8B8A", -" ; c #868686", -".; c #808081", -"+; c #7F807F", -"@; c #7A7979", -"#; c #787979", -"$; c #767676", -"%; c #9B9C9C", -"&; c #949493", -"*; c #919090", -"=; c #8F908F", -"-; c #8F8F8E", -";; c #8C8C8D", -">; c #898988", -",; c #888787", -"'; c #828182", -"); c #808181", -"!; c #7F7F80", -"~; c #7D7D7E", -"{; c #7D7C7C", -"]; c #797879", -"^; c #777878", -"/; c #767675", -"(; c #0E0E0E", -"_; c #969797", -":; c #90908F", -"<; c #8D8D8E", -"[; c #757576", -"}; c #7F7E7E", -"|; c #7E7E7D", -"1; c #7C7B7B", -"2; c #787877", -"3; c #757574", -"4; c #8E8D8D", -"5; c #8D8C8D", -"6; c #7A7A7B", -"7; c #787978", -"8; c #767576", -"9; c #757475", -"0; c #737474", -"a; c #8C8D8C", -"b; c #898A8A", -"c; c #898889", -"d; c #787879", -"e; c #747473", -"f; c #727373", -"g; c #727171", -"h; c #959695", -"i; c #939293", -"j; c #8C8B8C", -"k; c #8A8989", -"l; c #878788", -"m; c #828383", -"n; c #787777", -"o; c #727172", -"p; c #0B0B0B", -"q; c #929293", -"r; c #898888", -"s; c #878887", -"t; c #878686", -"u; c #717070", -"v; c #80807F", -"w; c #7C7D7D", -"x; c #797A7A", -"y; c #787778", -"z; c #706F70", -"A; c #868586", -"B; c #848485", -"C; c #777677", -"D; c #767575", -"E; c #747475", -"F; c #737473", -"G; c #707070", -"H; c #6F6E6F", -"I; c #8E8D8E", -"J; c #8D8D8C", -"K; c #8C8C8B", -"L; c #888788", -"M; c #79797A", -"N; c #797978", -"O; c #707170", -"P; c #6F706F", -"Q; c #6D6D6D", -"R; c #848483", -"S; c #7F7F7E", -"T; c #747575", -"U; c #737372", -"V; c #717271", -"W; c #6F7070", -"X; c #181818", -"Y; c #8B8B8A", -"Z; c #868786", -"`; c #858586", -" > c #7A797A", -".> c #747374", -"+> c #707171", -"@> c #6F6F70", -"#> c #6E6F6E", -"$> c #8D8C8C", -"%> c #8B8A8A", -"&> c #8A8A89", -"*> c #878786", -"=> c #7E7D7D", -"-> c #7C7C7D", -";> c #7B7B7C", -">> c #7B7A7A", -",> c #757676", -"'> c #717170", -")> c #6E6F6F", -"!> c #888988", -"~> c #737273", -"{> c #727271", -"]> c #70706F", -"^> c #6D6D6E", -"/> c #89898A", -"(> c #878687", -"_> c #848384", -":> c #767677", -"<> c #757474", -"[> c #6F6E6E", -"}> c #6D6E6E", -"|> c #868787", -"1> c #757675", -"2> c #848383", -"3> c #828181", -"4> c #707071", -"5> c #6F6F6E", -"6> c #848585", -"7> c #7B7C7B", -"8> c #313131", -"9> c #807F80", -"0> c #090909", -"a> c #121212", -"b> c #7C7D7C", -"c> c #7C7C7B", -"d> c #7B7A7B", -"e> c #797878", -"f> c #070707", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" . . . ", -" . . . . ", -" . . . . ", -" . . . ", -" . . . ", -" . . . ", -" + . . . ", -" + + + . . . ", -" + + + . . . ", -" + @ + + . . . ", -" + + # + + . . . ", -" + $ # + + + . . . ", -" % & * = = - - - - = ; + + $ > , + + . . . ", -" & - ' ) ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ~ ; + { ] ^ / + + . . . ", -" ( = ~ ! ! ! _ : ! ! ! ! ! < [ } | 1 2 3 4 5 6 ! ! ! ! ! 7 + 8 $ # 9 0 + + + . . ", -" % a b ! ! ! ! ! ! ! c d e f g h i j k l m n o p q r 5 s t u v ! ! w % + + x ] y z A , + + . . . ", -" ( B ! ! ! ! ! ! C D E F G H I J K o L M N j O l P n Q R 4 5 S s T U V ! ! ! a + W X # Y Z ` .+ + .. . . . ", -" a +.! ! ! ! @.#.$.%.@.&.*.=.E -.;.>.,.'.).L M f < O l n !.~.q {.6 ].c ^./.(._.! ! - + :.<.] y z [.}.|...+ + . . . ", -" = 1.! ! ! 2.%.3.3.4.4.5.6.3.#.&.*.D H 7.8.v '.9.0.N j a.l b.c.2 q r d.s c u v e._.f.! ! = + + + + + + + { g.$ # z Z h.i.j.k.+ + . . . ", -" l.! ! ! m.n.3.5.4.o.p.q.p.r.s.t.u.v.C w.x.7.y.R z.A.B.f C.D.E.o 2 3 F.5 6 G.H.v I.J.K.L.! ! & + + + + + + + M.N.O.P.Q.R.S.T.<.] Y Z U.i.V.W.X.+ + + . . ", -" = ! ! ! F Y.Z.#.`.r.q. + +.+ + +++r.@+3.m.D F #+$+%+&+*+A.=+< [ -+n ;+3 q >+6 ].T ,+'+J._.L.)+! w + + + + + + + !+~+{+]+^+/+(+_+:+<+[+}+|+1+<.] y 2+3+i.4+5+6+7+8++ + . . . ", -" ; ! ! 7.x.9+m.$.3.p. +.+0+a+a+b+c+d+e+s.`.@.m.D -.8.f+g+h+'.i+j+O } k+l+p q >+6 m+T U n+(.o+p+q+r+r+s+t+, u+v+w+x+y+z+A+B+C+D+E+(+F+G+H+I+J+K+L+<.$ M+N+[.O+V.P+Q+R+S+T++ + + . . ", -" a ! ! ! #+F Y.@.3.r.U+d+a+V+W+W+X+Y+a+Z+U+4.3.2.=.F 7.$+`+ @c '.^.k l .@o +@&+r @@s #@$@$@%@p+p+&@*@=@-@;@>@,@,@'@)@!@~@{@]@^@/@E+(@_@:@<@[@}@K+L+g.$ # z [.h.4+|@1@2@3@4@5@6@+ + + . . . ", -" % ) ! ! 7@Y.$.t.p.Z+8@9@0@a@a@a@W+b@c@ +p.3.n.Y.F d@$+e@f@L i+z.g@[ h@o 2 q r i@i@i@$@j@k@l@m@n@o@p@q@q@r@s@t@u@'@v@w@x@A+^@y@z@A@_@_+:+[@[+}+L+1+B@# 2+Z h.4+C@Q+D@E@F@4@G@H@I@+ + + . . . ", -" J@! ! m.3.5.q.d+a+K@a@L@M@N@O@9@a+.+p.3.#.m.F H 8.e@P@L 0.Q@R@h@h@S@2 T@U@V@i@W@X@Y@Z@`@`@o@ #.#+#w+@###$#,@%#&#!@*#A+B+=#-#(@_@;#>#,#}@'#L+)#$ !#z ~#h.{#C@Q+]#E@F@4@4@4@^#/#@ + + . . ", -" (#! m.%.4._#d+b@:#a@M@<#N@a@9@a+[#p.4.@.C w.H $+e@}#|#M 1#2#3#b.n 4#&+r d.i@5#6#Y@7#8#9#n@p@.#+#0#a#b#c#t@u@)@!@*#A+B+y@z@A@_@_+d#[@}@e#L+T.B@# Y [.U.i.|@Q+D@3@4@4@4@4@4@f#..+ . . . ", -" g#! ! h#4.p.d+i#W+a@N@j#N@k#X+0+d+p.4.@.l#m#H n#o#}#L p#f +@*+q#r#2 s#r 6 i@i@t#Y@u#`@9#o@ #v#+#w#0#w+x#,@%#y#!@x@A+B+y@z#A@_@A#>#[@[+}+B#T.B@# z ~#C#i.|@Q+2@E@4@F@4@F@F@T++ + . . ", -" = ! ! @+r.D#8@E#0@a@a@F#0@V+d+ +p.@+@.C F G#$+`+H#L M j O I#z.r J#q K#5 s i@$@L#u#M#`@N#o@O#P#Q#Q#q@R#S#'@)@w@x@A+B+=#-#A@_@_+d#[@[+'#T#T.B@# Y Z h.i.C@Q+2@E@4@4@4@4@U#..+ . . ", -" & ! ! V# +d+a+9@W#W+:#V+c+D#_#X#3.Y#D F Z#$+g+}#L p#j O l `# $4#q {.d.s .$$@+$@$M#`@#$n@O#$$%$&$*$=$-$y#v@;$>$]@,$/@z#(+_@_+>#[@}@'#'$T.B@M+z Z h.i.)$Q+2@3@4@4@4@4@!$+ + . . ", -" ) ! `.p.e+.+0+a+a+a+8@.+ +X#6.@.m.w.H 7.f+`+H#~${$]$O l 5 ^$/$q {.@@s c $@$@($Z@_$:$#$<$[$}$|$1$2$3$4$w@*#{@B+,$z@E+(+F+G+<+5$J+'#'$g.$ y 2+Z O+4+P+6+R+3@4@4@4@G@I@+ . . ", -" & ! ! 4.p.U+D#D#6$d+7$q.8$9$#.Z.l#F Z#>.e@g+0$0.a$j+D.l n b$c$K#>+6 m+T v $@d$e$Z@f$g$h$i$i$j$k$l$l$m$*#{@]@^@y@-#A@_@;#G+<+I+J+B#)#<.] Y n$3+O+4+P+o$R+3@4@4@4@p$+ + . . ", -" q$! u.4.X#s.p.++U+p.4.`.3.n.l#w.-.7.$+`+H#r$B.j < l h@s$+@c$t$u$v$w$T x$$@%@y$z$A$B$C$D$C$E$F$G$]+H$I$A+^@y@z@A@(@J$:@>#[@}@e#L+1+<.!#Y ~#h.i.K$5+o$R+4@F@4@4@L$+ . . ", -" % ! ! $.3.3.4.4.6.@+3.#.Z.m.M$-.G#$+e@f@|#0.=+]$O l E.o 2 A.z.N$S #@u v I.p+O$P$Q$R$S$T$T$U$V$W$X$Y$Z$^@,$`$z#(@_@;#G+H+I+J+'#'$g.B@# z 3+C#4+|@1@D@E@4@4@4@ %+ + . . ", -" .%! m.&.@.@.$.#.@.2.m.D w.G Z#>.e@g+H#+%@%f < D.} n o 3 #%$%%%s &%^.n+(.p+p+*%=%-%;%>%>%W$,%'%)%!%~%{%/@z#]%(+F+_+<@[@}@}+B#^%<.$ M+2+[.h.4+P+Q+2@E@4@4@F@/%+ . . ", -" (%! ! D m.*.m.m.Y.*.9+F H Z#8._%:%H#L 0.=+1#O l h@o 2 3 <%A.*+^.H.[%/.}%|%p+1%P$2%3%4%5%5%6%7%8%9%9%0%-#A@(+F+:@:+,#5$J+'#'$)#B@# Y ~#a%O+V.)$6+b%3@F@4@c%d%+ . . . ", -" .%! G F 9+F E 7@e%G #+7.8.f%:%H#|#h {$j k l } n ;+3 q g%6 h%i%T v V _.K.p+j%k%l%l%m%n%o%p%q%r%s%t%u%v%_@F+:@d#<+I+}@e#|+1+<.$ y z [.h.i.|@1@D@R+4@4@4@w%+ + . . ", -" g#! ! H H H H H G#7.$+$+e@g+x%y%h {$j < O l E.r#2 &+r 5 6 z%A%v '+(._.B%q#j%C%D%E%E%F%G%G%r%s%H%I%J%K%;#:@L%<+I+}@}+B#T#g.B@# Y M%N%O%P%Q%o$D@3@4@4@F@R%+ . . ", -" S%! 8.7.8.8.T%$+_%e@:%g+H#L 0.0.j j+U%l k+r#l+~.q r V%S T A%t$V }%W%i+9.j%j%X%Y%Z%Z%Z%Z%`% &.&+&@&#&$&:+H+[@[+J+'#^%g.B@%&&&*&+ + + + + G@R+3@4@F@=&..+ . . ", -" * ! ! e@e@%+e@o#-&P@H#|#;&0.{$f ]$O >&} n o p T@r 5 6 N$,&'&h%(.}%K.)&!&~&j%{&]&^&/&/&(&_&_&:&<&P.[&}&<+5$[+J+'#T#)#<.|&/ + + + + 1&3@4@F@4@2&+ + . . . ", -" ! ! g+}#g+x%f@3&3&L 4&{${$j < O >&h@P o 2 &+5&6&@@s c T _.7&8&o+i+9.9&0&a&b&c&d&e&f&g&g&h&i&j&j&k&l&I+}@J+'#L+1+m&{ @ + + + n&3@4@4@4@o&+ . . ", -" & ! L g L L r$~$0.{${$p&]$q&O l h@.@1 2 3 q g%5 r&c T U ).s&t&K.L.!&0&u&a&v&w&x&x&y&z&A&B&j&C&D&E&F&G&}+'#T#1+H&I&+ + + + J&4@4@F@K&+ + . . ", -" ! ! 0.p#B.M {$a$j j+< a.[ L&h@n o 2 3 q r 5 M&]..$N&v (.t$z.O&q#!&0&P&Q&v&R&S&T&U&V&U&W&X&Y&Z&{ :.`&L+'$)# *I@+ + + X.4@F@4@.*+ . . ", -" ) ! f j j j j 1#< O +*l h@.@c.@*2 3 T@<%h+6 ].#@#*U /.(._.*+$*I#A.%*&***v&=*-*;*>*>*>*Y&,*'*)*!*~*{*]*g.&&@ + + + ^*4@4@4@L$+ . . ", -" - ! ! < < q&O O D.l /*b.n r#o J#3 q r 5 6 s c T (*n+(._.K._*s&A.0&P&:*<*[*=*}*|*1*1*2*'*3*4*!*5*6*7*8*9*..+ + + 0*4@4@a*+ + . . . ", -" ! ! +*>&D.L&-+h@| P n o 2 3 g@#%g%5 v$m+t T ^./.b*c*K.O&t$'.d*e*Q&f*g*h*=*i*j*k*l*m*n*o*p*q*r*s*t*u*..+ + v*4@4@w*+ . . ", -" x*! h@k+k+n n c.r#l+2 y*g@q r z*5 6 ].c T ^.v I.(._.O&)&!&'.A*B***z%g*t$=*C*D*E*F*F*G*H*H*I*J*J*X.K*L*.. + + M*4@N*+ . . ", -" - ! ! s$o o ;+!.J#y*R q U@r 5 O*v$w$P*T ^.v V (.o+K.L.I#!&2#Q*R*S*T*U*V*W*X*Y*Z*`* =.=I*I*+=@=#=$=r+%= + a*&=+ + . . ", -" ! ! 2 2 y*3 3 R q #%r g%d.s s c t ^.U *=I.(.==/$-=)+9&u&'&;=<*z%U*$*>=A*X*,='=)=!=~={={=]=^=/=(=r+q$ + _=.*+ . . ", -" +.! q s#R q F.r >+5 @@6 r&G.t T ^.v '+V :=<=[=i+}=|=0&1=z%2=3=g*4=3=5=6=X*7=8=8=9=0=0=a=b=c=d=(=! ! + n&o&+ . . ", -" = ! r r {.{.>+5 d.M&S s c T #*^.x$e=(.:=_.[=f=)+|=g=u&Q&**h= $t$3=i=A*j=X*k=l=m=n=o=p=q=r=d=d=s=! ! - + H@+ + . . ", -" ! ! 5 @@6 r&s m+G.P*T T ^.(*'+t=(.:=K./$u=9.!&A.%*P&**S*Q*v=$*w=A*x=y='&z=A=B=C=D=D=E=d=d=F=G=H=! x* + !$+ . . ", -" ! ! s s s I=c &%T N&^.U v V b*J._.K.i+q#9.J=u&%*K=L=S*M=N=*+w=A*6=y=O=P=z=Q=R=R=S=T=U=d=s&s=2#V=! ! + W=+ . . ", -" B ! T &%T #*H.u [%x$/.V e.(.:=X=Y=i+q#!&A.8&Z=Q&<*f*`= -.-2=O=+-@-O=#-$-z=%-&-*-=---d=;-s&>-H=V=! ! * + ..+ . . ", -" - ! ! ^.^.(*,-v '+V e.(._.|%K.i+u='-!&)-u&e*!-<*<*~-t$4=V*z.t&{-]-'&$-3#z=^-/-(-_-d=d=:-s=<-[-}-h%! .% + + + . . ", -" ! ! V e=V b*|-(.(.|%_.K.O&f=q#1-A.g=u&P&Q&2-3-g*4-5->=6-7-8-O='&$-3#9-0-^-a-b-d=d=c-d-e-8-V=f-g-! ! + + . . ", -" 1.! |-c*_.}%_.==K.B%/$-=q#I#!&h-0&P&K=Q&<*S*g*t$4=i-j-k-Q*d l-m-3#n-e $^-o-d=d=Q*p-G=q-V=$%h%r-! ! & + + . . ", -" s-! <=<=K.B%K.i+L.q#q#!&J=A.u&P&P&!-**<*z%g*t$t-u-A*6=x=v-7&$-3#n-e $w-^-U=d=x-y-s=<-R@$%h%z-A-B-! ( + + . . ", -" a ! ! i+i+-=u=9.}=!&A.g=8&C-P&D-Q&<*z%g*4-4=3=w=A*E-F-]-m-G-e n-e $w-H-U=d=I-:-s=J-8-K-L-M-c$K h=! ! . . ", -" ! ! 9.1-!&|=!&A.d*u&Z=P&&*N-<*S*O-U*t$$*P-j-A*Q-%%O=Q@$-'.`#e $J H-R-S-T-Q*s&e-U-V=$%g-V-W-h=d ! ! . . ", -" ! ! J=A.A.,.C-%*P&!-!-2-<*3-X-O-t$Y-V*>=5=6=j=%%Z-'&$-3#d V=`-w-H-R- ;T-c-s&>-.;+;}-h%V-c$@;#;A%$;! = . . ", -" .%! %;Z=Z=P&&*&*Q&<*f*f*X-~-U*t$5-w=&;A*+-Q-*;=;-;$-3#;;z-K w->;,; ;T-Q*s&';);!;v=~;{;c$K ];^;$;/;! (; . . ", -" - ! Q&Q&L=L=<*f*z%z%X-g*_;4=3=>=&;&;E-x=y=O=:;-;<;3#n-e 8-[;H-R- ;T-Q*s&s=2#8-};|;z-1;A-h=2;A%[;3;! ! . . ", -" & ! ! <*z%z%`=X-g*g*t$$*3=P-i=A*+-6=F-%%O='&$-4;5;n-e $F=^$R- ;T-Q*s&s=2#8-V=f-g-V-6;h=7;A%8;9;0;! ! ( ", -" ! ! g*g*b$_;t$Y-3=V*w=w=A*6=6=Q-O=O='&P=4;3#a;e e b;c; ;G- ;T-Q*s&s=q-8-V=$%g-r-K @;d;A%$;z.e;f;g;! - ", -" ! ! Y-$*h;3=i-w=&;A*+-i;6=%%i%O=Z-m-$-3#5;j;e $k;H-l;R-G-m;Q*s&';2#8-V=f-M-1;c$K #;n;$;[;*+'.o;7&! J@ ", -" p;! w=w=&;5=A*A*q;6=%%y=O=O=:;'&$-4;3#n-9- $b;w-r;s;t;S-u;v;p-s=2#v;V=$%w;z-c$x;h=y;A%z.*+'.^$7&z;! ! ", -" & ! E-E-q;6=6=Q-%%i%]-O='&#-$-3#3#n-n-e $k;t&H-R- ;A;B;'.z-s=H=8-K-L-g-z-c$B-h=2;C;D;E;F;^$7&G;H;! ! s- ", -" - ! x=F-%%%%O=O=l-'&-;#-I;<;J;n-K;e $k;c;H-L; ; ;T-Q*s&E;M;U-8-V=f-g-z-c$K N;y;A%8;E;F;^$g;O;P;G-Q;! = ", -" ( ! ! l-Z-Q@#-'&$-$-4;3#n-j;e e $J c;H-H-R- ;`#I-R;m;p-$;A%+;S;L-w;V-c$B-#;^;C;$;T;*+U;V;G;W;G-Q;Q;! X; ", -" ! ! P=$-$-$-N=3#J;n-9-e Y; $J w-r;l;R-Z;`;T-Q*s&p-G=2#A%z.};L-z-z-W- >d;d A%8;*+.>f;V;+>@>#>Q;Q;Q;! w ", -" ! ! 3#3#;;$>j;9-e `-%>&>w-r;r;L;*>*> ;T-x-s&F=s=e-U-V=d '.=>->;>>>x;#;y;$;,>9;e;f;o;'>@>)>Q;Q;Q;Q;! ! ", -" ! ! 9-9-e e v- $w-&>!>t&H-,;R-Z;_*T-Q*Q*F=p-s=2#8-+;}-^;^$z-c$K h=#;A%A%z.3;.>~>{>+>]>H;^>Q;Q;Q;Q;! ! ", -" (#! $b;/>w-w-w-!>H-R-(> ; ;`#T-Q*_>s&m;G=2#.;8-V=$%h%d G;c$ >h=d ^;:>8;<>F;'.V;'>W;[>}>Q;Q;Q;Q;Q;Q;! * ", -" ~ ! H-H-t&H-H-l;(>|> ;`;T-I-Q*c-s&d-s=2#);R@V=v=L-M-z-A%2=x;h=2;A%$;1>*+'.~>o;G;W;[>Q;Q;Q;Q;Q;Q;Q;Q;! a ", -" & ! R-*>t;|> ; ;`#T-T-Q*c-2>s&s=>-3>q-8-V=S;$%h%w;V-c$A%2=d d :>$;z.*+'.^$7&4>W;5>Q;Q;Q;Q;Q;Q;Q;Q;Q;! x* ", -" - ! ;A;`#T-I-6>Q*c-s&s&d-s=2#2#8-8-V=S;$%~;h%z-7>K x;^;8>! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! Q;! ! ", -" - ! I-Q*c-c-R;s&s&F=J-e-2#q-8-9>V=S;=>=>w;z-c$A-! ! ! ! ! ! ! X;- = = * & % % a = a 7 ! ! ! ! ! ! ", -" a ! s&s&d-s=s=2#2#<-<-8-8-V=v=$%|;h%{;z-c$! ! ! ! ! 0>- s- - a>! ", -" & ! 2#2#2#);8-8-8-9>V=v=S;f-h%h%z-z-! ! ! ! ! q$- ", -" : ! 8-8-9>+;V=V=};$%|;7-h%->z-! ! ! ! ! & s- ", -" % ! K-K-$%$%$%|;h%z-b>r-c>! ! ! ! B : ", -" & ! h%w;h%M-z-z-c$c$! ! ! ! l.- ", -" * ! ;>1;c$c$c$A-! ! ! ! x*& ", -" = ! d>K K x;! ! ! ! % ", -" - ! N;e>! ! ! w = ", -" ; ! ! ! ! b = ", -" p;! ! f>a ", -" ! f>- ", -" s-: ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" "}; diff --git a/src/Mod/Surfaces/Icons/Makefile.am b/src/Mod/Surfaces/Icons/Makefile.am deleted file mode 100644 index c2f8c716d5..0000000000 --- a/src/Mod/Surfaces/Icons/Makefile.am +++ /dev/null @@ -1,25 +0,0 @@ -datadir = $(prefix)/Mod/Surfaces/Icons - -data_DATA = \ - BorderIco.png \ - BorderIco.xpm \ - ConvertIco.png \ - ConvertTo4SidesIco.xpm \ - Ico.xcf \ - IsoCurveIco.png \ - IsoCurveIco.xpm \ - SliceIco.png \ - SliceIco.xpm \ - BorderIco.xcf \ - ConvertIco.xcf \ - Ico.png \ - Ico.xpm \ - IsoCurveIco.xcf \ - SliceIco.xcf - -CLEANFILES = $(BUILT_SOURCES) - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt - diff --git a/src/Mod/Surfaces/Icons/SliceIco.png b/src/Mod/Surfaces/Icons/SliceIco.png deleted file mode 100644 index c5f29a85c37c6f06c7acc64a7b0eee6762b83b58..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5547 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 J{*wQ7{tInpL!1Br diff --git a/src/Mod/Surfaces/Icons/SliceIco.xpm b/src/Mod/Surfaces/Icons/SliceIco.xpm deleted file mode 100644 index 64a796a3fe..0000000000 --- a/src/Mod/Surfaces/Icons/SliceIco.xpm +++ /dev/null @@ -1,865 +0,0 @@ -/* XPM */ -static char * SliceIco_xpm[] = { -"128 128 734 2", -" c None", -". c #008F00", -"+ c #009100", -"@ c #008700", -"# c #007800", -"$ c #007700", -"% c #009900", -"& c #007B00", -"* c #007500", -"= c #007400", -"- c #007F00", -"; c #008D00", -"> c #008000", -", c #007900", -"' c #009F00", -") c #009000", -"! c #007D00", -"~ c #007600", -"{ c #008100", -"] c #008A00", -"^ c #008E00", -"/ c #009300", -"( c #009E00", -"_ c #00B200", -": c #00D600", -"< c #009400", -"[ c #00A100", -"} c #008800", -"| c #007A00", -"1 c #008300", -"2 c #00A500", -"3 c #00C000", -"4 c #00EA00", -"5 c #00FF00", -"6 c #009D00", -"7 c #007C00", -"8 c #008900", -"9 c #00E700", -"0 c #00FD00", -"a c #00FE00", -"b c #009C00", -"c c #00A700", -"d c #007300", -"e c #00A000", -"f c #00C200", -"g c #00F400", -"h c #00F700", -"i c #00FA00", -"j c #00A300", -"k c #007000", -"l c #00C100", -"m c #00DF00", -"n c #00E900", -"o c #00EF00", -"p c #008200", -"q c #008500", -"r c #007100", -"s c #007E00", -"t c #00AE00", -"u c #00CA00", -"v c #00D400", -"w c #00D700", -"x c #00DE00", -"y c #00E800", -"z c #00F600", -"A c #008C00", -"B c #008600", -"C c #007200", -"D c #008400", -"E c #00A900", -"F c #00BE00", -"G c #00C500", -"H c #00CC00", -"I c #00DA00", -"J c #00ED00", -"K c #009200", -"L c #00AD00", -"M c #00B700", -"N c #00C600", -"O c #00D800", -"P c #009800", -"Q c #00A800", -"R c #00BA00", -"S c #00D100", -"T c #00F200", -"U c #00B500", -"V c #00D500", -"W c #00FC00", -"X c #00EE00", -"Y c #00A200", -"Z c #00C900", -"` c #00EB00", -" . c #00F300", -".. c #00FB00", -"+. c #008B00", -"@. c #00E300", -"#. c #00F100", -"$. c #02FF02", -"%. c #03FF03", -"&. c #05F805", -"*. c #00BF00", -"=. c #05FF05", -"-. c #01FF01", -";. c #000000", -">. c #2DEC2D", -",. c #2DEC2C", -"'. c #2CEB2C", -"). c #2BEA2B", -"!. c #2AE92A", -"~. c #BDBDBD", -"{. c #BCBDBD", -"]. c #BCBCBC", -"^. c #BABBBA", -"/. c #FF0000", -"(. c #2AE82A", -"_. c #29E829", -":. c #C1C2C2", -"<. c #C1C1C1", -"[. c #C0C1C1", -"}. c #C0C0C0", -"|. c #BFC0C0", -"1. c #BFBFBF", -"2. c #BEBDBE", -"3. c #BCBDBC", -"4. c #BBBBBB", -"5. c #BABABA", -"6. c #2CEA2B", -"7. c #C3C3C3", -"8. c #C4C3C3", -"9. c #C3C3C4", -"0. c #C3C4C3", -"a. c #C3C2C3", -"b. c #C2C1C2", -"c. c #C1C1C2", -"d. c #BFC0BF", -"e. c #BEBEBF", -"f. c #BDBDBE", -"g. c #BDBCBC", -"h. c #BCBBBB", -"i. c #BABAB9", -"j. c #B9B9B9", -"k. c #2BEB2B", -"l. c #2BE92B", -"m. c #28E728", -"n. c #C2C2C3", -"o. c #C4C4C4", -"p. c #C5C5C5", -"q. c #C4C5C5", -"r. c #C5C4C4", -"s. c #BEBEBE", -"t. c #BDBEBE", -"u. c #BBBABA", -"v. c #B8B8B8", -"w. c #29E728", -"x. c #C2C2C2", -"y. c #C3C3C2", -"z. c #C5C6C6", -"A. c #C6C6C6", -"B. c #C7C6C6", -"C. c #C6C6C5", -"D. c #C6C5C6", -"E. c #C4C5C4", -"F. c #C3C4C4", -"G. c #C3C2C2", -"H. c #C1C0C0", -"I. c #C0BFBF", -"J. c #BDBCBD", -"K. c #BBBCBB", -"L. c #B8B8B9", -"M. c #B8B8B7", -"N. c #28E829", -"O. c #27E728", -"P. c #C2C2C1", -"Q. c #C2C3C2", -"R. c #C5C5C4", -"S. c #C7C7C7", -"T. c #C8C8C7", -"U. c #C6C6C7", -"V. c #C5C4C5", -"W. c #BFBFBE", -"X. c #BABBBB", -"Y. c #BAB9BA", -"Z. c #B8B7B8", -"`. c #B7B7B6", -" + c #2BEB2C", -".+ c #2AEA2A", -"++ c #27E627", -"@+ c #C1C1C0", -"#+ c #C9C8C9", -"$+ c #C9C9C9", -"%+ c #C9C9C8", -"&+ c #C8C9C9", -"*+ c #C8C8C8", -"=+ c #C7C6C7", -"-+ c #B7B7B7", -";+ c #B6B5B5", -">+ c #2CEA2C", -",+ c #C7C7C6", -"'+ c #C9CACA", -")+ c #CACBCB", -"!+ c #CACBCA", -"~+ c #CAC9CA", -"{+ c #C7C7C8", -"]+ c #BCBBBC", -"^+ c #BABABB", -"/+ c #B9B8B9", -"(+ c #B6B6B6", -"_+ c #B5B4B5", -":+ c #2AE929", -"<+ c #C0C0C1", -"[+ c #C8C9C8", -"}+ c #CACACA", -"|+ c #CBCBCB", -"1+ c #CCCCCC", -"2+ c #C9CAC9", -"3+ c #C9C8C8", -"4+ c #BFBEBE", -"5+ c #B5B5B4", -"6+ c #B4B4B3", -"7+ c #04F204", -"8+ c #CBCACB", -"9+ c #CDCECD", -"0+ c #CECDCE", -"a+ c #CDCDCD", -"b+ c #CBCBCC", -"c+ c #BBBBBA", -"d+ c #B7B6B6", -"e+ c #B5B4B4", -"f+ c #B3B3B3", -"g+ c #B2B2B2", -"h+ c #26E526", -"i+ c #C6C7C6", -"j+ c #CACACB", -"k+ c #CFCFCE", -"l+ c #C8C7C8", -"m+ c #BAB9B9", -"n+ c #B7B8B8", -"o+ c #B6B6B7", -"p+ c #B5B5B5", -"q+ c #B3B3B4", -"r+ c #B2B2B1", -"s+ c #29E929", -"t+ c #C4C4C3", -"u+ c #C9C9CA", -"v+ c #CECECE", -"w+ c #CBCCCC", -"x+ c #C2C1C1", -"y+ c #C0C1C0", -"z+ c #BEBEBD", -"A+ c #BCBCBB", -"B+ c #B7B8B7", -"C+ c #B6B7B6", -"D+ c #B4B5B4", -"E+ c #B0B1B0", -"F+ c #28E729", -"G+ c #C7C8C8", -"H+ c #CACAC9", -"I+ c #CBCCCB", -"J+ c #BFBEBF", -"K+ c #B4B4B4", -"L+ c #B3B4B3", -"M+ c #B0B0B0", -"N+ c #AEAFAF", -"O+ c #C5C5C6", -"P+ c #CBCACA", -"Q+ c #C6C5C5", -"R+ c #C2C3C3", -"S+ c #BEBFBE", -"T+ c #B1B2B1", -"U+ c #AFAEAF", -"V+ c #ADADAD", -"W+ c #2AE829", -"X+ c #25E425", -"Y+ c #B8B9B8", -"Z+ c #B5B6B5", -"`+ c #B1B1B1", -" @ c #AEAFAE", -".@ c #27E526", -"+@ c #26E525", -"@@ c #C8C7C7", -"#@ c #C7C8C7", -"$@ c #C5C6C5", -"%@ c #C4C4C5", -"&@ c #B9BAB9", -"*@ c #B6B7B7", -"=@ c #B0B0AF", -"-@ c #AEAEAE", -";@ c #ADADAC", -">@ c #ABACAB", -",@ c #27E527", -"'@ c #26E425", -")@ c #B9B9B8", -"!@ c #B1B0B1", -"~@ c #AFB0AF", -"{@ c #ADACAC", -"]@ c #ABAAAB", -"^@ c #28E627", -"/@ c #26E527", -"(@ c #C1C0C1", -"_@ c #B2B1B2", -":@ c #AFAFAF", -"<@ c #AEADAE", -"[@ c #ACACAC", -"}@ c #ABAAAA", -"|@ c #AAA9A9", -"1@ c #27E727", -"2@ c #25E325", -"3@ c #B8B9B9", -"4@ c #B7B7B8", -"5@ c #B3B3B2", -"6@ c #ADACAD", -"7@ c #AAAAAB", -"8@ c #A9A9A9", -"9@ c #A7A7A8", -"0@ c #24E324", -"a@ c #084808", -"b@ c #BDBDBC", -"c@ c #B5B5B6", -"d@ c #ACACAD", -"e@ c #ABABAB", -"f@ c #A9AAAA", -"g@ c #A8A8A8", -"h@ c #A7A7A6", -"i@ c #C0BFC0", -"j@ c #AFB0B0", -"k@ c #ABACAC", -"l@ c #AAAAAA", -"m@ c #A8A7A8", -"n@ c #A7A7A7", -"o@ c #A5A5A5", -"p@ c #BBBABB", -"q@ c #B9BABA", -"r@ c #ADAEAE", -"s@ c #A6A6A6", -"t@ c #A4A4A5", -"u@ c #BDBEBD", -"v@ c #B1B2B2", -"w@ c #B0AFB0", -"x@ c #AEAEAF", -"y@ c #A6A7A6", -"z@ c #A5A6A5", -"A@ c #A4A4A4", -"B@ c #25E526", -"C@ c #25E424", -"D@ c #23E224", -"E@ c #23E223", -"F@ c #B4B3B3", -"G@ c #AFAFAE", -"H@ c #AEADAD", -"I@ c #A9A8A8", -"J@ c #A7A8A7", -"K@ c #A4A5A5", -"L@ c #A3A3A3", -"M@ c #A2A2A3", -"N@ c #25E324", -"O@ c #04E804", -"P@ c #B9B8B8", -"Q@ c #B2B1B1", -"R@ c #ACABAB", -"S@ c #A5A4A4", -"T@ c #A2A3A3", -"U@ c #A2A2A1", -"V@ c #B9B9BA", -"W@ c #B1B0B0", -"X@ c #AAAAA9", -"Y@ c #A6A6A5", -"Z@ c #A5A5A4", -"`@ c #A1A1A1", -" # c #9FA0A0", -".# c #25E525", -"+# c #24E424", -"@# c #23E324", -"## c #23E122", -"$# c #B3B2B3", -"%# c #A9A9AA", -"&# c #A9A9A8", -"*# c #A8A7A7", -"=# c #A6A7A7", -"-# c #A2A2A2", -";# c #A1A0A0", -"># c #9F9F9F", -",# c #22E122", -"'# c #B1B1B0", -")# c #AFAFB0", -"!# c #ABABAA", -"~# c #A8A8A7", -"{# c #A7A6A6", -"]# c #A4A5A4", -"^# c #9F9FA0", -"/# c #9E9F9E", -"(# c #9D9D9D", -"_# c #23E123", -":# c #B2B2B3", -"<# c #A5A6A6", -"[# c #A5A4A5", -"}# c #A0A09F", -"|# c #9F9E9F", -"1# c #9C9D9C", -"2# c #24E325", -"3# c #24E223", -"4# c #23E222", -"5# c #B2B3B3", -"6# c #B1B1B2", -"7# c #AEAEAD", -"8# c #AAA9AA", -"9# c #A8A9A9", -"0# c #A4A4A3", -"a# c #A3A2A3", -"b# c #9D9E9E", -"c# c #9C9C9D", -"d# c #9C9B9B", -"e# c #21E021", -"f# c #AFAEAE", -"g# c #ABABAC", -"h# c #A3A4A4", -"i# c #A09F9F", -"j# c #9E9E9E", -"k# c #9C9C9C", -"l# c #9A9B9B", -"m# c #99999A", -"n# c #23E323", -"o# c #21E022", -"p# c #ADAEAD", -"q# c #ACADAD", -"r# c #AAABAA", -"s# c #A9A8A9", -"t# c #A7A8A8", -"u# c #9C9D9D", -"v# c #9B9B9B", -"w# c #9A999A", -"x# c #999898", -"y# c #24E224", -"z# c #AAABAB", -"A# c #A1A2A2", -"B# c #A0A1A0", -"C# c #9E9E9F", -"D# c #9D9E9D", -"E# c #9B9C9B", -"F# c #9A9B9A", -"G# c #999999", -"H# c #989898", -"I# c #22E222", -"J# c #22E021", -"K# c #20E020", -"L# c #ADADAE", -"M# c #ACADAC", -"N# c #A8A9A8", -"O# c #A2A3A2", -"P# c #A2A1A2", -"Q# c #A1A1A0", -"R# c #A0A0A0", -"S# c #9F9E9E", -"T# c #9E9E9D", -"U# c #9B9B9C", -"V# c #9A9A9A", -"W# c #979797", -"X# c #24E323", -"Y# c #20DF20", -"Z# c #ACABAC", -"`# c #A5A5A6", -" $ c #A09FA0", -".$ c #9D9C9D", -"+$ c #969696", -"@$ c #959595", -"#$ c #21DF21", -"$$ c #A4A3A4", -"%$ c #9FA09F", -"&$ c #9F9F9E", -"*$ c #9C9B9C", -"=$ c #969796", -"-$ c #959596", -";$ c #949494", -">$ c #A8A8A9", -",$ c #A3A3A2", -"'$ c #9E9D9D", -")$ c #9B9A9B", -"!$ c #999A9A", -"~$ c #979798", -"{$ c #939393", -"]$ c #1FDE1F", -"^$ c #A4A3A3", -"/$ c #A1A1A2", -"($ c #A0A1A1", -"_$ c #999998", -":$ c #989897", -"<$ c #929393", -"[$ c #22E022", -"}$ c #A6A5A5", -"|$ c #A1A2A1", -"1$ c #9D9D9E", -"2$ c #989797", -"3$ c #969695", -"4$ c #959495", -"5$ c #929293", -"6$ c #919291", -"7$ c #909190", -"8$ c #20DF21", -"9$ c #1FDF20", -"0$ c #A3A3A4", -"a$ c #9E9F9F", -"b$ c #999A99", -"c$ c #989998", -"d$ c #969697", -"e$ c #969596", -"f$ c #949594", -"g$ c #949393", -"h$ c #929392", -"i$ c #919191", -"j$ c #909090", -"k$ c #8F8F8F", -"l$ c #20E021", -"m$ c #A0A0A1", -"n$ c #9D9D9C", -"o$ c #959594", -"p$ c #949394", -"q$ c #939292", -"r$ c #8F9090", -"s$ c #8E8F8E", -"t$ c #21E121", -"u$ c #1FDD1F", -"v$ c #969595", -"w$ c #959494", -"x$ c #929292", -"y$ c #929192", -"z$ c #909191", -"A$ c #8F8F90", -"B$ c #8E8E8E", -"C$ c #8D8D8D", -"D$ c #20DE1F", -"E$ c #1EDD1E", -"F$ c #9C9C9B", -"G$ c #9B9B9A", -"H$ c #929191", -"I$ c #8F908F", -"J$ c #8E8E8F", -"K$ c #8C8C8C", -"L$ c #9A9A9B", -"M$ c #9A9A99", -"N$ c #979898", -"O$ c #979697", -"P$ c #949595", -"Q$ c #929291", -"R$ c #908F8F", -"S$ c #8E8E8D", -"T$ c #8C8D8C", -"U$ c #8B8B8B", -"V$ c #8A8A8A", -"W$ c #1EDE1F", -"X$ c #059A05", -"Y$ c #9D9C9C", -"Z$ c #989798", -"`$ c #959696", -" % c #939493", -".% c #919292", -"+% c #8A8B8A", -"@% c #898989", -"#% c #1FDF1F", -"$% c #1DDC1D", -"%% c #9B9C9C", -"&% c #949493", -"*% c #919090", -"=% c #8F8F8E", -"-% c #8C8C8D", -";% c #898988", -">% c #1FDE20", -",% c #1DDD1E", -"'% c #969797", -")% c #90908F", -"!% c #8D8D8E", -"~% c #89898A", -"{% c #888888", -"]% c #878787", -"^% c #1FDD1E", -"/% c #1EDD1D", -"(% c #017501", -"_% c #939494", -":% c #8E8D8D", -"<% c #8D8C8D", -"[% c #868686", -"}% c #1CDC1D", -"|% c #004C00", -"1% c #979796", -"2% c #8E8F8F", -"3% c #898A8A", -"4% c #898889", -"5% c #858585", -"6% c #1DDC1C", -"7% c #1CDB1C", -"8% c #959695", -"9% c #939293", -"0% c #919091", -"a% c #8C8B8C", -"b% c #8A8989", -"c% c #878788", -"d% c #848585", -"e% c #848484", -"f% c #838383", -"g% c #1EDC1D", -"h% c #8C8B8B", -"i% c #898888", -"j% c #878887", -"k% c #878686", -"l% c #858686", -"m% c #858484", -"n% c #848483", -"o% c #828283", -"p% c #828282", -"q% c #1EDC1E", -"r% c #1CDA1C", -"s% c #888889", -"t% c #868586", -"u% c #848485", -"v% c #838282", -"w% c #808180", -"x% c #1CDC1C", -"y% c #1BDA1B", -"z% c #020A02", -"A% c #8E8D8E", -"B% c #8D8D8C", -"C% c #8C8C8B", -"D% c #888788", -"E% c #818182", -"F% c #818080", -"G% c #808080", -"H% c #1BDB1B", -"I% c #1B901B", -"J% c #000600", -"K% c #898A89", -"L% c #858685", -"M% c #858584", -"N% c #828383", -"O% c #818281", -"P% c #7F807F", -"Q% c #7F7F7E", -"R% c #1BDB1C", -"S% c #8D8E8D", -"T% c #8B8B8A", -"U% c #868786", -"V% c #858586", -"W% c #818282", -"X% c #818181", -"Y% c #7F7F7F", -"Z% c #7F7E7E", -"`% c #7E7D7E", -" & c #1DDB1D", -".& c #1BDA1C", -"+& c #8D8C8C", -"@& c #8B8A8A", -"#& c #8A8A89", -"$& c #878786", -"%& c #838382", -"&& c #7E7E7E", -"*& c #7E7D7D", -"=& c #7C7C7D", -"-& c #8A8B8B", -";& c #888988", -">& c #888787", -",& c #868685", -"'& c #7E7E7F", -")& c #7D7E7E", -"!& c #7D7D7D", -"~& c #7C7C7C", -"{& c #7B7B7B", -"]& c #1CDB1B", -"^& c #878687", -"/& c #848384", -"(& c #808081", -"_& c #7D7D7C", -":& c #7C7C7B", -"<& c #7A797A", -"[& c #257225", -"}& c #868787", -"|& c #838484", -"1& c #828382", -"2& c #808181", -"3& c #807F7F", -"4& c #7E7F7E", -"5& c #7D7C7D", -"6& c #7A7B7B", -"7& c #797A7A", -"8& c #797979", -"9& c #848383", -"0& c #828181", -"a& c #818081", -"b& c #7C7D7D", -"c& c #7B7C7C", -"d& c #7A7A7A", -"e& c #79797A", -"f& c #787878", -"g& c #7D7D7E", -"h& c #7B7C7B", -"i& c #787979", -"j& c #828281", -"k& c #807F80", -"l& c #7B7B7A", -"m& c #04FD04", -"n& c #818180", -"o& c #7E7E7D", -"p& c #7D7C7C", -"q& c #7D7E7D", -"r& c #7F7E7F", -"s& c #7C7D7C", -"t& c #7C7B7C", -"u& c #7B7B7C", -"v& c #7C7B7B", -"w& c #7B7A7B", -"x& c #797978", -"y& c #797878", -"z& c #021902", -"A& c #00BD00", -"B& c #00CF00", -"C& c #009700", -"D& c #00D000", -"E& c #00DC00", -"F& c #00E500", -"G& c #00F500", -"H& c #00A400", -"I& c #00B400", -"J& c #00E400", -"K& c #00F900", -"L& c #00B100", -"M& c #00C400", -"N& c #009600", -"O& c #00E600", -"P& c #00B000", -"Q& c #00B800", -"R& c #00C300", -"S& c #00B300", -"T& c #009500", -"U& c #00E100", -"V& c #00BB00", -"W& c #00F800", -"X& c #009B00", -"Y& c #009A00", -" ", -" ", -" ", -" ", -" ", -" . + @ # $ # ", -" % . & * = = $ - ; > , ", -" ' ) ! ~ ~ $ & { ] ^ / ( _ : < ~ ", -" [ } , # # # | ! - 1 + 2 3 4 5 5 5 5 5 6 * ", -" [ } # , , , , # # 7 8 [ 3 9 0 a a a 5 5 5 5 5 5 b * ", -" c ^ 7 | & 7 & $ = d $ @ e f 4 g g h i a 5 5 5 5 5 5 5 5 5 5 b * ", -" j } , ! - - , = k k $ @ e l m 9 n o h 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" 1 7 p q 1 , r k d s / t u v w x y z 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" 8 A B | C r ~ D < E F G H I J 0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" K K 1 ~ d C $ { . e L M N O J 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" P . ! * = = # > A P ' Q R S T 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" ( A , ~ ~ , 7 { } A + ' U V W 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" e B # # # , & ! s D < E G n a 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" ; , , # $ ! A 2 N X 0 0 0 a 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" A 7 Y Z ` T .z ..5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.+.@...5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.. g 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 $.%.&.*.*.*.*.*.*.*.*.*.*.*.=.-.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 $.;.;.;.;.;.;.;.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 -.;.;.;.;.;.;.;.;.;.;.;.;.*.>.,.'.'.'.).).).!.!.*.*.*.*.*.*.$.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 ;.;.;.;.;.;.;.;.;.;.~.{.].^././././.>.'.'.'.'.).).).!.!.(._._.*.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 ;.;.;.;.;.;.;.;.:.<.[.}.|.1.2.3.4.5././././.>.'.'.'.6.).).!.!.!._._._.*.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ ;.;.;.;.;.;.7.8.9.0.7.a.b.c.[.d.e.f.g.h.i.j./././.>.'.'.k.).).l.!.!.!._._.m.m.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" ;.;.;.;.;.n.0.o.o.p.p.q.r.o.8.a.b.<.1.s.t.].u.i.v./././.'.'.'.).).).!.!.!._._.w.m.m.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" ;.;.;.;.x.y.o.q.p.z.A.B.A.C.D.E.F.G.:.H.I.s.J.K.5.L.M./././.'.'.).).).!.!.!._._.N.m.m.O.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" ;.;.;.;.}.P.Q.8.R.C.B.S.S.T.S.S.U.C.V.o.x.<.}.W.~.g.X.Y.Z.`./././.'. +).)..+!.!._._._.m.m.O.++*.*.%.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" ;.;.;.s.I.@+x.9.o.A.S.T.#+$+$+%+&+*+=+D.R.7.x.<.d.t.{.4.i.j.-+;+/././.>+).)..+!.!._._._.m.m.m.++*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" ;.;.;.;.W.}.P.7.o.C.,+*+$+'+)+)+!+~+$+{+,+p.o.n.c.}.s.~.]+^+/+Z.(+_+/././.).).).!.!.:+_._.m.m.m.++++*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" ;.;.;.;.<+P.9.E.A.{+[+}+|+1+1+1+)+2+3+S.A.o.y.P.}.4+~.].^.j.v.(+5+6+/././.).).!.!.(._._.m.m.m.++++++*.*.7+5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" ;.;.;.x.o.q.B.*+$+8+1+9+0+a+b+}+$+T.A.o.8.x.}.1.t.].c+j.v.d+e+f+g+/././.).!.!.!._._.m.m.m.++++++h+*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" ;.;.x.0.p.i+*+2+j+1+0+k+a+1+}+$+l+A.p.7.:.H.1.~.].u.m+n+o+p+q+r+/././.).!.!.s+_._.w.m.m.++++++h+*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" ;.;.;.t+p.A.*+u+)+1+a+v+a+w+!+#+*+A.p.7.x+y+1.z+A+u.j.B+C+D+q+g+E+/././.!.!.!._._.F+m.m.++++++h+h+*.*.&.5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" ;.;.;.V.C.G+[+H+|+1+1+I+|+'+*+S.A.V.7.:.}.J+~.]+5.j.n+(+K+L+g+M+N+/././.!.(._._.m.m.m.++++++h+h+h+*.*.5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.;.;.;.O+S.*+$+}+P+)+j+'+&+G+i+Q+o.R+<.}.S+~.4.u.j.B+(+K+f+T+M+U+V+/./.!.W+_._.m.m.m.++++++h+h+X+*.*.*.5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ ;.;.R.A.=+T.#+$+$+$+[+T.S.Q+r.7.x.H.1.s.{.]+5.Y+-+Z+K+f+`+M+ @V+/././.!._._.m.m.m.++++.@h+h++@X+*.*.5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ ;.;.;.p.A.,+G+G+@@*+#@B.$@%@8.Q.x+}.S+f.].4.&@v.*@;+q+f+`+=@-@;@>@/././._._.m.m.m.++++,@h+h+'@X+*.*.*.5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.;.;.F.p.Q+D.A.U.,+A.p.R.o.y.x+H.d.s.~.]+5.)@M.(+p+f+g+!@~@-@{@]@/././._._.m.m.^@++++/@h+h+X+X+X+*.*.5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.;.;.;.9.o.o.p.p.r.V.o.8.Q.x.(@d.J+~.].^.m+v.`.Z+K+f+_@M+:@<@[@}@|@/././.N.m.m.1@++++h+h+h+X+X+2@*.*.*.5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 ;.;.x.a.7.7.9.8.7.n.x.<.H.|.S+f.].4.5.3@4@C+p+q+5@`+M+-@6@[@7@8@9@/./.m.m.m.++++++h+h+h+X+X+2@0@*.*.5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 a@;.;.<.x.b.x.x.P.b.@+}.1.S+t.b@K.5.j.v.`.c@K+f+g+M+:@-@d@e@f@g@h@/././.m.m.++++++h+h+X+X+X+X+0@*.*.*.5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 ;.;.|.}.@+}.[.<+i@|.W.s.t.3.K.5.m+L.-+(+_+f+5@`+j@-@V+k@l@8@m@n@o@/./.m.m.++++/@h+h+X+X+X+0@0@0@*.*.5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 ;.;.;.1.1.1.1.1.J+s.~.~.].4.p@q@L.-+(+p+K+f+_@E+:@r@[@e@l@g@n@s@t@/././.++++++h+h+h+X+X+X+0@0@0@*.*.*.5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 ;.;.t.s.t.t.u@~.b@].K.4.5.j.v.v.(+;+5+f+v@E+w@x@V+[@}@|@g@y@z@A@/././.++++++h+h+B@X+X+C@0@0@D@E@*.*.5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 ;.;.;.].].g.].A+h.c+5.m+/+v.-+C+Z+K+F@5@`+M+G@H@[@e@l@I@J@s@K@L@M@/./.++++,@h+h++@X+X+N@0@0@E@E@*.*.O@5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 ;.;.4.u.4.p@^.i.i.j.P@-+-+(+p+K+F@g+Q@M+:@r@;@R@7@8@g@n@o@S@T@U@/././.++h+h+h+X+X+X+0@0@0@E@E@E@*.*.5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 ;.;.j.V@j.j.)@Y+v.-+-+o+Z+e+K+f+g+T+W@:@-@V+k@e@X@g@n@Y@Z@L@M@`@ #/./.++h+h+.#X+X++#0@0@@#E@E@##*.*.-.5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 O@;.;.v.B+M.n+-+*@(+;+p+D+6+$#g+`+M+:@-@V+[@e@%#&#*#=#o@L@-#U@;#>#/./.h+h+h+X+X+X+0@0@0@E@E@E@,#*.*.*.5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 ;.;.C+(+(+(+(+c@p+K+L+f+g+T+'#)#:@-@H@d@!#l@&#~#{#Y@]#L@-#`@^#/#(#/./.h+h+X+X+X+0@0@0@E@E@_#,#,#*.*.5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 ;.;.;.p+p+e+K+K+q+f+:#r+`+E+M+N+-@V+[@e@l@8@g@n@<#[#L@-#`@}#|#(#1#/./.h+X+X+X+2#0@0@3#E@E@4#,#,#*.*.&.5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 $.;.;.L+F@q+$#5#g+6#Q@`+M+:@-@7#6@k@e@8#9#m@n@s@]#0#a#`@;#>#b#c#d#/./.X+X+X+N@0@0@0@E@E@E@,#,#,#e#*.*.5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 ;.;.g+v@v@`+`+'#E+w@:@f#7#V+[@g#e@l@&#g@n@s@o@h#L@-#;#i#j#(#k#l#m#/./.X+X+2#0@0@n#E@E@,#,#,#o#e#*.*.-.5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 ;.;.;.!@M+M+j@~@N+f#p#V+q#[@e@r#8#s#t#n@s@o@A@L@U@`@ #/#j#u#v#w#x#/./.X+2#0@0@y#E@E@E@,#,#,#e#e#*.*.*.5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 $.;.;.:@:@f#-@-@p#V+6@[@k@z#8@8@g@m@s@Y@K@h#L@A#B#^#C#D#k#E#F#G#H#/./.X+0@0@0@E@E@E@I#,#,#J#e#e#K#*.*.5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 ;.;.V+L#p#V+M#[@>@e@7@l@X@N#m@n@s@o@t@A@O#P#Q#R#S#T#1#U#V#G#H#W#/././.0@0@X#E@E@E@,#,#,#e#e#e#Y#*.*.$.5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 ;.;.[@[@Z#Z#>@e@z#%#|@8@g@n@{#s@`#S@L@O#-#Q# $C#T#.$k#V#m#x#W#+$@$/./.0@0@E@E@E@,#,#,#o#e#e##$Y#*.*.*.5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 &.;.;.e@7@l@X@8@9#N#t#n@n@s@<#t@$$L@O#`@B#%$&$j#(#*$v#m#x#H#=$-$;$/./.0@E@E@E@_#,#,#,#e#e#e#Y#Y#Y#*.*.5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 ;.;.8@8@8@>$g@9@n@=#s@Y@o@A@0#,$-#`@R#>#&$'$k#*$)$!$x#~$=$@$;${$/./.0@E@E@E@,#,#,#o#e#e#Y#Y#Y#]$*.*.-.5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 ;.;.n@9@n@{#h@y@z@`#]#A@^$L@O#/$($R#>#j#(#u#E#V#G#_$:$=$-$;${$<$/././.E@E@,#,#,#[$e#e#e#Y#Y#Y#]$*.*.*.5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 ;.;.;.s@s@<#}$o@t@A@^$L@-#|$`@R#%$|#j#1$k#d#F#G#G#2$+$3$4${$5$6$7$/./.E@_#,#,#,#e#e#e#8$Y#Y#9$]$]$*.*.5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 %.;.;.A@S@A@0#0$L@L@|$-#`@;# $>#a$(#.$k#v#V#b$c$W#d$e$f$g$h$i$j$k$/./.##,#,#,#e#e#e#l$Y#Y#Y#]$]$]$*.*.-.b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 ;.;.0$a#-#M@-#A#`@m$B#^#>#/#j#n$1#v#)$V#G#x#W#+$3$o$p$q$i$i$r$s$/./.,#,#,#t$e#e#e#Y#Y#Y#]$]$]$u$*.*.*.b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 ;.;.P#P#`@m$`@R# #>#>#j#'$(#k#v#v#F#m#G#H#W#+$v$w${$x$y$z$A$B$C$/./.,#,#[$e#e#e#K#Y#Y#D$]$]$]$E$E$*.*.b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 ;.;.;.R#R#^#%$&$S#j#(#.$u#F$v#G$V#G#H#W#d$3$@$;${$h$H$7$I$J$C$K$/././.,#e#e#e#8$Y#Y#Y#]$]$]$E$E$E$*.*.b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 %.;.;.&$a$j#T#j#(#c#k#E#v#L$M$G#x#N$O$+$-$P$p${$Q$i$j$R$B$S$T$U$V$/./.e#e#e#e#Y#Y#Y#]$]$]$W$E$E$E$*.*.X$* ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 ;.;.'$(#(#Y$F$*$v#F#F#b$G#c$Z$N$+$`$4$f$ %x$.%i$A$k$B$C$K$U$+%@%/./.e#e#l$Y#Y#Y##%]$]$W$E$E$E$$%$%*.= * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 ;.;.%%E#E#v#L$L$V#G#_$_$Z$2$O$+$e$;$&%{$<$Q$*%I$=%B$C$-%U$V$@%;%/./.e#e#Y#Y#Y#>%]$]$]$E$E$E$,%$%$%*.= * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 ;.;.V#V#!$!$G#_$H#H#Z$W#'%3$@$f$&%&%h$y$z$j$)%=%!%C$K$U$V$~%{%]%/./.e#Y#Y#Y#Y#]$]$]$^%E$E$/%$%$%$%*.= (% ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 ;.;.;.G#H#H#:$Z$W#W#+$-$@$P$_%{$<$x$H$i$j$k$B$:%<%K$U$V$;%{%]%[%/./.Y#Y#Y#Y#]$]$]$W$E$E$E$$%$%$%}%*.= |% ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 $.;.;.W#W#1%'%+$`$@$4$;$;${$x$x$Q$j$j$k$2%:%C$T$U$U$3%4%{%]%[%5%/./.Y#Y#Y#]$]$]$u$E$E$E$$%$%$%6%7%7%= |% ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.`$-$8%@$o$;$&%{$<$9%x$i$0%j$A$s$B$C$<%a%U$V$b%{%c%]%[%d%e%f%/./.Y#]$]$]$^%E$E$E$g%$%$%$%7%7%7%= |% ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.;$;$&% %{${$5$x$i$z$j$j$)%k$B$:%C$K$h%V$3%@%i%j%k%l%m%n%o%p%/./.]$]$]$]$E$E$E$q%$%$%$%7%7%7%r%= |% ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.h$h$5$x$x$Q$i$0%7$j$k$J$B$C$C$K$K$U$V$b%s%{%]%[%t%u%e%v%p%w%/./.]$]$]$E$E$E$/%$%$%$%x%7%7%7%y%= |%z% ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.y$H$i$i$j$j$r$k$=%J$A%!%B%K$C%U$V$b%4%{%D%[%[%5%e%f%o%E%F%G%/./.]$]$E$E$E$q%$%$%$%x%7%7%7%H%y%I%|%J% ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.;.r$A$R$J$k$B$B$:%C$K$a%U$U$V$K%4%{%{%]%[%L%M%n%N%o%O%w%P%Q%/./.W$E$E$E$,%$%$%$%$%7%7%7%R%y%y%I%|%J% ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 $.;.;.2%B$B$B$S%C$B%K$h%U$T%V$K%@%i%c%]%U%V%5%e%f%o%W%X%G%Y%Z%`%/./.E$E$E$E$$%$%$% &7%7%7%.&y%y%y%I%|%J% ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.C$C$-%+&a%h%U$+%@&#&@%i%i%D%$&$&[%5%m%f%%&p%O%F%Y%Y%&&*&=&/./.E$E$q%$%$%$%6%7%7%7%.&y%y%y%y%I%|%J% ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.h%h%U$U$-&V$@%#&;&s%{%>&]%U%,&5%e%e%%&o%p%X%G%P%'&)&!&~&{&/./.E$$%$%$%$% &7%7%7%]&y%y%y%y%y%I%|%J% ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.V$3%~%@%@%@%;&{%]%^&[%[%L%5%e%/&f%N%W%X%(&G%Y%&&!&_&:&{&<&/./.,%$%$%$%x%7%7%7%R%y%y%y%y%y%y%I%[&J%;. ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.{%{%s%{%{%c%^&}&[%V%5%M%e%|&f%1&p%X%2&3&Y%4&`%5&~&{&6&7&8&/./.$%$%$%7%7%7%7%R%y%y%y%y%y%y%y%I%[&J%;. ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.]%$&k%}&[%[%L%5%5%e%|&9&f%p%E%0&a&G%Y%Q%&&!&b&c&{&d&e&f&f&/./.$%$%7%7%7%7%R%y%y%y%y%y%y%y%y%I%[&J%;. ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.[%t%L%5%M%d%e%|&f%f%1&p%X%X%G%G%Y%Q%&&g&!&~&h&d&7&i&;.;.;.;.;.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.= [&J%;. ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.M%e%|&|&n%f%f%%&j&O%X%a&G%k&Y%Q%*&*&b&~&{&l&;.;.;.;.;.;.;.;.;.*.*.*.*.*.7+m&O@*.*.*.*.*.*.*.= |%J%;. ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.f%f%1&p%p%X%X%n&n&G%G%Y%4&&&o&!&p&~&{&;.;.;.;.;.;.;.;.$.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 -.X$|%J%;. ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.X%X%X%2&G%G%G%k&Y%4&Q%)&!&!&~&~&;.;.;.;.;.;.;.$.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.G%G%k&P%Y%Y%Z%&&o&q&!&=&~&;.;.;.;.;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.r&r&&&&&&&o&!&~&s&t&:&;.;.;.;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.!&b&!&5&~&~&{&{&;.;.;.;.;.;.-.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.u&v&{&{&{&l&;.;.;.;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.w&d&d&7&;.;.;.;.;.%.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.x&y&;.;.;.;.;.-.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.;.;.;.;.;.-.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 z&;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.) h 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" A D A&B&x T a 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" ; ~ r ! C&U D&O E&9 z 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" | > s # d k d > 6 f F&n J G&0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" H&} , | & & # * d 7 ) I&J&z h K&0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" e D # , , , , # s + L&E&5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" c K & # # , 7 > 1 A Y M&o 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" N&s $ * $ & 1 A K 6 U w 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" P ; & = = $ { . ' j t M&O&0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" . ) > * C r # @ 6 P&Q&R&I g 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" } } s d k d s P S&Z D&x .5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" +.& > D { ~ r r s T&M v E&U&` i 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", -" 6 7 & - s # C k $ } 2 H 4 ` o z 0 5 5 5 5 5 5 5 5 5 5 b * ", -" H&@ # & & | $ * = - T&V&O&h W&i W 5 5 5 5 5 5 b * ", -" X&s , , , , , | 7 } j Z G&5 5 5 5 5 b * ", -" H&) & $ $ $ & > 1 8 Y&R F&5 ( * ", -" 6 } $ ~ * # p +.C&p , ", -" C&+ 7 = d ~ , ", -" ; ^ 1 ", -" ", -" ", -" ", -" ", -" ", -" ", -" ", -" "}; diff --git a/src/Mod/Surfaces/InitGui.py b/src/Mod/Surfaces/InitGui.py deleted file mode 100644 index 1a614efaf7..0000000000 --- a/src/Mod/Surfaces/InitGui.py +++ /dev/null @@ -1,38 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -class SurfWorkbench ( Workbench ): - """ @brief Workbench of Ship design module. Here toolbars & icons are append. """ - from surfUtils import Paths, Translator - import SurfGui - - Icon = Paths.iconsPath() + "/Ico.png" - MenuText = str(Translator.translate("Surface tools")) - ToolTip = str(Translator.translate("Surface tools")) - - def Initialize(self): - # ToolBar - list = ["Surf_IsoCurve", "Surf_SliceCurve", "Surf_Border", "Surf_Convert"] - self.appendToolbar("Surface tools",list) - - # Menu - list = ["Surf_IsoCurve", "Surf_SliceCurve", "Surf_Border", "Surf_Convert"] - self.appendMenu("Surface tools",list) -Gui.addWorkbench(SurfWorkbench()) diff --git a/src/Mod/Surfaces/SurfGui.py b/src/Mod/Surfaces/SurfGui.py deleted file mode 100644 index 9f1832bdd8..0000000000 --- a/src/Mod/Surfaces/SurfGui.py +++ /dev/null @@ -1,75 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -from PyQt4 import QtCore, QtGui -import FreeCAD, FreeCADGui, os - -class IsoCurve: - def Activated(self): - import surfISOCurve - surfISOCurve.load() - - def GetResources(self): - from surfUtils import Paths, Translator - IconPath = Paths.iconsPath() + "/IsoCurveIco.png" - MenuText = str(Translator.translate('Get ISO curve')) - ToolTip = str(Translator.translate('Get ISO curve from surface')) - return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} - -class SliceCurve: - def Activated(self): - import surfSlice - surfSlice.load() - - def GetResources(self): - from surfUtils import Paths, Translator - IconPath = Paths.iconsPath() + "/SliceIco.png" - MenuText = str(Translator.translate('Get surface slice')) - ToolTip = str(Translator.translate('Get surface intersection with coordinates planes')) - return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} - -class Border: - def Activated(self): - import surfBorder - surfBorder.load() - - def GetResources(self): - from surfUtils import Paths, Translator - IconPath = Paths.iconsPath() + "/BorderIco.png" - MenuText = str(Translator.translate('Get border')) - ToolTip = str(Translator.translate('Get edges from objects')) - return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} - -class Convert: - def Activated(self): - import surfConvert - surfConvert.load() - - def GetResources(self): - from surfUtils import Paths, Translator - IconPath = Paths.iconsPath() + "/ConvertIco.png" - MenuText = str(Translator.translate('Convert to 4 sides surface')) - ToolTip = str(Translator.translate('Convert a surface (or couple of them) into 4 sides surface')) - return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} - -FreeCADGui.addCommand('Surf_IsoCurve', IsoCurve()) -FreeCADGui.addCommand('Surf_SliceCurve', SliceCurve()) -FreeCADGui.addCommand('Surf_Border', Border()) -FreeCADGui.addCommand('Surf_Convert', Convert()) diff --git a/src/Mod/Surfaces/surfBorder/CMakeLists.txt b/src/Mod/Surfaces/surfBorder/CMakeLists.txt deleted file mode 100644 index fb9e2befe1..0000000000 --- a/src/Mod/Surfaces/surfBorder/CMakeLists.txt +++ /dev/null @@ -1,7 +0,0 @@ -INSTALL( - FILES - __init__.py - DESTINATION - Mod/Surfaces/surfBorder -) - diff --git a/src/Mod/Surfaces/surfBorder/Makefile.am b/src/Mod/Surfaces/surfBorder/Makefile.am deleted file mode 100644 index 3bdc6bb1d9..0000000000 --- a/src/Mod/Surfaces/surfBorder/Makefile.am +++ /dev/null @@ -1,11 +0,0 @@ -datadir = $(prefix)/Mod/Surfaces/surfBorder - -data_DATA = \ - __init__.py - -CLEANFILES = $(BUILT_SOURCES) - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt - diff --git a/src/Mod/Surfaces/surfBorder/__init__.py b/src/Mod/Surfaces/surfBorder/__init__.py deleted file mode 100644 index f3747dbe93..0000000000 --- a/src/Mod/Surfaces/surfBorder/__init__.py +++ /dev/null @@ -1,48 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# FreeCAD modules -import FreeCAD -import FreeCADGui -from FreeCAD import Base -from FreeCAD import Part - -# Qt libraries -from PyQt4 import QtGui,QtCore - -# Main object -from surfUtils import Geometry, Translator - -def load(): - """ Loads the tool. Getting the border don't require any - option, so can be executed directly without any task panel. """ - edges = Geometry.getBorders() - if not edges: - wrn = Translator.translate("Can't get any edge from selected objects") - FreeCAD.Console.PrintWarning(wrn) - return - obj = edges[0] - for i in range(0,len(edges)): - obj = obj.oldFuse(edges[i]) - Part.show(obj) - objs = FreeCAD.ActiveDocument.Objects - obj = objs[len(objs)-1] - obj.Label = 'Border' - diff --git a/src/Mod/Surfaces/surfConvert/CMakeLists.txt b/src/Mod/Surfaces/surfConvert/CMakeLists.txt deleted file mode 100644 index 2bd1f7e58e..0000000000 --- a/src/Mod/Surfaces/surfConvert/CMakeLists.txt +++ /dev/null @@ -1,10 +0,0 @@ -INSTALL( - FILES - __init__.py - Preview.py - TaskPanel.py - TaskPanel.ui - DESTINATION - Mod/Surfaces/surfConvert -) - diff --git a/src/Mod/Surfaces/surfConvert/Makefile.am b/src/Mod/Surfaces/surfConvert/Makefile.am deleted file mode 100644 index 7245ea8a90..0000000000 --- a/src/Mod/Surfaces/surfConvert/Makefile.am +++ /dev/null @@ -1,14 +0,0 @@ -datadir = $(prefix)/Mod/Surfaces/surfConvert - -data_DATA = \ - __init__.py \ - TaskPanel.py \ - Preview.py \ - TaskPanel.ui - -CLEANFILES = $(BUILT_SOURCES) - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt - diff --git a/src/Mod/Surfaces/surfConvert/Preview.py b/src/Mod/Surfaces/surfConvert/Preview.py deleted file mode 100644 index 2ee908cb87..0000000000 --- a/src/Mod/Surfaces/surfConvert/Preview.py +++ /dev/null @@ -1,79 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# FreeCAD modules -import FreeCAD,FreeCADGui -from FreeCAD import Base -from FreeCAD import Part -# FreeCADShip modules -from surfUtils import Paths -from surfUtils import Geometry -from surfUtils import Math - -class Preview(object): - def __init__(self,U,V): - """ Constructor. - @param U Part::topoShape object that contains the U direction edge. - @param V Part::topoShape object that contains the V direction edge. - """ - self.objU = None - self.objV = None - self.U = U - self.V = V - self.buildObjs() - self.setProperties() - - def buildObjs(self): - """ Builds objects to show. - """ - Part.show(self.U) - objs = FreeCAD.ActiveDocument.Objects - self.objU = objs[len(objs)-1] - Part.show(self.V) - objs = FreeCAD.ActiveDocument.Objects - self.objV = objs[len(objs)-1] - - def setProperties(self): - """ Set colour of lines and width. - """ - self.objU.Label = 'U direction' - self.objV.Label = 'V direction' - # Get GUI objects instance - objU = FreeCADGui.ActiveDocument.getObject(self.objU.Name) - objV = FreeCADGui.ActiveDocument.getObject(self.objV.Name) - objU.LineColor = (0.0,0.0,1.0) - objU.LineWidth = 5.00 - objV.LineColor = (1.0,0.0,0.0) - objV.LineWidth = 5.00 - - def clean(self,Destroy=True): - """ Erase all sections from screen. - @param self Auto call object. - @param Destroy True if the object must be destroyed, False otherwise. - """ - if (not self.objU) or (not self.objV): - return - FreeCADGui.ActiveDocument.hide(self.objU.Name) - FreeCADGui.ActiveDocument.hide(self.objV.Name) - if Destroy: - FreeCAD.ActiveDocument.removeObject(self.objU.Name) - FreeCAD.ActiveDocument.removeObject(self.objV.Name) - self.objU=None - self.objV=None diff --git a/src/Mod/Surfaces/surfConvert/TaskPanel.py b/src/Mod/Surfaces/surfConvert/TaskPanel.py deleted file mode 100644 index 49ed1c6e10..0000000000 --- a/src/Mod/Surfaces/surfConvert/TaskPanel.py +++ /dev/null @@ -1,576 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# Alicia Lapique <> -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# Standart libraries -import math -# Import FreeCAD modules -import FreeCAD as App -import FreeCADGui as Gui -# Import Qt libraries -from PyQt4 import QtGui,QtCore -# Import surface module utils -from surfUtils import Paths, Geometry, Math, Translator -# Import tool utils -import Preview - -class TaskPanel: - def __init__(self): - """ Class constructor, that loads the user interface and set - minimum data as empty values. - """ - self.ui = Paths.modulePath() + "/surfConvert/TaskPanel.ui" - self.objs = [] - self.edges = [] - self.faces = [] - self.surf = None - self.preview = None - - def accept(self): - """ Method called when accept button is clicked. - @return True if all gone right, False otherwise. - """ - if not self.surf: - return False - App.Part.show(self.surf.toShape()) - objs = App.ActiveDocument.Objects - obj = objs[len(objs)-1] - obj.Label = 'Surface' - self.preview.clean() - return True - - def reject(self): - """ Method called when cancel button is clicked. - @return True if all gone right, False otherwise. - """ - if self.preview : - self.preview.clean() - return True - - def clicked(self, index): - pass - - def open(self): - pass - - def needsFullSpace(self): - return True - - def isAllowedAlterSelection(self): - return False - - def isAllowedAlterView(self): - return True - - def isAllowedAlterDocument(self): - return False - - def helpRequested(self): - pass - - def setupUi(self): - """ Setups the user interface taking and storing all controls. - """ - mw = self.getMainWindow() - form = mw.findChild(QtGui.QWidget, "TaskPanel") - form.nU = form.findChild(QtGui.QSpinBox, "nU") - form.nV = form.findChild(QtGui.QSpinBox, "nV") - form.deg = form.findChild(QtGui.QSpinBox, "deg") - self.form = form - # Initial values - if self.initValues(): - return True - self.retranslateUi() - # Connect Signals and Slots - QtCore.QObject.connect(form.nU, QtCore.SIGNAL("valueChanged(int)"), self.onNUV) - QtCore.QObject.connect(form.nV, QtCore.SIGNAL("valueChanged(int)"), self.onNUV) - QtCore.QObject.connect(form.deg, QtCore.SIGNAL("valueChanged(int)"), self.onNUV) - return False - - def getMainWindow(self): - """ returns the main window """ - # using QtGui.qApp.activeWindow() isn't very reliable because if another - # widget than the mainwindow is active (e.g. a dialog) the wrong widget is - # returned - toplevel = QtGui.qApp.topLevelWidgets() - for i in toplevel: - if i.metaObject().className() == "Gui::MainWindow": - return i - raise Exception("No main window found") - - def initValues(self): - """ Setup initial values. """ - # Objects to work - self.objs = Gui.Selection.getSelection() - if not self.objs: - msg = Translator.translate("4 connected edges and at least 1 surface must be selected (Any object has been selected)") - App.Console.PrintError(msg) - return True - if len(self.objs) < 5: - msg = Translator.translate("4 connected edges and at least 1 surface must be selected (Less than 5 objects selected)") - App.Console.PrintError(msg) - return True - # Separate edge objects and face objects. - if self.getEdgesFaces(): - return True - # Ensure that closed object given - if not self.isClosed(): - return True - # Sort edges (as connect chain) - if self.sortEdges(): - return True - # First surface draft - if self.getPoints(): - return True - if self.createSurface(): - return True - # On screen data - self.preview = Preview.Preview(self.edges[0],self.edges[1]) - msg = Translator.translate("Ready to work") - App.Console.PrintMessage(msg) - return False - - def retranslateUi(self): - """ Set user interface locale strings. - """ - self.form.setWindowTitle(Translator.translate("Convert to 4 side surface")) - nUString = Translator.translate("Points at U") - self.form.findChild(QtGui.QLabel, "nULabel").setText("" + nUString + "") - nVString = Translator.translate("Points at V2") - self.form.findChild(QtGui.QLabel, "nVLabel").setText("" + nVString + "") - self.form.findChild(QtGui.QLabel, "degLabel").setText(Translator.translate("Surface degree")) - - def onNUV(self, value): - """ Answer to nU points or nV points modification events. - @param value Changed value. - """ - if self.getPoints(): - return - if self.createSurface(): - return - self.form.deg.setMaximum(self.surf.MaxDegree) - - def getEdgesFaces(self): - """ Returns two arrays filled with the edges and faces selected. - @return True if error happens. False otherwise - """ - self.edges = [] - self.faces = [] - for i in range(0,len(self.objs)): - objFaces = Geometry.getFaces(self.objs[i]) - if not objFaces: - objEdges = Geometry.getEdges([self.objs[i]]) - if not objEdges: - msg = Translator.translate("4 connected edges and at least 1 surface must be selected (Any edge found)") - App.Console.PrintError(msg) - return True - for j in range(0, len(objEdges)): - self.edges.append(objEdges[j]) - else: - for j in range(0, len(objFaces)): - self.faces.append(objFaces[j]) - if len(self.edges) != 4: - msg = Translator.translate("4 connected edges and at least 1 surface must be selected (More/less edges not allowed)") - App.Console.PrintError(msg) - return True - return False - - def isClosed(self): - """ Returns if the edges objects are a closed curve. - @return True if a closed curve can be built with edge objects. - False otherwise - """ - edges = self.edges - for i in range(0,len(edges)): - edge = edges[i] - vertex1 = edge.Vertexes - count = [0,0] - for j in range(0,len(edges)): - if j== i: - continue - vertex2 = edges[j].Vertexes - for k in range(0,2): - if Math.isSameVertex(vertex1[0],vertex2[k]): - count[0] = count[0]+1 - if Math.isSameVertex(vertex1[1],vertex2[k]): - count[1] = count[1]+1 - if count != [1,1]: - msg = Translator.translate("4 Edges curve must be closed") - App.Console.PrintError(msg) - return False - return True - - def sortEdges(self): - """ Sort the edges by their connection points. Also gives if - an edge is ill oriented (thir connection point is the end - point, not the starting point), with True when is good oriented, - and False otherwise. - @return True if error happens. False otherwise - """ - edges = self.edges - self.edges = [edges[0]] - self.direction = [True] - Vertex = self.edges[0].Vertexes[1] - for i in range(0,len(edges)-1): - for j in range(0,len(edges)): - if self.edges[i] == edges[j]: - continue - Vertexes = edges[j].Vertexes - if Math.isSameVertex(Vertex,Vertexes[0]): - Vertex = Vertexes[1] - self.edges.append(edges[j]) - self.direction.append(True) - break - if Math.isSameVertex(Vertex,Vertexes[1]): - Vertex = Vertexes[0] - self.edges.append(edges[j]) - self.direction.append(False) - break - return False - - def getPoints(self): - """ Get points that will make the surface. - @return True if error happens. False otherwise. - """ - if self.divideEdges(): - return True - if self.samplePoints(): - return True - if self.getSurfacePoints(): - return True - while self.redistributePointsU(): - continue - while self.redistributePointsV(): - continue - return False - - - def divideEdges(self): - """ Get points along the edges. - @return True if error happens. False otherwise. - """ - # Get curves from edges - curves=[] - for i in range(0,len(self.edges)): - curves.append(self.edges[i].Curve) - # Get number of divisions at U,V - nU = self.form.nU.value() - nV = self.form.nV.value() - # Get points at U direction (length parameter will used) - vertexes = self.edges[0].Vertexes - u = curves[0].parameter(App.Base.Vector(vertexes[0].X, vertexes[0].Y, vertexes[0].Z)) - uEnd = curves[0].parameter(App.Base.Vector(vertexes[1].X, vertexes[1].Y, vertexes[1].Z)) - du = (uEnd - u) / (nU-1.0) - Points0=[] - for i in range(0, nU): - knots = curves[0].KnotSequence - point0 = curves[0].value(u) - Points0.append(point0) - u = u + du - vertexes = self.edges[2].Vertexes - u = curves[2].parameter(App.Base.Vector(vertexes[1].X, vertexes[1].Y, vertexes[1].Z)) - uEnd = curves[2].parameter(App.Base.Vector(vertexes[0].X, vertexes[0].Y, vertexes[0].Z)) - du = (uEnd - u) / (nU-1.0) - Points2=[] - for i in range(0, nU): - knots = curves[2].KnotSequence - point2 = curves[2].value(u) - Points2.append(point2) - u = u + du - # Get points at V direction (length parameter will used) - vertexes = self.edges[1].Vertexes - v = curves[1].parameter(App.Base.Vector(vertexes[0].X, vertexes[0].Y, vertexes[0].Z)) - vEnd = curves[1].parameter(App.Base.Vector(vertexes[1].X, vertexes[1].Y, vertexes[1].Z)) - dv = (vEnd - v) / (nV-1.0) - Points1=[] - for i in range(0, nV): - knots = curves[1].KnotSequence - point1 = curves[1].value(v) - Points1.append(point1) - v = v + dv - vertexes = self.edges[3].Vertexes - v = curves[3].parameter(App.Base.Vector(vertexes[1].X, vertexes[1].Y, vertexes[1].Z)) - vEnd = curves[3].parameter(App.Base.Vector(vertexes[0].X, vertexes[0].Y, vertexes[0].Z)) - dv = (vEnd - v) / (nV-1.0) - Points3=[] - for i in range(0, nV): - knots = curves[3].KnotSequence - point3 = curves[3].value(v) - Points3.append(point3) - v = v + dv - # Store points arrays - self.EdgePoints=[Points0,Points1,Points2,Points3] - # Ensure that is good oriented - for i in range(0,4): - if not self.direction[i]: - self.EdgePoints[i].reverse() - return False - - def samplePoints(self): - """ Builds a set of points between the edges points. - @return True if error happens. False otherwise. - """ - # We will advance in V direction, getting point columns, so two - # points columns are knowed from U starting and end curves - startU = self.EdgePoints[0] - endU = self.EdgePoints[2] - endV = self.EdgePoints[1] - startV = self.EdgePoints[3] - self.sample = [startU] - # Take two guides froms the starting and end U curves. All - # sample points will be reprojects with this guides - Guide0 = startU[len(startU)-1] - startU[0] - Length0 = Guide0.Length - Guide0.normalize() - Guide1 = endU[len(endU)-1] - endU[0] - Length1 = Guide1.Length - Guide1.normalize() - # Loop over columns to get - for i in range(1,len(startV)-1): - # Get the guide - Guide = endV[i] - startV[i] - Length = Guide.Length - Guide.normalize() - # Loop over points of the column - points = [] - points.append(startV[i]) - for j in range(1,len(startU)-1): - # Get deviation at starting U - v0 = (startU[j] - startU[0]).multiply(1.0 / Length0) - Guide0 - # Get deviation at ending U - v1 = (endU[j] - endU[0]).multiply(1.0 / Length1) - Guide1 - # Get factor - factor = float(i) / len(startV) - # Interpolate - v = (v0.multiply(1.0-factor) + v1.multiply(factor) + Guide).multiply(Length) - points.append(startV[i]+v) - points.append(endV[i]) - self.sample.append(points) - # Append las points column (end U curve) - self.sample.append(endU) - return False - - def getSurfacePoints(self): - """ Get the points of the surface. - @return True if error happens. False otherwise. - """ - surf = self.faces[0].Surface - self.uv=[] - self.points=[] - self.surfacesID=[] - for j in range(0,len(self.sample)): - points=[] - uv=[] - surfacesID=[] - for k in range(0,len(self.sample[j])): - UV = surf.parameter(self.sample[j][k]) - umax = surf.UKnotSequence[len(surf.UKnotSequence)-1] - umin = surf.UKnotSequence[0] - vmax = surf.VKnotSequence[len(surf.VKnotSequence)-1] - vmin = surf.VKnotSequence[0] - uv.append([UV[0],UV[1]]) - uv[k][0] = max(min(uv[k][0],umax), umin) - uv[k][1] = max(min(uv[k][1],vmax), vmin) - point = surf.value(uv[k][0], uv[k][1]) - points.append(point) - surfacesID.append(0) - self.uv.append(uv) - self.points.append(points) - self.surfacesID.append(surfacesID) - - for i in range(1,len(self.faces)): - surf = self.faces[i].Surface - for j in range(0,len(self.sample)): - for k in range(0,len(self.sample[j])): - UV = surf.parameter(self.sample[j][k]) - uv = [UV[0],UV[1]] - UV = uv[:] - umax = surf.UKnotSequence[len(surf.UKnotSequence)-1] - umin = surf.UKnotSequence[0] - vmax = surf.VKnotSequence[len(surf.VKnotSequence)-1] - vmin = surf.VKnotSequence[0] - UV[0] = uv[0]/(surf.UKnotSequence[len(surf.UKnotSequence)-1]) - UV[1] = uv[1]/(surf.VKnotSequence[len(surf.VKnotSequence)-1]) - ru=abs(UV[0]-0.5) - rv=abs(UV[1]-0.5) - surf2 = self.faces[self.surfacesID[j][k]].Surface - UV2 = surf2.parameter(self.sample[j][k]) - uv2 = [UV2[0],UV2[1]] - UV2 = uv2[:] - umax2 = surf2.UKnotSequence[len(surf2.UKnotSequence)-1] - umin2 = surf2.UKnotSequence[0] - vmax2 = surf2.VKnotSequence[len(surf2.VKnotSequence)-1] - vmin2 = surf2.VKnotSequence[0] - UV2[0] = uv2[0]/(surf2.UKnotSequence[len(surf2.UKnotSequence)-1]) - UV2[1] = uv2[1]/(surf2.VKnotSequence[len(surf2.VKnotSequence)-1]) - ru2=abs(UV2[0]-0.5) - rv2=abs(UV2[1]-0.5) - point=surf.value(UV[0],UV[1]) - point2=surf2.value(UV2[0],UV2[1]) - dif= math.sqrt((point[0]-self.sample[j][k][0])**2+(point[1]-self.sample[j][k][1])**2+(point[2]-self.sample[j][k][2])**2) - dif2= math.sqrt((point2[0]-self.sample[j][k][0])**2+(point2[1]-self.sample[j][k][1])**2+(point2[2]-self.sample[j][k][2])**2) - nU = len(self.points) - nV = len(self.points[j]) - deltaU = 1/(2*nU) - deltaV = 1/(2*nV) - if ((ru < deltaU) and (rv < deltaV)): - uv[0] = max(min(uv[0],umax), umin) - uv[1] = max(min(uv[1],vmax), vmin) - self.uv[j][k]=uv - point = surf.value(uv[0], uv[1]) - self.points[j][k]=point - self.surfacesID[j][k] = i - elif (dif2 > dif): - uv[0] = max(min(uv[0],umax), umin) - uv[1] = max(min(uv[1],vmax), vmin) - self.uv[j][k]=uv - point = surf.value(uv[0], uv[1]) - self.points[j][k]=point - self.surfacesID[j][k] = i - - return False - - def redistributePointsU(self): - """ Redistributes the points of the surface (U direction). - @return False if all points are right placed. True otherwise. - """ - #Redistribute columns - for i in range(0,len(self.points)): - sumdif=0.0 - difs=[] - for j in range(1,len(self.points[i])): - vdif=self.points[i][j]-self.points[i][j-1] - dif=vdif.Length - sumdif=sumdif+dif - difs.append(dif) - for k in range(0,len(difs)): - if self.surfacesID[i][k] != self.surfacesID[i][k+1]: - if difs[k]>=(2*sumdif/len(difs)): - self.points[i][k][0]=self.points[i][k][0]+0.33*(self.points[i][k+1][0]-self.points[i][k][0]) - self.points[i][k][1]=self.points[i][k][1]+0.33*(self.points[i][k+1][1]-self.points[i][k][1]) - self.points[i][k][2]=self.points[i][k][2]+0.33*(self.points[i][k+1][2]-self.points[i][k][2]) - self.points[i][k+1][0]=self.points[i][k+1][0]-0.33*(self.points[i][k+1][0]-self.points[i][k][0]) - self.points[i][k+1][1]=self.points[i][k+1][1]-0.33*(self.points[i][k+1][1]-self.points[i][k][1]) - self.points[i][k+1][2]=self.points[i][k+1][2]-0.33*(self.points[i][k+1][2]-self.points[i][k][2]) - surf1 = self.faces[self.surfacesID[i][k]].Surface - surf2 = self.faces[self.surfacesID[i][k+1]].Surface - uv = surf1.parameter(self.points[i][k]) - self.uv[i][k] = [uv[0], uv[1]] - uv = surf2.parameter(self.points[i][k+1]) - self.uv[i][k+1] = [uv[0], uv[1]] - self.points[i][k]=surf1.value(self.uv[i][k][0],self.uv[i][k][1]) - self.points[i][k+1]=surf2.value(self.uv[i][k+1][0],self.uv[i][k+1][1]) - return True - break - continue - if difs[k]>=(2*sumdif/len(difs)): - self.uv[i][k][0]=self.uv[i][k][0]+0.33*(self.uv[i][k+1][0]-self.uv[i][k][0]) - self.uv[i][k][1]=self.uv[i][k][1]+0.33*(self.uv[i][k+1][1]-self.uv[i][k][1]) - self.uv[i][k+1][0]=self.uv[i][k+1][0]-0.33*(self.uv[i][k+1][0]-self.uv[i][k][0]) - self.uv[i][k+1][1]=self.uv[i][k+1][1]-0.33*(self.uv[i][k+1][1]-self.uv[i][k][1]) - surf = self.faces[self.surfacesID[i][k]].Surface - self.points[i][k] = surf.value(self.uv[i][k][0], self.uv[i][k][1]) - self.points[i][k+1] = surf.value(self.uv[i][k+1][0], self.uv[i][k+1][1]) - return True - break - return False - def redistributePointsV(self): - """ Redistributes the points of the surface (V direction). - @return False if all points are right placed. True otherwise. - """ - #Redistribute files - for i in range(0,len(self.points[0])): - sumdif=0 - difs=[] - for j in range(1,len(self.points)): - vdif=self.points[j][i]-self.points[j-1][i] - dif=vdif.Length - sumdif=sumdif+dif - difs.append(dif) - for k in range(0,len(difs)): - if self.surfacesID[k][i] != self.surfacesID[k+1][i]: - if difs[k]>=(2*sumdif/len(difs)): - self.points[k][i][0]=self.points[k][i][0]+0.33*(self.points[k+1][i][0]-self.points[k][i][0]) - self.points[k][i][1]=self.points[k][i][1]+0.33*(self.points[k+1][i][1]-self.points[k][i][1]) - self.points[k][i][2]=self.points[k][i][2]+0.33*(self.points[k+1][k+1][2]-self.points[k][i][2]) - self.points[k+1][i][0]=self.points[k+1][i][0]-0.33*(self.points[k+1][i][0]-self.points[k][i][0]) - self.points[k+1][i][1]=self.points[k+1][i][1]-0.33*(self.points[k+1][i][1]-self.points[k][i][1]) - self.points[k+1][i][2]=self.points[k+1][i][2]-0.33*(self.points[k+1][i][2]-self.points[k][i][2]) - surf1 = self.faces[self.surfacesID[k][i]].Surface - surf2 = self.faces[self.surfacesID[k+1][i]].Surface - uv = surf1.parameter(self.points[k][i]) - self.uv[k][i] = [uv[0], uv[1]] - uv = surf2.parameter(self.points[k+1][i]) - self.uv[k+1][i] = [uv[0], uv[1]] - self.points[k][i]=surf1.value(self.uv[k][i][0],self.uv[k][i][1]) - self.points[k+1][i]=surf2.value(self.uv[k+1][i][0],self.uv[k+1][i][1]) - return True - break - continue - if difs[k]>=(2*sumdif/len(difs)): - self.uv[k][i][0]=self.uv[k][i][0]+0.33*(self.uv[k+1][i][0]-self.uv[k][i][0]) - self.uv[k][i][1]=self.uv[k][i][1]+0.33*(self.uv[k+1][i][1]-self.uv[k][i][1]) - self.uv[k+1][i][0]=self.uv[k+1][i][0]-0.33*(self.uv[k+1][i][0]-self.uv[k][i][0]) - self.uv[k+1][i][1]=self.uv[k+1][i][1]-0.33*(self.uv[k+1][i][1]-self.uv[k][i][1]) - surf = self.faces[self.surfacesID[k][i]].Surface - self.points[k][i] = surf.value(self.uv[k][i][0], self.uv[k][i][1]) - self.points[k+1][i] = surf.value(self.uv[k+1][i][0], self.uv[k+1][i][1]) - return True - break - return False - - def createSurface(self): - """ Generates the BSpline surface. - @return False if all gone right. True otherwise. - """ - # Create a (1 x 1) plane with (nU x nV) knots - self.surf = App.Part.BSplineSurface() - nU = len(self.points) - nV = len(self.points[0]) - for i in range(1,nU-1): - u = i / float(nU-1) - self.surf.insertUKnot(u,i,0.000001) - for i in range(1,nV-1): - v = i / float(nV-1) - self.surf.insertVKnot(v,i,0.000001) - # Reposition points of surface - for i in range(0,nU): - for j in range(0,nV): - u = i / float(nU-1) - v = j / float(nV-1) - point = self.points[i][j] - self.surf.movePoint(u,v,point,i+1,i+1,j+1,j+1) - # Reaconditionate surface - self.surf.exchangeUV() - deg = self.form.deg.value() - if (deg > 1) and (deg < self.surf.MaxDegree): - self.surf.increaseDegree(deg,deg) - return False - -def createTask(): - """ Create a task panel. - @return Task panel. - """ - panel = TaskPanel() - Gui.Control.showDialog(panel) - if panel.setupUi(): - Gui.Control.closeDialog(panel) - return None - return panel diff --git a/src/Mod/Surfaces/surfConvert/TaskPanel.ui b/src/Mod/Surfaces/surfConvert/TaskPanel.ui deleted file mode 100644 index 73c66e916f..0000000000 --- a/src/Mod/Surfaces/surfConvert/TaskPanel.ui +++ /dev/null @@ -1,107 +0,0 @@ - - - TaskPanel - - - - 0 - 0 - 307 - 268 - - - - Convert surface - - - - - - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Ubuntu'; font-size:11pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0000ff;">Points at U</span></p></body></html> - - - - - - - 4 - - - 10000 - - - - - - - <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> -<html><head><meta name="qrichtext" content="1" /><style type="text/css"> -p, li { white-space: pre-wrap; } -</style></head><body style=" font-family:'Ubuntu'; font-size:11pt; font-weight:400; font-style:normal;"> -<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#ff0000;">Points at V</span></p></body></html> - - - - - - - 4 - - - 10000 - - - - - - - Surface degree - - - - - - - 1 - - - 25 - - - 3 - - - - - - - Qt::Vertical - - - QSizePolicy::Fixed - - - - 20 - 15 - - - - - - - - - - - - - diff --git a/src/Mod/Surfaces/surfConvert/__init__.py b/src/Mod/Surfaces/surfConvert/__init__.py deleted file mode 100644 index c104e04e8f..0000000000 --- a/src/Mod/Surfaces/surfConvert/__init__.py +++ /dev/null @@ -1,34 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# FreeCAD modules -import FreeCAD -import FreeCADGui - -# Qt libraries -from PyQt4 import QtGui,QtCore - -# Main object -import TaskPanel -from surfUtils import Paths - -def load(): - """ Loads the tool """ - TaskPanel.createTask() diff --git a/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt b/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt deleted file mode 100644 index 21445ed821..0000000000 --- a/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt +++ /dev/null @@ -1,11 +0,0 @@ -INSTALL( - FILES - __init__.py - PointTracker.py - TaskPanel.py - Preview.py - TaskPanel.ui - DESTINATION - Mod/Surfaces/surfISOCurve -) - diff --git a/src/Mod/Surfaces/surfISOCurve/Makefile.am b/src/Mod/Surfaces/surfISOCurve/Makefile.am deleted file mode 100644 index e73b4eb12b..0000000000 --- a/src/Mod/Surfaces/surfISOCurve/Makefile.am +++ /dev/null @@ -1,16 +0,0 @@ -datadir = $(prefix)/Mod/Surfaces/surfISOCurve - -data_DATA = \ - __init__.py \ - Preview.py \ - TaskPanel.ui \ - PointTracker.py \ - TaskPanel.py \ - Preview.py - -CLEANFILES = $(BUILT_SOURCES) - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt - diff --git a/src/Mod/Surfaces/surfISOCurve/PointTracker.py b/src/Mod/Surfaces/surfISOCurve/PointTracker.py deleted file mode 100644 index 0796bab732..0000000000 --- a/src/Mod/Surfaces/surfISOCurve/PointTracker.py +++ /dev/null @@ -1,85 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# FreeCAD modules -import FreeCAD as App -import FreeCADGui as Gui -import Draft -from FreeCAD import Vector -# Qt library -from PyQt4 import QtGui,QtCore -# Pivy -import pivy -from pivy import coin -from pivy.coin import * -# Module -from surfUtils import Paths -from surfUtils import Geometry -from surfISOCurve import Preview - -class PointTracker: - def __init__(self,view,task): - self.view=view - self.task=task - task.tracker = self - self.callback = self.view.addEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),self.mouseButton) - self.callbackMove = self.view.addEventCallbackPivy(SoLocation2Event.getClassTypeId(),self.mouseMove) - - def mouseMove(self, event_cb): - event = event_cb.getEvent() - surf = self.task.surf - if not surf: - return - # Get screen point - screen = event.getPosition() - ctrl = event.wasCtrlDown() - # Get snapped object if exist, else the screen point will used - point = Gui.Snapper.snap(screen, ctrl) - - def mouseButton(self, event_cb): - event = event_cb.getEvent() - if event.getState() != coin.SoMouseButtonEvent.DOWN: - return - surf = self.task.surf - if not surf: - return - # Get screen point - screen = event.getPosition() - ctrl = event.wasCtrlDown() - # Get snapped object if exist, else the screen point will used - point = Gui.Snapper.snap(screen, ctrl) - if not point: - point = self.view.getPoint(screen[0],screen[1]) - # Get the nearest surface point parameter - uv = surf.parameter(point) - uv = [uv[0], uv[1]] - uv[0] = uv[0] / surf.UKnotSequence[len(surf.UKnotSequence)-1] - uv[0] = max(0, min(uv[0], 1)) - uv[1] = uv[1] / surf.VKnotSequence[len(surf.VKnotSequence)-1] - uv[1] = max(0, min(uv[1], 1)) - # Set it into the task panel - self.task.setUV(uv[self.task.dirId]) - - def close(self): - # Switch off snapping - Gui.Snapper.off() - # Remove callback (Program crash otherwise) - self.view.removeEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),self.callback) - self.view.removeEventCallbackPivy(SoLocation2Event.getClassTypeId(),self.callbackMove) diff --git a/src/Mod/Surfaces/surfISOCurve/Preview.py b/src/Mod/Surfaces/surfISOCurve/Preview.py deleted file mode 100644 index cd8562d4a5..0000000000 --- a/src/Mod/Surfaces/surfISOCurve/Preview.py +++ /dev/null @@ -1,122 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# FreeCAD modules -import FreeCAD,FreeCADGui -from FreeCAD import Base -from FreeCAD import Part -# FreeCADShip modules -from surfUtils import Paths -from surfUtils import Geometry -from surfUtils import Math - -class Preview(object): - def __init__(self): - """ Constructor. - @param self Auto call object. - @note Start it as unactive - """ - self.obj = None - self.reinit() - - def reinit(self): - """ Reinitializate drawer. - @param self Auto call object. - """ - self.clean() - self.obj = None - - def update(self, surf, direction, uv): - """ Update the 3D view printing curve. - @param self Auto call object. - @param surf Surf where get the curve. - @param direction 0 if u direction, 1 if v. - @param uv Curve uv index, between 0 and 1. - @return Curve from object (as Part::Feature). - """ - # Errors - if not surf: - return None - # Get curve - if direction == 0: - curve = self.getU(surf, uv) - elif direction == 1: - curve = self.getV(surf, uv) - else: - return None - # Draw at 3D view - self.clean() - Part.show(curve.toShape()) - objs = FreeCAD.ActiveDocument.Objects - self.obj = objs[len(objs)-1] - self.obj.Label = 'surfISOCurve' - return self.obj - - def getU(self, surf, uv): - """ Get U curve from object. - @param self Auto call object. - @param surf Surf where get the curve. - @param uv Curve uv index, between 0 and 1. - @return Curve from object. - """ - # Errors - if not surf: - return None - if (uv < 0.0) or (uv > 1.0): - return None - # Get UV data - knots = surf.UKnotSequence - id0 = knots[0] - id1 = knots[len(knots)-1] - # Get curve - curve = surf.uIso(id0 + uv*(id1-id0)) - return curve - - def getV(self, surf, uv): - """ Get U curve from object. - @param self Auto call object. - @param surf Surf where get the curve. - @param uv Curve uv index, between 0 and 1. - @return Curve from object. - """ - # Errors - if not surf: - return None - if (uv < 0.0) or (uv > 1.0): - return None - # Get UV data - knots = surf.VKnotSequence - id0 = knots[0] - id1 = knots[len(knots)-1] - # Get curve - curve = surf.vIso(id0 + uv*(id1-id0)) - return curve - - def clean(self,Destroy=True): - """ Erase all sections from screen. - @param self Auto call object. - @param Destroy True if the object must be destroyed, False otherwise. - """ - if not self.obj: - return - FreeCADGui.ActiveDocument.hide(self.obj.Name) - if Destroy: - FreeCAD.ActiveDocument.removeObject(self.obj.Name) - self.obj=None diff --git a/src/Mod/Surfaces/surfISOCurve/TaskPanel.py b/src/Mod/Surfaces/surfISOCurve/TaskPanel.py deleted file mode 100644 index 2361d08242..0000000000 --- a/src/Mod/Surfaces/surfISOCurve/TaskPanel.py +++ /dev/null @@ -1,165 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# FreeCAD modules -import FreeCAD as App -import FreeCADGui as Gui -# Qt library -from PyQt4 import QtGui,QtCore -# Module -from surfUtils import Paths, Geometry, Math, Translator -import Preview -import PointTracker - -class TaskPanel: - def __init__(self): - self.ui = Paths.modulePath() + "/surfISOCurve/TaskPanel.ui" - self.preview = Preview.Preview() - self.tracker = None - - def accept(self): - if not self.obj: - return True - self.obj.Label = 'ISOCurve' - self.close() - return True - - def reject(self): - self.preview.clean() - self.close() - return True - - def clicked(self, index): - pass - - def open(self): - pass - - def needsFullSpace(self): - return True - - def isAllowedAlterSelection(self): - return False - - def isAllowedAlterView(self): - return True - - def isAllowedAlterDocument(self): - return False - - def helpRequested(self): - pass - - def setupUi(self): - mw = self.getMainWindow() - form = mw.findChild(QtGui.QWidget, "TaskPanel") - form.direction = form.findChild(QtGui.QComboBox, "direction") - form.uv = form.findChild(QtGui.QSlider, "uv") - form.uvText = form.findChild(QtGui.QDoubleSpinBox, "uvText") - self.form = form - # Initial values - if self.initValues(): - return True - self.obj = self.preview.update(self.surf, self.dirId, self.uv) - self.retranslateUi() - # Connect Signals and Slots - QtCore.QObject.connect(form.direction, QtCore.SIGNAL("activated(QString)"), self.selectDirection) - QtCore.QObject.connect(form.uv, QtCore.SIGNAL("valueChanged(int)"), self.onUVSlider) - QtCore.QObject.connect(form.uvText, QtCore.SIGNAL("valueChanged(double)"), self.onUVText) - - def getMainWindow(self): - "returns the main window" - # using QtGui.qApp.activeWindow() isn't very reliable because if another - # widget than the mainwindow is active (e.g. a dialog) the wrong widget is - # returned - toplevel = QtGui.qApp.topLevelWidgets() - for i in toplevel: - if i.metaObject().className() == "Gui::MainWindow": - return i - raise Exception("No main window found") - - def selectDirection(self): - self.dirId = self.form.direction.currentIndex() - self.obj = self.preview.update(self.surf, self.dirId, self.uv) - if not self.obj: - msg = Translator.translate("Can't get the curve from selected object") - App.Console.PrintWarning(msg) - - def onUVSlider(self, value): - uv = self.form.uv.value() - uv = uv/(float(self.form.uv.maximum())) - self.setUV(uv) - - def onUVText(self, value): - uv = self.form.uvText.value() - self.setUV(uv) - - def setUV(self, uv): - self.form.uv.setValue(uv*self.form.uv.maximum()) - self.form.uvText.setValue(uv) - self.uv = uv - if not self.surf: - return - self.obj = self.preview.update(self.surf, self.dirId, self.uv) - if not self.obj: - msg = Translator.translate("Can't get the curve from selected object") - App.Console.PrintWarning(msg) - - def initValues(self): - self.obj = None - self.dirId = 0 - self.uv = 0 - self.surf = None - self.selObj = Geometry.getSelectedObj() - if not self.selObj: - msg = Translator.translate("1 surface must be selected (Any object has been selected)") - App.Console.PrintError(msg) - return True - self.surf = Geometry.getSelectedSurface() - if not self.surf: - msg = Translator.translate("1 surface must be selected (Any face object found into selected objects)") - App.Console.PrintError(msg) - return True - msg = Translator.translate("Ready to work") - App.Console.PrintMessage(msg) - return False - - def retranslateUi(self): - """ Set user interface locale strings. - """ - self.form.setWindowTitle(Translator.translate("Get surface ISO curve")) - self.form.direction.setItemText(0, Translator.translate("U direction")) - self.form.direction.setItemText(1, Translator.translate("V direction")) - - def close(self): - """ Destroy all dependant objects - @param self Main object. - """ - if self.tracker: - self.tracker.close() - -def createTask(): - panel = TaskPanel() - Gui.Control.showDialog(panel) - if panel.setupUi(): - Gui.Control.closeDialog(panel) - return None - tracker = PointTracker.PointTracker(Gui.ActiveDocument.ActiveView, panel) - return panel diff --git a/src/Mod/Surfaces/surfISOCurve/TaskPanel.ui b/src/Mod/Surfaces/surfISOCurve/TaskPanel.ui deleted file mode 100644 index 68898bb05e..0000000000 --- a/src/Mod/Surfaces/surfISOCurve/TaskPanel.ui +++ /dev/null @@ -1,65 +0,0 @@ - - - TaskPanel - - - - 0 - 0 - 307 - 268 - - - - Get ISO curve from surface - - - - - - - U direction - - - - - V direction - - - - - - - - - - 0 - - - 10000 - - - Qt::Horizontal - - - - - - - 0.000000000000000 - - - 1.000000000000000 - - - 0.010000000000000 - - - - - - - - - - diff --git a/src/Mod/Surfaces/surfISOCurve/__init__.py b/src/Mod/Surfaces/surfISOCurve/__init__.py deleted file mode 100644 index c104e04e8f..0000000000 --- a/src/Mod/Surfaces/surfISOCurve/__init__.py +++ /dev/null @@ -1,34 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# FreeCAD modules -import FreeCAD -import FreeCADGui - -# Qt libraries -from PyQt4 import QtGui,QtCore - -# Main object -import TaskPanel -from surfUtils import Paths - -def load(): - """ Loads the tool """ - TaskPanel.createTask() diff --git a/src/Mod/Surfaces/surfSlice/CMakeLists.txt b/src/Mod/Surfaces/surfSlice/CMakeLists.txt deleted file mode 100644 index 7757f84eac..0000000000 --- a/src/Mod/Surfaces/surfSlice/CMakeLists.txt +++ /dev/null @@ -1,11 +0,0 @@ -INSTALL( - FILES - __init__.py - PointTracker.py - TaskPanel.py - Preview.py - TaskPanel.ui - DESTINATION - Mod/Surfaces/surfSlice -) - diff --git a/src/Mod/Surfaces/surfSlice/Makefile.am b/src/Mod/Surfaces/surfSlice/Makefile.am deleted file mode 100644 index fe2a840b11..0000000000 --- a/src/Mod/Surfaces/surfSlice/Makefile.am +++ /dev/null @@ -1,15 +0,0 @@ -datadir = $(prefix)/Mod/Surfaces/surfSlice - -data_DATA = \ - __init__.py \ - Preview.py \ - TaskPanel.ui \ - PointTracker.py \ - TaskPanel.py - -CLEANFILES = $(BUILT_SOURCES) - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt - diff --git a/src/Mod/Surfaces/surfSlice/PointTracker.py b/src/Mod/Surfaces/surfSlice/PointTracker.py deleted file mode 100644 index 863c47924e..0000000000 --- a/src/Mod/Surfaces/surfSlice/PointTracker.py +++ /dev/null @@ -1,68 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# FreeCAD modules -import FreeCAD as App -import FreeCADGui as Gui -import Draft -from FreeCAD import Vector -# Qt library -from PyQt4 import QtGui,QtCore -# Pivy -import pivy -from pivy import coin -from pivy.coin import * -# Module -from surfUtils import Paths -from surfUtils import Geometry -from surfSlice import Preview - -class PointTracker: - def __init__(self,view,task): - self.view=view - self.task=task - task.tracker = self - self.callback = self.view.addEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),self.mouseButton) - self.callbackMove = self.view.addEventCallbackPivy(SoLocation2Event.getClassTypeId(),self.mouseMove) - - def mouseMove(self, event_cb): - event = event_cb.getEvent() - # Get screen point - screen = event.getPosition() - ctrl = event.wasCtrlDown() - # Get snapped object if exist, else the screen point will used - point = Gui.Snapper.snap(screen, ctrl) - - def mouseButton(self, event_cb): - event = event_cb.getEvent() - if event.getState() != coin.SoMouseButtonEvent.DOWN: - return - # Get screen point - screen = event.getPosition() - ctrl = event.wasCtrlDown() - # Get snapped object if exist, else the screen point will used - point = Gui.Snapper.snap(screen, ctrl) - if not point: - point = self.view.getPoint(screen[0],screen[1]) - # Set it into the task panel - self.task.setR3(point) - - def close(self): - self.view.removeEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),self.callback) diff --git a/src/Mod/Surfaces/surfSlice/Preview.py b/src/Mod/Surfaces/surfSlice/Preview.py deleted file mode 100644 index b0c1f1f8c2..0000000000 --- a/src/Mod/Surfaces/surfSlice/Preview.py +++ /dev/null @@ -1,97 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# FreeCAD modules -import FreeCAD,FreeCADGui -from FreeCAD import Base -from FreeCAD import Part -# FreeCADShip modules -from surfUtils import Paths -from surfUtils import Geometry -from surfUtils import Math - -class Preview(object): - def __init__(self): - """ Constructor. - @param self Auto call object. - @note Start it as unactive - """ - self.objs = None - self.reinit() - - def reinit(self): - """ Reinitializate drawer. - @param self Auto call object. - """ - self.clean() - self.objs = None - - def update(self, surf, direction, r): - """ Update the 3D view printing curve. - @param surf Surf where get the curve. - @param direction Slice plane normal vector. - @param r Absolute position at Slice plane normal direction. - @return Curve from object (as Part::Feature). - """ - # Errors - if not surf: - return None - # Get curve - curve = self.getSlice(surf, direction, r) - # Draw at 3D view - self.clean() - self.objs = [] - for i in range(0,len(curve)): - for j in range(0,len(curve[i])): - Part.show(curve[i][j]) - objs = FreeCAD.ActiveDocument.Objects - objs[len(objs)-1].Label = 'surfSliceCurve' - self.objs.append(objs[len(objs)-1]) - return self.objs - - def getSlice(self, surf, direction, r): - """ Get surface slice. - @param surf Surf where get the curve. - @param direction Slice plane normal vector. - @param r Absolute position at Slice plane normal direction. - @return Curve from object. - """ - # Errors - if not surf: - return None - # Get curve - curve = [] - for i in range(0,len(surf)): - curve.append(surf[i].slice(direction, r)) - return curve - - def clean(self,Destroy=True): - """ Erase all sections from screen. - @param self Auto call object. - @param Destroy True if the object must be destroyed, False otherwise. - """ - if not self.objs: - return - for i in range(0,len(self.objs)): - FreeCADGui.ActiveDocument.hide(self.objs[i].Name) - if Destroy: - FreeCAD.ActiveDocument.removeObject(self.objs[i].Name) - if Destroy: - self.objs=None diff --git a/src/Mod/Surfaces/surfSlice/TaskPanel.py b/src/Mod/Surfaces/surfSlice/TaskPanel.py deleted file mode 100644 index 795787b564..0000000000 --- a/src/Mod/Surfaces/surfSlice/TaskPanel.py +++ /dev/null @@ -1,214 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# FreeCAD modules -import FreeCAD as App -import FreeCADGui as Gui -from FreeCAD import Vector -# Qt library -from PyQt4 import QtGui,QtCore -# Module -from surfUtils import Paths, Geometry, Math, Translator -import Preview -import PointTracker - -class TaskPanel: - def __init__(self): - self.ui = Paths.modulePath() + "/surfSlice/TaskPanel.ui" - self.preview = Preview.Preview() - self.tracker = None - self.dir = Vector(0.0,0.0,1.0) - - def accept(self): - if not self.objs: - return True - for i in range(0,len(self.objs)): - self.objs[i].Label = 'SliceCurve' - self.close() - return True - - def reject(self): - self.preview.clean() - self.close() - return True - - def clicked(self, index): - pass - - def open(self): - pass - - def needsFullSpace(self): - return True - - def isAllowedAlterSelection(self): - return False - - def isAllowedAlterView(self): - return True - - def isAllowedAlterDocument(self): - return False - - def helpRequested(self): - pass - - def setupUi(self): - mw = self.getMainWindow() - form = mw.findChild(QtGui.QWidget, "TaskPanel") - form.direction = form.findChild(QtGui.QComboBox, "direction") - form.r = form.findChild(QtGui.QSlider, "r") - form.rText = form.findChild(QtGui.QDoubleSpinBox, "rText") - self.form = form - # Initial values - if self.initValues(): - return True - self.retranslateUi() - self.form.rText.setMinimum(self.bound[4]) - self.form.rText.setMaximum(self.bound[5]) - self.setR(self.r) - # Connect Signals and Slots - QtCore.QObject.connect(form.direction, QtCore.SIGNAL("activated(QString)"), self.selectDirection) - QtCore.QObject.connect(form.r, QtCore.SIGNAL("valueChanged(int)"), self.onRSlider) - QtCore.QObject.connect(form.rText, QtCore.SIGNAL("valueChanged(double)"), self.onRText) - return False - - def getMainWindow(self): - "returns the main window" - # using QtGui.qApp.activeWindow() isn't very reliable because if another - # widget than the mainwindow is active (i.e. a dialog) the wrong widget is - # returned - toplevel = QtGui.qApp.topLevelWidgets() - for i in toplevel: - if i.metaObject().className() == "Gui::MainWindow": - return i - raise Exception("No main window found") - - def selectDirection(self): - if(self.form.direction.currentIndex() == 0): # XY - self.dir = Vector(0.0,0.0,1.0) - self.r = max(self.r, self.bound[4]) - self.r = min(self.r, self.bound[5]) - self.form.rText.setMinimum(self.bound[4]) - self.form.rText.setMaximum(self.bound[5]) - if(self.form.direction.currentIndex() == 1): # XZ - self.dir = Vector(0.0,1.0,0.0) - self.r = max(self.r, self.bound[2]) - self.r = min(self.r, self.bound[3]) - self.form.rText.setMinimum(self.bound[2]) - self.form.rText.setMaximum(self.bound[3]) - if(self.form.direction.currentIndex() == 2): # YZ - self.dir = Vector(1.0,0.0,0.0) - self.r = max(self.r, self.bound[0]) - self.r = min(self.r, self.bound[1]) - self.form.rText.setMinimum(self.bound[0]) - self.form.rText.setMaximum(self.bound[1]) - self.objs = self.preview.update(self.face, self.dir, self.r) - if not self.objs: - msg = Translator.translate("Can't calculate section") - App.Console.PrintWarning(msg) - - def onRSlider(self, value): - # Get r at [0,1] interval - r = self.form.r.value() - r = r/(float(self.form.r.maximum())) - # Expand to real interval - dr = self.form.rText.maximum()-self.form.rText.minimum() - r = r*dr + self.form.rText.minimum() - # Set value - self.setR(r) - - def onRText(self, value): - r = self.form.rText.value() - self.setR(r) - - def setR(self, r): - self.form.rText.setValue(r) - self.r = max(self.form.rText.minimum(), min(self.form.rText.maximum(), r)) - dr = self.form.rText.maximum()-self.form.rText.minimum() - r = (r - self.form.rText.minimum())/dr*self.form.r.maximum() - self.form.r.setValue(r) - if not self.face: - return - self.objs = self.preview.update(self.face, self.dir, self.r) - if not self.objs: - msg = Translator.translate("Can't calculate section") - App.Console.PrintWarning(msg) - - def setR3(self, r): - if(self.form.direction.currentIndex() == 0): # XY - self.setR(r.z) - if(self.form.direction.currentIndex() == 1): # XZ - self.setR(r.y) - if(self.form.direction.currentIndex() == 2): # YZ - self.setR(r.x) - - def initValues(self): - self.objs = None - self.dir = Vector(0.0,0.0,1.0) - self.r = 0.0 - self.face = None - self.selObj = Geometry.getSelectedObj() - if not self.selObj: - msg = Translator.translate("At least 1 surface must be selected (Any selected object)") - App.Console.PrintError(msg) - return True - self.face = Geometry.getFaces() - if not self.face: - msg = Translator.translate("At least 1 surface must be selected (Any face object found into selected objects)") - App.Console.PrintError(msg) - return True - bound = self.face[0].BoundBox - self.bound = [bound.XMin, bound.XMax, bound.YMin, bound.YMax, bound.ZMin, bound.ZMax] - for i in range(1,len(self.face)): - face = self.face[i] - bound = face.BoundBox - self.bound[0] = min(self.bound[0],bound.XMin) - self.bound[1] = min(self.bound[1],bound.XMax) - self.bound[2] = min(self.bound[2],bound.YMin) - self.bound[3] = min(self.bound[3],bound.YMax) - self.bound[4] = min(self.bound[4],bound.ZMin) - self.bound[5] = min(self.bound[5],bound.ZMax) - self.r = max(self.r, self.bound[4]) - self.r = min(self.r, self.bound[5]) - msg = Translator.translate("Ready to work") - App.Console.PrintMessage(msg) - return False - - def retranslateUi(self): - """ Set user interface locale strings. - """ - self.form.setWindowTitle(Translator.translate("Get surface slice")) - - def close(self): - """ Destroy all dependant objects - @param self Main object. - """ - if self.tracker: - self.tracker.close() - -def createTask(): - panel = TaskPanel() - Gui.Control.showDialog(panel) - if panel.setupUi(): - Gui.Control.closeDialog(panel) - return None - tracker = PointTracker.PointTracker(Gui.ActiveDocument.ActiveView, panel) - return panel diff --git a/src/Mod/Surfaces/surfSlice/TaskPanel.ui b/src/Mod/Surfaces/surfSlice/TaskPanel.ui deleted file mode 100644 index 20b7029ef7..0000000000 --- a/src/Mod/Surfaces/surfSlice/TaskPanel.ui +++ /dev/null @@ -1,70 +0,0 @@ - - - TaskPanel - - - - 0 - 0 - 307 - 268 - - - - Get surface slice - - - - - - - XY - - - - - XZ - - - - - YZ - - - - - - - - - - 0 - - - 10000 - - - Qt::Horizontal - - - - - - - 0.000000000000000 - - - 1.000000000000000 - - - 0.010000000000000 - - - - - - - - - - diff --git a/src/Mod/Surfaces/surfSlice/__init__.py b/src/Mod/Surfaces/surfSlice/__init__.py deleted file mode 100644 index c104e04e8f..0000000000 --- a/src/Mod/Surfaces/surfSlice/__init__.py +++ /dev/null @@ -1,34 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# FreeCAD modules -import FreeCAD -import FreeCADGui - -# Qt libraries -from PyQt4 import QtGui,QtCore - -# Main object -import TaskPanel -from surfUtils import Paths - -def load(): - """ Loads the tool """ - TaskPanel.createTask() diff --git a/src/Mod/Surfaces/surfUtils/CMakeLists.txt b/src/Mod/Surfaces/surfUtils/CMakeLists.txt deleted file mode 100644 index 46ceac9efc..0000000000 --- a/src/Mod/Surfaces/surfUtils/CMakeLists.txt +++ /dev/null @@ -1,11 +0,0 @@ -INSTALL( - FILES - __init__.py - Geometry.py - Math.py - Paths.py - Translator.py - DESTINATION - Mod/Surfaces/surfUtils -) - diff --git a/src/Mod/Surfaces/surfUtils/Geometry.py b/src/Mod/Surfaces/surfUtils/Geometry.py deleted file mode 100644 index d34844e1f3..0000000000 --- a/src/Mod/Surfaces/surfUtils/Geometry.py +++ /dev/null @@ -1,171 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -import math -# FreeCAD -import FreeCAD, FreeCADGui -from FreeCAD import Base -from FreeCAD import Part -# FreeCAD ship -from surfUtils import Math - -def getSelectedObjs(): - """ Returns the selected objects list - @return Selected objects list - """ - return FreeCADGui.Selection.getSelection() - -def getSelectedObj(): - """ Returns the first element of the selected objects list - @return Selected object. None if errors happens - """ - objs = FreeCADGui.Selection.getSelection() - if not objs: - return None - if not len(objs): - return None - obj = objs[0] - return FreeCAD.ActiveDocument.getObject(obj.Name) - -def getEdges(objs=None): - """ Returns object edges (list of them) - @param objs Object to get the faces, none if selected - object may used. - @return Selected edges. None if errors happens - """ - edges = [] - if not objs: - objs = FreeCADGui.Selection.getSelection() - if not objs: - return None - for i in range(0, len(objs)): - obj = objs[i] - if obj.isDerivedFrom('Part::Feature'): - # get shape - shape = obj.Shape - if not shape: - return None - obj = shape - if not obj.isDerivedFrom('Part::TopoShape'): - return None - objEdges = obj.Edges - if not objEdges: - continue - for j in range(0, len(objEdges)): - edges.append(objEdges[j]) - return edges - -def getFaces(obj=None): - """ Returns object faces (list of them) - @param obj Object to get the faces, none if selected - object may used. - @return Selected faces. None if errors happens - """ - if not obj: - obj = getSelectedObj() - if not obj: - return None - if obj.isDerivedFrom('Part::Feature'): - # get shape - shape = obj.Shape - if not shape: - return None - obj = shape - if not obj.isDerivedFrom('Part::TopoShape'): - return None - # get face - faces = obj.Faces - if not faces: - return None - if not len(faces): - return None - return faces - -def getSelectedSurface(obj=None): - """ Returns object surface (the first of the list) - @param obj Object to get the surface, none if selected - object may used. - @return Selected surface. None if errors happens - """ - faces = getFaces(obj) - if not faces: - return None - obj = faces[0] - # get surface - surf = obj.Surface - if not surf: - return None - return surf - -def getBorders(objs=None): - """ Returns the borders of all selected objects as edge array - @param objs Objects to get the edges, none if selected objects - may used. - @return Borders - """ - edges = [] - if not objs: - objs = FreeCADGui.Selection.getSelection() - if not objs: - return None - if len(objs) < 1: - return None - for i in range(0, len(objs)): - faces = getFaces(objs[i]) - if not faces: - continue - for j in range(0, len(faces)): - edgList = faces[j].Edges - for k in range(0, len(edgList)): - edges.append(edgList[k]) - return edges - - -def lineFaceSection(line,surface): - """ Returns the point of section of a line with a face - @param line Line object, that can be a curve. - @param surface Surface object (must be a Part::Shape) - @return Section points array, [] if line don't cut surface - """ - # Get initial data - result = [] - vertexes = line.Vertexes - nVertex = len(vertexes) - # Perform the cut - section = line.cut(surface) - # Filter all old points - points = section.Vertexes - nPoint = len(points) - if nPoint <= nVertex: - # Any valid point - result - for i in range(0,nPoint): - disp = len(result) - flag = 0 - if not Math.isAprox(points[i].X,vertexes[i-disp].X,0.0001): - flag = flag+1 - if not Math.isAprox(points[i].Y,vertexes[i-disp].Y,0.0001): - flag = flag+1 - if not Math.isAprox(points[i].Z,vertexes[i-disp].Z,0.0001): - flag = flag+1 - if flag > 0: - result.append(points[i]) - return result - diff --git a/src/Mod/Surfaces/surfUtils/Makefile.am b/src/Mod/Surfaces/surfUtils/Makefile.am deleted file mode 100644 index eab7072d96..0000000000 --- a/src/Mod/Surfaces/surfUtils/Makefile.am +++ /dev/null @@ -1,15 +0,0 @@ -datadir = $(prefix)/Mod/Surfaces/surfUtils - -data_DATA = \ - __init__.py \ - Math.py \ - Translator.py \ - Geometry.py \ - Paths.py - -CLEANFILES = $(BUILT_SOURCES) - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt - diff --git a/src/Mod/Surfaces/surfUtils/Math.py b/src/Mod/Surfaces/surfUtils/Math.py deleted file mode 100644 index 9063c9560e..0000000000 --- a/src/Mod/Surfaces/surfUtils/Math.py +++ /dev/null @@ -1,54 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -def isAprox(a,b,tol=0.0001): - """returns if a value is into (b-tol,b+tol) - @param a Value to compare. - @param b Center of valid interval - @param tol Radius of valid interval - @return True if a is into (b-tol,b+tol), False otherwise - """ - if (a < b+abs(tol)) and (a > b-abs(tol)): - return True - return False - -def isSamePoint(a,b,tol=0.0001): - """returns if two points are the same with a provided tolerance - @param a Point to compare. - @param b Reference point. - @param tol Radius of valid interval - @return True if twice point are the same, False otherwise - @note FreeCAD::Base::Vector types must be provided - """ - if isAprox(a.x,b.x,tol) and isAprox(a.y,b.y,tol) and isAprox(a.z,b.z,tol): - return True - return False - -def isSameVertex(a,b,tol=0.0001): - """returns if two points are the same with a provided tolerance - @param a Point to compare. - @param b Reference point. - @param tol Radius of valid interval - @return True if twice point are the same, False otherwise - @note FreeCAD::Part::Vertex types must be provided - """ - if isAprox(a.X,b.X,tol) and isAprox(a.Y,b.Y,tol) and isAprox(a.Z,b.Z,tol): - return True - return False diff --git a/src/Mod/Surfaces/surfUtils/Paths.py b/src/Mod/Surfaces/surfUtils/Paths.py deleted file mode 100644 index fc9f8a1938..0000000000 --- a/src/Mod/Surfaces/surfUtils/Paths.py +++ /dev/null @@ -1,52 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -import FreeCAD, FreeCADGui, os - -def modulePath(): - """returns the current Ship design module path - @return Module path""" - path1 = FreeCAD.ConfigGet("AppHomePath") + "Mod/Surfaces" - path2 = FreeCAD.ConfigGet("UserAppData") + "Mod/Surfaces" - if os.path.exists(path2): - return path2 - else: - return path1 - -def iconsPath(): - """returns the current Ship design module icons path - @return Icons path""" - path = modulePath() + "/Icons" - return path - -def getPathFromFile(fileName): - """ Gets the directory path from a file name - @param fileName Name of the file - @return Directory path. - """ - if not fileName: - return '' - i = 1 - try: - while 1: - i = fileName.index("/", i+1) - except ValueError: - pass - return fileName[0:i+1] diff --git a/src/Mod/Surfaces/surfUtils/Translator.py b/src/Mod/Surfaces/surfUtils/Translator.py deleted file mode 100644 index 8d08d7fe4a..0000000000 --- a/src/Mod/Surfaces/surfUtils/Translator.py +++ /dev/null @@ -1,27 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -import FreeCAD, FreeCADGui, os -from PyQt4 import QtCore,QtGui - -def translate(text,context="surfaces"): - "convenience function for Qt translator" - return QtGui.QApplication.translate(context, text, None, - QtGui.QApplication.UnicodeUTF8) diff --git a/src/Mod/Surfaces/surfUtils/__init__.py b/src/Mod/Surfaces/surfUtils/__init__.py deleted file mode 100644 index e82fff67ce..0000000000 --- a/src/Mod/Surfaces/surfUtils/__init__.py +++ /dev/null @@ -1,22 +0,0 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### - -# Empty file to treat the folder as a package - From 5df98b137105d2ae4177be4f990db9d85f0e2ccf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 11:01:47 +0100 Subject: [PATCH 06/40] Added Surfaces module sources --- src/Mod/Surfaces/Icons/BorderIco.png | Bin 0 -> 5621 bytes src/Mod/Surfaces/Icons/BorderIco.xcf | Bin 0 -> 63790 bytes src/Mod/Surfaces/Icons/BorderIco.xpm | 1213 ++++++++++++++ src/Mod/Surfaces/Icons/ConvertIco.png | Bin 0 -> 6879 bytes src/Mod/Surfaces/Icons/ConvertIco.xcf | Bin 0 -> 62189 bytes src/Mod/Surfaces/Icons/ConvertTo4SidesIco.xpm | 1398 +++++++++++++++++ src/Mod/Surfaces/Icons/Ico.png | Bin 0 -> 7236 bytes src/Mod/Surfaces/Icons/Ico.xcf | Bin 0 -> 21174 bytes src/Mod/Surfaces/Icons/Ico.xpm | 749 +++++++++ src/Mod/Surfaces/Icons/IsoCurveIco.png | Bin 0 -> 6763 bytes src/Mod/Surfaces/Icons/IsoCurveIco.xcf | Bin 0 -> 64629 bytes src/Mod/Surfaces/Icons/IsoCurveIco.xpm | 1280 +++++++++++++++ src/Mod/Surfaces/Icons/SliceIco.png | Bin 0 -> 5547 bytes src/Mod/Surfaces/Icons/SliceIco.xcf | Bin 0 -> 61422 bytes src/Mod/Surfaces/Icons/SliceIco.xpm | 865 ++++++++++ src/Mod/Surfaces/InitGui.py | 38 + src/Mod/Surfaces/SurfGui.py | 75 + src/Mod/Surfaces/surfBorder/__init__.py | 48 + src/Mod/Surfaces/surfConvert/Preview.py | 79 + src/Mod/Surfaces/surfConvert/TaskPanel.py | 576 +++++++ src/Mod/Surfaces/surfConvert/TaskPanel.ui | 107 ++ src/Mod/Surfaces/surfConvert/__init__.py | 34 + src/Mod/Surfaces/surfISOCurve/PointTracker.py | 85 + src/Mod/Surfaces/surfISOCurve/Preview.py | 122 ++ src/Mod/Surfaces/surfISOCurve/TaskPanel.py | 165 ++ src/Mod/Surfaces/surfISOCurve/TaskPanel.ui | 65 + src/Mod/Surfaces/surfISOCurve/__init__.py | 34 + src/Mod/Surfaces/surfSlice/PointTracker.py | 68 + src/Mod/Surfaces/surfSlice/Preview.py | 97 ++ src/Mod/Surfaces/surfSlice/TaskPanel.py | 214 +++ src/Mod/Surfaces/surfSlice/TaskPanel.ui | 70 + src/Mod/Surfaces/surfSlice/__init__.py | 34 + src/Mod/Surfaces/surfUtils/Geometry.py | 171 ++ src/Mod/Surfaces/surfUtils/Math.py | 54 + src/Mod/Surfaces/surfUtils/Paths.py | 52 + src/Mod/Surfaces/surfUtils/Translator.py | 27 + src/Mod/Surfaces/surfUtils/__init__.py | 22 + 37 files changed, 7742 insertions(+) create mode 100644 src/Mod/Surfaces/Icons/BorderIco.png create mode 100644 src/Mod/Surfaces/Icons/BorderIco.xcf create mode 100644 src/Mod/Surfaces/Icons/BorderIco.xpm create mode 100644 src/Mod/Surfaces/Icons/ConvertIco.png create mode 100644 src/Mod/Surfaces/Icons/ConvertIco.xcf create mode 100644 src/Mod/Surfaces/Icons/ConvertTo4SidesIco.xpm create mode 100644 src/Mod/Surfaces/Icons/Ico.png create mode 100644 src/Mod/Surfaces/Icons/Ico.xcf create mode 100644 src/Mod/Surfaces/Icons/Ico.xpm create mode 100644 src/Mod/Surfaces/Icons/IsoCurveIco.png create mode 100644 src/Mod/Surfaces/Icons/IsoCurveIco.xcf create mode 100644 src/Mod/Surfaces/Icons/IsoCurveIco.xpm create mode 100644 src/Mod/Surfaces/Icons/SliceIco.png create mode 100644 src/Mod/Surfaces/Icons/SliceIco.xcf create mode 100644 src/Mod/Surfaces/Icons/SliceIco.xpm create mode 100644 src/Mod/Surfaces/InitGui.py create mode 100644 src/Mod/Surfaces/SurfGui.py create mode 100644 src/Mod/Surfaces/surfBorder/__init__.py create mode 100644 src/Mod/Surfaces/surfConvert/Preview.py create mode 100644 src/Mod/Surfaces/surfConvert/TaskPanel.py create mode 100644 src/Mod/Surfaces/surfConvert/TaskPanel.ui create mode 100644 src/Mod/Surfaces/surfConvert/__init__.py create mode 100644 src/Mod/Surfaces/surfISOCurve/PointTracker.py create mode 100644 src/Mod/Surfaces/surfISOCurve/Preview.py create mode 100644 src/Mod/Surfaces/surfISOCurve/TaskPanel.py create mode 100644 src/Mod/Surfaces/surfISOCurve/TaskPanel.ui create mode 100644 src/Mod/Surfaces/surfISOCurve/__init__.py create mode 100644 src/Mod/Surfaces/surfSlice/PointTracker.py create mode 100644 src/Mod/Surfaces/surfSlice/Preview.py create mode 100644 src/Mod/Surfaces/surfSlice/TaskPanel.py create mode 100644 src/Mod/Surfaces/surfSlice/TaskPanel.ui create mode 100644 src/Mod/Surfaces/surfSlice/__init__.py create mode 100644 src/Mod/Surfaces/surfUtils/Geometry.py create mode 100644 src/Mod/Surfaces/surfUtils/Math.py create mode 100644 src/Mod/Surfaces/surfUtils/Paths.py create mode 100644 src/Mod/Surfaces/surfUtils/Translator.py create mode 100644 src/Mod/Surfaces/surfUtils/__init__.py diff --git a/src/Mod/Surfaces/Icons/BorderIco.png b/src/Mod/Surfaces/Icons/BorderIco.png new file mode 100644 index 0000000000000000000000000000000000000000..8f6f024148322d436f9bd4a49c2a43e141353e93 GIT binary patch literal 5621 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 literal 0 HcmV?d00001 diff --git a/src/Mod/Surfaces/Icons/BorderIco.xcf b/src/Mod/Surfaces/Icons/BorderIco.xcf new file mode 100644 index 0000000000000000000000000000000000000000..0ecd7785b219fe331605eefec220d31b7de36231 GIT binary patch literal 63790 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 literal 0 HcmV?d00001 diff --git a/src/Mod/Surfaces/Icons/BorderIco.xpm b/src/Mod/Surfaces/Icons/BorderIco.xpm new file mode 100644 index 0000000000..a27c8de99b --- /dev/null +++ b/src/Mod/Surfaces/Icons/BorderIco.xpm @@ -0,0 +1,1213 @@ +/* XPM */ +static char * BorderIco_xpm[] = { +"128 128 1082 2", +" c None", +". c #FF0000", +"+ c #005F00", +"@ c #006100", +"# c #00AF05", +"$ c #00B105", +"% c #000000", +"& c #009B03", +"* c #006600", +"= c #008C02", +"- c #00B005", +"; c #00A305", +"> c #006F01", +", c #B5B5B5", +"' c #B4B4B3", +") c #B3B3B2", +"! c #B1B1B2", +"~ c #B1B0B0", +"{ c #AFAFAF", +"] c #AEAEAE", +"^ c #ADACAC", +"/ c #ABABAB", +"( c #AAAAAA", +"_ c #007100", +": c #00AC04", +"< c #008403", +"[ c #BDBDBD", +"} c #BCBDBD", +"| c #BCBCBC", +"1 c #BABBBA", +"2 c #B9B9BA", +"3 c #B8B8B9", +"4 c #B8B7B7", +"5 c #B6B6B6", +"6 c #B5B4B5", +"7 c #B3B3B3", +"8 c #B2B3B2", +"9 c #B1B1B1", +"0 c #B0B0B0", +"a c #AFAFAE", +"b c #ADADAD", +"c c #ACACAC", +"d c #A9A9A9", +"e c #A8A7A8", +"f c #A6A7A6", +"g c #A5A5A5", +"h c #00A704", +"i c #00AE05", +"j c #00AC05", +"k c #009703", +"l c #C1C2C2", +"m c #C1C1C1", +"n c #C0C1C1", +"o c #C0C0C0", +"p c #BFC0C0", +"q c #BFBFBF", +"r c #BEBDBE", +"s c #BCBDBC", +"t c #BBBBBB", +"u c #BABABA", +"v c #B9B9B9", +"w c #B7B8B8", +"x c #B7B6B7", +"y c #B4B4B4", +"z c #B2B1B1", +"A c #B0AFAF", +"B c #ADAEAD", +"C c #AAA9A9", +"D c #A7A7A7", +"E c #A6A6A5", +"F c #A4A4A4", +"G c #008A02", +"H c #00B104", +"I c #00AD05", +"J c #00AA06", +"K c #00A105", +"L c #007101", +"M c #006000", +"N c #C3C3C3", +"O c #C4C3C3", +"P c #C3C3C4", +"Q c #C3C4C3", +"R c #C3C2C3", +"S c #C2C1C2", +"T c #C1C1C2", +"U c #BFC0BF", +"V c #BEBEBF", +"W c #BDBDBE", +"X c #BDBCBC", +"Y c #BCBBBB", +"Z c #BABAB9", +"` c #B6B7B6", +" . c #AFB0AF", +".. c #AEAEAF", +"+. c #ACABAC", +"@. c #A9A9A8", +"#. c #A8A8A8", +"$. c #A6A6A6", +"%. c #A4A5A4", +"&. c #A3A3A3", +"*. c #A2A2A2", +"=. c #008B02", +"-. c #00B305", +";. c #00A906", +">. c #00A505", +",. c #008303", +"'. c #C2C2C3", +"). c #C4C4C4", +"!. c #C5C5C5", +"~. c #C4C5C5", +"{. c #C5C4C4", +"]. c #BEBEBE", +"^. c #BDBEBE", +"/. c #BBBABA", +"(. c #B8B8B8", +"_. c #B4B5B4", +":. c #B2B2B1", +"<. c #B1B1B0", +"[. c #AAABAB", +"}. c #A4A3A3", +"|. c #A1A0A1", +"1. c #00B405", +"2. c #00A706", +"3. c #00A506", +"4. c #009404", +"5. c #006800", +"6. c #C2C2C2", +"7. c #C3C3C2", +"8. c #C5C6C6", +"9. c #C6C6C6", +"0. c #C7C6C6", +"a. c #C6C6C5", +"b. c #C6C5C6", +"c. c #C4C5C4", +"d. c #C3C4C4", +"e. c #C3C2C2", +"f. c #C1C0C0", +"g. c #C0BFBF", +"h. c #BDBCBD", +"i. c #BBBCBB", +"j. c #B8B8B7", +"k. c #B4B5B5", +"l. c #B3B3B4", +"m. c #B2B1B2", +"n. c #ACADAC", +"o. c #A8A9A8", +"p. c #A7A7A6", +"q. c #A3A4A4", +"r. c #A3A3A2", +"s. c #A1A1A1", +"t. c #9FA0A0", +"u. c #006700", +"v. c #007700", +"w. c #008601", +"x. c #009202", +"y. c #009D02", +"z. c #00AC03", +"A. c #00B503", +"B. c #00B404", +"C. c #00A806", +"D. c #00A306", +"E. c #009C05", +"F. c #007702", +"G. c #C2C2C1", +"H. c #C2C3C2", +"I. c #C5C5C4", +"J. c #C7C7C7", +"K. c #C8C8C7", +"L. c #C6C6C7", +"M. c #C5C4C5", +"N. c #BFBFBE", +"O. c #BABBBB", +"P. c #BAB9BA", +"Q. c #B8B7B8", +"R. c #B7B7B6", +"S. c #B2B3B3", +"T. c #AFB0B0", +"U. c #ABACAB", +"V. c #A6A5A6", +"W. c #A4A4A5", +"X. c #9E9E9F", +"Y. c #00A201", +"Z. c #00B302", +"`. c #00C202", +" + c #00C803", +".+ c #00C403", +"++ c #00C204", +"@+ c #00C004", +"#+ c #00BD04", +"$+ c #00BA04", +"%+ c #00B804", +"&+ c #00B504", +"*+ c #00AC06", +"=+ c #00A905", +"-+ c #00A406", +";+ c #00A006", +">+ c #009E07", +",+ c #008A05", +"'+ c #006500", +")+ c #C1C1C0", +"!+ c #C9C8C9", +"~+ c #C9C9C9", +"{+ c #C9C9C8", +"]+ c #C8C9C9", +"^+ c #C8C8C8", +"/+ c #C7C6C7", +"(+ c #B7B7B7", +"_+ c #B6B5B5", +":+ c #B1B2B2", +"<+ c #B0AFB0", +"[+ c #A8A9A9", +"}+ c #A5A4A5", +"|+ c #A2A2A1", +"1+ c #286F28", +"2+ c #276F27", +"3+ c #004700", +"4+ c #007D00", +"5+ c #009500", +"6+ c #00AC00", +"7+ c #00D003", +"8+ c #00CD02", +"9+ c #00CB03", +"0+ c #00C603", +"a+ c #00C303", +"b+ c #00C003", +"c+ c #00BE04", +"d+ c #00BB04", +"e+ c #00B905", +"f+ c #00B704", +"g+ c #00AE06", +"h+ c #00AB05", +"i+ c #00A606", +"j+ c #00A107", +"k+ c #009F07", +"l+ c #009B07", +"m+ c #009506", +"n+ c #007602", +"o+ c #C7C7C6", +"p+ c #C9CACA", +"q+ c #CACBCB", +"r+ c #CACBCA", +"s+ c #CAC9CA", +"t+ c #C7C7C8", +"u+ c #BCBBBC", +"v+ c #BABABB", +"w+ c #B9B8B9", +"x+ c #B1B2B1", +"y+ c #AEAFAE", +"z+ c #ADAEAE", +"A+ c #AAAAAB", +"B+ c #A8A8A7", +"C+ c #297029", +"D+ c #287028", +"E+ c #277427", +"F+ c #278627", +"G+ c #007200", +"H+ c #008600", +"I+ c #009A00", +"J+ c #00E100", +"K+ c #00E101", +"L+ c #00DE01", +"M+ c #00D102", +"N+ c #00CE02", +"O+ c #00C903", +"P+ c #00C703", +"Q+ c #00C404", +"R+ c #00C104", +"S+ c #00BF04", +"T+ c #00BC04", +"U+ c #00A206", +"V+ c #009F06", +"W+ c #009C07", +"X+ c #009907", +"Y+ c #009807", +"Z+ c #008906", +"`+ c #006801", +" @ c #C0C0C1", +".@ c #C8C9C8", +"+@ c #CACACA", +"@@ c #CBCBCB", +"#@ c #CCCCCC", +"$@ c #C9CAC9", +"%@ c #C9C8C8", +"&@ c #BFBEBE", +"*@ c #B5B5B4", +"=@ c #B2B2B2", +"-@ c #2A712A", +";@ c #297D29", +">@ c #289328", +",@ c #28AA29", +"'@ c #28BD28", +")@ c #27CC28", +"!@ c #27CD28", +"~@ c #27CF28", +"{@ c #00AA00", +"]@ c #04DA04", +"^@ c #00E400", +"/@ c #00E201", +"(@ c #00E001", +"_@ c #00CF02", +":@ c #00CD03", +"<@ c #00CA03", +"[@ c #00B205", +"}@ c #00A207", +"|@ c #009D07", +"1@ c #009A07", +"2@ c #009808", +"3@ c #009606", +"4@ c #008004", +"5@ c #006300", +"6@ c #CBCACB", +"7@ c #CDCECD", +"8@ c #CECDCE", +"9@ c #CDCDCD", +"0@ c #CBCBCC", +"a@ c #BBBBBA", +"b@ c #B7B6B6", +"c@ c #B5B4B4", +"d@ c #B0B1B1", +"e@ c #AEADAD", +"f@ c #ACADAD", +"g@ c #2A722A", +"h@ c #2A9F2A", +"i@ c #29BA2A", +"j@ c #29C62A", +"k@ c #28C729", +"l@ c #28CA29", +"m@ c #27CE28", +"n@ c #27D027", +"o@ c #26D127", +"p@ c #00AD00", +"q@ c #00E600", +"r@ c #00E401", +"s@ c #00DF01", +"t@ c #00CF03", +"u@ c #00CC02", +"v@ c #00C503", +"w@ c #00C103", +"x@ c #00BF03", +"y@ c #00B904", +"z@ c #00B505", +"A@ c #00AF06", +"B@ c #00AA05", +"C@ c #00A507", +"D@ c #009D06", +"E@ c #009406", +"F@ c #007803", +"G@ c #C6C7C6", +"H@ c #CACACB", +"I@ c #CFCFCE", +"J@ c #C8C7C8", +"K@ c #BAB9B9", +"L@ c #B6B6B7", +"M@ c #AFAEAF", +"N@ c #297529", +"O@ c #29BB2A", +"P@ c #29C82A", +"Q@ c #28C929", +"R@ c #28CB29", +"S@ c #00AF00", +"T@ c #00E500", +"U@ c #00DC01", +"V@ c #00C203", +"W@ c #00BA05", +"X@ c #009006", +"Y@ c #C4C4C3", +"Z@ c #C9C9CA", +"`@ c #CECECE", +" # c #CBCCCC", +".# c #C2C1C1", +"+# c #C0C1C0", +"@# c #BEBEBD", +"## c #BCBCBB", +"$# c #B7B8B7", +"%# c #B0B1B0", +"&# c #ADADAE", +"*# c #298E29", +"=# c #28C72A", +"-# c #27CF27", +";# c #26D326", +"># c #05DF05", +",# c #00DD01", +"'# c #00CC03", +")# c #00C504", +"!# c #00B805", +"~# c #00A705", +"{# c #C7C8C8", +"]# c #CACAC9", +"^# c #CBCCCB", +"/# c #BFBEBF", +"(# c #B3B4B3", +"_# c #AEAFAF", +":# c #ACACAB", +"<# c #29B029", +"[# c #28C82A", +"}# c #27CC29", +"|# c #27CE27", +"1# c #26CF26", +"2# c #26D126", +"3# c #00A900", +"4# c #00B705", +"5# c #009207", +"6# c #C5C5C6", +"7# c #CBCACA", +"8# c #C6C5C5", +"9# c #C2C3C3", +"0# c #BEBFBE", +"a# c #A8A7A7", +"b# c #298229", +"c# c #28C629", +"d# c #27CB28", +"e# c #26CE27", +"f# c #26CF27", +"g# c #25CF26", +"h# c #00A800", +"i# c #00A700", +"j# c #00DB01", +"k# c #00D802", +"l# c #00B605", +"m# c #00A106", +"n# c #007A03", +"o# c #B8B9B8", +"p# c #B5B6B5", +"q# c #28A829", +"r# c #28C829", +"s# c #27CA29", +"t# c #27CC27", +"u# c #26CC27", +"v# c #26CD27", +"w# c #26CD26", +"x# c #25CC26", +"y# c #00A600", +"z# c #00A500", +"A# c #00D902", +"B# c #00D701", +"C# c #00BE03", +"D# c #C8C7C7", +"E# c #C7C8C7", +"F# c #C5C6C5", +"G# c #C4C4C5", +"H# c #B9BAB9", +"I# c #B6B7B7", +"J# c #B0B0AF", +"K# c #ADADAC", +"L# c #287D28", +"M# c #28C429", +"N# c #27C829", +"O# c #27C928", +"P# c #27CA28", +"Q# c #26CB27", +"R# c #26CA26", +"S# c #25CA27", +"T# c #00A400", +"U# c #00A200", +"V# c #00D502", +"W# c #00AB06", +"X# c #009E06", +"Y# c #008404", +"Z# c #B9B9B8", +"`# c #B1B0B1", +" $ c #ABAAAB", +".$ c #AAA9AA", +"+$ c #A9A8A9", +"@$ c #A5A5A6", +"#$ c #28A329", +"$$ c #28C529", +"%$ c #27C729", +"&$ c #27C728", +"*$ c #26C927", +"=$ c #26C928", +"-$ c #25C926", +";$ c #25C826", +">$ c #25C726", +",$ c #00A101", +"'$ c #00D402", +")$ c #00C604", +"!$ c #00A307", +"~$ c #006C01", +"{$ c #C1C0C1", +"]$ c #AEADAE", +"^$ c #ABAAAA", +"/$ c #287728", +"($ c #27C028", +"_$ c #27C529", +":$ c #27C628", +"<$ c #26C628", +"[$ c #26C727", +"}$ c #25C727", +"|$ c #25C627", +"1$ c #25C526", +"2$ c #009F00", +"3$ c #009E01", +"4$ c #00D002", +"5$ c #008D05", +"6$ c #B8B9B9", +"7$ c #B7B7B8", +"8$ c #ADACAD", +"9$ c #A7A7A8", +"0$ c #27A028", +"a$ c #27C328", +"b$ c #27C428", +"c$ c #26C428", +"d$ c #26C527", +"e$ c #25C426", +"f$ c #25C326", +"g$ c #24C226", +"h$ c #009D01", +"i$ c #009C01", +"j$ c #00B604", +"k$ c #007703", +"l$ c #0B0B0B", +"m$ c #BDBDBC", +"n$ c #B5B5B6", +"o$ c #ACACAD", +"p$ c #A9AAAA", +"q$ c #A5A6A5", +"r$ c #A2A2A3", +"s$ c #A1A2A1", +"t$ c #277927", +"u$ c #27C228", +"v$ c #26C328", +"w$ c #26C227", +"x$ c #25C227", +"y$ c #25C126", +"z$ c #25C226", +"A$ c #24C026", +"B$ c #009B01", +"C$ c #009901", +"D$ c #00A805", +"E$ c #009C06", +"F$ c #009607", +"G$ c #006200", +"H$ c #C0BFC0", +"I$ c #ABACAC", +"J$ c #276E27", +"K$ c #27A428", +"L$ c #26C028", +"M$ c #26C128", +"N$ c #25C028", +"O$ c #25C127", +"P$ c #25C026", +"Q$ c #24BF27", +"R$ c #24BE26", +"S$ c #24BD26", +"T$ c #009801", +"U$ c #009802", +"V$ c #00C902", +"W$ c #008504", +"X$ c #BBBABB", +"Y$ c #B9BABA", +"Z$ c #A0A0A1", +"`$ c #9F9F9F", +" % c #278227", +".% c #26BE28", +"+% c #26BF28", +"@% c #25BF28", +"#% c #25BE27", +"$% c #24BB25", +"%% c #009602", +"&% c #009501", +"*% c #009502", +"=% c #00A904", +"-% c #00A005", +";% c #009504", +">% c #009204", +",% c #009104", +"'% c #007102", +")% c #BDBEBD", +"!% c #A2A1A1", +"~% c #A0A0A0", +"{% c #9F9F9E", +"]% c #26B027", +"^% c #26BC28", +"/% c #25BC27", +"(% c #24BB26", +"_% c #24BA26", +":% c #23B926", +"<% c #23B925", +"[% c #009402", +"}% c #00AF04", +"|% c #009803", +"1% c #007701", +"2% c #009407", +"3% c #B4B3B3", +"4% c #A9A8A8", +"5% c #A7A8A7", +"6% c #A4A5A5", +"7% c #A09F9F", +"8% c #9E9E9E", +"9% c #9A9C9B", +"0% c #269127", +"a% c #26BA28", +"b% c #26BB28", +"c% c #25BA27", +"d% c #25B927", +"e% c #24B926", +"f% c #23B726", +"g% c #23B625", +"h% c #009102", +"i% c #04B106", +"j% c #00A304", +"k% c #008F05", +"l% c #008104", +"m% c #B9B8B8", +"n% c #ACABAB", +"o% c #A5A4A4", +"p% c #A2A3A3", +"q% c #9D9E9D", +"r% c #9C9D9C", +"s% c #266E26", +"t% c #267426", +"u% c #26B728", +"v% c #25B828", +"w% c #25B827", +"x% c #25B728", +"y% c #24B727", +"z% c #24B626", +"A% c #23B526", +"B% c #23B426", +"C% c #008F02", +"D% c #008E02", +"E% c #00B204", +"F% c #008604", +"G% c #006D01", +"H% c #AAAAA9", +"I% c #A5A5A4", +"J% c #9C9C9C", +"K% c #266D26", +"L% c #259E27", +"M% c #25B628", +"N% c #24B627", +"O% c #24B527", +"P% c #24B427", +"Q% c #23B427", +"R% c #23B326", +"S% c #23B125", +"T% c #008D02", +"U% c #01BB05", +"V% c #007401", +"W% c #007E03", +"X% c #009206", +"Y% c #B3B2B3", +"Z% c #A9A9AA", +"`% c #A6A7A7", +" & c #A1A0A0", +".& c #9B9B9B", +"+& c #9A9A9A", +"@& c #258126", +"#& c #25B427", +"$& c #25B428", +"%& c #24B327", +"&& c #24B326", +"*& c #23B226", +"=& c #23B126", +"-& c #23B026", +";& c #22AF25", +">& c #008902", +",& c #007F04", +"'& c #AFAFB0", +")& c #ABABAA", +"!& c #A7A6A6", +"~& c #9F9FA0", +"{& c #9E9F9E", +"]& c #9D9D9D", +"^& c #9C9B9C", +"/& c #9A9A9B", +"(& c #99999A", +"_& c #256C25", +":& c #25A927", +"<& c #25B228", +"[& c #24B127", +"}& c #23AF26", +"|& c #23AE26", +"1& c #22AE25", +"2& c #22AC25", +"3& c #007002", +"4& c #B2B2B3", +"5& c #A5A6A6", +"6& c #A0A09F", +"7& c #9F9E9F", +"8& c #9A9999", +"9& c #999999", +"0& c #939693", +"a& c #259126", +"b& c #24B028", +"c& c #24AF27", +"d& c #24AE26", +"e& c #23AD26", +"f& c #23AC25", +"g& c #22AA25", +"h& c #008703", +"i& c #008602", +"j& c #05B00A", +"k& c #006A01", +"l& c #009106", +"m& c #AEAEAD", +"n& c #A4A4A3", +"o& c #A3A2A3", +"p& c #9D9E9E", +"q& c #9C9C9D", +"r& c #9C9B9B", +"s& c #999998", +"t& c #979797", +"u& c #979696", +"v& c #257925", +"w& c #24AD28", +"x& c #24AE27", +"y& c #24AD27", +"z& c #23AC26", +"A& c #23AB27", +"B& c #23AB26", +"C& c #22AB25", +"D& c #22A925", +"E& c #22A825", +"F& c #21A725", +"G& c #008503", +"H& c #007202", +"I& c #006400", +"J& c #007E04", +"K& c #AFAEAE", +"L& c #ABABAC", +"M& c #9A9B9B", +"N& c #989898", +"O& c #969696", +"P& c #246C25", +"Q& c #24A327", +"R& c #24AA28", +"S& c #23AA27", +"T& c #23A926", +"U& c #22A826", +"V& c #22A726", +"W& c #21A625", +"X& c #004A00", +"Y& c #009706", +"Z& c #006B01", +"`& c #AAABAA", +" * c #A7A8A8", +".* c #9C9D9D", +"+* c #9A999A", +"@* c #999898", +"#* c #979897", +"$* c #979697", +"%* c #959495", +"&* c #919392", +"** c #246B24", +"=* c #249126", +"-* c #24A927", +";* c #23A927", +">* c #23A827", +",* c #23A726", +"'* c #22A525", +")* c #21A425", +"!* c #219A25", +"~* c #004B00", +"{* c #009107", +"]* c #A1A2A2", +"^* c #A0A1A0", +"/* c #9B9C9B", +"(* c #9A9B9A", +"_* c #959596", +":* c #949594", +"<* c #939393", +"[* c #248025", +"}* c #23A627", +"|* c #23A727", +"1* c #23A626", +"2* c #22A626", +"3* c #22A426", +"4* c #22A325", +"5* c #219D24", +"6* c #217021", +"7* c #206820", +"8* c #008C05", +"9* c #A2A3A2", +"0* c #A2A1A2", +"a* c #A1A1A0", +"b* c #9F9E9E", +"c* c #9E9E9D", +"d* c #9B9B9C", +"e* c #969695", +"f* c #959595", +"g* c #939493", +"h* c #929292", +"i* c #247023", +"j* c #23A427", +"k* c #23A327", +"l* c #22A326", +"m* c #22A226", +"n* c #21A025", +"o* c #217622", +"p* c #216821", +"q* c #A09FA0", +"r* c #9D9C9D", +"s* c #939494", +"t* c #919292", +"u* c #236B23", +"v* c #239927", +"w* c #23A227", +"x* c #22A227", +"y* c #22A127", +"z* c #22A026", +"A* c #219F26", +"B* c #217F23", +"C* c #828282", +"D* c #A4A3A4", +"E* c #9FA09F", +"F* c #969796", +"G* c #949494", +"H* c #929192", +"I* c #909191", +"J* c #8F8F8F", +"K* c #236A23", +"L* c #238A25", +"M* c #239F26", +"N* c #229F27", +"O* c #229F26", +"P* c #218524", +"Q* c #838382", +"R* c #818282", +"S* c #808180", +"T* c #A8A8A9", +"U* c #9E9D9D", +"V* c #9B9A9B", +"W* c #999A9A", +"X* c #979798", +"Y* c #909090", +"Z* c #8E8F8F", +"`* c #237B24", +" = c #229E27", +".= c #229D26", +"+= c #218E25", +"@= c #216921", +"#= c #838383", +"$= c #818181", +"%= c #7F7F7F", +"&= c #006F02", +"*= c #A1A1A2", +"== c #A0A1A1", +"-= c #989897", +";= c #929393", +">= c #919192", +",= c #8E8E8F", +"'= c #8E8E8E", +")= c #227022", +"!= c #229B27", +"~= c #229B26", +"{= c #229225", +"]= c #216B21", +"^= c #718071", +"/= c #818182", +"(= c #A6A5A5", +"_= c #9D9D9E", +":= c #989797", +"<= c #929293", +"[= c #919291", +"}= c #909190", +"|= c #8D8D8D", +"1= c #226922", +"2= c #229626", +"3= c #229426", +"4= c #216E21", +"5= c #838384", +"6= c #818180", +"7= c #7F8080", +"8= c #7E7E7F", +"9= c #7D7D7D", +"0= c #A3A3A4", +"a= c #9E9F9F", +"b= c #999A99", +"c= c #989998", +"d= c #969697", +"e= c #969596", +"f= c #949393", +"g= c #929392", +"h= c #919191", +"i= c #8C8B8B", +"j= c #898A88", +"k= c #228D25", +"l= c #217222", +"m= c #838484", +"n= c #828382", +"o= c #818281", +"p= c #808080", +"q= c #7D7E7E", +"r= c #7D7D7C", +"s= c #9D9D9C", +"t= c #959594", +"u= c #949394", +"v= c #939292", +"w= c #8F9090", +"x= c #8E8F8E", +"y= c #8C8C8C", +"z= c #8B8B8B", +"A= c #8A8A8A", +"B= c #217422", +"C= c #848484", +"D= c #828283", +"E= c #818081", +"F= c #7E7E7E", +"G= c #7C7B7C", +"H= c #969595", +"I= c #959494", +"J= c #8F8F90", +"K= c #898989", +"L= c #858484", +"M= c #838483", +"N= c #807F7F", +"O= c #7C7C7C", +"P= c #7B7B7A", +"Q= c #7A7A79", +"R= c #9C9C9B", +"S= c #9B9B9A", +"T= c #929191", +"U= c #8F908F", +"V= c #888888", +"W= c #858584", +"X= c #828281", +"Y= c #7F7E7F", +"Z= c #7E7D7E", +"`= c #7D7C7D", +" - c #7B7B7B", +".- c #7A7A7A", +"+- c #797979", +"@- c #9A9A99", +"#- c #979898", +"$- c #949595", +"%- c #929291", +"&- c #908F8F", +"*- c #8E8E8D", +"=- c #8C8D8C", +"-- c #898A89", +";- c #878787", +">- c #858686", +",- c #858585", +"'- c #818080", +")- c #7B7C7C", +"!- c #7A7B7A", +"~- c #787878", +"{- c #9D9C9C", +"]- c #989798", +"^- c #959696", +"/- c #8A8B8A", +"(- c #868686", +"_- c #808081", +":- c #7F807F", +"<- c #7A7979", +"[- c #787979", +"}- c #777777", +"|- c #9B9C9C", +"1- c #949493", +"2- c #919090", +"3- c #8F8F8E", +"4- c #8C8C8D", +"5- c #898988", +"6- c #888787", +"7- c #828182", +"8- c #808181", +"9- c #7F7F80", +"0- c #7E7F7E", +"a- c #7D7D7E", +"b- c #7D7C7C", +"c- c #797879", +"d- c #777878", +"e- c #767676", +"f- c #969797", +"g- c #90908F", +"h- c #8D8D8E", +"i- c #89898A", +"j- c #7F7E7E", +"k- c #7E7E7D", +"l- c #7C7B7B", +"m- c #787877", +"n- c #757576", +"o- c #8E8D8D", +"p- c #8D8C8D", +"q- c #7A7A7B", +"r- c #787978", +"s- c #767576", +"t- c #757475", +"u- c #979796", +"v- c #898A8A", +"w- c #898889", +"x- c #787879", +"y- c #757575", +"z- c #747473", +"A- c #959695", +"B- c #939293", +"C- c #919091", +"D- c #8C8B8C", +"E- c #8A8989", +"F- c #878788", +"G- c #848585", +"H- c #787777", +"I- c #747474", +"J- c #737373", +"K- c #898888", +"L- c #878887", +"M- c #878686", +"N- c #848483", +"O- c #80807F", +"P- c #7C7D7D", +"Q- c #797A7A", +"R- c #787778", +"S- c #727272", +"T- c #888889", +"U- c #868586", +"V- c #848485", +"W- c #838282", +"X- c #777677", +"Y- c #767575", +"Z- c #747475", +"`- c #737473", +" ; c #717171", +".; c #8E8D8E", +"+; c #8D8D8C", +"@; c #8C8C8B", +"#; c #888788", +"$; c #797978", +"%; c #727171", +"&; c #707170", +"*; c #858685", +"=; c #828383", +"-; c #7F7F7E", +";; c #747575", +">; c #737372", +",; c #717271", +"'; c #707070", +"); c #6F7070", +"!; c #8D8E8D", +"~; c #8B8B8A", +"{; c #868786", +"]; c #858586", +"^; c #7A797A", +"/; c #747374", +"(; c #727373", +"_; c #707171", +":; c #6F6F70", +"<; c #6E6F6E", +"[; c #8D8C8C", +"}; c #8B8A8A", +"|; c #8A8A89", +"1; c #878786", +"2; c #7E7D7D", +"3; c #7C7C7D", +"4; c #7B7B7C", +"5; c #7B7A7A", +"6; c #757676", +"7; c #727172", +"8; c #717170", +"9; c #6E6F6F", +"0; c #6D6D6D", +"a; c #8A8B8B", +"b; c #888988", +"c; c #868685", +"d; c #757574", +"e; c #737273", +"f; c #727271", +"g; c #70706F", +"h; c #6F6E6F", +"i; c #6D6D6E", +"j; c #878687", +"k; c #848384", +"l; c #7C7C7B", +"m; c #767677", +"n; c #757474", +"o; c #6F6E6E", +"p; c #6D6E6E", +"q; c #868787", +"r; c #7A7B7B", +"s; c #757675", +"t; c #848383", +"u; c #828181", +"v; c #79797A", +"w; c #707071", +"x; c #6F6F6E", +"y; c #7B7C7B", +"z; c #807F80", +"A; c #7D7E7D", +"B; c #7C7D7C", +"C; c #7B7A7B", +"D; c #797878", +"E; c #030303", +" ", +" ", +" ", +" ", +" ", +" . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . ", +" . . . . . . . . + . . . . . . ", +" . . . . . . . + + + . . . . . . ", +" . . . . . . + + + . . . . . ", +" . . . . . . + @ + + . . . . . . ", +" . . . . . . . + + # + + . . . . . . ", +" . . . . . . + $ # + + + . . . . . ", +" % % % % % % % % % % % . . . . . . + + $ & * + + . . . . . . ", +" % % % % % % % % % % % % % % % % % % % % % % % . . . . . + = - ; > + + . . . . . ", +" % % % % % % % % % % % % % , ' ) ! ~ { ] ^ / ( % % % % % % . . . . . . + _ $ # : < + + + . . . . . . ", +" % % % % % % % % % % [ } | 1 2 3 4 5 6 7 8 9 0 a b c / d e f g % % % % . . . . . + + h - i j k * + + . . . . . ", +" % % % % % % % % l m n o p q r s t u v w x 5 y 7 z 9 A B ^ / C d D E F % % % % . . . . . . + G H # I J K L + + M . . . . . . ", +" % % % % % % N O P Q N R S T n U V W X Y Z v w ` , y 7 9 ...b +.( @.#.$.%.&.*.% % % . . . . . + =.-.- i j ;.>.,.M + + . . . . . ", +" % % % % % '.Q ).).!.!.~.{.).O R S m q ].^.| /.Z (.x 5 _.7 :.<.{ b c [.d #.f g }.*.|.% % % . . . . . + + + + + + + = 1.$ # j J 2.3.4.5.+ + . . . . . . ", +" % % % % 6.7.).~.!.8.9.0.9.a.b.c.d.e.l f.g.].h.i.u 3 j.` k.l.m.0 { ] n./ ( o.p.g q.r.s.t.% % % . . . . . + + + + u.v.w.x.y.z.A.B.-.- I J C.3.D.E.F.+ + + . . . . . ", +" % % % % o G.H.O I.a.0.J.J.K.J.J.L.a.M.).6.m o N.[ X O.P.Q.R., ' S.9 T.] b U.( @.D V.W.r.*.t.X.% % + + + + . . . . . . Y.Z.`. +.+++@+#+$+%+&+-.- i *+=+3.-+;+>+,+'++ + . . . . . ", +" % % % ].g.)+6.P ).9.J.K.!+~+~+{+]+^+/+b.I.N 6.m U ^.} t Z v (+_+y ) :+<+a b U.( [+D E }+&.|+1+2+3+3+3++ * 4+5+6+. . . . . 7+8+9+ +0+a+b+c+d+e+f+-.$ g+h+;.i+D.j+k+l+m+n++ + + . . . . . ", +" % % % % N.o G.N ).a.o+^+~+p+q+q+r+s+~+t+o+!.).'.T o ].[ u+v+w+Q.5 6 7 x+0 y+z+c A+d B+C+C+D+1+1+E+F+G+H+I+J+K+K+L+. . . . . M+N+9+O+P+Q+R+S+T+e+f+1.$ # j ;.2.-+U+V+W+X+Y+Z+`++ + + . . . . . ", +" % % % % @G.P c.9.t+.@+@@@#@#@#@q+$@%@J.9.).7.G.o &@[ | 1 v (.5 *@' =@0 { b c -@-@-@C+;@>@,@'@)@!@~@{@{@]@^@/@(@L+. . . . . _@:@<@P+.+++S+#+$+f+&+[@# *+J 2.-+}@k+|@1@2@Y+3@4@5@+ + + . . . . . ", +" % % % 6.).~.0.^+~+6@#@7@8@9@0@+@~+K.9.).O 6.o q ^.| a@v (.b@c@7 =@d@{ e@f@g@-@h@i@j@k@l@l@!@m@n@o@6+p@q@r@K+s@. . . . . t@u@O+P+v@w@x@T+y@f+z@$ A@j B@2.C@}@k+D@1@2@Y+Y+Y+E@F@@ + + . . . . . ", +" % % 6.Q !.G@^+$@H@#@8@I@9@#@+@~+J@9.!.N l f.q [ | /.K@w L@, l.:.9 M@z+c [.-@N@O@j@P@Q@R@)@~@n@o@p@S@p@T@/@(@U@. . . . . :@<@P+.+V@S+T+W@f+B.[@# I ;.C.3.U+k+|@X+Y+Y+Y+Y+Y+X@M + . . . . . ", +" % % % Y@!.9.^+Z@q+#@9@`@9@ #r+!+^+9.!.N .#+#q @###/.v $#` _.l.=@%#{ &#c ( -@-@*#j@=#l@R@!@m@-#o@;#p@6+>#K+s@,#. . . . . '#<@P+)#w@S+#+$+!#B.[@# j B@~#3.U+k+W+1@Y+2@Y+2@2@n++ + . . . . . ", +" % % % M.a.{#.@]#@@#@#@^#@@p+^+J.9.M.N l o /#[ u+u v w 5 y (#=@0 _#b :#/ d -@C+<#=#[#l@}#!@|#1#2#2#{@3#K+L+U@. . . . . u@<@P+.+V@S+#+y@4#B.[@# I J 2.3.}@k+W+1@Y+Y+Y+Y+5#M + . . . . . ", +" % % % 6#J.^+~++@7#q+H@p+]+{#G@8#).9#m o 0#[ t /.v $#5 y 7 x+0 M@b +.[.d a#C+b#c#[#l@d#)@|#e#f#g#h#i#i#,#j#k#. . . . . +P+.+w@S+T+y@l#B.[@g+j J 2.3.m#k+W+X+Y+Y+Y+Y+n#+ + . . . . . ", +" % % I.9./+K.!+~+~+~+.@K.J.8#{.N 6.f.q ].} u+u o#(+p#y 7 9 0 y+b +.A+d #.C+C+q#k@r#s#d#t#u#v#w#x#y#z#j#A#B#. . . . . +0+a+@+C#d+y@l#1.$ i *+J i+-+j+>+l+X+Y+Y+Y+3@5@+ . . . . . ", +" % % % !.9.o+{#{#D#^+E#0.F#G#O H..#o 0#W | t H#(.I#_+l.7 9 J#] K#U.( [+D g C+L#M#k@N#O#P#Q#Q#R#S#T#T#U#B#V#. . . . . P+v@a+@+c+d+!#z@-.- I W#=+i+-+j+X#l+X+Y+Y+Y+Y#+ + . . . . . ", +" % % d.!.8#b.9.L.o+9.!.I.).7..#f.U ].[ u+u Z#j.5 , 7 =@`# .] ^ $.$+$D @$C+D+#$$$%$&$*$=$*$-$;$>$Y.,$V#'$M+. . . . )$Q+w@S+T+W@f+&+-.A@I B@2.3.!$;+X#l+Y+2@Y+Y+~$+ . . . . . ", +" % % % P ).).!.!.{.M.).O H.6.{$U /#[ | 1 K@(.R.p#y 7 m.0 { ]$c ^$C B+f g q.1+/$($_$:$<$[$[$}$|$1$2$3$3$M+4$. . . . . a+b+c+d+y@l#1.[@# j =+~#-+U+V+|@1@Y+Y+Y+5$+ + . . . . . ", +" % % 6.R N N P O N '.6.m f.p 0#W | t u 6$7$` , l.) 9 0 ] 8$c A+d 9$$.}+&.1+1+0$a$b$c$d$d$1$e$f$g$h$i$t@N+. . . . . R+S+T+$+!#j$-.$ g+*+;.2.-+j+k+W+1@Y+Y+2@k$+ . . . . . ", +" l$% % m 6.S 6.6.G.S )+o q 0#^.m$i.u v (.R.n$y 7 =@0 { ] o$/ p$#.p.q$%.r$s$1+t$($u$v$w$x$x$y$z$A$B$B$C$u@<@. . . . x@C#d+y@l#z@[@# I B@D$i+D.m#>+E$X+2@Y+F$G$+ . . . . . ", +" % % p o )+o n @H$p N.].^.s i.u K@3 (+5 6 7 ) 9 T.] b I$( d e D g F *.s.1+J$K$L$L$M$N$O$P$Q$R$S$T$U$V$P+. . . . . T+W@%+&+-.$ i j ;.2.3.U+V+|@l+Y+Y+Y+W$+ + . . . . . ", +" % % % q q q q q /#].[ [ | t X$Y$3 (+5 , y 7 m.%#{ z+c / ( #.D $.W.&.*.Z$`$J$ %.%+%+%@%#%#%R$S$$%%%&%*%v@. . . . . $+!#4#1.[@# I =%-%;%>%,%X#|@X+Y+Y+2@'%+ . . . . . ", +" % % ^.].^.^.)%[ m$| i.t u v (.(.5 _+*@7 :+%#<+..b c ^$C #.f q$F r$!%~%{%J$J$]%^%/%/%/%/%(%_%:%<%[%x..+. . . . . y@j$1.[@}%|%1%+ + + + + 3@l+X+Y+2@2%M + . . . . . ", +" % % % | | X | ##Y a@u K@w+(.(+` p#y 3%) 9 0 a e@c / ( 4%5%$.6%&.r$s.7%8%9%J$0%a%b%c%c%d%e%e%f%g%x.h%i%@+. . . . 4#z@-.j%> + + + + k%X+Y+2@Y+l%+ + . . . . . ", +" % % t /.t X$1 Z Z v m%(+(+5 , y 3%=@z 0 { z+K#n%A+d #.D g o%p%|+~%{%q%r%s%t%u%v%w%x%y%y%z%A%B%B%C%D%c+. . . . . E%= @ + + + F%X+Y+Y+Y+G%+ . . . . . ", +" % % v 2 v v Z#o#(.(+(+L@p#c@y 7 =@x+~ { ] b I$/ H%#.D E I%&.r$s.t.8%r%J%s%K%L%M%M%N%O%P%Q%B%R%S%D%T%U%. . . . . V%+ + + + W%Y+Y+2@X%+ + . . . . ", +" % % (.$#j.w (+I#5 _+, _.' Y%=@9 0 { ] b c / Z%@.a#`%g &.*.|+ &`$8%r%.&+&K%@&#&$&%&&&%&*&=&-&;&= =.>&. . . . . + + + F.Y+2@Y+,&+ . . . . . ", +" % % ` 5 5 5 5 n$, y (#7 =@x+<.'&{ ] e@o$)&( @.B+!&E %.&.*.s.~&{&]&^&/&(&K%_&:&<&[&[&[&-&}&|&1&2&>&>&l#. . . . + + 3&Y+Y+Y+~$+ . . . . . ", +" % % % , , c@y y l.7 4&:.9 %#0 _#] b c / ( d #.D 5&}+&.*.s.6&7&]&r%.&8&9&0&_&a&b&c&c&d&|&e&f&2&g&h&i&j&. . . . + k&Y+Y+l&+ + . . . . ", +" % % (#3%l.Y%S.=@! z 9 0 { ] m&8$I$/ .$[+e D $.%.n&o&s. &`$p&q&r&+&s&t&u&_&v&w&x&y&z&A&B&C&D&E&F&G&H&. . . . . + I&Y+Y+J&+ . . . . . ", +" % % =@:+:+9 9 <.%#<+{ K&m&b c L&/ ( @.#.D $.g q.&.*. &7%8%]&J%M&(&N&t&O&_&P&Q&R&S&S&T&U&U&V&W&W&F.X&. . . . . + + Y&Y+Z&+ . . . . . ", +" % % % `#0 0 T. ._#K&B b f@c / `&.$+$ *D $.g F &.|+s.t.{&8%.*.&+*@*#*$*%*&***=*-*;*>*,*V&V&'*)*!*~*3+. . . . . + l&{*+ + . . . . . ", +" % % { { K&] ] B b 8$c I$[.d d #.e $.E 6%q.&.]*^*~&X.q%J%/*(*9&N&$*_*:*<***[*}*|*1*2*3*3*4*5*6*7*3+% . . . . + 8*,&+ . . . . ", +" % % b &#B b n.c U./ A+( H%o.e D $.g W.F 9*0*a*~%b*c*r%d*+&9&N&t&e*f*g*h***i*j*j*k*l*l*m*n*o*p*7*% % . . . . + F%G%+ . . . . ", +" % % c c +.+.U./ [.Z%C d #.D !&$.@$o%&.9**.a*q*X.c*r*J%+&(&@*t&O&f*s*<*t***u*v*w*x*y*z*A*B*p*p*C*% % . . . . + 4@+ + . . . . . ", +" % % / A+( H%d [+o. *D D $.5&W.D*&.9*s.^*E*{%8%]&^&.&(&@*N&F*_*G*<*H*I*J*K*L*M*N*O*O*P*p*p*Q*R*S*% . . . . . + n#+ . . . . . ", +" % % d d d T*#.9$D `%$.E g F n&r.*.s.~%`${%U*J%^&V*W*@*X*F*f*G*<*h*I*Y*Z*K*`* = =.=+=@=p*#=C*$=%=% . . . . . + &=+ . . . . ", +" % % D 9$D !&p.f q$@$%.F }.&.9**===~%`$8%]&.*/*+&9&s&-=F*_*G*<*;=>=Y*,='=K*)=!=~={=]=p*^=#=/=S*%=% . . . . . + M + . . . . ", +" % % % $.$.5&(=g W.F }.&.*.s$s.~%E*7&8%_=J%r&(*9&9&:=O&e*%*<*<=[=}=J*'=|=K*1=2=3=4=p*p*5=C*6=7=8=9=% . . . . + + + . . . . ", +" % % F o%F n&0=&.&.s$*.s. &q*`$a=]&r*J%.&+&b=c=t&d=e=:*f=g=h=Y*J*'=|=i=j=1=k=l=p*p*m=n=o=p=%=q=r=% . . . . + + . . . . . ", +" % % 0=o&*.r$*.]*s.Z$^*~&`${&8%s=r%.&V*+&9&@*t&O&e*t=u=v=h=h=w=x=|=y=z=A=1=B=p*p*C=D=R*E=%=F=9=G=% . . . . + + . . . . . ", +" % % 0*0*s.Z$s.~%t.`$`$8%U*]&J%.&.&(*(&9&N&t&O&H=I=<*h*H*I*J='=|=y=z=A=K=1=@=p*L=M=C*6=N=F=9=O=P=Q=. . . . + + . . . . ", +" % % % ~%~%~&E*{%b*8%]&r*.*R=.&S=+&9&N&t&d=e*f*G*<*g=T=}=U=,=|=y=z=A=K=V=@=p*W=5=C*X=p=Y=Z=`= -.-+-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" % % {%a=8%c*8%]&q&J%/*.&/&@-9&@*#-$*O&_*$-u=<*%-h=Y*&-'=*-=-z=A=--V=;->-,-C=#=o='-%=F=r=)-!-+-~-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" % % U*]&]&{-R=^&.&(*(*b=9&c=]-#-O&^-%*:*g*h*t*h=J=J*'=|=y=z=/-K=V=;-(-,-m=#=/=_-:-8=9=)- -<-[-}-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" % % |-/*/*.&/&/&+&9&s&s&]-:=$*O&e=G*1-<*;=%-2-U=3-'=|=4-z=A=K=5-6-(-,-C=#=7-8-9-0-a-b- -.-c-d-e-. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" % % +&+&W*W*9&s&N&N&]-t&f-e*f*:*1-1-g=H*I*Y*g-3-h-|=y=z=A=i-V=;-(-,-C=#=C*$=p=j-k-O=l-P=+-m-}-n-. . . . . . . . . . . . . . . . . . . . . . . . . ", +" % % % 9&N&N&-=]-t&t&O&_*f*$-s*<*;=h*T=h=Y*J*'=o-p-y=z=A=5-V=;-(-,-C=#=C*$=p=%=q=r=)-q-+-r-}-s-t-. . . . . . . . . . . . . . . . . . ", +" % % t&t&u-f-O&^-f*%*G*G*<*h*h*%-Y*Y*J*Z*o-|==-z=z=v-w-V=;-(-,-C=#=C*E=p=%=F=r=G=.-<-x-}-e-y-z-. . . . . . . . . . . . . . . . . . ", +" % % ^-_*A-f*t=G*1-<*;=B-h*h=C-Y*J=x='=|=p-D-z=A=E-V=F-;-(-G-C=#=7-$=p=%=q=`=l- -.-[-H-e-n-I-J-. . . . . . . . . . . . . . . . . ", +" % % G*G*1-g*<*<*<=h*h=I*Y*Y*g-J*'=o-|=y=i=A=v-K=K-L-M->-L=N-D=C*$=O-%=F=P-O= -Q-+-R-}-y-I-J-S-. . . . . . . . . . . . . . . . ", +" % % g=g=<=h*h*%-h=C-}=Y*J*,='=|=|=y=y=z=A=E-T-V=;-(-U-V-C=W-C*S*p=Y=Z=r=O= -Q=+-m-X-Y-Z-`-S- ;. . . . . . . . . . . . . . . . ", +" % % H*T=h=h=Y*Y*w=J*3-,=.;h-+;y=@;z=A=E-w-V=#;(-(-,-C=#=D=/='-p=%=q=r=O= -.-$;R-}-s-Z-`-S-%;&;. . . . . . . . . . . . . ", +" % % % w=J=&-,=J*'='=o-|=y=D-z=z=A=--w-V=V=;-(-*;W=N-=;D=o=S*:--;Z=P-)- -Q=[-d-X-e-;;I->;,;';);. . . . . . . . . . . ", +" % % Z*'='='=!;|=+;y=i=z=~;A=--K=K-F-;-{;];,-C=#=D=R*$=p=%=j-Z=O=O=!-^;x-~-}-s-I-/;(;,;_;:;<;. . . . . . . . . ", +" % % |=|=4-[;D-i=z=/-};|;K=K-K-#;1;1;(-,-L=#=Q*C*o='-%=%=F=2;3;4;5;Q-[-R-e-6;t-z-(;7;8;:;9;0;. . . . . . . ", +" % % i=i=z=z=a;A=K=|;b;T-V=6-;-{;c;,-C=C=Q*D=C*$=p=:-8=q=9=O= -.-+-[-}-}-y-d;/;e;f;_;g;h;i;0;. . . . . ", +" % % A=v-i-K=K=K=b;V=;-j;(-(-*;,-C=k;#==;R*$=_-p=%=F=9=r=l; -^;+-~-d-m;s-n;`-J-,;8;);o;p;0;0;. . . 0;% % ", +" % % V=V=T-V=V=F-j;q;(-];,-W=C=m=#=n=C*$=8-N=%=0-Z=`=O= -r;Q-+-m-}-e-s;I-J-e;7;';);o;0;0;0;0;0;0;0;0;% % ", +" % % ;-1;M-q;(-(-*;,-,-C=m=t;#=C*/=u;E=p=%=-;F=9=P-)- -.-v;~-~-m;e-y-I-J-S- ;w;);x;0;0;0;0;0;0;0;0;0;% % ", +" % % (-U-*;,-W=G-C=m=#=#=n=C*$=$=p=p=%=-;F=a-9=O=y;.-Q-[-% % % % % % % % % % % % % % % % % % % % % 0;% % ", +" % % W=C=m=m=N-#=#=Q*X=o=$=E=p=z;%=-;2;2;P-O= -P=% % % % % % % % % % % % % % % % % % % % % % % % % ", +" % % #=#=n=C*C*$=$=6=6=p=p=%=0-F=k-9=b-O= -% % % % % % % % % % % ", +" % % $=$=$=8-p=p=p=z;%=0--;q=9=9=O=O=% % % % % % % ", +" % % p=p=z;:-%=%=j-F=k-A;9=3;O=% % % % % % % ", +" % % Y=Y=F=F=F=k-9=O=B;G=l;% % % % % % ", +" % % 9=P-9=`=O=O= - -% % % % % % ", +" % % 4;l- - - -P=% % % % % % ", +" % % C;.-.-Q-% % % % % ", +" % % $;D;% % % % % ", +" % % % % % % % ", +" % % % % % ", +" % % % ", +" E;% ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/src/Mod/Surfaces/Icons/ConvertIco.png b/src/Mod/Surfaces/Icons/ConvertIco.png new file mode 100644 index 0000000000000000000000000000000000000000..d9fd46d2245b3fa5447fc10688b47ed50499f3d7 GIT binary patch literal 6879 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 literal 0 HcmV?d00001 diff --git a/src/Mod/Surfaces/Icons/ConvertIco.xcf b/src/Mod/Surfaces/Icons/ConvertIco.xcf new file mode 100644 index 0000000000000000000000000000000000000000..31ce0916095c77ae41d4505d08080c52b4dd5bc9 GIT binary patch literal 62189 zcmeIb2YgjWo+esV=Sl+G*t8?Y2^*Zc+c<~rp58HcXJ)s1diJ+(d;86s-R`;0nP7~K zjf3QDH_pa3&VY?EIS0FK6HG<|BoH}>3?d4p8_#*)_pdtlo-1&__jYII&CW`2rMh)0 zpMR>V|5tVQy}kQ&d-V3Zy4`i}19vL?RJaerKf*_A{5lPv4)HgX;s-yc;}gTPuK0VV z4J)QQOR3K9<1c@@<8$(F@9opAPv73R^}n5(4h`$~_$fi5<@6BVzjE!F< zPff31Bm954@KJ;(jTy@{z3LHO@w?w4Y~mOH?sxG;F8nmYvuv99aD*!*Y~s(L$s=8w z-y!}6n_nJeuM4sH|)}f2k{M7Q!Z82p3gTEJ>q- zmXK;nZU%wgj35Rr8ZMio;ukR*O(}#;QTSB!^4vK#O(AUJg>X?*iltJtDZiI$G>Yp} z!QzaFhzDF4A|(DZ38N|bFq#qxgSg^XyEKKci5J2}O(~XK(Wd-8s@L%|P~1-uVpF*!#N&{v z{|mx8-gSJ z`iG^`-$_$0M3tAYG&J|R3KjoJg$-Yi@b4HzbHP3NQDK_?5?@qJu~dq3$FHS`^H2m{ z5`IiP8t#VpOC?^%3t;12SM~^EC%Ey1`!^Q_*W_z*75OkU;s)O0upJ4NVupP7KUu{ zyI5mfi#Sc87JpNOnTcNsG4h)9z{Fpz9uV*2n)n`sKX&1j2!A4B z9bbU(=N0^7;^=F9EQ3YT8-CQ)F85!@>lD7L=4k zt`{qq%g}I(zsexO?L_!# z3F}^IgkP%Q7ZdM*@EZ~zt>uSBNmrz`(ulOr61t&;FihEfo5Wi=Zo^iN+iU0(`e6EB3LwOl7D zjr=ZViB3|>Oq50*f;wsAs54@N;5; zEBW=fg33d@j!#FPAKNq%wj*xhV-P>If)8~3tqR5O_%ZQE5dWtNhR?vG|A4=p?#8;u z6}R{8-TTfyLWdfWr~do?ciuYS&O5pdym!Do-TuR`{_a0BOJ_-XZ|__0zVnK^``>#9 zBW%B2W{&(MYYqzU1`9Vct}yxR{4nDxH=a;Xd~c=yq?P+wZyaA?ELU z*If_YIUwIa<~}yc#uR7eIJlovLA<{L*_6XrnB6Ok#or3|;ple!?Zf@=y7l%ug-l5+ zF?^=tL+WH$61gz`s1qV#@(I)M=Olc>Fu61gpMo&Ux-tlYM*J;{JUiWmS)cnkEeup3 zzz@nf4HE2E^447(;!gu_Uxv0_{ogQ+-+_2lUb0&G+qUcNdWYF*cKN%@b-90|>Zmf0 zmmfTMNFOqX^%32mkDjLVHiJ~Tpd6H!3JxARbolTQeI(m(^e7hB(p&55ww0@MlwXca z`mlGzZ&008Zfm)^P-U4|qaehcto%S-tURRAM>-+7x=iVVKA-zXFiwd0i881b!5h^T zc$P&)7yx9uQsv6oreCN`fX1m`sO*7*2URJbU8Az+A>4rlT#a-G&<6?n2h=ZFR7a)P z{!*DWe}NAk{7j`+*Ve9Ci-2COYjbM?b(1oyP3_N=ziPE!ovmF{t8P%~npLY;t*+Iz zzERgJU87eSq`pC!8na5T_G=N@TwPOLvx>XjN_^s3zIa&@gruB=|U zvKlGPs_Rti$`$xpT~o74ukt&i@&1aHW@XZr#Lk!%W~EoHYpzw9s^!c1FwNBLn_snD zFPHRwb&amMM(HZET(9s~R%>LqMkOnmL-Ocq^zt(vqtJ2HOirh+$zFwMKR>`c)nMF=@i4c(9rnjee zY~Q(K=PnHr3UuH<%JB~LL4)^fj+h4js5;eAkPgmNEuf#nB%mV=x&aUB^ftW16IJu{ zX;UXpnmA$H*fF4CKR9F#`J^)4@FUPtfY+&Yk_;ci(*dHENnZ zb;@LE+Lxn{YnaOhihh(0o%j9x1q&8>3-y8>^XJW*GyA)5zWI6<>XM$bu2CaD|7zsRyzjqXuyEm`MT-|LTDWlj{CRWHIgG~4u$|*<-VwuK;*vuSgQ1$gn>`mb zE?l&D@e;G7Zt=ne3(!{d5FKQ`DHG9B4f{g}NxD12&E3$iX)xCl8bb>+HcOBXL%h@q8X#haKu4O#P* z4*TR2Sm%FbnKwWwRrBUAScqCHmseFSTe@ViWW^}qwc{OfWXF%S?_>C#3ixw|kT3NNCs&eU)MGMhWju78IU&#c%e0h;JqgD_Ooz!xvZW%eEa@k@G(D!_m z%!PL%FVek!=K2ux9};&CqC>0Hd^VJw+z{!cklQrdNsuQg2jlb62k#FBiR(2!bJn1x zOO`HOwiF#)v|#@Ce3dre)G3odam*)ggjK$Wd}d86dWhFA?{R}j-LQhzgqgNXh`$qq16LZas$iy*UhGcFD zVaVIer&pTlDp6Ia@lRj#ABkKVI)!3a2#9afHue3X@4YkR?KdT-u5Lk{%&gQ`v9C5V z+l*-#RE{d7FuO=PANI+|AXvPUA#X7w^b~8Q;>=?5G0V)-GyNIU_4K-FQ*4zYk0~bI z@Zg=GPUfW!Y>_(A+?g}X3_V>>+lm?|PqbBnmo0BOa%W@TV5L-ItyHj7%y=z&x|yb@ z>M45icGp@^p0F313lfq#-+JTqFt35;)-}zmP%qy76bJ!5xehrejI*u%La2b!KuG9q zRQnnm3^m*g%`S>vsVRDjH(5{A6SiY~$eI`-H?$lg_VcYbB%`j%h{onnK|zC#CT&J- zZ{1CD-A4%!)$MLjZ)*svqHQ{J!S`VD)K=K;eC>3*;>BQH(q=770GGMf=1+2 z3VFt|p?dUoS0CjaD|GqL&DURhbucoDm7!r$u*Kv%d#+IV0kbvc?K2gFU=_Z#SS)=Oad5BrB-qPMt zYLp(8{DNJ?`(Ty(SS1CtrFgzhR{AonW17AGj-7g^-j&?yRf!59F1ElFZm5{uK z41v+$Oyq(IU8>A@J#L@nJ7nOC5^`kUk%5L+_Q>HQm}0;niYYz8pEyBJK&G)-@ajlC z^006#sN#d6?+QtQ?#v_M^^tJ>^oTO0rDlsf&L~=nmi>oMNitw zjFw>_iV7lS$eW-Br7&#z(21&L%-C_`Cr+F^Wy&-?ZOc?K4M4(TK#@U(9OR7-ApxSo z(6p%@Gfpa-I&C_PHD`0$8b?ABu|l*IBPkhQkzV?T>_mfI)Dtt4r%s(d!<(_*86?&Y z8j05+G-#O{jeX@6rEWeT^O6P>Q#Br4oH}jBjG3YyAjz!k#Mm+`-r$GiZ_8TEG)*i*-A?~p}NCo+bn4RfK7wmPfD#3CVU%llwUhrA6j^y=Wj zFDoUqy%v3(q^J7R(7}yVMTN>-2c5(e-W>e$OQ7uRnzdrqOrC;4<*15|7ZoP2-zo+- zs1QKl%$HvzM?lx3d-4{|wDkpjLPJe-ZAfpFA~xF#WWZXp#;BS}lkp-bpka!TW=PsL zo0UHH6&AAjRPt4{YDlG%r%Z<0b5zRuMDc|=Q6a<~+xh%+V$_&g@YO^;DKn8;1Y|I_ zj;$26=LQq?QF?GNUwZKcX2S%Jb!K4Ej0Xb>7b5F8J*JL=otYtgB0Pon_eW$#osfB$ zWa`>1mJi04AkQZ9p=7e}K_ohAgc`98wYhvwGMP~;Zyf6~W41`Pf?N@KPBwHy^W3wn zO{TX-m5kjmhPuP?ElFA!mxF0LhcS6UvQSTYt1_7Ssxf8^1+pIHe*x*TT?8_Osx=DP zMqAfQFFgM&D{H3K5n}{0R(Z&$zc3@~C@3h6IUuwmhP>t80*2FO)GJ{*abDfB8iX@S zgSO^#qP3zTsjmkAkuUJsXP#!I%Q1U*#vawyXR*&VxqPgW z3{R?Y`U*K;2y@Cb-?CV^ zrh@sn3gN6hF=6~qKGq+bkIaYLQJs(*UkJvP6!+4L9G+*NF1I<;Sc_O;EyXNa`;mui z`h)cQ@4W}jq=(d7dk1|aV}S6UL6uK(Xe+B&tyw`s1SZUf7|stqcwfJtMuljq9!hv@u%x1cD<$(OSjFV0v+Bt* z#|A$Qex$CD&#CICsEr?_{&8@c`UyV%-v^fmr>h^kkKYkZIzwIVK7MI%DHf0}b00ME zlHe?LseH;y<|xysn_|s=ORH|xNk4@ZM03Ft<6o%%`GjhEi6e^LYd4o>z1A>efUVj5t~ytX^G;hX1d`h7DXGG zJBzGb#FRC#mZOcV8Rao5T-fqZO}44IN#bA&N*(M)Pg!f?+82A^GePDc3`?w(+7&g_ zfOa0ph_T6vb%S>ltvYb<0HXAv6qnb~K8?s^aNqzIgqS%As}QkA6*BKfVrPRM$u%&_ zFF&9U=!2fD&*}y&4DLT*5TRii<{FO38ti@~@esp0uU2NiInXK%<3cSK7t8DG_oFuE zF^93VS-)Q+3GHS7FxD@R26)Z{QZ?2(z53Su2N;1R-D_Z@?Zb1uUmq|BuT_5MeR^MO z{eCI&AeK?ReY)P@;dNN!-HT_so=LA)X0HunMdvzLlza7Fe_y?+_xIy#?#4a%&gb}w zb=f^;ui59%@Rd)9tCd=)s$GUH3_nzJS=I_IoT={M!lP^fNYd637 zd)19f@6x-?o|{y%d>3PPV+mRB%IroMFUwM+0bzJ8>11nbN(jx;g$H6Wt+}M7PY?7N zB}EOANH;Z-@N|o|6sjB2LRC$=iHZGI)ZlaVl!-l5VnC2dOOUn>OQUZ2)Dm+B#7ufj zb8-@9W=%~bNe{2nG_+bO6@tXFygA%TB5Gi)ZuFVXt+bL-&Cx6}BaSbdtNv_{0a<$T zwy|=Xvdq9FLINO4)J&%7sdB-AgGQ!NtQa#Tki4Tk7Jj8V99Xg-iIQj=Kz^V{QlIP? zm?KxAka|R9K~0!U$R+}4mITyHf|6zCBd9&|7S;)c5REhyl>Qd%j*O5NX-&2nu23zQ z)F?}#wi@Kk$wbG1(hO?ui8P#rMCi1qYUKn&UA}K$y(LJ^WHMV;dtIbCfEPs5kXiM< zZ2dmA67-73z0PQ~X79eewgic8e*HBu%7eWjrT0{aps@dljmAg!FfEGMkNk~LH_(hq zfr3fQpzSME6V<_sFQ7J|>nzv`v8h)?p`o%g>751lL{c&6o>NL_TPXbs)yy)Xg;2t7 zy*tCiC?JWXFFp^O2vdw*h|eM((TAL7ep)Hvg*`Ts_7m+271&s$)Gww`=+lVQ$^!%S z6i)GlyqcQHExOfEP>a+u3^4=xJLcHE2kG>nCX_eeAw)KS zIrMIyv8~Me@PPjPnSGZbcXXV?C6Zr4(rNV<*j4)_J}|s~p-h0yOa_0hyxPXn(3Ty8>)ppMfx>zmop1fXJVfRp15Aa%k5Y4idN>nEFAah>q{rlzNsPT1p z^7?Fzezm#))}BJ2^g_Nbvm{HBva>6;2@R!^z%MLEa^#rGy}@v2`dsn`W^*$B22^9| zj}yCccukOU^|CB>t!1W|Td|US^@YZI0TzBo?83B|lj09$4}hznTtLIpFH|hE8f2|v z))WR1)3wjd=LXqwSTE3@?v)h-u7$qy&f8o|VMeOq4k0IyR?TwsQGGVT8<8D8Y&f#* z=9U9ysWL^ivp!CVUw-KYWF!%@2d$`edDRM~hU?+YZt~8>6wJflKVTPc-r{1Ygkx8K5y`wjiNc~uW?#6(@1_e=#;+KDO|N)&JDx@E}rE+*-=I~cwd?N$A%er3N)&ap-vtOV;0 z$gm*GKCyNFQt(bQdqF}#tMp*~NAuF*7hjM}vQ{B__hf0Dx2Tn(6r=F^Yvwims&6yo z(0l!&e!hXrIMSIXo_PGRN7X4-z?wzP$c0R(;FZA!HDuWh{o+AZA}c@AG$`_c$V187 z3V(>ji;-opH#qgjm!;eK#r^ELR8jF1`!eXU#|93BOA@>_AZ=0*#|oqBy_~}snHO>> zTt9o*^&H6`d+gCiq1b<Ky2nM$s(_Rj}FSsjN+v3%G#gJdVt&v+)|V zDtRjXTAi!BK`a+8ETTmqR_)52Jj;Q8JmdwTQYS|Qnk`>fW4$Y|??i-_>_eI= zQDa)H2XS^!dTK!EngSBE8I$euzI5dg-aCKC%{z zXKM--5)B(}y`l%IWJn#A4y7GQ6qeB^dy z1gAKu;?@kGqE-7Ca+1^0SzTE#dKpXtfk%-i!st~n*nWzmkXI~gVKl8KvKAN`sNxn}x5v!kVf`Km#2KyNK(o4jzg?1SSnCjNb81oAA?W6E}URW8F8|HfidciF5 zq?@{`89jUzqS8r#m-S2a5g8Na87P?+i_z(pMk%RZ(XV)@N55=d(vGdcNLHRCpEk*s)Bq6=P(lbCCH{1d!ARe2^a0EaQN=NB;+@N?_$$Wk*E< zsTs5BE9z~-NK2H4Y+C;Z`ymI-Ey!tWJ44oZ&l*-xkz@v2MG{$L&ZGNhAMD!~s)RPK z@MjA4H8MS;pD|B2i)f+rd3=x=q#sS={b2f|`)81;k0_vw*y&o{G{{LqVzDdwN&SS+ zOd08nez=9Ld$3>MJ`d2#lp?r^ngOlENKi=HJo<5O&_QXO>kumH-TMJ3lQivpj$m4{ zJQb#o4Kk0WI4eW{b^q1}`}Jdn`$hfeg&vcG@SgD49B+_*tmV;x1EC5yT)KY?Th#l3 z2kyI1l#ex3!4!|jkWxRY2kJ-k!-oevBtzS`50c)0Khpk46qP7=RU#?}Q z(O!%Oi`M<@UzJY@R&5BAgjvPfh#4*kRMVjecAE+*CK zzJ4F*n@mFhMM8Z87cfyv$R0xtx}WY_s&Wl>PGam##>~$yP^v#m@cQ|Ep^h>Qm|J2h zk%A*nO${eCC`Yl0x}RYcF_mnfWP_^7Z?bh&ET*496}nFe61bUVsB54Cp-=q2eM}#} zH%f3ihsHV-0w*5SS?4LgPjB5DUK%n%wG#`s$;B-rOqR}7`hH|@5VezCx?~9^PN8IH zAs4CU1`>f-p2IghU4+hT?oKW$L#z$RQZmb z@;!YcTyl0|d4&G$zp#$(a2_w;wtYLD$L$}p4XY^lWXtQeaebu@>nmIBCl_o*Os;$j ze|O$ONAk`2Uz-@>;zahm-*@J`rX2l&ivavP*O_&>a%>OSIPCwMTD?ZEHS5g!TzPD9HX;pNCkjYz!#Yed+wXR_9{>(;JYw|@NwB(vV;dW}I=y&hXTG|O0;S(9e6^{i1g z?dcAYVLpj*yZ>u)YuBvRYmtwR<>G5DK92N2MYFkQO2<5D%o?tLkQ?dQj&%j>v{;w( zRT%gilzyRE<^`B~D2_XqZ5zexm+6QK;2@RT#chw4=P}=4O}7klztb7&?g zwF58$yq_!7A=>kz`mib&;8nRutF2*9s7DdG6Db>d0;2$=0Cp{F{^HAAQk+R=#9 zaMNO$F!!N;xmJgDxq$B&YvHs|I0Jx;W3#sTjBP+8twk{4p$C=Prng~zT~s%P{X-8T zt`0PTGEoa=4;1JR_C=v}b&Oh#3oIFd&VZ5osiH3nL#+iFWAI+hg425;p*GsH0Es7~(*dSlVXDH2P(=G(1p#5;YAcll~j4? zVJQ#E?uWubBnhyAmCy>I%6FuC2(RWrngRFUcP|KS`*tQwvIeWellP!aj#NnzeUK2E zIzpF&7g)-bXet-0r(yYIXcar)Lgt=^YJYwo(^j@xfFjBH^3mU|`P?YG}% zBQGIkw%&tQqrls4jUk~g^m}&(Id8kQlo3pmzDtTPv)@6is9cEk<{6ieSR0VWz^i;M zDKpp5kMzno4zJ&>@^ILb*WlW{_a zo|D29))GOQ%325zvzm3->!U1nuplAVwX9PFCzxk7r1~-P70uzIv~>e=@)fSA)hj81 zF*~M+laR_&xCz zn*lwca<44<=pcL38GjGI5U5z_Q*#lutp`$1?>i6y z*mw#i6kin=TWy#rI=V3aKx^B0hEI%y|1A0q$hQpAvP_sSQV0Ho$2BRqZ-qa<@?EF` zfB8XsetjmeZNm}fPlf&b`WmJFVSrK(e5usKb%;~t26`8}ecTn~2E0z{)a5Yvtk(pc zE}FTE&i%+sxM|KkxzI5r)!ZbGA+kT;oxZHx$;%?|QEnhwhY*cD{#JD%cJ*Y-jnE-i zK(49LmE8?)7zWR|d(C}tebj4Ay290YO4q01{ebO0rf|FY8r$wi>BGWiBMG*>jO@at zWFwE8jBbZg!&Sv^Q83l43xo$32yD%{)`r!wv0atHUX_uee0pzK=$7p+9b;g8JKqN; zOL5~It+E^c+=9$uAJ*>KV&O>d%EAp|kD+r#p?L&PaZ@yDT^X9NsbSz(t#^Buvo!JlhAmBTDav(_!QpfEYD4&FJ9~NoIS(;^18r z1v>_(2t=(d#_{YR4<>W)#th+&!Fd5oa?nP9D{S99gbbqSWOyNY@(w$}c`1r%yaM?M zXuJ}!4$XKC9Hy>-I~2W~E)~;bnbN-rwQ?g)pFMdbaFYAJvg`8AJPM3nQS z3n7dWDa(3!5Tjp>8nL>LIhlnk_$zHhbVHKMcF5~RWI?8x-UX&Ln@pwXFJ~QPJjc>0 zx)>yr3OiyH2zHO(G`7-V0DfYvNuBHwy6e+VOCR+c;k09#>DPc|NHQ{Z-@U^g9$C@j z(Vgc4I8r&j6ER__UnEeL?q_6kx3TUC70JFo+z>n~rceYXwPX+3sJ9MRR-%wSjP*t9 zs?zl1plcNUrko!QNm_U}Lz#xvPQ51uR%5zw*WMh0a}nGl;5kOF)K(x^&NbqNWe&8^ z-^NNw5kICe2gjl_RhA|gJ*D(s&$doRf$}mUs30_Udcx*RX6jRL3Zqw#b$f756KAN* zc3Nph5~7j&Y$LODe$WTgbojC2FGG(doc8B$+hHI;Yz8`h*`DX%^bks1Bk1O046Bt4 zp{pHNOa%UXb^uqm!=WZXY@ObAKG;5wQWdd~7avY6$aVHY)T**!4^8v zIDPe+^_#XJHOs~J9?Td#IGPw(Q@d`%rmc0`w{NRMJVlaDB*)gSS-)}fmaTd#>^Us^ z!kh!-SW+j_!y!~SW5s;50PyP(WD>nAIaQUN=_q=S^|XE|t3fMPAWH$8hniXvgRl!+ zh5vYx2j8(T*;z~IN`TrSrYOfSY3UwhK1jU25Do!YM8^h&OuZ?>vWa`<&G+UrR#zuw zUJc|oo9hpsXXg2HS$YBW)+5Lz2F>Kf!pC+-?Iew;k8vXiR?QcL!eF=N;;;>Ees%+f^CW)d%t z8iglCI4!=cM@EihhR`*{2y`4}jg^K#hCJ?G@JpoVv`&%EeUb(k4H|PeO$kO3=7cg6&;WDh1ZAAKCsM|VNT*DP z>`lSbj`j}AfgxCs{Iv9FBc7+SRuYMQWvw|{MOIikBP<8=#adW22r2(!p`)6C0hV_+ zqTj0Xx}}IrN}FNuvBPIOucDMlKKf)O=?X@{XMKRJR)M`nfhty*wYm4u~;+E zMq>0Skgk9SnV8ODY6|}WSaHm3@EjSmK0z>21flHXp3uNMpv%ZIm7w| zLnL;el&MV)&CnVXKgv?tff8S8P=Z}ZL1K&r3-%1_BWDUI$R#Z?C^ZBMu~8_|GhWVk zOeuDwq%@xAp&Ez?tgmp9MtYFZo-v;GIz(|is4$DgH7|zfJW9u9NFf&gC7 zY1?S<1X=8MuZIaS>PSjKHb(?OBW?0xhUr7R38&Dk8^iA&6wog{f~?XdF^%+5WD7g& z$4Ybw~`qorEdVVW#6K z4%;@#bcv#L&C>LjT!#HZi8^a?mncyetSpOCvB1C*{cKL>E>2d4;{1dd+lB{Z4?sL-ds8Ma+c zs^}I0spw{GBcuJ@LZAxgzidfXoexM#SH;f3tu&LxP6mIM>k6e)zr+XIAOz3+0)KSs z=ZY&MKUV^(0bB;>f%*`>jCR_C)d#$$!w^$4fx_3z zsHvf@VBP|A0yk<|UAR=GtV=VZ-E2fRDHMTrIT9yVYrVPr>WJ&NpCRLHbbh0Itc*9B$aN3U* z=%4fkL$EcO(1{lCCy1GOE(7!C(Bq)7SSyYqrF@NXs zS*!(55)%`N*ZIhm)+3}{wj!IDJQ0=oRu<@-?}NyUEE!@(pJC*MC}i}=XKzU)M3!|^t#%TB zv@ubVIQq&oG-AxCkwflDBnBe^-t75g8az96_rMq4`gk00+>^$S`EulE9}Q$%(bDsk zNo?y~{?>@8^A^vaH|N{0XHB=2d_L@xKiHLc?3mK;GC=Kwrtw4u69-R@?}dF&7V8_o3CcFMWaW3KH}4l-XHq% zJxF+-+ETY=~FuGIeiM7jYJ=R0QhXh?MQZx+OcixrVVRX*Q}^q zvS@*nHQn}3l9{3DA&-Ivu)48hd!0>a%lqc*nbW3B9FL=OknsJX-q7qDwt`O!f#$W3nxq&^lCWTZb;7v@jW}ed`v`2dmw>dE>e@t5z^4>-mrkcs`LJ z2uM(HNQ|SN0U$I+52PV8k z>$^N`WXLTEEU3%cA5tF1nN04mtFJInU}2p|y>{qu;&mzX=|lpG2s2jQ+(jM2(N<_E z52ylRz5*JPm8ips7bI=(gp~&dN%h>O@W`g=qX(c&CxH`Bp{dEY5((%-i%mrv_VDZ? zIcsbBN4F;un0?AbFEJ2l)8&c5GLPl_vx_>y6Nltfw4tcp&GfPd6aA1h^+2Kl`xYWx zpalUR_-dA()x;AT-h)`c#BjgIq7(NG9r|V>VJFC#%Q2~$p{FIMPI>>9L~qVqEw-&O zamUc1PbCH)K8$%OHaohgCZ3WrdGe>XCvJ&o$>f1V;=Q5wCj_wSCVVJza?_-V!yzZA zQSEBJ*`FMocoTIOu&t=OY2t(l6HUK)30c}5kR30YJ-rm%{ z#4QQHSv5ejtP)EJNK??h8mdsVZ(g5L`8t~#hGaIAf%es{O^^VhZlTYxKgc~QSl3je zRERh#v9%@XqMTW5^>04T+0;2Pc#WuF>P9Frs9M!s@LUl45ga zRS7Jvuw`2DaX;hrcWnl+Kkc2I; z8gTY&NsL8^k~h%B;j#yHx&FbXh)*uuQCq@)zJpe?YkWn?cX!W`z% z3R99Tm6pnMAd40M5QPYfmyb;;c3v^{kI}55A_gK4%bS?IdmdZhmF7w?z_j7<&avQS zpTuIOBv)Ees!MZa9H%Vuqi`$_m>g#Go~L7}5@{fkn6g|c%g`AZo-&E|VmUlDB{6xX zxe=jb$c9NXYV^u79m+~$oH4+#LXlh~@H{MYlw?ZL=`vlGEiLPSKe2X=wQyF&WQ4ualCqW#p2{n| znAD(A3$r()0VrE3a0OQ$A!od#45*BYj2T}d*b0Dd7Ss5zD zlnvZ1NMQ_|&#^L&bs@v;-VYjEmW`>{5zj7LHX>z7iSVAA2Ff(9^#I%(KnPSdVpeBS zt|Z0Efz@7a!q*x@LZzHiqN?kH1s*9d88~F9)t(q=RE&gNLFTe9%F`uj$_@numU4;N z(&T%U3NP{q`+OTePR;6V}oH4hZ7-lAxpfg-^^?Sl~r_J78@<8hHY~bw?2Ashxz8 z?T#W&MmN#Wi;(3M1bZMwXZaiBmO4xBj<48x4=~weiHyA%E4FRWv{)+aq#BCxv=UbY zsP$K1RTQltt&33jd0339?-Tc zXpk?+6HoFy&h{KIj2#EkPFt95R}f-L~P2@g&UmoS*w#1I% z38tEFJb)*T4=kJ(EBc8(3B-n&&Qz6PWs%+_h-b}XQuT5y^CyH8icqd3`y%ivBZ^_E zeidk%gr7&8<|=Je5uEg5Z~|WoE7g_!7D0ge%TPwA0=hFpbf<7Z6uXI3;sgUwqGe4o zK@sW_&rflP$_yD=XkXZbs6>DzEiagb;9CMA#i2(~jsTrwR8Gxf82!cgdRhqT(2Md6 zLF{37@I%t!3y}t zeo>w%!uVl2v=9g)NM61wym0y{S)V6xg$4QYxC3JH#22c(w8GJT2p!?xlrDv%MHKZ1 ze}tHVl>p@dT9ffhTS#Ab?o81y1EUlI_NWxv0P*ljVZ~7^6o7W5dsBp-lk1S(1RG>4cX3+VYN3x>iNogQ+BXb52fqMObS=tzeh zb--t@gIw|#fCJpQ{86;hX+i2(d=e5G z=6JFeW)ARCmLMbRqU!CjM>uhw(G`#AlB#!Ra3I(&=Ux#$5kFKqUU)RA_rXcR)OW@1 zZOb-*16UVVsOT2!?K?+YySL|$A@+7BY0&S58O|IAU>4wEJOFLbdJfIGi1ox>t>962 zE)9;lZDyO^o&`?9wO8*sk2F{3ZA-FN)=Nh@iQG!xHeUJRp_S(|*;Z5MDsw2T^I%IG zq%+&#l?T5(v-1MP_*=G`t+{P=@K_`6%HIi79^}5oAb(Mmzj=$^(!8~f&b90|3~}V% zyv1zsx7IN&P&zc%^``9REi5!!2M@H1V90x$^%jka;qlI|dXwI4P(HR@fi)5Q6-=Iu zn>KCMNa%0Hw4w-vg_XjM%mdH0i`!zc%m%&D+k}lHhXhE5cr1+vfYD&9NnC0}RF>J` zZ^Vvs1ezrXE_%9Q9j$=Q0$>Xe1?m8~I)q4se;Rle4zv@8uAkv=dFgj5dp8y?F|V;O zEs_xS!^EkFE=M?m4>Qh0$H44t23cYacF$fc0z2PQdX3_s<1Wfi02e^?7BBQ5=_Wwf zZmLa&I5BYkKy=H7Qz3{EPw64WseKocKK+FZ+`uvYM3VgE+YcYJ>vbZ=gSVPw zL*ehnzSzk@%a*NMLC2tY;aZ~R$VcQZaz_kMG9FwZiyYt^eIRB1nn7jYiJc%75@s7U zBYfl3Oy1pDkQw&yOW~@hnn_X3fNLykS|vkSt9Lb8t^~i4r`P~$8NDMd^4ZCFE+@h1 znWTSGARHq!Muw414e>P)?L-PBCv){iwmht66P|Hs2q!DJQse*@!UQ6|nbBiLy_agr zsT?wg*{Pw4m<7?Iq^Ms+8QI$Gk%3~`LsEl2LwpAOAcaM!Pn=p4NnsgBZ%vXrY`deJ zV^xjb?om1bz87U1gP|io#I{1qk!QReWQ8;p$JRPBZk}b#7B5WX7)IE`151Eiw~5M0 zZ{D;S&dsbbqGQNvIUqu<&M}+QEV~Y?Jb7SRNsy-6p<)xYLv-4awIMn!2sZMm*?h@y zFlt~C>YX+?HNC+D=d=N;g`DF>&}w>p4lqpY+_VL(0mk;ze-6yr^$I6UTNL|EPW2cV z(_G=wFr#&F38xzjz@sQAKjl&)u5NZ8hAZ3$OP{L4Z|#k02*S>@KUmG>+U7q!w9J*y zKV|r^4*r~u55n-|%>PvUg9}#RFF$x*0a)k;Nph5b~#ic^jj;+QWSS2%4lAGAZu z=!I=TGgv~R6@oSGJjA7d+iHiF!TSBDg_a4ruLBP17NvwU9Rqhy-t~y-h_CQ)>&SDw z55RBmS}umIy@o3RYp!;`9dKhUPVnv+BF-43R_CGKxu6y&gY%5;5?tk`)Ze}L@PE1L zWUNhGf<*o(Y*3`@zkA~!yU~@eIk*s!xpNv|Sfu>i)?s&CDn5I``KZkA8+bvJpUY;_ z>15q!zbU~E1>rKo%>zr&>Qh-QQ59;(NjqBEab1eiNWFol z8CF4zt>Π6n!v)YtFbi*_P$-ImRpH?1GQy*wsfFAzI;*8T&=<_HQtcz}J{y$dC8 zt3%0~Hf~t|HWol(Fk{dO2-%FXO_gmjhDlPhU?kp*#Ov063&&mi2~X zvS>-Yg+;GhyQa4CZ;}2)rpJMLJUj)C0xR5jV05LAD1Fn$jglOWOTR~k6M};HZAbI9 zqxrbn=J3pN&iKC=nol3ZInXdNt`(#(#Nl-T??}wcVczZ&k;8=IQ3eb2?y7(Kv zaKJ&C(p>2Pr59Jzaaf>=~9t!OoKzy_zam@pCpi9v4T|dtI!Fg!j+*+ zYSanHPa)RYEaQ^v$aCrk#7SAcQoF#dEz?0cK(1dIwx~vJwTfhPeE&;Y(1%btd z8vYFdYy~s&&xkGF2ZN*k&V?*PKv-Jrx)nSRPz&?t1yyeON;Jsw`N`I7TMo06a))9B zZgcn|b{cnQAfv1l5@`qDKmh$Ho^WWu3dmwDsY6DO<;^kNhb@8xE`TVLGOII1OjT}q z6`+0|1sdXQni4EKfbn?_GmgKENqrt=0@9%E#)^lS2q04lP#V%8C(59(!+CP7sRRL9 zRn|;`ZI0sM>Bv;_-w8zuAsiY^Lk+{!ENzsE@QeM7=?uRXgppZ>eQYbSWCRSv6^o=y zv~m`L=)@B4rksq!*m#(X-zn$}_ngytnA_zTU<~agIMeM?XpoEP!gDrbF2c*gp9|r- zb0PE&l3G_B|1j+Q3*emtCo;UuPQe9%e+oi$-|ySm6m3S(7hHqAWY&(GF5u2A&e&eXLHM4BwmT47(QQd+0uRZs2tNxou_&v; z%}EXz#4-pVIj{I0C3|a!yVgmdM*?X%*Im+K(b)D15L=D7TEqJkuG%4}++OZvhl%(+ ztZcTqcFFL*CJTIHQ%xG>x4DHWk9~vdvw;&e9ksD?dYr47>@87%E81g*ycCZ7KlZLB zxogC|A)WM6U2(@K_FBY!++9Dy<1Vc0rY*@J5%#&{I32pmy8|@1+#+@1N+LSJ!i6@- zgU!9eEdmu_S#TLeN{hqNDWJ}oOc37=`sS|DN)wbt7jKY3a8Q9B zglA+ROV{@7AWvX)QWiPJAq$zP=ok|R)`NXSK43Zn?^)~;y9IhX6czx_%Ubx7J$S_e zyIS88-Y#X~1@`O!_=l5X;WrzI4=I<~-3d$f)D{ct1Y8lmp@BQ^NSy!eu_eU21FT_N z<5F=`n5cM5FP5Yvm4i5*MR!BHvuw8&3ay5BE1hNGPYX9oY);vJg@}1Mw;%*RcA
^!W$ocK4kFow%BBF3w0@;61%TvPcpd>r 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 q?I0qa0@{AH=BD c #00BDA9", +", c #00BCA8", +"' c #00BBA6", +") c #00B9A6", +"! c #00B8A5", +"~ c #00B7A4", +"{ c #00B6A3", +"] c #00B4A2", +"^ c #00B3A0", +"/ c #00B19E", +"( c #00AD9B", +"_ c #00A997", +": c #00A796", +"< c #00A794", +"[ c #00A594", +"} c #00C2AD", +"| c #00C1AD", +"1 c #00C0AC", +"2 c #00BFAB", +"3 c #00BDAA", +"4 c #00BDA8", +"5 c #00BBA7", +"6 c #00BAA6", +"7 c #00B9A5", +"8 c #00B6A4", +"9 c #00B4A1", +"0 c #00AE9B", +"a c #00A795", +"b c #00A694", +"c c #00A493", +"d c #00C3AE", +"e c #00C3AF", +"f c #00C4AE", +"g c #00C2AE", +"h c #00C0AB", +"i c #00BEAB", +"j c #00BAA5", +"k c #00B7A3", +"l c #00B09C", +"m c #00AB9A", +"n c #00A996", +"o c #00A896", +"p c #00A593", +"q c #00A392", +"r c #00A291", +"s c #00C4AF", +"t c #00C5B0", +"u c #00BEAA", +"v c #00B5A1", +"w c #00B29E", +"x c #00B19D", +"y c #00A090", +"z c #00C3AD", +"A c #00C6B1", +"B c #00C6B0", +"C c #00C5B1", +"D c #00C5AF", +"E c #00BCA9", +"F c #00BCA7", +"G c #00B8A4", +"H c #00B3A1", +"I c #00AD9A", +"J c #00A391", +"K c #00A190", +"L c #00A08F", +"M c #00C7B2", +"N c #00C8B2", +"O c #00C6B2", +"P c #00C4B0", +"Q c #00BFAA", +"R c #00B7A5", +"S c #00AC99", +"T c #00A494", +"U c #009E8E", +"V c #00C1AC", +"W c #00C8B4", +"X c #00C9B4", +"Y c #00C9B3", +"Z c #00C8B3", +"` c #00B29F", +" . c #00AF9D", +".. c #00A290", +"+. c #00A18F", +"@. c #009F8E", +"#. c #00C7B1", +"$. c #00CAB5", +"%. c #00CBB6", +"&. c #00CBB5", +"*. c #00C9B5", +"=. c #00C7B3", +"-. c #00BBA8", +";. c #00BAA7", +">. c #00AA99", +",. c #00A895", +"'. c #009D8C", +"). c #00C0AD", +"!. c #00CCB6", +"~. c #00CAB4", +"{. c #009E8C", +"]. c #00CAB6", +"^. c #00CEB7", +"/. c #00CDB8", +"(. c #00CDB7", +"_. c #00AB98", +":. c #00A998", +"<. c #009E8D", +"[. c #009C8B", +"}. c #009A8B", +"|. c #00CFB8", +"1. c #00A695", +"2. c #00CEB8", +"3. c #00BEA9", +"4. c #00AD9C", +"5. c #00A393", +"6. c #009B8B", +"7. c #009989", +"8. c #00AB7F", +"9. c #009D8D", +"0. c #009888", +"a. c #00AA7F", +"b. c #009F8D", +"c. c #009B8A", +"d. c #009787", +"e. c #00A97E", +"f. c #00A97D", +"g. c #00B6A2", +"h. c #009A8A", +"i. c #009887", +"j. c #009686", +"k. c #00A87C", +"l. c #00A77C", +"m. c #00BF7D", +"n. c #00A67B", +"o. c #00A67A", +"p. c #00B09E", +"q. c #00A897", +"r. c #009889", +"s. c #009685", +"t. c #009484", +"u. c #00A57A", +"v. c #00BE7D", +"w. c #00BD7C", +"x. c #00A579", +"y. c #00A479", +"z. c #00A08E", +"A. c #009A89", +"B. c #009988", +"C. c #009687", +"D. c #009384", +"E. c #00BC7B", +"F. c #00B67A", +"G. c #00A378", +"H. c #00AC9B", +"I. c #009D8B", +"J. c #009585", +"K. c #009283", +"L. c #00C1AB", +"M. c #00B17A", +"N. c #00BB7A", +"O. c #00B77A", +"P. c #00A778", +"Q. c #00A277", +"R. c #00A177", +"S. c #00BBA4", +"T. c #00B5A3", +"U. c #00A292", +"V. c #00A379", +"W. c #00BA78", +"X. c #00B878", +"Y. c #00AC78", +"Z. c #00A075", +"`. c #009E74", +" + c #009C8C", +".+ c #009584", +"++ c #009383", +"@+ c #009183", +"#+ c #009081", +"$+ c #00A278", +"%+ c #00A178", +"&+ c #00B778", +"*+ c #00B978", +"=+ c #00B777", +"-+ c #00B076", +";+ c #009D73", +">+ c #009586", +",+ c #009182", +"'+ c #00A076", +")+ c #00AD76", +"!+ c #00B877", +"~+ c #00B876", +"{+ c #00B676", +"]+ c #00B576", +"^+ c #00B175", +"/+ c #00A274", +"(+ c #009C72", +"_+ c #00A17C", +":+ c #009483", +"<+ c #008F81", +"[+ c #008E7F", +"}+ c #00AC75", +"|+ c #00B776", +"1+ c #00B575", +"2+ c #00B475", +"3+ c #00B375", +"4+ c #00B174", +"5+ c #00A773", +"6+ c #009C71", +"7+ c #009A71", +"8+ c #009970", +"9+ c #009485", +"0+ c #009082", +"a+ c #008F80", +"b+ c #001C00", +"c+ c #009F75", +"d+ c #009E75", +"e+ c #009F74", +"f+ c #00AC74", +"g+ c #00B875", +"h+ c #00B675", +"i+ c #00B374", +"j+ c #00B073", +"k+ c #00AA72", +"l+ c #009C70", +"m+ c #00996F", +"n+ c #00986E", +"o+ c #008D7F", +"p+ c #008C7D", +"q+ c #005F00", +"r+ c #001E00", +"s+ c #00A573", +"t+ c #00A974", +"u+ c #00AD74", +"v+ c #00B074", +"w+ c #00B574", +"x+ c #00B774", +"y+ c #00B474", +"z+ c #00B273", +"A+ c #00B072", +"B+ c #00AF72", +"C+ c #00AE72", +"D+ c #00AB71", +"E+ c #00A06F", +"F+ c #00976E", +"G+ c #00976D", +"H+ c #00966D", +"I+ c #00AA97", +"J+ c #008D7E", +"K+ c #008B7C", +"L+ c #006D00", +"M+ c #007F00", +"N+ c #009200", +"O+ c #00A201", +"P+ c #00B302", +"Q+ c #039D0A", +"R+ c #003B00", +"S+ c #003A00", +"T+ c #00BA75", +"U+ c #00BA74", +"V+ c #00B974", +"W+ c #00B674", +"X+ c #00B573", +"Y+ c #00B373", +"Z+ c #00B272", +"`+ c #00B071", +" @ c #00AD71", +".@ c #00AB70", +"+@ c #00AA70", +"@@ c #00A36E", +"#@ c #00986D", +"$@ c #00956C", +"%@ c #009181", +"&@ c #006600", +"*@ c #007D00", +"=@ c #009500", +"-@ c #00AC00", +";@ c #00C100", +">@ c #00D201", +",@ c #00D601", +"'@ c #00D402", +")@ c #00D202", +"!@ c #00D003", +"~@ c #00CD02", +"{@ c #00CB03", +"]@ c #00BA73", +"^@ c #00B873", +"/@ c #00B773", +"(@ c #00B673", +"_@ c #00B473", +":@ c #00B372", +"<@ c #00AF71", +"[@ c #00AE70", +"}@ c #00AC6F", +"|@ c #00AA6F", +"1@ c #00A86F", +"2@ c #00A56E", +"3@ c #009B6D", +"4@ c #00946A", +"5@ c #00936A", +"6@ c #009269", +"7@ c #009F8F", +"8@ c #00998A", +"9@ c #008F7F", +"0@ c #008E7E", +"a@ c #008B7D", +"b@ c #00897A", +"c@ c #009900", +"d@ c #00B300", +"e@ c #00CE00", +"f@ c #00E100", +"g@ c #00E101", +"h@ c #00DE01", +"i@ c #00DC01", +"j@ c #00DA01", +"k@ c #00D801", +"l@ c #00D502", +"m@ c #00D302", +"n@ c #00D102", +"o@ c #00CE02", +"p@ c #003A01", +"q@ c #00B872", +"r@ c #00B772", +"s@ c #00B672", +"t@ c #00B572", +"u@ c #00B472", +"v@ c #00B271", +"w@ c #00B171", +"x@ c #00B070", +"y@ c #00AE6F", +"z@ c #00AB6F", +"A@ c #00A96F", +"B@ c #00A76E", +"C@ c #00A66E", +"D@ c #00A56D", +"E@ c #00A06C", +"F@ c #00956A", +"G@ c #009168", +"H@ c #009067", +"I@ c #008D7D", +"J@ c #008C7C", +"K@ c #008A7B", +"L@ c #00887A", +"M@ c #007100", +"N@ c #008E00", +"O@ c #00AD01", +"P@ c #00C801", +"Q@ c #00E301", +"R@ c #00E401", +"S@ c #00E500", +"T@ c #00E400", +"U@ c #00E201", +"V@ c #00E001", +"W@ c #00DB01", +"X@ c #00D902", +"Y@ c #00D702", +"Z@ c #00CF02", +"`@ c #00CD03", +" # c #02CB08", +".# c #00B871", +"+# c #00B671", +"@# c #00B471", +"## c #00B270", +"$# c #00AF70", +"%# c #00AA6E", +"&# c #00A86E", +"*# c #00A36D", +"=# c #00A36C", +"-# c #00A16B", +";# c #009B69", +"># c #009267", +",# c #008F66", +"'# c #008E66", +")# c #008B7B", +"!# c #008779", +"~# c #009C01", +"{# c #00C201", +"]# c #00D401", +"^# c #00DD01", +"/# c #00DF01", +"(# c #00E600", +"_# c #00E800", +":# c #00DC02", +"<# c #00D701", +"[# c #00CF03", +"}# c #00CC02", +"|# c #00C903", +"1# c #00B670", +"2# c #00B570", +"3# c #00B470", +"4# c #00B370", +"5# c #00B26F", +"6# c #00B16F", +"7# c #00AF6F", +"8# c #00AE6E", +"9# c #00AC6E", +"0# c #00AB6E", +"a# c #00A96E", +"b# c #00A66D", +"c# c #00A56C", +"d# c #00A36B", +"e# c #00A26A", +"f# c #00A169", +"g# c #009F69", +"h# c #009668", +"i# c #008E65", +"j# c #008C64", +"k# c #009080", +"l# c #00877A", +"m# c #008678", +"n# c #006400", +"o# c #00C301", +"p# c #00DA02", +"q# c #00E700", +"r# c #00EA00", +"s# c #00CA03", +"t# c #003900", +"u# c #00B36F", +"v# c #00B16E", +"w# c #00AF6E", +"x# c #00AD6E", +"y# c #00A96D", +"z# c #00A86D", +"A# c #00A76C", +"B# c #00A069", +"C# c #009D68", +"D# c #008D65", +"E# c #008A7A", +"F# c #008677", +"G# c #008600", +"H# c #00D802", +"I# c #00E801", +"J# c #00CC03", +"K# c #01C706", +"L# c #00B36E", +"M# c #00B06E", +"N# c #00AB6D", +"O# c #00AA6D", +"P# c #00A66B", +"Q# c #00A66C", +"R# c #00A46B", +"S# c #00A16A", +"T# c #009F68", +"U# c #009466", +"V# c #008D64", +"W# c #008B64", +"X# c #009282", +"Y# c #008477", +"Z# c #008475", +"`# c #4D0000", +" $ c #970000", +".$ c #750000", +"+$ c #520000", +"@$ c #300000", +"#$ c #0E0000", +"$$ c #00B501", +"%$ c #00D602", +"&$ c #00E200", +"*$ c #00C703", +"=$ c #00B26D", +"-$ c #00B16D", +";$ c #00AF6D", +">$ c #00AD6D", +",$ c #00AC6C", +"'$ c #00AB6C", +")$ c #00A96C", +"!$ c #00A86B", +"~$ c #00A36A", +"{$ c #00A269", +"]$ c #009F67", +"^$ c #009C67", +"/$ c #00897B", +"($ c #008578", +"_$ c #008476", +":$ c #008375", +"<$ c #A70000", +"[$ c #FF0000", +"}$ c #EA0000", +"|$ c #BE0000", +"1$ c #900000", +"2$ c #5E0000", +"3$ c #200000", +"4$ c #007700", +"5$ c #00D002", +"6$ c #00C803", +"7$ c #00B06D", +"8$ c #00AE6D", +"9$ c #00AE6C", +"0$ c #00AD6C", +"a$ c #00A96B", +"b$ c #00A76B", +"c$ c #00A56A", +"d$ c #00A369", +"e$ c #009565", +"f$ c #008B63", +"g$ c #008778", +"h$ c #008577", +"i$ c #008376", +"j$ c #008274", +"k$ c #1B0000", +"l$ c #F10000", +"m$ c #FE0000", +"n$ c #FD0000", +"o$ c #DF0000", +"p$ c #A00000", +"q$ c #640000", +"r$ c #270000", +"s$ c #00AB01", +"t$ c #00DB02", +"u$ c #00C603", +"v$ c #05BB0D", +"w$ c #003901", +"x$ c #003800", +"y$ c #00AF6C", +"z$ c #00AC6B", +"A$ c #00AB6B", +"B$ c #00AA6B", +"C$ c #00A66A", +"D$ c #00A469", +"E$ c #009E67", +"F$ c #009D66", +"G$ c #008D63", +"H$ c #008B62", +"I$ c #009786", +"J$ c #008374", +"K$ c #008172", +"L$ c #6F0000", +"M$ c #FC0000", +"N$ c #FB0000", +"O$ c #FA0000", +"P$ c #F80000", +"Q$ c #E00000", +"R$ c #A30000", +"S$ c #4C0000", +"T$ c #050000", +"U$ c #00D101", +"V$ c #00D901", +"W$ c #00C503", +"X$ c #00C303", +"Y$ c #003801", +"Z$ c #00AE6B", +"`$ c #00AD6B", +" % c #00AA6A", +".% c #00A86A", +"+% c #00A76A", +"@% c #00A669", +"#% c #00A569", +"$% c #00A268", +"%% c #00A168", +"&% c #00A067", +"*% c #009664", +"=% c #008A62", +"-% c #009788", +";% c #008173", +">% c #007F72", +",% c #040000", +"'% c #D50000", +")% c #FC0001", +"!% c #F90000", +"~% c #F90100", +"{% c #F70000", +"]% c #F60000", +"^% c #F50000", +"/% c #F40000", +"(% c #E50000", +"_% c #9A0000", +":% c #400000", +"<% c #00A401", +"[% c #00C604", +"}% c #00C404", +"|% c #00C103", +"1% c #00AC6A", +"2% c #00AB6A", +"3% c #00AB69", +"4% c #00A969", +"5% c #00A869", +"6% c #00A769", +"7% c #00A568", +"8% c #009C65", +"9% c #008F63", +"0% c #008E80", +"a% c #008174", +"b% c #490000", +"c% c #FC0100", +"d% c #F70100", +"e% c #F30100", +"f% c #F30000", +"g% c #F20000", +"h% c #F10101", +"i% c #B80000", +"j% c #420000", +"k% c #006A00", +"l% c #00CC01", +"m% c #00D501", +"n% c #00CE03", +"o% c #00C003", +"p% c #003701", +"q% c #00AA69", +"r% c #00A468", +"s% c #00A368", +"t% c #00A167", +"u% c #009D65", +"v% c #009864", +"w% c #008961", +"x% c #008679", +"y% c #008072", +"z% c #007E72", +"A% c #007D70", +"B% c #B90000", +"C% c #F50100", +"D% c #F30001", +"E% c #F30101", +"F% c #F20100", +"G% c #F10100", +"H% c #EF0000", +"I% c #EE0000", +"J% c #ED0101", +"K% c #440000", +"L% c #00A101", +"M% c #00C902", +"N% c #00C403", +"O% c #00C104", +"P% c #00BF04", +"Q% c #03BD0A", +"R% c #003601", +"S% c #00A968", +"T% c #00A868", +"U% c #00A768", +"V% c #00A668", +"W% c #00A266", +"X% c #009E66", +"Y% c #009B64", +"Z% c #009063", +"`% c #008273", +" & c #007E71", +".& c #007D6F", +"+& c #280000", +"@& c #F70001", +"#& c #F60100", +"$& c #F40101", +"%& c #F00100", +"&& c #EE0100", +"*& c #ED0100", +"=& c #ED0000", +"-& c #EB0100", +";& c #450000", +">& c #00C204", +",& c #00BF03", +"'& c #00BE03", +")& c #00BB04", +"!& c #00A667", +"~& c #00A567", +"{& c #00A467", +"]& c #00A367", +"^& c #00A066", +"/& c #00A166", +"(& c #009E65", +"_& c #009B63", +":& c #009A63", +"<& c #008A61", +"[& c #008861", +"}& c #008879", +"|& c #008275", +"1& c #008073", +"2& c #007B6F", +"3& c #9B0000", +"4& c #F90001", +"5& c #F40100", +"6& c #F20001", +"7& c #F00001", +"8& c #EF0100", +"9& c #ED0001", +"0& c #EC0001", +"a& c #EB0001", +"b& c #EA0101", +"c& c #E90001", +"d& c #E80001", +"e& c #460000", +"f& c #00A801", +"g& c #00C203", +"h& c #00C004", +"i& c #00BE04", +"j& c #00BC04", +"k& c #00BA05", +"l& c #003501", +"m& c #00A466", +"n& c #00A366", +"o& c #009F65", +"p& c #009C64", +"q& c #009462", +"r& c #008960", +"s& c #008760", +"t& c #007C6F", +"u& c #007B6D", +"v& c #007A6C", +"w& c #150000", +"x& c #F60101", +"y& c #F40001", +"z& c #F00000", +"A& c #EF0101", +"B& c #EC0000", +"C& c #EA0100", +"D& c #E90100", +"E& c #E70001", +"F& c #E70101", +"G& c #E40100", +"H& c #AB0000", +"I& c #007A00", +"J& c #00CB02", +"K& c #00CA02", +"L& c #00C802", +"M& c #00C304", +"N& c #00BA04", +"O& c #00B805", +"P& c #00A465", +"Q& c #00A365", +"R& c #00A165", +"S& c #00A065", +"T& c #009A64", +"U& c #009D64", +"V& c #008D61", +"W& c #008576", +"X& c #007D71", +"Y& c #007C70", +"Z& c #007B6E", +"`& c #007A6D", +" * c #00796C", +".* c #010000", +"+* c #7D0000", +"@* c #EB0000", +"#* c #E80100", +"$* c #E70000", +"%* c #E70100", +"&* c #E60100", +"** c #E40101", +"=* c #E30100", +"-* c #E30101", +";* c #DD0000", +">* c #770000", +",* c #00B801", +"'* c #00BD04", +")* c #00B904", +"!* c #00B604", +"~* c #03B60B", +"{* c #003401", +"]* c #009C63", +"^* c #009363", +"/* c #008962", +"(* c #009963", +"_* c #009962", +":* c #009762", +"<* c #00875F", +"[* c #00786B", +"}* c #0C0000", +"|* c #E30000", +"1* c #EE0001", +"2* c #EC0100", +"3* c #E80101", +"4* c #E60000", +"5* c #E40000", +"6* c #E20101", +"7* c #E10101", +"8* c #E00001", +"9* c #E00101", +"0* c #AC0000", +"a* c #1A0000", +"b* c #008F01", +"c* c #00B705", +"d* c #00B505", +"e* c #00B305", +"f* c #003001", +"g* c #002100", +"h* c #009B88", +"i* c #009A62", +"j* c #009862", +"k* c #009861", +"l* c #009060", +"m* c #00855E", +"n* c #00776A", +"o* c #00766A", +"p* c #630000", +"q* c #EC0101", +"r* c #EA0001", +"s* c #E90000", +"t* c #E80000", +"u* c #E60101", +"v* c #E50100", +"w* c #E10000", +"x* c #DF0100", +"y* c #DE0001", +"z* c #D00000", +"A* c #006800", +"B* c #00B704", +"C* c #00B504", +"D* c #00B204", +"E* c #008C02", +"F* c #008860", +"G* c #009361", +"H* c #009961", +"I* c #009761", +"J* c #009760", +"K* c #00895F", +"L* c #008C7E", +"M* c #007F71", +"N* c #00786C", +"O* c #007669", +"P* c #D40000", +"Q* c #EF0001", +"R* c #E20000", +"S* c #E10001", +"T* c #DE0101", +"U* c #DD0100", +"V* c #DD0101", +"W* c #DC0001", +"X* c #D90000", +"Y* c #740000", +"Z* c #00A102", +"`* c #00A903", +" = c #007401", +".= c #00945F", +"+= c #00845D", +"@= c #00845C", +"#= c #007E70", +"$= c #00786A", +"%= c #00756A", +"&= c #007568", +"*= c #590000", +"== c #E10100", +"-= c #DF0101", +";= c #DB0101", +">= c #DA0101", +",= c #D90101", +"'= c #930000", +")= c #007A01", +"!= c #00B804", +"~= c #00B605", +"{= c #009C03", +"]= c #006300", +"^= c #00865E", +"/= c #008D5F", +"(= c #009660", +"_= c #009560", +":= c #00955F", +"<= c #008E5E", +"[= c #009280", +"}= c #007A6E", +"|= c #00796B", +"1= c #007469", +"2= c #007468", +"3= c #020000", +"4= c #CD0000", +"5= c #E90101", +"6= c #E50001", +"7= c #E20100", +"8= c #D80000", +"9= c #D70001", +"0= c #BD0000", +"a= c #2E0000", +"b= c #00B103", +"c= c #00B405", +"d= c #009803", +"e= c #006100", +"f= c #00895D", +"g= c #00955E", +"h= c #00875C", +"i= c #00825B", +"j= c #007569", +"k= c #007467", +"l= c #007367", +"m= c #007165", +"n= c #5C0000", +"o= c #E50101", +"p= c #DC0101", +"q= c #D80100", +"r= c #D60100", +"s= c #D50101", +"t= c #CC0000", +"u= c #4B0000", +"v= c #009002", +"w= c #00B404", +"x= c #009702", +"y= c #006000", +"z= c #00945E", +"A= c #00915D", +"B= c #007166", +"C= c #030000", +"D= c #CF0000", +"E= c #E30001", +"F= c #DE0100", +"G= c #DB0100", +"H= c #D90100", +"I= c #D80101", +"J= c #D70101", +"K= c #D60101", +"L= c #D50001", +"M= c #D40100", +"N= c #D30101", +"O= c #D10000", +"P= c #007101", +"Q= c #00B205", +"R= c #009903", +"S= c #00835B", +"T= c #00845B", +"U= c #00935E", +"V= c #00935D", +"W= c #008B5C", +"X= c #00815A", +"Y= c #00776B", +"Z= c #007266", +"`= c #006F64", +" - c #5B0000", +".- c #DD0001", +"+- c #DA0001", +"@- c #D80001", +"#- c #D40101", +"$- c #D30001", +"%- c #D20001", +"&- c #D10100", +"*- c #D00101", +"=- c #00A904", +"-- c #00B105", +";- c #009F04", +">- c #00925D", +",- c #00935C", +"'- c #00845A", +")- c #008059", +"!- c #007064", +"~- c #006E63", +"{- c #000303", +"]- c #D20000", +"^- c #EB0101", +"/- c #E20001", +"(- c #DC0100", +"_- c #DA0100", +":- c #D90001", +"<- c #D20101", +"[- c #D10101", +"}- c #CF0100", +"|- c #CE0000", +"1- c #000200", +"2- c #009102", +"3- c #00B005", +"4- c #00AF05", +"5- c #00A105", +"6- c #006500", +"7- c #008F7E", +"8- c #008F5B", +"9- c #007F59", +"0- c #007164", +"a- c #007063", +"b- c #006E62", +"c- c #006D61", +"d- c #6A0000", +"e- c #E40001", +"f- c #D70100", +"g- c #D30100", +"h- c #D20100", +"i- c #CF0101", +"j- c #CD0101", +"k- c #C80000", +"l- c #3B0000", +"m- c #007B01", +"n- c #00AE05", +"o- c #00AD05", +"p- c #00A604", +"q- c #008D5A", +"r- c #008859", +"s- c #007F58", +"t- c #007366", +"u- c #007265", +"v- c #D40001", +"w- c #CE0101", +"x- c #CC0101", +"y- c #C20000", +"z- c #2D0000", +"A- c #00AC05", +"B- c #00AC06", +"C- c #00AB06", +"D- c #00A905", +"E- c #007201", +"F- c #008A58", +"G- c #008258", +"H- c #007D57", +"I- c #00796D", +"J- c #007368", +"K- c #006F62", +"L- c #870000", +"M- c #E60001", +"N- c #DA0000", +"O- c #CB0101", +"P- c #CA0101", +"Q- c #009E05", +"R- c #00AA06", +"S- c #00A906", +"T- c #00A806", +"U- c #007D02", +"V- c #008758", +"W- c #007D56", +"X- c #006F63", +"Y- c #1D0000", +"Z- c #DF0001", +"`- c #C90101", +" ; c #C70101", +".; c #B70000", +"+; c #008903", +"@; c #00A705", +"#; c #00A706", +"$; c #008503", +"%; c #008456", +"&; c #007D55", +"*; c #008977", +"=; c #007267", +"-; c #006D62", +";; c #E00100", +">; c #DE0000", +",; c #D70000", +"'; c #C80101", +"); c #C50201", +"!; c #007602", +"~; c #00A506", +"{; c #00A406", +"]; c #009104", +"^; c #007C55", +"/; c #008156", +"(; c #007B55", +"_; c #007C6E", +":; c #380000", +"<; c #C70102", +"[; c #C50101", +"}; c #006700", +"|; c #00A206", +"1; c #009605", +"2; c #006200", +"3; c #007A54", +"4; c #007B54", +"5; c #B20000", +"6; c #C60101", +"7; c #C40101", +"8; c #009B06", +"9; c #009906", +"0; c #007A53", +"a; c #007953", +"b; c #007065", +"c; c #4E0000", +"d; c #D00100", +"e; c #C80201", +"f; c #C60201", +"g; c #C30101", +"h; c #BE0301", +"i; c #009005", +"j; c #006C01", +"k; c #007852", +"l; c #CA0000", +"m; c #DB0001", +"n; c #CF0001", +"o; c #C30201", +"p; c #C20101", +"q; c #C20102", +"r; c #006E01", +"s; c #670000", +"t; c #DB0000", +"u; c #D60001", +"v; c #D10001", +"w; c #C10102", +"x; c #C00102", +"y; c #8F0101", +"z; c #007650", +"A; c #0F0000", +"B; c #CA0102", +"C; c #C40201", +"D; c #C10101", +"E; c #C00201", +"F; c #BC0201", +"G; c #BB0101", +"H; c #540000", +"I; c #8C0000", +"J; c #BF0101", +"K; c #BE0102", +"L; c #BC0101", +"M; c #BB0202", +"N; c #BA0101", +"O; c #B60000", +"P; c #2A0000", +"Q; c #330000", +"R; c #C00101", +"S; c #BD0201", +"T; c #BC0102", +"U; c #BB0201", +"V; c #B90202", +"W; c #B80102", +"X; c #9E0001", +"Y; c #090000", +"Z; c #C80102", +"`; c #C20202", +" > c #BF0102", +".> c #BE0201", +"+> c #BD0101", +"@> c #BC0202", +"#> c #BB0102", +"$> c #BA0201", +"%> c #B90102", +"&> c #B70101", +"*> c #750101", +"=> c #BE0101", +"-> c #B70102", +";> c #B60102", +">> c #B40102", +",> c #3F0000", +"'> c #160000", +")> c #C20201", +"!> c #BF0201", +"~> c #BD0202", +"{> c #B80101", +"]> c #B70202", +"^> c #B60201", +"/> c #B50201", +"(> c #B30201", +"_> c #A50001", +":> c #100000", +"<> c #960000", +"[> c #C60102", +"}> c #C10201", +"|> c #BD0102", +"1> c #B70201", +"2> c #B30101", +"3> c #B20201", +"4> c #7A0001", +"5> c #B80202", +"6> c #B60101", +"7> c #B50101", +"8> c #B40202", +"9> c #B10201", +"0> c #B10102", +"a> c #AF0102", +"b> c #360000", +"c> c #140000", +"d> c #B90101", +"e> c #B90201", +"f> c #B40201", +"g> c #B30102", +"h> c #B20102", +"i> c #B10101", +"j> c #B00101", +"k> c #AE0201", +"l> c #9C0101", +"m> c #0A0000", +"n> c #A40000", +"o> c #C30102", +"p> c #B80201", +"q> c #B50102", +"r> c #B00102", +"s> c #AF0202", +"t> c #AE0202", +"u> c #AD0102", +"v> c #6B0001", +"w> c #660000", +"x> c #BA0202", +"y> c #B20202", +"z> c #B10202", +"A> c #B00201", +"B> c #AE0102", +"C> c #AC0201", +"D> c #AA0001", +"E> c #2B0000", +"F> c #B50202", +"G> c #AD0202", +"H> c #AC0101", +"I> c #AA0202", +"J> c #940100", +"K> c #070000", +"L> c #BA0000", +"M> c #C70201", +"N> c #C00202", +"O> c #B00202", +"P> c #AB0202", +"Q> c #AA0101", +"R> c #A80102", +"S> c #5D0101", +"T> c #7B0000", +"U> c #AC0102", +"V> c #AA0102", +"W> c #A90202", +"X> c #A70102", +"Y> c #A40101", +"Z> c #260000", +"`> c #B30202", +" , c #B20101", +"., c #AF0201", +"+, c #A80201", +"@, c #A70201", +"#, c #A70101", +"$, c #A60202", +"%, c #850101", +"&, c #C90000", +"*, c #AD0201", +"=, c #AB0201", +"-, c #A90102", +";, c #A70202", +">, c #A60101", +",, c #A50201", +"', c #A40201", +"), c #510000", +"!, c #A10000", +"~, c #B60202", +"{, c #AC0202", +"], c #A50102", +"^, c #A30102", +"/, c #9C0100", +"(, c #170000", +"_, c #720000", +":, c #A30202", +"<, c #A20202", +"[, c #A10202", +"}, c #740101", +"|, c #C90102", +"1, c #BF0202", +"2, c #BE0202", +"3, c #AE0101", +"4, c #AB0101", +"5, c #A90101", +"6, c #A40102", +"7, c #A30201", +"8, c #A10102", +"9, c #A00202", +"0, c #9F0202", +"a, c #390000", +"b, c #B10001", +"c, c #9D0100", +"d, c #880100", +"e, c #5E0101", +"f, c #4A0000", +"g, c #350000", +"h, c #240000", +"i, c #220000", +"j, c #1C0000", +"k, c #630101", +"l, c #790101", +"m, c #9F0102", +"n, c #8E0100", +"o, c #080000", +"p, c #C60001", +"q, c #C40202", +"r, c #B70100", +"s, c #6C0001", +"t, c #430000", +"u, c #290000", +"v, c #130000", +"w, c #060000", +"x, c #5C0101", +"y, c #AF0100", +"z, c #8F0000", +"A, c #2F0000", +"B, c #980001", +"C, c #660101", +"D, c #B50000", +"E, c #3C0000", +"F, c #3A0000", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . + @ # $ % & * = - ; . . . . . . ", +" . . . . . . . . . . > > , ' ) ! ~ { ] ^ # / % & ( = - _ : < [ . . . . ", +" . . . . . . . . } | | 1 1 2 3 4 5 6 7 ! 8 { 9 ^ / / & 0 = - _ _ a b c . . . . ", +" . . . . . . d d e f d g | | | h i 3 , 5 j 7 ! k + 9 ^ / l * ( m ; n o b p q r . . . ", +" . . . . . g f s s t t t s s d g | | 2 u u , 6 j ! 8 { v ^ w x & ( = - _ o < [ q r y . . . ", +" . . . . } z s t t A A A A B C D s } } 1 2 u E F 6 ! G k + H $ % & * I - ; n < [ c J K L . . . ", +" . . . . 1 } z d D B A M M N M M O B P s } | 1 Q > , 5 ) R k + @ ^ / % * ( S ; n a [ T J r L U . . ", +" . . . u 2 V } e s A M N W X X Y X Z O C D d } | h u > 5 j 7 ~ + 9 # ` .& ( S ; _ a b T q ..+.@.. . . ", +" . . . . Q 1 } d s B #.Z X $.%.%.&.*.X =.#.t s g | 1 u > -.;.! R { ] ^ w % & * = >._ ,.b [ q K +.@.'.. . . ", +" . . . . ).} e D A =.Y $.%.!.!.!.%.~.Z M A s z } 1 u > , ' 7 ! { v @ ` % & ( = ; _ : b c q r L U {.'.. . ", +" . . . } s t A Z X ].!.^./.(.%.$.X N A s d } 1 2 u , ' 7 ! { 9 ^ ` / & ( ( _.:.o b [ q r K @.<.[.}.. . ", +" . . } f t #.Z ~.].!./.|.(.!.$.X =.A t d } 1 2 > , 6 7 ! 8 + H w / * * = - :.,.1.[ q r +.@.{.[.}.. . . ", +" . . . f t A Z *.%.!.(.2.(.!.&.W Z A t d | V 2 3.F 6 7 G k v H ` x & 4.= ; _ o b [ 5...K @.<.[.6.7.. . ", +" . . . P B Z Y ~.%.8.&.!.%.$.Z M A P d } 1 i > -.6 7 ! { 9 @ ` % & ( S - _ : b p q r +.@.9.[.}.7.0.. . ", +" . . . C M Z X $.a.a.a.$.X Z #.t s d | 1 Q > 5 6 7 G { 9 ^ w % * ( m - _ a b T q r +.b.{.[.c.7.d.. . . ", +" . . D A O N W X e.e.f.N M t s d } 1 2 u > -.6 7 ~ g.9 ^ / % & ( m >._ o [ c q K L b.'.6.h.7.i.j.. . ", +" . . . t A #.Z Z k.f.k.l.B P d z | 1 Q 3 , 5 j ! ~ + H ^ / l * I S ; _ a [ T q K L b.'.6.h.7.d.j.. . . ", +" . . s t t C A l.k.m.n.o.z z | 1 h u > -.6 7 G { + ^ ` p.l * = >.:.q.a [ c q K @.<.'.6.h.r.d.s.t.. . ", +" . . . e s s t t u.v.w.u.x.y.).h i > , ' 7 ! k g.9 ^ $ % & 4.= ; _ ,.< [ c r y z.<.[.6.A.B.C.j.D.. . . ", +" . . } g d d e u.u.E.F.x.G.G.Q 3 , 5 6 7 R k + H # / % * H.= >._ : b T q r K @.'.I.c.7.0.C.J.D.K.. . ", +" . . | } | } L.y.M.N.O.P.Q.R.S.F 6 7 ! k T.9 ^ ` % & * H.- ; o < b p U...y b.{.[.h.7.d.C.J.t.K.. . . ", +" . . 1 1 V 1 | V.P.N.W.X.Y.Z.Z.`.7 ! ~ { ] ^ # / % * ( = ; _ : a [ c r K L <. +6.h.7.d.j..+++@+#+. . ", +" . . . 2 2 2 2 $+%+&+*+X.=+-+Z.`.;+~ { + 9 ^ $ x & * = - ; o a b T q r y @.<.I.6.h.r.d.>+t.K.,+#+. . . ", +" . . u u u u 4 '+)+!+~+{+]+^+/+;+(+_+v ^ ` x .* ( = ; _ o < b c U.K L b.'.[.h.7.0.j.J.:+K.,+<+[+. . ", +" . . . , , , , Z.}+~+|+1+2+3+4+5+6+7+8+# / % & ( = - ; o ,.b [ q U.K @.<.'.6.h.B.i.j.9+++K.0+a+[+. . ", +" b+b+c+`.c+d+e+f+g+h+1+i+i+4+j+k+l+m+n+& & * I - >._ o a [ c q ..L b.{.I.6.7.0.d.>+t.++,+#+[+o+p+. . ", +" q+q+q+q+q+q+b+r+s+t+u+v+w+x+h+w+y+i+z+A+B+C+D+E+F+G+H+( = - I+o a b p q U.K L <.I.[.6.7.i.j.J.:+K.,+#+[+J+K+. . ", +" q+q+q+q+q+q+q+L+M+N+O+P+Q+R+S+T+U+V+g+x+W+X+Y+z+Z+`+C+ @.@+@@@#@$@$@; :.n a a [ q r ..L @.<.I.6.h.B.d.s.t.++,+%@a+[+J+K+. . . ", +" q+q+q+q+q+q+&@*@=@-@;@>@,@'@)@!@~@{@R+R+]@^@^@/@(@X+_@:@Z+`+<@[@}@+@|@1@2@3@4@5@6@,.b b p q r K 7@b.'.6.}.8@0.j.J.t.++,+#+9@0@a@K+b@. . ", +" q+q+q+q+q+&@M+c@d@e@f@g@g@h@i@j@k@l@m@n@o@{@R+R+p@q@r@s@t@u@:@v@w@x@[@y@}@z@A@B@C@D@E@F@6@G@H@T q r K z.U '.I.6.7.7.d.j.t.D.K.#+a+[+I@J@K@L@. . ", +" q+q+q+q+M@N@O@P@i@h@g@Q@R@S@T@U@V@h@W@X@Y@'@n@Z@`@ #R+S+.#+#t@@#@###w@x@$#y@}@z@%#&#B@D@*#=#-#;#>#H@,#'#K L @.<. +6.h.B.d.j.J.++++,+#+[+o+p+)#b@L@!#. . ", +" q+q+~#{#)@]#k@X@^#/#U@R@(#_#(#R@g@/#:#j@<#'@)@[#}#|#R+S+1#2#3#4###5#6#7#8#9#0#%#a#B@b#c#d#d#e#f#g#h#,#i#j#@.<.'.[.6.8@0.d.j.t.D.K.0+k#[+p+K+K@b@l#m#. . ", +" . . . . . . . . . . q+n#o#)@l@<#p#i@V@U@R@q#r#q#S@U@V@i@j@<#'@)@Z@`@s#R+S+t#3#u#5#5#v#w#8#x#0#0#y#z#A#c#=#d#e#f#f#B#C#i#D#L b.<.'.6.8@0.i.C.9+D.K.@+<+9@[+p+K@E#L@!#F#. . . ", +" . . . . . . . . . . . . . . . q+q+G#)@'@H#j@^#/#g@R@q#I#(#T@g@/#^#j@Y@'@)@Z@J#s#K#p@t#L#L#v#M#w#w#x#9#N#O#y#P#Q#R#d#f#S#f#B#T#U#V#W#U {.[.[.c.7.0.C.>+.+++X#,+a+o+I@J@K@b@!#m#Y#Z#. . ", +" . . `# $.$+$@$#$. . . . . . . . . . q+q+$$'@%$X@:#h@V@&$T@S@R@U@g@h@i@X@Y@'@)@[#}#s#*$S+t#=$v#-$w#;$>$,$'$O#)$!$P#R#~${$f#B#B#]$^$V#j#<.{.I.6.h.7.0.d.s.J.:+K.,+k#[+J+p+K+/$L@!#($_$:$. . ", +" . . . <$[$[$[$[$}$|$1$2$3$. . . . . . . . q+4$>@l@H#j@i@/#V@U@U@g@V@/#^#W@H#%$m@5$o@J#6$*$S+t#-$7$;$8$9$0$N#)$a$!$b$c$d$d$f#B#T#]$]$e$W#f${. +[.h.8@0.d.j.J.t.++K.#+a+[+J+K+K@b@l#g$h$i$j$. . . ", +" . . k$l$[$[$[$[$[$[$m$n$o$p$q$r$. . . . . . . q+q+s$l@%$X@t$^#h@/#/#/#h@^#W@X@<#l@)@5$`@{@6$u$v$w$x$y$9$0$z$A$B$a$!$C$C$D$d$f#B#T#]$E$F$G$H$<.'.6.6.8@0.0.I$>+t.++@+,+a+[+J+a@K@b@L@!#F#_$J$j$K$. . ", +" . . . L$[$[$[$[$[$m$n$M$N$O$O$P$Q$R$S$T$. . . . . q+M@U$l@Y@V$t$i@i@i@:#i@W@V$<#l@m@n@Z@}#s#*$W$X$w$Y$Z$`$z$A$ %.%.%+%@%#%d$$%%%&%]$E$F$*%H$=%[.6.}.h.0.-%I$J.t.++K.,+#+a+o+p+K+K@b@l#m#h$:$j$;%>%. . ", +" . . ,%'%[$[$[$[$n$n$)%N$!%~%{%]%^%/%(%_%:%. . . . . q+q+<%m@l@%$V$X@j@j@V$X@X@Y@l@'@n@Z@`@s#|#[%}%|%Y$Y$1%2%3%4%4%5%6%#%7%d$$%%%&%E$E$F$8%9%=%'.[.h.7.B.i.I$>+t.++++@+#+0%[+I@K+K@b@l#g$h$_$:$a%K$>%. . . ", +" . . b%[$[$[$m$n$c%N$!%P$P$d%^%/%e%f%g%h%i%j%. . . . . q+k%l%m@l@l@Y@Y@H#Y@Y@m%'@m@n@5$n%J#|#*$W$X$o%Y$p%p%q%q%4%6%6%#%r%s%$%t%&%E$F$u%8%v%=%w%6.c.7.7.d.j.s.9+++K.X#%@a+[+J+a@K@E#L@x%m#Y#i$j$K$y%z%A%. . ", +" . . . B%[$m$n$M$O$O$!%P$d%]%C%D%E%F%G%H%I%J%i%K%. . . . . q+q+L%n@)@m@'@l@m%l@'@m@)@n@[#o@J#M%6$u$N%O%P%Q%p%R%S%T%U%V%7%r%r%W%t%&%X%F$8%8%Y%Z%w%6.h.A.B.d.C.>+.+++++,+#+a+[+J+K+K@b@L@!#m#h$_$J$`%y%>% &.&. . ", +" . . +&O$m$M$N$O$!%P$@&#&^%$&f%g%l$%&&&*&=&-&}$i%;&. . . . . q+L+l%5$n@n@n@)@n@)@5$5$Z@~@}#s#6$u$}%>&,&'&)&p%R%T%!&~&~&{&]&W%^&/&X%(&u%8%_&:&<&[&h.7.0.d.j.s..+D.K.,+,+#+9@J+p+K+K@b@}&m#h$_$|&j$1&>% &A%2&. . . ", +" . . . 3&n$M$O$4&P${%]%^%5&f%6&7&%&8&I%9&0&a&b&c&d&i%e&. . . . q+q+f&~@n%[#[#!@Z@[#n%`@}#{@M%*$u$}%g&h&i&j&k&R%l&!&~&m&n&n&W%/&o&o&u%p&Y%:&:&q&r&s&7.0.d.j.J.t.++K.@+,+<+[+J+p+K+K@b@l#!#($_$Z#j$K$>% &A%t&u&v&. . ", +" . . w&=&O$!%!%{%x&^%y&E%D%G%z&A&I%*&B&C&D&d&E&F&(%G&H&3$. . . . q+I&J&J#`@`@J#`@~@J#K&|#L&*$W$}%M&h&i&j&N&O&R%l&l&P&Q&R&S&p&T&T&U&p&Y%:&:&:&V&s&0.d.C.s.J.t.++++,+%@k#0%J+p+K+K@b@L@!#($W&i$j$`%y%z%X&Y&Z&`& *. . ", +" .*. . +*!%P$d%]%C%5&e%D%h%%&H%&&=&B&@*b&#*$*%*&***=*-*;*>*T$. . . q+q+,*|#M%K&s#s#s#|#6$6$u$N%N%>&o%P%'*)&)*!*~*l&{*]*^*H$H$H$=%/*:&_&:&(*_*:*<*<*C.j.>+J.D.++X#,+#+a+[+0@I@K+K@E#L@!#m#h$_$:$`%y%>% &.&t&u& *[*. . ", +" . . }*|*{%d%]%^%f%g%h%%&H%1*=&2*@*C&D&3*F&4*(%5*6*7*8*9*0*a*. . . q+b*u$*$*$*$*$*$*$W$N%}%g&|%h&'&'*)&)*c*d*e*f*g*=%=%=%h*[.6.w%:*i*_*j*k*l*<*m*j.9+.+:+K.K.,+<+a+[+J+p+K+)#b@L@!#m#h$_$:$a%1&y%z%A%t&Z& * *n*o*. . ", +" . . p*{%#&^%/%g%G%l$z&&&1*q*a&r*s*t*F&u*v*|*|*6*w*x*y*;*z*;&. . . q+A*g&}%N%}%N%}%N%M&>&>&o%'&i&j&)&)*B*C*D*E*b+b+w%[.[.6.}.}.F*G*H*k*I*J*K*m*>+t.:+++++X##+k#9@[+J+L*K+K@b@b@!#m#h$_$:$a%;%>%M*X&t&Z&`&N*[*o*O*. . ", +" . . ,%P*5&f%D%F%7&Q*1*1*q*B&r*}$3*3*E&v*G&=*R*S*9*T*U*V*W*X*Y*.*. . . q+q+Z*>&>&>&>&O%O%O%h&P%i&'*)&N&)*c*C*`* =q+b+b+h.h.h.h.7.B.<*l*I*J*I*.=+=@=:+:+++@+,+#+k#9@o+J+p+K+K@/$L@!#m#h$_$:$j$;%y% &#=t&Z&u& *$=n*%=&=. . ", +" . . *=/%f%6&z&7&1*I%=&2*}$c&d&%*4*(%v*=*-*==Q$-=T*V*W*;=>=,='=}*. . . q+)=,&P%,&,&P%P%i&'*j&)&N&!=B*~=d*{=]=q+q+. . . 7.0.0.i.-%^=/=(=_=:=<=@=[=++K.,+,+#+a+[+J+L*p+K+K@b@L@!#m#h$_$:$j$;%y%>% &.&t&}= *|=n*%=1=2=. . . ", +" . . 3=4=g%l$%&H%I%=&@*b&c&5=t*$*4*6==*7=7*9*x*T*V*U*;=>=,=8=9=0=a=. . . q+q+b='*j&'*'*j&)&N&N&)*!=B*~=c=d=e=q+q+ . . d.d.I$d.j.m*f=:=g=g=h=i=K.X##+#+a+a+J+J+I@K+K+K@L@L@!#m#h$_$:$j$1&y%>% &.&2&`& *N*n*o*j=k=l=m=. . ", +" . . n=l$z&8&1*=&B&a&}$s*3*&*o=o==*7=w*9*o$y*y*p=;=>=,=q=9=r=s=t=u=. . . q+v=N&N&N&)*)*O&!=!=!*d*w=e*x=y=q+q+ . . j.>+s.J..+@=h=z=z=A=i=i=0+#+<+9@[+J+L*a@K+K@b@L@l#!#m#h$_$:$a%;%y%>% &Y&Z&Z&`& *n*o*%=2=l=B=m=. . ", +" . . C=D=H%I%J%B&@*C&c&%*$*(%(%E=-*6*S*9*x*F=W*;=G=H=I=J=K=L=M=N=O=n=. . . q+P=c*!=B*B*~=!*!*w=c=e*Q=R=y=q+ . . t.t.:+:+++S=T=U=V=W=X=9@k#a+[+J+J+p+K+K@K@b@L@}&m#m#_$Z#|&j$;%y%>% &A%t&Z&`& *Y=n*j=2=l=Z=m=`=. . ", +" . . -H%=&9&@*@*D&#*F&&*(%=*-*7=w*-=-=F=.-;=+-,=@-@-K=L=#-$-%-&-*-2$. . q+q+=-c=c=c=c=e*e*Q=----;-]=q+y= . . ++++K.K.K.i=i=>-,-'-)-0%[+J+J+p+p+K+K@b@L@L@!#m#($Y#_$j$j$K$y%z%X&.&t&Z&v& *$=o*j=1=k=Z=m=!-~-. . {- ", +" . . ,%]-0&-&^-r*D&d&&*(%G&|*/-==x*x*T*V*(-;=_-:-I=J=L=L=$-N=<-[-}-|-S$. 1-q+2-Q=Q=Q=------3-4-5-6-q+q+ . . @+,+,+,+#+7-X=8-8-9-9-o+I@p+J@K+K@b@L@L@l#m#m#h$_$:$|&a%y%y%>% &.&t&Z&`&|=Y=n*%=1=k=Z=m=0-a-b-c-. . ", +" . . d-^-a&C&3*$*&*(%v*e-R*==Q$-=T*V*(-;=_-H=8=f-'%s=N=g-h-*-*-i-j-k-l-. q+m-4-3-4-4-n-n-o-p-k%q+q+ . . . #+<+a+0%a+9-q-r-s-K+a@K+K+K@E#L@L@L@!#m#F#W&Z#:$|&`%K$y%M*X&A%t&Z&v& *[*o*o*j=2=t-u-!-!-b-c-c-. . ", +" . . }*;*}$s*3*$*4*G&G&-*S*7*-=T*V*W*G=+-,=I=J=K=v-N=N=[-*-*-i-w-j-x-y-z-q+&@A-o-B-A-A-C-D-E-q+q+ . . a+[+[+[+0@s-F-G-H-K+)#K@E#b@L@l#!#g$($h$_$:$|&j$;%y%>% &X&t&t&u&I-N*[*n*%=2=J-l=u-m=`=K-c-c-c-. . ", +" . . L-s*d&%*M-v*=*R*R*7*9*y*V*p=;=N-X*I=f-K=s=M=g-<-[-*-i-j-x-x-O-P-0=q+q+Q-R-R-S-S-T-U-q+q+ . . J+J+L*p+a@H-V-W-W-E#b@L@L@l#g$g$m#h$_$:$J$j$`%y%>%>% &A%Y&2&`&`& *Y=o*o*1=k=l=B=0-`=X-c-c-c-c-. . ", +" . . Y-5*%*4*o=5*|*7*w*-=Z-V*V*G=>=_-@-J=K=s=#-N=<-&-*-i-w-j-O-O-P-`- ;.;q++;@;#;@;#;$;q+q+ . . K+K+K+K+K+W-%;&;*;L@L@!#!#g$F#h$_$_$J$|&j$;%y%y%z% &A%t&Z&`& * *n*n*j=&=J-=;u-m=a-~--;c-c-c-c-. . ", +" . . . p$&*6=G&=*7*7*;;x*>;(-;=>=+-q=f-,;s=M=$-<-[-*-i-w-j-x-O-P-`-'; ;);q+!;~;~;{;];y=q+ . . K@K@/$b@b@^;/;(;!#x%m#m#F#h$_$i$:$:$j$;%1&y%>% &A%.&_;Z&I- *[*[*o*%=2=k=l=u-0-!-b-b-c-c-c-c-c-c-. . ", +" . . :;v*G&-*R*S*;;T*F=(-(->=,=q=J=J=L=s=#-$-[-*-i-w-j-x-O-P-`-';<;);[;q+};|;|;1;2;q+ . . L@L@L@L@L@(;3;4;m#($h$W&_$_$:$J$j$;%;%>%>%M*X&Y&t&Z&Z&`& *$=n*o*O*2=l==;B=!-!-b-c-c-c-c-c-c-c-c-. . ", +" . . . 5;=*|*7*9*-=T*V*p=G=H=:-@-J=K=M=N=N=[-*-i-w-j-x-O-P-`-';<;6;[;7;q+q+8;9;};q+q+ . . !#g$m#!#m#3;0;a;h$_$_$:$:$j$a%;%1&y%>%M* &A%A%t&Z&`&I-[*[*o*o*j=2=l=Z=m=b;!-K-c-c-c-c-c-c-c-c-c-. . ", +" . . c;6*S*;;-=F=V*p=;=>=,=f-J=K=s=#-N=%-[-d;i-w-x-O-P-P-e;';f;[;7;g;h;q+i;j;q+q+. . . m#($F#h$W&a;k;_$:$:$J$j$;%;%y%y%>%M* &X&A%t&_;`&`& *. . . . . . . . . . . . . . . . . . . . . c-. . ", +" . . T$l;8*x*y*.-p=m;>=,=I=f-K=v-M=N=[-*-*-n;w-j-x-O-`-';'; ;6;7;o;p;q;q+r;q+q+. . . . W&_$_$_$Z#k;k;J$`%`%;%1&y%>%>%M*A%A%A%t&Z&u&. . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . s;8*T*U*V*t;>=,=H=J=u;s=M=g-<-v;*-}-w-j-x-O-`-`-';6;6;[;g;p;w;x;q+q+q+y;3=. . . . :$:$J$j$j$z;z;K$K$y%y%>%M* &#=A%t&t&Z&. . . . . . . . . . . ", +" . . A;'%y*U*;=G=,=@-J=u;'%s=N=<-[-*-i-w-j-x-O-B;`-';6;6;C;7;p;D;D;E;q+q+F;G;H;. . . . . ;%;%;%;%y%y%y%>%>%M*M* &A%A%t&t&. . . . . . . ", +" . . I;W*(-m;,=:-J=9=s=s=#-g-[-&-i-w-j-x-O-P-`-';<;[;[;7;o;p;x;J;J;K;L;M;N;O;P;. . . . y%y%>%y%>%>% & &#=#=A%Y&t&. . . . . . . ", +" . . Q;(-;=>=,=I=J=K=L=N=N=%-*-i-w-j-x-O-P-`-e; ;6;[;7;g;D;R;R;J;S;T;T;U;V;W;X;Y;. . . . z%z% & & &#=A%t&.&2&_;. . . . . . ", +" . . . .;>=,=@-J=K=#-N=N=<-*-*-}-j-j-O-P-`-Z; ;6;[;7;g;`;D;R; >.>+>@>#>$>%>&>&>*>. . . . . A%A%A%Y&t&t&Z&Z&. . . . . . ", +" . . q$H=I=,;K=v-v-<-[-[-*-i-w-x-O-P-`-`- ;6;);7;o;p;D;R;J;=>S;L;G;$>%>->&>;>>>,>. . . . . 2&Z&Z&Z&Z&u&. . . . . . ", +" . . '>P*f-r=K=#-g-<-[-*-}-j-j-x-P-`-';';6;[;7;g;)>D;R;!>.>~>L;G;N;V;{>]>^>/>(>_>:>. . . . }=`&`&`&. . . . . ", +" . . . <>J=s=M=N=h-v;*-i-w-j-x-O-P-';'; ;[>[;g;p;}>E;J;J;|>+>#>$>%>W;1>;>/>>>2>3>4>. . . . . |=[*. . . . . ", +" . . c;K=#-N=<-v;*-i-w-j-x-O-`-';'; ;[;[;g;g;p;R;J; >+>L;U;G;N;5>1>6>7>8>(>9>0>a>b>. . . . . . . . . ", +" . . c>]-#-<-[-*-*-w-w-j-O-P-`-'; ;6;[;7;o;q;x;x;.>=>L;F;G;d>e>&>6>;>f>g>h>i>j>k>l>m>. . . . . . . ", +" . . . n><-<-[-i-i-j-j-O-B;`-'; ;6;[;7;o>p;w;R; >K;+>L;U;$>5>p>]>q>f>2>h>0>r>s>t>u>v>. . . . . . ", +" . . w><-&-i-i-w-j-O-P-P-`- ;f;[;7;g;p;D;R;!>=>+>L;$>x>e>{>&>6>q>f>y>z>A>a>k>B>C>D>E>. . {-. ", +" . . +&[-*-i-j-j-x-O-`-';'; ;6;7;g;)>w;R;J;=>~>L;G;$>d>W;->;>F>>>(>3>0>A>a>G>G>H>I>J>K>. . ", +" . . . L>i-w-j-x-P-P-`-M>f;6;C;g;p;D;R;N>=>+>L;G;N;V;W;]>6>f>(>h>i>A>O>t>t>u>P>P>Q>R>S>. . . ", +" . . T>w-j-x-O-P-`- ; ;6;7;7;p;}>R; >J;+>T;G;N;d>{>&>^>/>f>2>y>0>A>s>t>C>U>I>V>W>X>Y>Z>. . ", +" . . ,>j-x-O-P-`-'; ;[>[;7;p;D;D;J;J;.>S;G;#>%>p>->;>F>f>`> ,z>A>.,G>G>U>V>W>+,@,#,$,%,C=. . ", +" . . m>&,x-P-P-'; ;6;[;7;g;p;D;J;=>K;|>#>G;d>{>W;;>/>q>2> , ,A>a>B>*,C>=,I>-,R>;,>,,,',),. . . ", +" . . !,O-`-'; ; ;[;[;g;g;w;R;J;K;@>L;$>$>p>&>~,7>F>8>g>3>i>a>t>*,{,P>V>-,+,@,$,],',^,/,(,. . ", +" . . _,P-'; ; ;6;[;o>p;D;R;!>=>|>L;G;%>d>->]>~,7>>>h> ,A>r>t>*,C>{,I>W>+,#,>,],',:,<,[,},. . . ", +" . . u=|, ; ;[;7;g;p;D;x;1,2,S;L;G;N;e>{>]>^>7>>>`>9>O>O>3,G>U>4,I>5,W>;,$,],6,7,<,8,9,0,a,. . ", +" . . P;';6;6;[;7;g;D;D;!>=>~>T;G;U;e>5>]>^>7>b,c,d,_,e,f,g,h,i,Y-'>'>'>'>j,g,S$k,l,y;0,m,n,o,. . ", +" . . m>p,6;[;q,o;p;R; >=>K;T;L;N;r,<>s,t,u,v,3=. . . . . . . . . . . . . . . . . . . w,Z>S$x,. . . ", +" . . y,[;7;g;q;D;E;J;.>B%z,2$A,o,. . . . . . . . . . . . . . . . . . . . . . . . . . . . . #$. . ", +" . . z,7;g;p;D;+>B,C,g,o,. . . . . . . . . . . . . . . . . . ", +" . . +*g;D,>*E,}*. . . . . . . . . . . . . . ", +" . . L$F,,%. . . . . . . . . . . ", +" . . . . . . . . Y;. . ", +" . . . . . ", +" . . ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/src/Mod/Surfaces/Icons/Ico.png b/src/Mod/Surfaces/Icons/Ico.png new file mode 100644 index 0000000000000000000000000000000000000000..cd1a6149e26c41b424fff4ef5d6a03f11c167aed GIT binary patch literal 7236 zcmb7}=QrG4w8wvAM(@!^A1xu;AVJj8qJ$77N(Q5gXu;r7N3;+%(QBF>(c1_{?<9!c zLiAoo39h^DUvOXSz0cX}y!x(l_Sv7cqx7DtQZ-Rf4Ioas*PV2`B6Zg=^#lNNy8ks0kdXzwO%i))>ZlRV zkVDAH2n+=ybZ%43UTP*@DsC<=cCKE4iie$*mz^!l=cSh;OkGn)&p3pN2>@7gHC2@i zeW!QK|4U;ts=1l-FY!y~BR3_T`oc^5Ul^YiIVnki&|Q#e4tZhWN4ey|NG(VVPruD* zWCvk@ZVokl+Y#NBHXQVUMlxJi6X1CV1&1LR+idOq_KH0hIMF2+yM4qF|VVYot<6qu5J!en*ue=FFV&&nHTt4 zN7j2ADvDZk7bAi==k{{G=jgef&~h)x}r-$SND5yQzYH5Jb2RK>HOH=y?bDduC&lRc&Bqu{2G^9zGr%%&A4SqZ}{ z-;!M1T-oL72cRF$k)7`=N6h#c?_&N;>sLJRxw<%Mw+LRQbnk-O_0h+$OEG?V9BcLr zT|5!Trf?`41$yAVB9HDgIg#B97LX_WaEjEzjCmsD@!h@UVhNRZ-sApbdiX;@fX^o8 zcXsQ!b&z|W;UnqPt&6#;R})lo7pIJd>`a$CQuL7=euZq30h8~wiabsxU)xCCC89~` zay>X$$!QA+zr5M%`+&91^U)fK0qK?19H{i26)V?acQ`uyJSun`0ewPmG}WX+<1`{LR0i9Djb5jEqbf zu9fLOJnAySrKKn!jISKM_1w$bo2tz4zGd&)kuZ1&i2JeG*ZZtflsLy^H#(jv$Cm6){R+Z28&7ruI*?hco6va?_QH60ld~p@6}eVQfa9>Uu&f> zJ-M3m{14`s3V}}R*F6XcfVppYLJlH#eVOszB*q#{{gGMqqhsK=eCM0AvFbkCNgSrU z4r9;H6%Q=#a&FC+6csRSVRsq3Ul%{`i{KM-?@H9lE4S&Uq9;55^?i%uHzx&d+Ag8a zuSjz1K^;54=@i3g5^?^Lv~gKpzJ^M={{3(XOaRd8l*?t>&T#i9N}nBX8Tmz-wSUz= zns{VG`@7yi-ILFx0Pay}62*A{N1TelMBX!SC%A{idCZ}Kb1!rm*%@r%zb=uvMJ8qM zvQO-*ljxU)PbQPUW`!bHWrUI=P!wlV)IN{sliuaE{vAP0@R6*5!f4!k)rt(O&Ff_B zKSB|{U0HC&fVVHT-a#YnY4S7iO`+*25;xLq7QB!{6X`GeN?&s9#ZhU=$|dDZ@h>04 zcfZnM(F+W99svzV4x{_YxJT4&>2{`zNa>h^%B1&{5HJALYB26B{yr#Rt(pX!W%frM z?w2st4W4l}40eL+#@Z~ywzmun%U#NwQ_ zHkoYRpUILIOUx?i+@m2t{U@fTsmi8XGjm~9h|QxFro_t?g-}Js{0Sv~s%GGMdTuC# zzDUwEm}k+`Ms>K`=YG~;Va^W#t9{BJz`?3b*)fvL;E}uo!^iS*kH&F!H~gy=zl#$q z!ht#n^1biX$%LLrGL-;RzfVnFUBP=ZoPppE(>)1a8S0OM=1vmQLxSsBEf1RB#5^ZF znb0Tr&UygXzB9yLp(w&C%PgGLUi92*Mv??Kf8Ujtk zAYM)R)C3^Qi7+&hq7`IAjd7WIM}6^ADV0hZ{8sx{0mrzB{P#{DhRjg1T*f*TGPQbs zRr_A!u1HdG#$s1j<~IG0nbj&gK}keB#U$# zTwYvX^#iwIPFF|=yPGpERJIo8Mrtcz>fUuLik=X|Gc=oq09TlvCNX#!DgR?FOU!*Y z9DElNR=z)Uy7R56iCwjN-)(Cm*bnB1DQEJvR(rsi%A!2Mzot#tV!al0z}if# zPk&lTzdANy8<8P-E<()(F(anzdp$&MZf?%wX>K0kK%%HImE}MqLJL`wMs1teR!yyi z(-Z`swQ~l&LNEhvt``g|lWRyiOSUD&{xl z_;s|%C|T>j)^Dcj3`FmV3;zpwNX^_qT_TYEDW#F;>AB-9orc)pr^Hh+G6!g4g7QIn z$BHo_{%^xtPUeR6Q0RF;kaL9zg+NZy5-l_=4AP25R##V}I(lenkaE70R*~8AGzgSo z+>PS{jxDJLua&PySGE{6!ecK4f9#rHbdf2z+J^*&X3yZVJXW-UD+wYEfdi zmtp}kdoFZa4?ITCp6d(mDBg|2d?1EdVwWkUMmlq_&+vYp6NoJa)FwsZdki<;Gp&t1 zJ^kE&%#m~{=9z5Gs!xC-aKi+BJ+31L*zs_G9jel|_j zAJiP5?#!el2_{SQ=iNbiJbY6~L_xa<7M1^-Wz}+Zsv?;g1jhZ6aNsz9-hu~QgkEH7 z+19=?h*3uUJrd6liHN(LhjqP5t1@HxtucDl52YyikGADl{^dxAIOd5W(Od`FkGVrK?Hz%pXuXm^=g9k;SN}Vy0#Yo zvfx_~tK$-p1bv$G7kgj0vif9ND4$D}{opjO(CZ?aC6}36d3!yQ;j5D1tRoi5MK)y< ze&gcx?e(x_X#=U2lfx@;8{pl1+y{P0=vc(~yC0tyacuLPbVEeZ^;BK?#}FIKTg!}O zm9V0hKz)PoDb}7t>?l4fO3
!?|A{NFYuUGd>ohUbl%z622`CiTx|khTTWHidV;N zAs~XlM?15Q=8A^vN->%7{V*EzQP{;lrNvc&yWufnWG!@4`!K)uo^U3MjyQ#jo=YI8 zflr9!iH4&5F?K3u8nk9%4}*|}-#H8?@G8j+Qt98~aZ8z@Q z*B9%+AbQ+)%SM~wn(SkwbcVrVFCn?G+C&KXjP>3xsg`p}h2ZNqlBu(=klnFBD@I5k zl9+VoFTtI#+gJK^RG{~f;!>JTocWBKJc6}|mcdac(v<^qm{lU#=8JD``bG~BRo-*T2>Mgp9iC@wsbE;^imt=mrZ zu)^W`Uuxo&A_Ty_(N#4Nt2*FOo?L$*yacjBY7C0^sP2{1UZ>!-6&CsLis8vy>8GL zE>?ZMz_A9Nw9INsNWo&d8Jp*)NYI85|CTiSh5vSJYrs4S^QeFbtPrNS z1UCgo0*-y2gV1%Dv-e9^cURS?Q z_k$T<2UzqYixxNrh9jg_R{M?C6G`PV$6q{*SGcGMdI_jopjYT`Tgu!h#^5*hl+pTF z1XK#QEpk`YtjEivJ0Kp*mCUXBUPgDuNFF<+mFK}pJ9jqv1^CpyZnE!`eqL7I# zcRglV+8t?p=T~US^D+hO0y9oRYVLFx{?NJJE1E0fjhBuTRVddtV{Nh%nEn7oydb!r z{~ite{U=e-^Bs;$$A;iIa4C}Vv+j9!Sv>lFrB{1fyXfy%GqRAB%>WYn)h;NZ#i_> zhYgRO;KTI7*hoYkc)TU-4s>2LWY^GK2F=zuooreK=8!}`H%*$wFFf9~`+Kx{Kq40A zcm>-RA;MDk^}JnpMIzq31~+WfTf^?Aa4eJ=l{}AkH+RS^l}t%cg=v)LA+IsLt5%c>vWZ>B=4O%tSeQ*XZ+2pvSPv50BEvbvnF67axw?q1EUkC+l32y3ipZ;kRn? zQ>S-1l3Wg;xtTjtre(H4<8{T&R$~pXmJn8Kp3GRrf_oDIn?(f*E7;vs!DOf3TvCqo ze-sdg6x`JH;Ihi~M+kwa^)3d%=g6@ZIA*sP?Hy-b4-&^lXmpJ>)7rqkn5a^U19UWf zzHOwCfUQ@J0YzIk&DSki#Yf8?McjPPC?Q0Gu@67@bVG6qP$LrKFH%JBf_$P&6-ni#7k)UHiX>euAd6exZ{!#Bez1vuRWkE;yjY81Fn)X{Vb%vSCv- zMIn8ZhKMp#r`=%hnr2bue#6@kA||<4J*w;9pzDvJp&~Kbe{Bx8~Rp|^T}cg=kaEqcyiA)m&lvcY7)QE2uKA7U%8m;IfP!*)W>; z*F(WCO~;+MR3nqlc@j6P(()elPA4)!r$59*`++)0Vgn-yB5pg`M@XO-l zE|2`fuj`-bRQ(}-wh(g0Z(eL`GvUgg^uHUvDdsZX_*5SDH>t z`K?OP@;)Qy(257lqt)<51I<#pO`O8%e0}L!Mn*=C)|7X%p^#3%tI_<`W)=c1E;f{; zM?yt_kn#o0N$Bn?4f-9qV&b!}&l1Sc49}{iRsDyK%u-GctSin`zY7v`7xi^mzi2wJ z>53V6k&;X}Nz;v1Kh^}l6=8Y#laEd2d*f+68Hz&Q*_$pg#!|z{^*MuS%Hsn$717ri zQHQM8kBMo`llpy{%=rIa$spzuD((7DU+VWICHy9jWqA%gDwB@$G<8sS@K?x<43pcq{lcLRako6R z1DQa(@ux%s`+aHPuI4FYB^2e<)uO#>9p>F1qOVBEC8WN>N3}*h z&p4b8%>B2o=jv>G?R3(QcT^&GBUe{ff7iNL4nGPmG7%D=sippAct6!^1-pv&_SWxv zddsI$d#lZE0N{S9V?`+5aq~SPopyc2>f=)_;#d($R=G`EGTNuOe@)zj;B6%^fFb5E z@d&*8p$S`5M0(2*?CIL}O&JZc%CF>U5w#r(%5GCLJTDw&g8CA;42MXEBC=12{WWWwoAO*nk_5h$lx!^x4Gmp| z@x_IQP1jPrkY20HAKmcBS065Tf&o1$kP>da&E=z)W0g!CF{YQQjfC{=25V9m_cO56 zx)s;_#~q6+kOPdq5B; zwnfMiPDm#~K{HiHwCF>ac>0Ape}o4Cw6J^SY&sKqw&VRy&|TSHZNEHQ0#73BEHC=hv9UW3IdBWml3{F2U@9TfrzY``Yc&-| zlY2jd<4?p4cA0ZzPI!BrE56lO=!f^`YjDOp+h5Tylyjg6AEKYNa3Z=ioUHwt?#<1X zo6FZi?JtDc{t1(ne$)4JpqQfhJ*1I8!#OR#!TF}9P2N%Sb~G`H<*g&h&$-5FB%3zD z#KL&#$c%~PFZ*0@2;4fLr*pyxyYIuJlQdr-k3bfgsNalEo6CgxSCZiag^US&<#(}w5Xjxy8bEUd zA`h;=1wS*_CB)ePBF`TGv0S_806xbziv-C8rekx2#cVRh{6zpU*u%1*O7q-)!pDs=~%;5@fOZJ_-_Ac%1H zK(o}S##5AtIY$OBA~m>kAzCXNlW0$fw#=)s)Z z(G=rDS3c8-UC*F+moPT6gTaqM_-$~dkJOx?^-Ni7pjqVcn#+C3gA7_lt*DY|M z3!m@!qw3LWvEZFyRJmqD{R)xD&(^tYGI<{#i5-rZDWijz*2Mm<4^yrKH+SIk#j!6r z`HMc4n$)QQ<1A86@))Hi!`)rRG7J4&c_&dQqRIVUOpGm}PvE}Mp<9RWWe*ULaTd{p z0=~7{{%l&rB#%;d{1BzU6-4Fk{qeOdN|zzAyiqvureZCQo%*$qG);sGw{Gr2OGuW? zz3o#F2LdJS{m#<&3J)yzRxigci_%r9#a?aEk_8&s3*r^XEOb65uERFw0*?brfSljW z{yyRyIOB)ZH^y-oe>rKDAE1sIF+4ROdkC{_^pXa4kM`zg~DTF^K<< z>#o05boF6(KyeE*04~>V#0dk-4Z{BF=+RK<7`JS5L9X>q)QugTSLEK`PsH)TWsF5|c_jF(OS~XBqd%p7J+P~6ijtc@5w9e9I7}ol7bjd(8;Ug3T72oD+}9evV?lnd`?G#fNDQO!J}%>68j|G~+6!`=eVzhE oD2lyp5{?4>-&Cwp_VC8ealQFpuj2UaJP*)Rd#d_f8TICW0G(ukOaK4? literal 0 HcmV?d00001 diff --git a/src/Mod/Surfaces/Icons/Ico.xcf b/src/Mod/Surfaces/Icons/Ico.xcf new file mode 100644 index 0000000000000000000000000000000000000000..d17f5f74d596f95c0b9d0ce18c9f24ef45e3452e GIT binary patch literal 21174 zcmeHvX<$@Uw(j0136mgdJCA9!1yn>7#IcoX?ZMllc3f1|iHt#!A(G-?#Uvq>6_3-o3ByulGt%YMph~UVH7e z*SFR_`F5AcJ}@$VbbyMU=Cb}9IKBO}ig*6(ErJ&xCHOIv8m(Lx7w z^HM-J{!aU=?k41I;dte33Rw<+y0uF39hAo3RwK900iEU0a^?ziL`KeiSPl{bG4yIgk__5t<)h z$_tw1!`~e^^F{UhprzwsmvH>(Z3cd=%%+8^*P_a8_uS5j9GQg(d~hsgSGIDpZtur1vUs~4ZmrMx4}^MGTaJ(`Uxg<}!bfWO*t&awFKy9vxn{&Uk6&7@;L ztXpBL*a5#UvFS9>W)3iapy$W(g5_8SdV!_`Mnl)&vi=)5H$;nc)Cl2Nr>|O$A3!g& z>90XA*R*t$f?gBL6U%|IIyRCFC`>(G&@5j!{@Db;L^pe4ea$RK8C0w?@;cH`GqubD z@Z)X%c+ftxeo6UQBl9F^BX9L-0&S1J&*z{Q>$b8_7tpJXp0^Rvj!l~G;J3!PeKJ9! zMI_au)s$E^vmC8J&m;+&h@TZpS`zKe&VrMPAAJ0KxqU8qRBK>n?9WEf+!pjFhVF9; z^aM@IK8>KK#`45+v;qC4=KJ?@`&9BUWKA|=>{CN1H27%d?vFIz zu?@5-Mizl)<6b)ELvwsAg)GNp@Yj$Gh_Tye5kw1m$%clfbt~Ww8lJc53h;leY3bMr z`p-6>upgvpe~;Nd*Ze?_0UhXt9`p5*6)PP7WNTXm{`^>;n6cm-AB%N{wFI9#T2RT; zTPCU?@TDUIZJseQnl>J{9Esq^#qxr5%!w5|$H#Jv0N)u)`aWFx1-?5Bz)e)QevuIo zVS{xXN-*#F+0d}QQDGm4jtq|)82XD}{pR;zky-H*gmp<|6yTK%?7gd-?I!Suqpju zf9^~d;wdDbcm5*8FJ=kx9wz5EaYFoIwod}z5%xh(hx{=zQim2}CK!jp!6+q70pvhU z<4d&jqlp*F@Y5cLk0x4ubVtzC^|(^XgYVXU*Y36HY52B39sgt#J_DhrBj~4|4di!3 zn@3^qqxnKS@kd^ZX%#BGO8ivZsHwYn`NHK(*Eo>p#pOnE`EvF7vu95nK6vKbrHjWz zchPk5!ufO7xth}lx2((BbMC_RjiQ^lP

)5;ZrftE(~>F3S7%ay8mNBcy62uGd^X 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 c #E6E5E6", +", c #E9E8E8", +"' c #EEEEED", +") c #ECECEC", +"! c #EBEBEB", +"~ c #E9E9E9", +"{ c #E9E9E8", +"] c #E5E6E6", +"^ c #D7D7D7", +"/ c #B2B2B1", +"( c #A6A6A6", +"_ c #B7B7B7", +": c #D1D0D1", +"< c #ECEBEB", +"[ c #00B5AA", +"} c #00B4A8", +"| c #00B3A8", +"1 c #00B1A8", +"2 c #00B0A6", +"3 c #00AFA5", +"4 c #00AEA4", +"5 c #00ACA2", +"6 c #00ABA1", +"7 c #00AAA0", +"8 c #EAEBEA", +"9 c #E2E2E2", +"0 c #B6B6B6", +"a c #979898", +"b c #999999", +"c c #BCBCBC", +"d c #D8D9D8", +"e c #EFF0EF", +"f c #00BDB2", +"g c #00BCB1", +"h c #00BBAF", +"i c #00B9AF", +"j c #00B8AE", +"k c #00B7AC", +"l c #00B6AB", +"m c #00B4AA", +"n c #00B1A7", +"o c #00AFA4", +"p c #00ADA3", +"q c #00A99F", +"r c #00A79E", +"s c #00A79C", +"t c #00A59B", +"u c #E3E3E2", +"v c #B0B1B0", +"w c #999898", +"x c #949495", +"y c #00C2B7", +"z c #00C1B6", +"A c #00C0B5", +"B c #00BFB4", +"C c #00BDB3", +"D c #00BDB1", +"E c #00BBB0", +"F c #00BAAF", +"G c #00B9AE", +"H c #00B8AD", +"I c #00B6AC", +"J c #00B4A9", +"K c #00AEA3", +"L c #00A79D", +"M c #00A69B", +"N c #00A49A", +"O c #D7D8D7", +"P c #959696", +"Q c #A0A1A1", +"R c #DFDFE0", +"S c #00C3B8", +"T c #00C4B8", +"U c #00C2B8", +"V c #00C1B7", +"W c #00C0B4", +"X c #00BEB4", +"Y c #00BAAE", +"Z c #00B7AB", +"` c #00B0A5", +" . c #00AEA5", +".. c #00ABA2", +"+. c #00A99E", +"@. c #00A89E", +"#. c #00A69C", +"$. c #00A59A", +"%. c #00A399", +"&. c #00A298", +"*. c #EAEAEA", +"=. c #C6C5C5", +"-. c #9C9B9B", +";. c #9A9A9A", +">. c #959495", +",. c #B5B6B6", +"'. c #E6E6E6", +"). c #00C5B9", +"!. c #00BEB3", +"~. c #00B5A9", +"{. c #00B2A7", +"]. c #00B1A6", +"^. c #00A098", +"/. c #DADBDB", +"(. c #A8A8A8", +"_. c #9B9A9A", +":. c #989898", +"<. c #9E9F9F", +"[. c #D8D8D8", +"}. c #E5E5E5", +"|. c #00C3B7", +"1. c #00C6BA", +"2. c #00C6B9", +"3. c #00C5BA", +"4. c #00C5B8", +"5. c #00BCB2", +"6. c #00BCB0", +"7. c #00B8AC", +"8. c #00B3A9", +"9. c #00ADA2", +"0. c #00A398", +"a. c #00A198", +"b. c #00A097", +"c. c #B6B5B5", +"d. c #989998", +"e. c #9C9D9C", +"f. c #959596", +"g. c #BDBDBD", +"h. c #00C2B6", +"i. c #00C7BB", +"j. c #00C8BB", +"k. c #00C6BB", +"l. c #00C4B9", +"m. c #00BFB3", +"n. c #00B7AD", +"o. c #00ACA1", +"p. c #00A59C", +"q. c #00A49B", +"r. c #009E96", +"s. c #E4E4E4", +"t. c #BABBBA", +"u. c #9C9C9C", +"v. c #9E9E9E", +"w. c #9B9B9C", +"x. c #AAAAAA", +"y. c #DCDCDB", +"z. c #00C1B5", +"A. c #00C8BD", +"B. c #00C9BD", +"C. c #00C9BC", +"D. c #00C8BC", +"E. c #00B2A8", +"F. c #00AFA6", +"G. c #00A197", +"H. c #009F96", +"I. c #E4E5E4", +"J. c #B9B9B8", +"K. c #A0A09F", +"L. c #9D9D9D", +"M. c #9F9F9F", +"N. c #D8D8D9", +"O. c #00C7BA", +"P. c #00CABE", +"Q. c #00CBBF", +"R. c #00CBBE", +"S. c #00C9BE", +"T. c #00C7BC", +"U. c #00BBB1", +"V. c #00BAB0", +"W. c #00AAA1", +"X. c #00A89D", +"Y. c #13A79E", +"Z. c #03A097", +"`. c #009D94", +" + c #9F9FA0", +".+ c #A2A1A1", +"++ c #A0A0A0", +"@+ c #D0D0D0", +"#+ c #00C0B6", +"$+ c #00CCC0", +"%+ c #00CABD", +"&+ c #26ABA4", +"*+ c #10A39C", +"=+ c #009E94", +"-+ c #AEAEAE", +";+ c #A1A1A2", +">+ c #A2A3A2", +",+ c #A0A1A0", +"'+ c #D2D2D3", +")+ c #00CABF", +"!+ c #00CEC1", +"~+ c #00CDC2", +"{+ c #00CDC1", +"]+ c #00CBC0", +"^+ c #00ABA0", +"/+ c #00A9A0", +"(+ c #46B5AF", +"_+ c #63BCB6", +":+ c #009E95", +"<+ c #009C93", +"[+ c #009A92", +"}+ c #D3D3D4", +"|+ c #A8A7A7", +"1+ c #A5A4A4", +"2+ c #A4A5A5", +"3+ c #A2A2A2", +"4+ c #A3A3A2", +"5+ c #D7D7D6", +"6+ c #00CFC2", +"7+ c #00A69D", +"8+ c #0BA59B", +"9+ c #9DCAC7", +"0+ c #2DAAA2", +"a+ c #BABABA", +"b+ c #A7A7A7", +"c+ c #A6A7A6", +"d+ c #A5A6A6", +"e+ c #A3A3A3", +"f+ c #DEDEDE", +"g+ c #00CEC2", +"h+ c #00BEB2", +"i+ c #00ADA4", +"j+ c #00A39A", +"k+ c #06A29A", +"l+ c #9FCBC8", +"m+ c #8FC4C1", +"n+ c #17A39B", +"o+ c #009B92", +"p+ c #009990", +"q+ c #CACACA", +"r+ c #AEAEAD", +"s+ c #A9A9A9", +"t+ c #A8A9A8", +"u+ c #A4A4A4", +"v+ c #B6B5B6", +"w+ c #00CCBF", +"x+ c #47B2AC", +"y+ c #CCD3D4", +"z+ c #9EC8C5", +"A+ c #16A19A", +"B+ c #00988F", +"C+ c #DEDDDD", +"D+ c #AFAEAF", +"E+ c #ABACAC", +"F+ c #ACACAB", +"G+ c #A9A8A8", +"H+ c #A7A6A6", +"I+ c #CDCDCE", +"J+ c #23A9A1", +"K+ c #B5CFCE", +"L+ c #D6D6D6", +"M+ c #BFD0CE", +"N+ c #93C6C3", +"O+ c #3FABA5", +"P+ c #1C1D1D", +"Q+ c #1D1D1D", +"R+ c #292929", +"S+ c #DBDBDA", +"T+ c #DADADA", +"U+ c #C7C6C7", +"V+ c #ADADAD", +"W+ c #AEAEAF", +"X+ c #ACACAC", +"Y+ c #ACABAB", +"Z+ c #ABABAB", +"`+ c #A9AAA9", +" @ c #A5A5A6", +".@ c #D0D0CF", +"+@ c #00B9AD", +"@@ c #00B6AA", +"#@ c #019F95", +"$@ c #56B4AE", +"%@ c #C5D0D0", +"&@ c #D1D2D2", +"*@ c #CDCDCD", +"=@ c #D2D2D2", +"-@ c #D0D2D2", +";@ c #C0C0C0", +">@ c #D3D3D2", +",@ c #CBCCCC", +"'@ c #BEBFBE", +")@ c #B0AFB0", +"!@ c #B1B1B0", +"~@ c #B0B0AF", +"{@ c #ABAAAB", +"]@ c #AAAAAB", +"^@ c #A6A5A5", +"/@ c #B5B5B5", +"(@ c #D0D1D0", +"_@ c #D5D6D5", +":@ c #009F95", +"<@ c #049D95", +"[@ c #73BAB7", +"}@ c #CCD1D1", +"|@ c #C8C8C9", +"1@ c #C2C2C2", +"2@ c #C2C3C3", +"3@ c #C1C1C1", +"4@ c #B8B8B8", +"5@ c #B4B4B4", +"6@ c #B4B4B5", +"7@ c #B3B3B3", +"8@ c #B2B2B2", +"9@ c #B1B1B1", +"0@ c #AFAEAE", +"a@ c #ADAEAE", +"b@ c #ACACAD", +"c@ c #AAA9A9", +"d@ c #BBBCBC", +"e@ c #D1D1D1", +"f@ c #00B0A7", +"g@ c #00A89F", +"h@ c #059C94", +"i@ c #7ABEB9", +"j@ c #BDCCCC", +"k@ c #CBCACB", +"l@ c #C2C1C1", +"m@ c #BBBBBB", +"n@ c #B8B9B8", +"o@ c #B8B9B9", +"p@ c #B4B5B5", +"q@ c #B3B4B4", +"r@ c #B2B3B3", +"s@ c #B0B0B0", +"t@ c #AFAFAF", +"u@ c #AAA9AA", +"v@ c #D3D3D3", +"w@ c #00A096", +"x@ c #059B92", +"y@ c #29A69E", +"z@ c #ACC8C7", +"A@ c #D2D1D1", +"B@ c #CCCCCD", +"C@ c #C4C4C4", +"D@ c #C0BFBF", +"E@ c #BBBCBB", +"F@ c #B2B3B2", +"G@ c #AEADAD", +"H@ c #ADACAD", +"I@ c #00ACA3", +"J@ c #009D93", +"K@ c #009B91", +"L@ c #00968E", +"M@ c #3CA7A1", +"N@ c #8EBFBD", +"O@ c #BDCCCB", +"P@ c #C1C0C0", +"Q@ c #C4C3C3", +"R@ c #C6C6C6", +"S@ c #BAB9B9", +"T@ c #ADACAC", +"U@ c #C8C8C8", +"V@ c #020B0A", +"W@ c #00B5AB", +"X@ c #00A299", +"Y@ c #009A91", +"Z@ c #00978E", +"`@ c #00958C", +" # c #04958D", +".# c #1B9B93", +"+# c #353535", +"@# c #414141", +"## c #464646", +"$# c #CECECE", +"%# c #C4C4C3", +"&# c #B1B2B1", +"*# c #C9C9C9", +"=# c #00BFB5", +"-# c #009C94", +";# c #009B93", +"># c #00968D", +",# c #00958B", +"'# c #00938A", +")# c #009189", +"!# c #009088", +"~# c #CCCCCC", +"{# c #B1B2B2", +"]# c #ADAEAD", +"^# c #CBCCCB", +"/# c #009890", +"(# c #00958D", +"_# c #00948B", +":# c #009289", +"<# c #009188", +"[# c #BFBFBF", +"}# c #CCCBCB", +"|# c #CFCFCE", +"1# c #00948A", +"2# c #008F88", +"3# c #008E86", +"4# c #CDCECE", +"5# c #BEBEBE", +"6# c #B7B7B8", +"7# c #B6B6B5", +"8# c #B3B2B2", +"9# c #B1B0B0", +"0# c #AFAFB0", +"a# c #00998F", +"b# c #00988E", +"c# c #00948C", +"d# c #008F87", +"e# c #B9B8B9", +"f# c #B6B7B6", +"g# c #B4B3B3", +"h# c #B2B1B1", +"i# c #ADADAE", +"j# c #ACADAD", +"k# c #C0C1C0", +"l# c #008D86", +"m# c #008C84", +"n# c #C3C4C4", +"o# c #B9BAB9", +"p# c #B0B0B1", +"q# c #CBCBC9", +"r# c #00AA9F", +"s# c #00928A", +"t# c #008D85", +"u# c #008B83", +"v# c #B7B8B7", +"w# c #B7B7B6", +"x# c #B1B0B1", +"y# c #C5C5C5", +"z# c #00968C", +"A# c #C5C6C6", +"B# c #C0C1C1", +"C# c #BABBBB", +"D# c #BABAB9", +"E# c #B8B7B7", +"F# c #B7B6B7", +"G# c #B5B4B4", +"H# c #B3B2B3", +"I# c #B1B1B2", +"J# c #ACADAE", +"K# c #009F97", +"L# c #009991", +"M# c #009389", +"N# c #008F86", +"O# c #008E85", +"P# c #008B84", +"Q# c #008981", +"R# c #BCBBBC", +"S# c #B9B9B9", +"T# c #B8B8B9", +"U# c #00938B", +"V# c #008D84", +"W# c #008C83", +"X# c #008A82", +"Y# c #008880", +"Z# c #C4C3C4", +"`# c #B7B8B8", +" $ c #AFAFB1", +".$ c #00A499", +"+$ c #008B82", +"@$ c #00877F", +"#$ c #C1C2C1", +"$$ c #B9B8B8", +"%$ c #B5B5B4", +"&$ c #B4B4B3", +"*$ c #B2B1B3", +"=$ c #009087", +"-$ c #008780", +";$ c #00867E", +">$ c #C2C3C2", +",$ c #B9B9BA", +"'$ c #B2B1B2", +")$ c #008A81", +"!$ c #00867D", +"~$ c #C0C0C1", +"{$ c #BFBEBE", +"]$ c #BEBDBD", +"^$ c #BDBCBD", +"/$ c #BFC0C0", +"($ c #C1C3C2", +"_$ c #009C92", +":$ c #009288", +"<$ c #00847D", +"[$ c #00847B", +"}$ c #BBBBBC", +"|$ c #BAB9BA", +"1$ c #B6B6B7", +"2$ c #B3B3B2", +"3$ c #BFC0BF", +"4$ c #008982", +"5$ c #00857E", +"6$ c #00847C", +"7$ c #00837B", +"8$ c #BEBEBF", +"9$ c #BDBCBC", +"0$ c #BCBCBB", +"a$ c #B3B4B3", +"b$ c #00877E", +"c$ c #00857D", +"d$ c #00837C", +"e$ c #00827A", +"f$ c #B7B6B6", +"g$ c #00978D", +"h$ c #00837A", +"i$ c #008178", +"j$ c #BFBFBE", +"k$ c #BDBEBC", +"l$ c #00978F", +"m$ c #008980", +"n$ c #008179", +"o$ c #007F78", +"p$ c #C1C1C2", +"q$ c #008E87", +"r$ c #00817A", +"s$ c #C2C2C1", +"t$ c #C0BFC0", +"u$ c #BDBEBE", +"v$ c #BBBBBA", +"w$ c #B9BABA", +"x$ c #009D95", +"y$ c #00867F", +"z$ c #008078", +"A$ c #007E78", +"B$ c #007D76", +"C$ c #C3C3C3", +"D$ c #BBBABA", +"E$ c #009A90", +"F$ c #008279", +"G$ c #007E77", +"H$ c #007D75", +"I$ c #C0C0BF", +"J$ c #BFBEBF", +"K$ c #BBBABB", +"L$ c #00887F", +"M$ c #00827B", +"N$ c #008079", +"O$ c #007B75", +"P$ c #BABABB", +"Q$ c #007C75", +"R$ c #007B73", +"S$ c #007A72", +"T$ c #C3C2C2", +"U$ c #BFBFC0", +"V$ c #BEBDBE", +"W$ c #BCBBBB", +"X$ c #00857C", +"Y$ c #007D77", +"Z$ c #007C76", +"`$ c #007B74", +" % c #007A73", +".% c #007972", +"+% c #C3C4C3", +"@% c #C5C5C6", +"#% c #BEBFBF", +"$% c #007871", +"%% c #BCBDBC", +"&% c #C4C5C4", +"*% c #C6C6C5", +"=% c #007770", +"-% c #00766F", +";% c #C3C2C3", +">% c #008C85", +",% c #007F77", +"'% c #007872", +")% c #00766E", +"!% c #C8C7C7", +"~% c #C7C6C6", +"{% c #C5C5C4", +"]% c #C2C0C1", +"^% c #B3B3B4", +"/% c #007E76", +"(% c #007870", +"_% c #00756F", +":% c #00756D", +"<% c #C9C8C8", +"[% c #C5C4C4", +"}% c #007A74", +"|% c #007971", +"1% c #00746E", +"2% c #00746D", +"3% c #C7C7C7", +"4% c #008881", +"5% c #00756E", +"6% c #00746C", +"7% c #00736C", +"8% c #00716A", +"9% c #C8C9C8", +"0% c #00716B", +"a% c #C6C7C7", +"b% c #CACBCA", +"c% c #C9C8CA", +"d% c #007771", +"e% c #00726B", +"f% c #006F69", +"g% c #007670", +"h% c #007069", +"i% c #006E68", +"j% c #000303", +"k% c #007169", +"l% c #007068", +"m% c #006D67", +"n% c #AEAFAE", +"o% c #00736B", +"p% c #00726A", +"q% c #A9A9A8", +"r% c #CFCFCF", +"s% c #C5C4C5", +"t% c #007973", +"u% c #00736D", +"v% c #006F68", +"w% c #B0AEB0", +"x% c #00726C", +"y% c #006D68", +"z% c #007C74", +"A% c #00706A", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" . + @ # ", +" $ $ $ $ $ $ $ $ $ $ $ % & * * = - ; > , ' ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ) ! ~ { { ~ ] ^ / ( _ : ~ < ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ [ } | 1 2 3 4 5 6 7 $ $ $ $ $ $ 8 9 0 a b c d e ", +" $ $ $ $ $ $ $ $ $ $ f f g h i j k l m | | n 2 o p 5 6 q r s t $ $ $ $ u v w x ( ^ 8 ", +" $ $ $ $ $ $ $ $ y z z A A B C D E F G H I l J | n n 3 K 5 6 q q L M N $ $ $ $ O ( b P Q R * ", +" $ $ $ $ $ $ S S S T S U V V z W X C g E Y G H Z [ J | n ` .p ..7 +.@.#.$.%.&.$ $ $ *.=.-.;.>.,.'. ", +" $ $ $ $ $ U T T T ).).).T T S U V z B !.!.g F Y H I l ~.| {.].3 p 5 6 q @.s t %.&.^.$ $ $ /.(._.:.<.[.}. ", +" $ $ $ $ y |.T ).).1.1.1.1.2.3.4.T y y A B !.5.6.F j 7.Z [ 8.1 2 3 4 9.6 7 +.s t N 0.a.b.$ $ $ * c.d.e.f.g.'. ", +" $ $ $ $ A h.|.S 4.2.1.i.i.j.i.i.k.2.l.T y z A m.f g E i n.Z [ } | n 2 4 p o.7 +.L p.q.0.&.b.r.$ $ s.t.u.v.w.x.y. ", +" $ $ $ !.B z.y S T 1.i.j.A.B.B.C.B.D.k.3.4.S y z W !.f E Y G k [ J | E.F.o p o.7 q L M q.%.&.G.H.$ $ $ I.J.u.K.L.M.N. ", +" $ $ $ $ m.A h.S T 2.O.D.B.P.Q.Q.R.S.B.T.O.).T U V A !.f U.V.j n.l m | {.2 o 4 5 W.q X.#.t %.a.Y.Z.`.$ $ $ 9 0 +.+++e.@+u ", +" $ $ $ $ #+h.S 4.1.T.C.P.Q.$+$+$+Q.%+D.i.1.T |.h.A !.f g h G H l ~.} E.2 3 p 5 7 q r #.N %.&.&+*+=+`.$ $ - -+;+>+Q ,+'+ ", +" $ $ $ y T ).1.D.B.)+$+!+~+{+]+P.B.j.1.T S y A B !.g h G H l J | E.n 3 p p ^+/+@.#.t %.&.(+_+:+<+[+$ $ 9 }+|+1+2+3+4+5+ ", +" $ $ y T ).O.D.%+)+$+~+6+{+$+P.B.T.1.).S y A B f g F G H I [ 8.{.n .4 5 6 /+X.7+t %.&.8+9+0+<+[+$ $ $ - a+b+c+d+e+-+f+ ", +" $ $ $ T ).1.D.S.Q.$+{+g+{+$+R.A.D.1.).S z z.B h+6.F G 7.Z ~.8.E.].3 i+5 7 q @.#.t j+&.k+l+m+n+o+p+$ $ f+q+r+s+t+b+u+v+f+ ", +" $ $ $ l.2.D.C.%+Q.$+$+w+Q.P.D.i.1.l.S y A X f U.F G H l J } E.2 3 p o.6 q r #.$.%.&.G.x+y+z+A+p+B+$ $ C+q+D+E+F+x.G+H+|+I+O ", +" $ $ $ 3.i.D.B.P.P.Q.)+P.B.D.O.).T S z A m.f E F G 7.l J | {.2 .p ..6 q L #.q.%.&.G.J+K+L+M+N+O+P+Q+R+ S+T+U+V+W+V+X+Y+Z+`+ @-+.@L+ ", +" $ $ 4.1.k.j.A.B.B.B.C.j.i.).T S y A B !.f U.F +@k @@J | n 2 o p ..W.q @.t N %.a.b.#@$@%@&@*@=@-@;@}+>@,@'@)@/ !@~@D+V+X+{@]@^@/@(@_@ ", +" $ $ $ ).1.O.D.D.i.D.j.1.2.l.S |.z A m.C g E Y H k [ 8.| n ` 4 9.o.7 q L t q.%.a.b.:@<@[@}@|@1@;@2@3@g.4@5@6@7@8@9@)@0@a@b@E+c@H+d@e@ ", +" $ $ T ).).3.1.k.O.1.).4.T |.z A W !.f U.F +@7.l [ | E.f@` 4 5 W./+g@L p.N %.a.H.:+`.h@i@j@k@l@m@n@o@_ _ p@5@q@r@9@s@t@-+V+E+u@b+;@v@ ", +" $ $ $ S T T ).).T l.T S |.y #+W X f g h G H Z @@J | 1 2 3 i+5 7 q X.s t N &.^.w@:+<+o+x@y@z@A@B@C@D@a+m@E@4@/@5@7@F@s@t@0@G@H@{@(.=.A@ ", +" $ $ y U S S S S S U y z A A m.C g E F G n.Z [ 8.| n 2 4 I@5 W.q r #.q.%.&.a.H.`.J@K@p+B+L@M@N@O@P@Q@e@v@R@S@/@5@7@8@9@~@t@G@T@x.T@U@e@ ", +" V@$ $ z y V y y h.V z.A B m.!.D 6.F G H Z W@J | E.2 3 4 I@6 7 @.s M $.X@&.^.:@=+<+Y@p+Z@L@`@ #.#+#@### $#%#4@0 /@5@7@9@s@t@-+a@x.&#*#.@ ", +" $ $ A A z.A z #+=#A m.!.!.D 6.F G j k l m | | n 2 4 p 5 7 q r L t N &.a.b.:+-#;#Y@p+Z@>#,#'#)#!#$ $ ~#3@4@_ /@5@r@{#9@s@W+]#x.0 ^#$# ", +" $ $ $ B B B B B X !.f f g E V.F j k l [ J | 1 ].3 4 5 6 7 @.L #.q.%.&.^.H.:+J@o+Y@/#Z@(#_#:#<#!#$ $ $ q+[#4@_ 0 /@q@8@&#s@t@-+c@m@}#|# ", +" $ $ !.!.!.!.h+f D g 6.E F G H H l [ ~.| E.].F. .p 5 7 q @.s M N X@a.b.:@`.<+Y@p+B+>#`@1#:#<#2#3#$ $ 4#U@5#4@6#7#c.5@8#9@9#0#-+]@5#q+ ", +" $ $ $ g g g g 6.E h F G j H k Z @@J | | n 2 o p 5 6 7 @.X.#.t %.X@a.H.:+`.;#Y@a#b#>#c#'#:#!#d#3#$ $ ~#R@c e#4@f#0 5@g#8@h#s@i#j#k#k@ ", +" $ $ E F E V.h Y Y G H k k l [ J | E.n 2 3 4 9.6 W.q @.L t N %.&.b.:@=+J@o+p+B+Z@(#_#'#<#!#3#l#m#$ $ q+n#c o#n@_ 0 /@7@8#9@p#W+s@1@q# ", +" $ $ G i G G +@+@H k k I @@J J | E.{.2 3 4 p 5 6 r#@.L M $.%.X@a.b.:+J@<+o+p+b#>#`@1#s#<#!#3#t#u#$ $ U@2@d@a+4@v#w#0 q@r@9@x#-+7@y#*# ", +" $ $ H 7.7.H k k l [ [ ~.} E.E.n 2 3 4 p 5 6 /++.L L t %.&.&.b.H.:+J@o+Y@a#Z@z#_#'#<#<#d#3#t#u#$ $ $ A#B#d@C#D#E#F#,.G#7@H#I#J#F#y#U@ ", +" $ $ Z l l l l W@[ J } | E.{.].F.3 4 p I@^+7 +.X.#.M $.%.&.a.K#:@`.;#[+L#B+>#`@_#M#<#!#N#O#P#u#Q#$ $ y#;@R#m@S#T#_ 0 /@5@r@/ -+S#=. ", +" $ $ $ [ [ J J J 8.| E.{.n ].2 3 4 p 5 6 7 q @.L #.q.%.&.a.w@r.`.J@o+p+p+Z@>#_#U#:#!#d#3#V#W#X#Y#$ $ Z#[#c m@S#T#`#f#,.p@7@h# $m@y# ", +" $ $ } | 8.E.| E.1 n n 2 3 4 K I@5 6 /+q r L #.$..$X@a.b.H.:+-#o+Y@a#Z@>#`@'#'#<#!#3#l#m#+$Q#Y#@$$ $ C@#$5#g.c a+S@$$_ v+%$&$*$9@g.%# ", +" $ $ E.E.E.n n ].].F.3 4 K p 5 ..6 7 +.@.L #.t N %.&.b.H.:+`.<+o+L#B+Z@>#_#U#:#!#=$3#m#u#X#Q#-$;$$ $ >$3@[#g.c a+,$n@_ ,./@5@'$g#;@C@ ", +" $ $ $ f@2 2 2 ` 3 4 K p p 5 6 ^+/+g@@.L #.t N %.&.a.b.:@:+`.o+L#B+b#L@c#U#:#)#2#N#3#m#X#)$Y#@$!$$ $ $ 3@~${$]$^$m@a+S#4@f#,.5@8@/@/$($ ", +" $ $ 3 3 4 4 4 K p I@5 5 6 q q @.r #.M t N %.&.G.K#r.=+<+_$K@p+B+L@(#,#'#:$<#d#l#V#W#X#Q#@$;$<$[$$ $ ;@3@[#5#g.}$C#|$4@_ 1$/@2$7#3$3@ ", +" $ $ p i+K p 9.5 o.6 W.7 r#+.r L #.t q.N 0.a.G.b.:+=+J@;#Y@p+B+Z@z#`@1#:#<#=$3#t#m#u#4$Y#@$5$6$7$$ $ [#P@;@8$g.9$0$|$S#_ 0 /@a$E#;@ ", +" $ $ 5 5 ....o.6 6 /+q q @.L #.#.p.N %.0.&.G.K#r.=+-#<+Y@L#B+Z@>#`@_#'#:#!#d#3#t#u#X#Q#-$b$c$d$e$$ $ $ [#;@;@[#]$c R#a+,$n@f$0 a$S#{$ ", +" $ $ 6 W.7 r#q q +.@.L L #.#.q.j+%.0.a.G.w@:@:+`.;#o+L#B+B+g$(#_#'#)#<#d#3#t#P#X#Q#Y#@$!$6$h$e$i$$ $ g.{$B#k#D@j$k$0$a+S@n@_ 0 /@m@]$ ", +" $ $ q q q g@@.r L L #.M t N .$0.&.a.b.H.:@`.<+;#[+Y@B+l$g$`@_#'#:#<#!#d#l#m#u#X#m$-$;$c$7$e$n$o$$ $ c '@3@p$;@5#g.c m@a+S#`#0 1$C#c ", +" $ $ L r L #.s s M p.$.N %.%.0.a.a.b.H.:+`.`._$Y@p+a#b#g$(#_#'#'#)#!#q$3#V#u#X#Q#-$b$c$6$7$r$i$o$$ $ $ C#8$#$s$;@t$u$g.m@v$w$4@_ 1$v$0$ ", +" $ $ $ #.#.#.t t q.N %.%.&.&.a.b.w@r.:+x$<+o+K@p+p+Z@>#z#c#'#s#:$<#d#3#t#P#X#)$Y#y$;$<$d$e$i$z$A$B$$ $ a+3$C$l@k#[#'@^$c m@S#e#_ F#a+D$ ", +" $ $ N N N .$j+%.%.&.&.a.b.K#H.H.`.-#<+o+Y@E$a#Z@L@(#,#'#M#<#!#d#3#t#u#X#Q#Y#@$;$c$6$h$F$z$o$G$H$$ $ a+I$Q@1@;@;@J$g.c m@K$4@_ 4@S# ", +" $ $ j+X@&.X@&.&.a.^.G.K#H.:@:+J@J@o+[+Y@p+B+Z@>#z#,#U#:#<#<#!#N#t#m#u#X#Q#L$;$c$6$M$e$N$o$G$B$O$$ $ $ a+k#C@C$l@;@/$5#g.c P$S@4@4@4@ ", +" $ $ a.a.a.^.a.b.b.H.H.:+`.`.<+o+o+K@L#p+B+Z@>#`@_#'#:#)#<#2#3#t#m#u#X#Q#-$@$5$6$[$e$i$o$G$B$Q$R$S$$ $ v+,$T$y#C$1@3@U$J$V$c W$|$S#_ 4@ ", +" $ $ $ b.b.K#w@:@:+:+`.-#`._$o+K@Y@p+B+Z@L@z#`@_#'#M#<#<#=$q$t#m#u#X#Q#Y#@$5$X$d$e$F$z$A$Y$Z$`$ %.%$ $ 5@C#+%@%C$>$3@;@#%5#g.E@t.S#_ v+ ", +" $ $ :@H.:+=+:+`.-#<+_$o+[+E$p+B+B+L@>#(#`@U#'#:$<#!#d#3#O#V#u#X#)$Y#@$;$c$6$7$F$z$o$G$H$Q$R$.%$%$ $ q@%%&%*%n#C$1@3@[#]$g.d@K$,$0 5@ ", +" $ $ `.`.`.<+_$;#o+K@K@E$p+a#l$B+>#>#c#,#1#:#:#<#2#d#3#t#m#u#+$Q#Y#@$;$c$6$7$r$N$z$A$B$Q$`$.%.%=%-%$ $ 5@]$R@R@C@Q@;%k#D@#%5#^$c S#/@5@ ", +" $ $ <+_$_$o+[+[+Y@p+a#a#l$Z@L@>#(#_#1#'#'#:$!#=$N#3#t#>%u#X#Q#m$@$;$c$6$7$r$n$o$,%Y$Q$`$ %'%$%-%)%$ $ 5@[#!%~%{%C@>$]%p$;@t$5#g.4@^%5@ ", +" $ $ Y@Y@Y@Y@p+a#B+B+l$Z@Z@z#`@,#1#1#M#)#<#!#=$N#l#t#m#u#X#4$Y#@$;$c$6$7$e$n$z$G$/%Q$`$R$.%(%=%_%:%$ $ /@3@<%R@=.C@[%C$ /@5@ ", +" $ $ $ p+B+B+b#l$Z@Z@>#(#`@`@_#'#'#:#<#<#!#d#3#t#>%m#u#X#m$Y#@$;$c$6$7$e$n$z$o$G$H$Q$}%.%|%=%_%1%2%$ $ $ ]#,.C$|@3%y#C@ r@o# ", +" $ $ Z@Z@g$Z@>#>#`@c#_#_#'#:#:#:$!#!#d#d#t#t#V#u#u#X#4%Y#@$;$c$6$7$e$N$z$o$G$H$O$ %.%'%=%-%5%6%7%8%$ $ V+_ R@9%U@3% 4@9@ ", +" $ $ >#(#z#`@,#_#1#'#'#s#:#<#!#!#2#N#3#t#>%P#u#X#Q#Y#-$@$;$c$6$7$r$n$z$o$G$Z$`$`$ %.%=%-%_%2%7%0%8%$ $ -+|$a%b%c% c I# ", +" $ $ _#_#1#1#'#'#s#:#<#<#!#!#=$d#3#t#t#m#u#X#X#Q#Y#L$;$;$6$[$M$e$n$z$o$G$B$Q$`$ %.%d%=%5%2%7%e%8%f%$ $ r+%%q+B@ m@s@ ", +" $ $ M#M#s#:#:#:$<#!#<#!#d#q$3#t#t#m#m#u#X#Q#4%Y#@$;$5$<$6$e$e$i$z$A$Y$H$Q$`$S$.%(%g%5%1%6%e%8%h%i%$ $ j% -+[#,@ R@F@s@ ", +" $ $ )#<#<#<#!#!#!#d#N#q$l#l#V#m#W#u#X#Q#4%Y#-$;$;$c$6$7$M$r$z$z$o$G$H$Q$`$ %|%d%=%_%1%6%e%8%k%l%i%m%$ $ ~@3@~# *#%%n% ", +" $ $ $ !#2#d#q$d#3#3#t#t#m#P#u#u#X#)$4%Y#Y#@$;$!$X$[$7$M$F$i$z$,%Y$B$Q$`$S$.%$%g%-%5%2%o%p%h%h%i%m%m%$ $ q%9@m@3%r%}#s%c V+n% ", +" $ $ d#3#3#3#O#t#V#m#u#u#+$X#)$Q#Y#-$@$b$5$c$6$7$M$e$n$z$o$G$Y$Q$Q$R$t%'%$%=%_%2%u%7%p%8%f%v%m%m%m%$ $ 7@-+V+v s@X+X+ ", +" $ $ t#t#>%m#P#u#u#+$X#)$Q#Y#Y#-$b$b$;$c$6$7$h$e$F$z$o$o$G$B$Z$O$ % %.%d%-%-%1%6%7%0%k%f%v%m%m%m%m%$ $ 7@w%F@ ", +" $ $ u#u#u#u#u#X#Q#)$m$4%Y#@$@$b$!$c$6$6$h$M$e$n$z$z$A$G$B$Q$`$ %.%.%=%=%5%:%u%x%p%8%l%i%y%m%m%m%m%$ $ ", +" $ $ X#X#4$Q#Q#Q#m$Y#@$y$;$;$!$c$6$d$7$7$e$n$N$z$o$G$B$H$z%`$t%.%$%$%g%_%2%6%7%p%k%h%i%i%m%m%m%m%m%m%$ $ ", +" $ $ Y#Y#4%Y#Y#-$y$@$;$5$c$X$6$6$7$h$e$n$n$o$o$,%Y$Z$Q$`$`$ %.%(%=%-%)%2%7%x%0%h%h%i%m%m%m%m%m%m%m%m%$ $ ", +" $ $ @$b$;$@$;$;$!$c$c$6$6$7$7$e$r$n$N$z$o$,%G$B$B$Q$`$ %t%$%$%g%-%5%2%7%e%8%A%h%v%m%m%m%m%m%m%m%m%m%$ $ ", +" $ $ ;$5$!$c$X$c$6$6$7$7$h$e$n$n$z$z$o$,%G$Y$B$Q$z% % %.%$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ m%$ $ ", +" $ $ X$6$6$6$[$7$7$h$F$F$n$N$z$o$o$,%B$B$B$Q$`$R$$ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ 7$7$h$e$e$n$n$i$i$z$z$o$,%G$/%B$Q$Q$`$$ $ $ $ $ $ $ $ $ $ $ ", +" $ $ n$n$n$n$z$z$z$o$o$,%,%G$B$B$Q$Q$$ $ $ $ $ $ $ ", +" $ $ z$z$o$z$o$o$G$G$/%/%B$Z$Q$$ $ $ $ $ $ $ ", +" $ $ A$A$G$G$G$/%B$Q$H$O$z%$ $ $ $ $ $ ", +" $ $ B$B$B$Z$Q$Q$`$`$$ $ $ $ $ $ ", +" $ $ O$`$`$`$`$R$$ $ $ $ $ $ ", +" $ $ }% % % %$ $ $ $ $ $ $ ", +" $ $ |%$%$ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ ", +" j%$ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ $ $ $ $ $ $ $ $ $ $ $ ", +" $ $ $ ", +" $ $ $ ", +" ", +" ", +" "}; diff --git a/src/Mod/Surfaces/Icons/IsoCurveIco.png b/src/Mod/Surfaces/Icons/IsoCurveIco.png new file mode 100644 index 0000000000000000000000000000000000000000..3e5dd8f9d8568050a98a642cec04cdda959e787e GIT binary patch literal 6763 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 literal 0 HcmV?d00001 diff --git a/src/Mod/Surfaces/Icons/IsoCurveIco.xcf b/src/Mod/Surfaces/Icons/IsoCurveIco.xcf new file mode 100644 index 0000000000000000000000000000000000000000..6c05b2c4f0e0a529dada67426da25ebecff9377d GIT binary patch literal 64629 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 c #009B03", +", c #006600", +"' c #1B1B1B", +") c #050505", +"! c #000000", +"~ c #171717", +"{ c #008C02", +"] c #00B005", +"^ c #00A305", +"/ c #006F01", +"( c #1D1D1D", +"_ c #4C4C4C", +": c #1F1F1F", +"< c #B5B5B5", +"[ c #B4B4B3", +"} c #B3B3B2", +"| c #B1B1B2", +"1 c #B1B0B0", +"2 c #AFAFAF", +"3 c #AEAEAE", +"4 c #ADACAC", +"5 c #ABABAB", +"6 c #AAAAAA", +"7 c #141414", +"8 c #007100", +"9 c #00AC04", +"0 c #008403", +"a c #232323", +"b c #030303", +"c c #A8A8A8", +"d c #787878", +"e c #8B8B8B", +"f c #B6B7B6", +"g c #B9B9BA", +"h c #B8B8B9", +"i c #B8B7B7", +"j c #B6B6B6", +"k c #B5B4B5", +"l c #B3B3B3", +"m c #B2B3B2", +"n c #B1B1B1", +"o c #B0B0B0", +"p c #AFAFAE", +"q c #ADADAD", +"r c #ACACAC", +"s c #A9A9A9", +"t c #A8A7A8", +"u c #A6A7A6", +"v c #A5A5A5", +"w c #010101", +"x c #00A704", +"y c #00AE05", +"z c #00AC05", +"A c #009703", +"B c #1A1A1A", +"C c #C1C2C2", +"D c #C1C1C1", +"E c #C0C1C1", +"F c #C0C0C0", +"G c #BFC0C0", +"H c #BFBFBF", +"I c #BAB9BA", +"J c #898A89", +"K c #7A7A7A", +"L c #B9B9B9", +"M c #B7B8B8", +"N c #B7B6B7", +"O c #B4B4B4", +"P c #B2B1B1", +"Q c #B0AFAF", +"R c #ADAEAD", +"S c #AAA9A9", +"T c #A7A7A7", +"U c #A6A6A5", +"V c #A4A4A4", +"W c #008A02", +"X c #00B104", +"Y c #00AD05", +"Z c #00AA06", +"` c #00A105", +" . c #007101", +".. c #006000", +"+. c #0C0C0C", +"@. c #C3C3C3", +"#. c #C4C3C3", +"$. c #C3C3C4", +"%. c #C3C4C3", +"&. c #C3C2C3", +"*. c #C2C1C2", +"=. c #C1C1C2", +"-. c #BFC0BF", +";. c #BEBEBF", +">. c #BDBDBE", +",. c #9D9C9C", +"'. c #737373", +"). c #A5A5A4", +"!. c #AFB0AF", +"~. c #AEAEAF", +"{. c #ACABAC", +"]. c #A9A9A8", +"^. c #A6A6A6", +"/. c #A4A5A4", +"(. c #A3A3A3", +"_. c #A2A2A2", +":. c #008B02", +"<. c #00B305", +"[. c #00A906", +"}. c #00A505", +"|. c #008303", +"1. c #020202", +"2. c #C2C2C3", +"3. c #C4C4C4", +"4. c #C5C5C5", +"5. c #C4C5C5", +"6. c #C5C4C4", +"7. c #BEBEBE", +"8. c #BDBEBE", +"9. c #9F9F9E", +"0. c #B8B8B8", +"a. c #B4B5B4", +"b. c #B2B2B1", +"c. c #B1B1B0", +"d. c #AAABAB", +"e. c #A4A3A3", +"f. c #A1A0A1", +"g. c #00B405", +"h. c #00A706", +"i. c #00A506", +"j. c #009404", +"k. c #006800", +"l. c #080808", +"m. c #C2C2C2", +"n. c #C3C3C2", +"o. c #C5C6C6", +"p. c #C6C6C6", +"q. c #C7C6C6", +"r. c #C6C6C5", +"s. c #C6C5C6", +"t. c #C4C5C4", +"u. c #C3C4C4", +"v. c #C3C2C2", +"w. c #C1C0C0", +"x. c #C0BFBF", +"y. c #BDBCBD", +"z. c #757575", +"A. c #9D9D9D", +"B. c #B8B8B7", +"C. c #B4B5B5", +"D. c #B3B3B4", +"E. c #B2B1B2", +"F. c #ACADAC", +"G. c #A8A9A8", +"H. c #A7A7A6", +"I. c #A3A4A4", +"J. c #A3A3A2", +"K. c #A1A1A1", +"L. c #9FA0A0", +"M. c #006700", +"N. c #007700", +"O. c #008601", +"P. c #009202", +"Q. c #009D02", +"R. c #00AC03", +"S. c #00B503", +"T. c #00B404", +"U. c #00A806", +"V. c #00A306", +"W. c #009C05", +"X. c #007702", +"Y. c #C2C2C1", +"Z. c #C2C3C2", +"`. c #C5C5C4", +" + c #C7C7C7", +".+ c #C8C8C7", +"++ c #C6C6C7", +"@+ c #C5C4C5", +"#+ c #BFBFBE", +"$+ c #BDBDBD", +"%+ c #BDBCBC", +"&+ c #ADAEAE", +"*+ c #747474", +"=+ c #B7B7B6", +"-+ c #B2B3B3", +";+ c #AFB0B0", +">+ c #ABACAB", +",+ c #A6A5A6", +"'+ c #A4A4A5", +")+ c #9E9E9F", +"!+ c #006D00", +"~+ c #007F00", +"{+ c #009200", +"]+ c #00A201", +"^+ c #00B302", +"/+ c #00C202", +"(+ c #00C803", +"_+ c #00C403", +":+ c #00C204", +"<+ c #00C004", +"[+ c #00BD04", +"}+ c #00BA04", +"|+ c #00B804", +"1+ c #00B504", +"2+ c #00AC06", +"3+ c #00A905", +"4+ c #00A406", +"5+ c #00A006", +"6+ c #009E07", +"7+ c #008A05", +"8+ c #006500", +"9+ c #C1C1C0", +"0+ c #C9C8C9", +"a+ c #C9C9C9", +"b+ c #C9C9C8", +"c+ c #C8C9C9", +"d+ c #C8C8C8", +"e+ c #C7C6C7", +"f+ c #BCBDBD", +"g+ c #BBBBBB", +"h+ c #ABABAA", +"i+ c #A0A0A0", +"j+ c #B6B5B5", +"k+ c #B1B2B2", +"l+ c #B0AFB0", +"m+ c #A8A9A9", +"n+ c #A5A4A5", +"o+ c #A2A2A1", +"p+ c #286F28", +"q+ c #276F27", +"r+ c #004700", +"s+ c #0D500D", +"t+ c #056205", +"u+ c #007D00", +"v+ c #009500", +"w+ c #00AC00", +"x+ c #00C100", +"y+ c #00D201", +"z+ c #00D601", +"A+ c #00D402", +"B+ c #00D202", +"C+ c #00D003", +"D+ c #00CD02", +"E+ c #00CB03", +"F+ c #00C603", +"G+ c #00C303", +"H+ c #00C003", +"I+ c #00BE04", +"J+ c #00BB04", +"K+ c #00B905", +"L+ c #00B704", +"M+ c #00AE06", +"N+ c #00AB05", +"O+ c #00A606", +"P+ c #00A107", +"Q+ c #009F07", +"R+ c #009B07", +"S+ c #009506", +"T+ c #007602", +"U+ c #C7C7C6", +"V+ c #C9CACA", +"W+ c #CACBCB", +"X+ c #CACBCA", +"Y+ c #CAC9CA", +"Z+ c #C7C7C8", +"`+ c #BCBBBC", +" @ c #BABABB", +".@ c #B1B2B1", +"+@ c #AEAFAE", +"@@ c #AAAAAB", +"#@ c #A8A8A7", +"$@ c #297029", +"%@ c #287028", +"&@ c #277427", +"*@ c #278627", +"=@ c #007200", +"-@ c #008600", +";@ c #25A825", +">@ c #00E100", +",@ c #00E101", +"'@ c #00DE01", +")@ c #00DC01", +"!@ c #00DA01", +"~@ c #00D801", +"{@ c #00D502", +"]@ c #00D302", +"^@ c #00D102", +"/@ c #00CE02", +"(@ c #00C903", +"_@ c #00C703", +":@ c #00C404", +"<@ c #00C104", +"[@ c #00BF04", +"}@ c #00BC04", +"|@ c #00A206", +"1@ c #009F06", +"2@ c #009C07", +"3@ c #009907", +"4@ c #009807", +"5@ c #008906", +"6@ c #006801", +"7@ c #C0C0C1", +"8@ c #C8C9C8", +"9@ c #CACACA", +"0@ c #CBCBCB", +"a@ c #CCCCCC", +"b@ c #C9CAC9", +"c@ c #C9C8C8", +"d@ c #BFBEBE", +"e@ c #BCBCBC", +"f@ c #BABBBA", +"g@ c #AEAEAD", +"h@ c #B2B2B2", +"i@ c #2A712A", +"j@ c #297D29", +"k@ c #289328", +"l@ c #28AA29", +"m@ c #28BD28", +"n@ c #27CC28", +"o@ c #27CD28", +"p@ c #27CF28", +"q@ c #00AA00", +"r@ c #21DE21", +"s@ c #00E400", +"t@ c #00E201", +"u@ c #00E001", +"v@ c #00DB01", +"w@ c #00D902", +"x@ c #00D702", +"y@ c #00CF02", +"z@ c #00CD03", +"A@ c #00CA03", +"B@ c #00B205", +"C@ c #00A207", +"D@ c #009D07", +"E@ c #009A07", +"F@ c #009808", +"G@ c #009606", +"H@ c #008004", +"I@ c #006300", +"J@ c #0F0F0F", +"K@ c #CBCACB", +"L@ c #CDCECD", +"M@ c #CECDCE", +"N@ c #CDCDCD", +"O@ c #CBCBCC", +"P@ c #BBBBBA", +"Q@ c #908F8F", +"R@ c #807F7F", +"S@ c #B0B1B1", +"T@ c #AEADAD", +"U@ c #ACADAD", +"V@ c #2A722A", +"W@ c #2A9F2A", +"X@ c #29BA2A", +"Y@ c #29C62A", +"Z@ c #28C729", +"`@ c #28CA29", +" # c #27CE28", +".# c #27D027", +"+# c #26D127", +"@# c #0BB00B", +"## c #03E603", +"$# c #00E401", +"%# c #00DF01", +"&# c #00DC02", +"*# c #00D701", +"=# c #00CF03", +"-# c #00CC02", +";# c #00C503", +"># c #00C103", +",# c #00BF03", +"'# c #00B904", +")# c #00B505", +"!# c #00AF06", +"~# c #00AA05", +"{# c #00A507", +"]# c #009D06", +"^# c #009406", +"/# c #007803", +"(# c #060606", +"_# c #C6C7C6", +":# c #CACACB", +"<# c #CFCFCE", +"[# c #C8C7C8", +"}# c #BBBABA", +"|# c #BAB9B9", +"1# c #B5B5B6", +"2# c #818181", +"3# c #8D8D8D", +"4# c #AFAEAF", +"5# c #297529", +"6# c #29BB2A", +"7# c #29C82A", +"8# c #28C929", +"9# c #28CB29", +"0# c #00AD00", +"a# c #00AF00", +"b# c #22B722", +"c# c #00E500", +"d# c #00C203", +"e# c #00BA05", +"f# c #009006", +"g# c #1C1C1C", +"h# c #C4C4C3", +"i# c #C9C9CA", +"j# c #CECECE", +"k# c #CBCCCC", +"l# c #C2C1C1", +"m# c #C0C1C0", +"n# c #BEBEBD", +"o# c #BCBCBB", +"p# c #B7B8B7", +"q# c #9F9F9F", +"r# c #B0B1B0", +"s# c #ADADAE", +"t# c #298E29", +"u# c #28C72A", +"v# c #27CF27", +"w# c #26D326", +"x# c #23E223", +"y# c #00DD01", +"z# c #00CC03", +"A# c #00C504", +"B# c #00B805", +"C# c #00A705", +"D# c #C7C8C8", +"E# c #CACAC9", +"F# c #CBCCCB", +"G# c #BFBEBF", +"H# c #BABABA", +"I# c #9E9F9E", +"J# c #AEAFAF", +"K# c #ACACAB", +"L# c #29B029", +"M# c #28C82A", +"N# c #27CC29", +"O# c #27CE27", +"P# c #26CF26", +"Q# c #26D126", +"R# c #11AE11", +"S# c #01E102", +"T# c #00B705", +"U# c #009207", +"V# c #C5C5C6", +"W# c #CBCACA", +"X# c #C6C5C5", +"Y# c #C2C3C3", +"Z# c #BEBFBE", +"`# c #858685", +" $ c #8A8A8A", +".$ c #A8A7A7", +"+$ c #298229", +"@$ c #28C629", +"#$ c #27CB28", +"$$ c #26CE27", +"%$ c #26CF27", +"&$ c #25CF26", +"*$ c #00A800", +"=$ c #00A700", +"-$ c #23B323", +";$ c #00D802", +">$ c #00D602", +",$ c #00D002", +"'$ c #00B605", +")$ c #00A106", +"!$ c #007A03", +"~$ c #B8B9B8", +"{$ c #B7B7B7", +"]$ c #B5B6B5", +"^$ c #727272", +"/$ c #A0A1A0", +"($ c #28A829", +"_$ c #28C829", +":$ c #27CA29", +"<$ c #27CC27", +"[$ c #26CC27", +"}$ c #26CD27", +"|$ c #26CD26", +"1$ c #25CC26", +"2$ c #00A600", +"3$ c #06A706", +"4$ c #05DB06", +"5$ c #00BE03", +"6$ c #C8C7C7", +"7$ c #C7C8C7", +"8$ c #C5C6C5", +"9$ c #C4C4C5", +"0$ c #B9BAB9", +"a$ c #B6B7B7", +"b$ c #979796", +"c$ c #7B7B7B", +"d$ c #287D28", +"e$ c #28C429", +"f$ c #27C829", +"g$ c #27C928", +"h$ c #27CA28", +"i$ c #26CB27", +"j$ c #26CA26", +"k$ c #25CA27", +"l$ c #00A400", +"m$ c #26AF26", +"n$ c #00AB06", +"o$ c #009E06", +"p$ c #008404", +"q$ c #111111", +"r$ c #B9B9B8", +"s$ c #B1B0B1", +"t$ c #969696", +"u$ c #ABAAAB", +"v$ c #AAA9AA", +"w$ c #A9A8A9", +"x$ c #A5A5A6", +"y$ c #28A329", +"z$ c #28C529", +"A$ c #27C729", +"B$ c #27C728", +"C$ c #26C927", +"D$ c #26C928", +"E$ c #25C926", +"F$ c #25C826", +"G$ c #25C726", +"H$ c #05A205", +"I$ c #03D505", +"J$ c #00C604", +"K$ c #00A307", +"L$ c #006C01", +"M$ c #C1C0C1", +"N$ c #A9A8A8", +"O$ c #287728", +"P$ c #27C028", +"Q$ c #27C529", +"R$ c #27C628", +"S$ c #26C628", +"T$ c #26C727", +"U$ c #25C727", +"V$ c #25C627", +"W$ c #25C526", +"X$ c #009F00", +"Y$ c #009E01", +"Z$ c #25AC25", +"`$ c #00CE03", +" % c #008D05", +".% c #161616", +"+% c #B8B9B9", +"@% c #B7B7B8", +"#% c #ADACAD", +"$% c #7E7E7E", +"%% c #919191", +"&% c #A7A7A8", +"*% c #27A028", +"=% c #27C328", +"-% c #27C428", +";% c #26C428", +">% c #26C527", +",% c #25C426", +"'% c #25C326", +")% c #24C226", +"!% c #009D01", +"~% c #039D03", +"{% c #05D008", +"]% c #00C902", +"^% c #00B604", +"/% c #007703", +"(% c #2F2F2F", +"_% c #BDBDBC", +":% c #BBBCBB", +"<% c #ACACAD", +"[% c #A5A6A5", +"}% c #A2A2A3", +"|% c #A1A2A1", +"1% c #277927", +"2% c #27C228", +"3% c #26C328", +"4% c #26C227", +"5% c #25C227", +"6% c #25C126", +"7% c #25C226", +"8% c #24C026", +"9% c #009B01", +"0% c #25A725", +"a% c #00A805", +"b% c #009C06", +"c% c #009607", +"d% c #006200", +"e% c #C0BFC0", +"f% c #BCBDBC", +"g% c #ABACAC", +"h% c #7D7D7D", +"i% c #919091", +"j% c #276E27", +"k% c #27A428", +"l% c #26C028", +"m% c #26C128", +"n% c #25C028", +"o% c #25C127", +"p% c #25C026", +"q% c #24BF27", +"r% c #24BE26", +"s% c #24BD26", +"t% c #009801", +"u% c #059A06", +"v% c #05CA07", +"w% c #008504", +"x% c #BBBABB", +"y% c #B9BABA", +"z% c #989898", +"A% c #777777", +"B% c #A0A0A1", +"C% c #278227", +"D% c #26BE28", +"E% c #26BF28", +"F% c #25BF28", +"G% c #25BE27", +"H% c #24BB25", +"I% c #009602", +"J% c #009501", +"K% c #22A323", +"L% c #00C304", +"M% c #00A904", +"N% c #00A005", +"O% c #009504", +"P% c #009204", +"Q% c #009104", +"R% c #007102", +"S% c #0D0D0D", +"T% c #BDBEBD", +"U% c #B5B5B4", +"V% c #ABAAAA", +"W% c #A2A1A1", +"X% c #26B027", +"Y% c #26BC28", +"Z% c #25BC27", +"`% c #24BB26", +" & c #24BA26", +".& c #23B926", +"+& c #23B925", +"@& c #009402", +"#& c #0D970E", +"$& c #01C404", +"%& c #00AF04", +"&& c #009803", +"*& c #007701", +"=& c #009407", +"-& c #BCBBBB", +";& c #B9B8B9", +">& c #B4B3B3", +",& c #A7A8A7", +"'& c #8F8F8F", +")& c #A09F9F", +"!& c #9E9E9E", +"~& c #9A9C9B", +"{& c #269127", +"]& c #26BA28", +"^& c #26BB28", +"/& c #25BA27", +"(& c #25B927", +"_& c #24B926", +":& c #23B726", +"<& c #23B625", +"[& c #009102", +"}& c #23BA24", +"|& c #00A304", +"1& c #008F05", +"2& c #008104", +"3& c #BABAB9", +"4& c #B9B8B8", +"5& c #ADADAC", +"6& c #ACABAB", +"7& c #717171", +"8& c #9C9D9D", +"9& c #9D9E9D", +"0& c #9C9D9C", +"a& c #266E26", +"b& c #267426", +"c& c #26B728", +"d& c #25B828", +"e& c #25B827", +"f& c #25B728", +"g& c #24B727", +"h& c #24B626", +"i& c #23B526", +"j& c #23B426", +"k& c #008F02", +"l& c #1D9A1E", +"m& c #00B204", +"n& c #008604", +"o& c #006D01", +"p& c #B6B6B7", +"q& c #B5B4B4", +"r& c #AAAAA9", +"s& c #838383", +"t& c #888889", +"u& c #9C9C9C", +"v& c #266D26", +"w& c #259E27", +"x& c #25B628", +"y& c #24B627", +"z& c #24B527", +"A& c #24B427", +"B& c #23B427", +"C& c #23B326", +"D& c #23B125", +"E& c #008E02", +"F& c #008D02", +"G& c #10BF14", +"H& c #00A903", +"I& c #007401", +"J& c #007E03", +"K& c #009206", +"L& c #B3B2B3", +"M& c #A9A9AA", +"N& c #A6A7A7", +"O& c #A1A0A0", +"P& c #9B9B9B", +"Q& c #9A9A9A", +"R& c #258126", +"S& c #25B427", +"T& c #25B428", +"U& c #24B327", +"V& c #24B326", +"W& c #23B226", +"X& c #23B126", +"Y& c #23B026", +"Z& c #22AF25", +"`& c #269A27", +" * c #009C03", +".* c #007F04", +"+* c #B3B4B3", +"@* c #AFAFB0", +"#* c #A7A6A6", +"$* c #959596", +"%* c #9C9B9C", +"&* c #9A9A9B", +"** c #99999A", +"=* c #256C25", +"-* c #25A927", +";* c #25B228", +">* c #24B127", +",* c #23AF26", +"'* c #23AE26", +")* c #22AE25", +"!* c #22AC25", +"~* c #008902", +"{* c #088C09", +"]* c #01B606", +"^* c #007002", +"/* c #B2B2B3", +"(* c #A5A6A6", +"_* c #868685", +":* c #9A9999", +"<* c #999999", +"[* c #939693", +"}* c #259126", +"|* c #24B028", +"1* c #24AF27", +"2* c #24AE26", +"3* c #23AD26", +"4* c #23AC25", +"5* c #22AA25", +"6* c #008703", +"7* c #008602", +"8* c #23B927", +"9* c #009702", +"0* c #006A01", +"a* c #009106", +"b* c #A4A4A3", +"c* c #A3A2A3", +"d* c #9C9C9D", +"e* c #9C9B9B", +"f* c #999998", +"g* c #979797", +"h* c #979696", +"i* c #257925", +"j* c #24AD28", +"k* c #24AE27", +"l* c #24AD27", +"m* c #23AC26", +"n* c #23AB27", +"o* c #23AB26", +"p* c #22AB25", +"q* c #22A925", +"r* c #22A825", +"s* c #21A725", +"t* c #008503", +"u* c #208321", +"v* c #006400", +"w* c #007E04", +"x* c #101010", +"y* c #AFAEAE", +"z* c #ABABAC", +"A* c #939393", +"B* c #9A9B9B", +"C* c #246C25", +"D* c #24A327", +"E* c #24AA28", +"F* c #23AA27", +"G* c #23A926", +"H* c #22A826", +"I* c #22A726", +"J* c #21A625", +"K* c #004A00", +"L* c #0B650B", +"M* c #009706", +"N* c #006B01", +"O* c #AAABAA", +"P* c #A7A8A8", +"Q* c #848484", +"R* c #9A999A", +"S* c #999898", +"T* c #979897", +"U* c #979697", +"V* c #959495", +"W* c #919392", +"X* c #246B24", +"Y* c #249126", +"Z* c #24A927", +"`* c #23A927", +" = c #23A827", +".= c #23A726", +"+= c #22A525", +"@= c #21A425", +"#= c #219A25", +"$= c #004B00", +"%= c #236023", +"&= c #009107", +"*= c #A4A5A5", +"== c #A1A2A2", +"-= c #9F9FA0", +";= c #767776", +">= c #949594", +",= c #248025", +"'= c #23A627", +")= c #23A727", +"!= c #23A626", +"~= c #22A626", +"{= c #22A426", +"]= c #22A325", +"^= c #219D24", +"/= c #217021", +"(= c #206820", +"_= c #008C05", +":= c #A2A3A2", +"<= c #A2A1A2", +"[= c #A1A1A0", +"}= c #9F9E9E", +"|= c #9E9E9D", +"1= c #9B9B9C", +"2= c #6F6F6F", +"3= c #959595", +"4= c #969695", +"5= c #939493", +"6= c #929292", +"7= c #247023", +"8= c #23A427", +"9= c #23A327", +"0= c #22A326", +"a= c #22A226", +"b= c #21A025", +"c= c #217622", +"d= c #216821", +"e= c #A5A4A4", +"f= c #A09FA0", +"g= c #9D9C9D", +"h= c #797979", +"i= c #939494", +"j= c #919292", +"k= c #236B23", +"l= c #239927", +"m= c #23A227", +"n= c #22A227", +"o= c #22A127", +"p= c #22A026", +"q= c #219F26", +"r= c #217F23", +"s= c #828282", +"t= c #A4A3A4", +"u= c #9FA09F", +"v= c #7E7F7E", +"w= c #949494", +"x= c #929192", +"y= c #909191", +"z= c #236A23", +"A= c #238A25", +"B= c #239F26", +"C= c #229F27", +"D= c #229F26", +"E= c #218524", +"F= c #838382", +"G= c #818282", +"H= c #808180", +"I= c #A8A8A9", +"J= c #9E9D9D", +"K= c #9B9A9B", +"L= c #999A9A", +"M= c #979798", +"N= c #8D8E8D", +"O= c #909090", +"P= c #8E8F8F", +"Q= c #237B24", +"R= c #229E27", +"S= c #229D26", +"T= c #218E25", +"U= c #216921", +"V= c #7F7F7F", +"W= c #006F02", +"X= c #A1A1A2", +"Y= c #A0A1A1", +"Z= c #9B9C9B", +"`= c #989897", +" - c #969796", +".- c #949495", +"+- c #929393", +"@- c #919192", +"#- c #8E8E8F", +"$- c #8E8E8E", +"%- c #227022", +"&- c #229B27", +"*- c #229B26", +"=- c #229225", +"-- c #216B21", +";- c #718071", +">- c #818182", +",- c #A6A5A5", +"'- c #9F9E9F", +")- c #9D9D9E", +"!- c #9A9B9A", +"~- c #989797", +"{- c #919291", +"]- c #909190", +"^- c #226922", +"/- c #229626", +"(- c #229426", +"_- c #216E21", +":- c #838384", +"<- c #818180", +"[- c #7F8080", +"}- c #7E7E7F", +"|- c #A3A3A4", +"1- c #9E9F9F", +"2- c #999A99", +"3- c #989998", +"4- c #969697", +"5- c #969596", +"6- c #949393", +"7- c #7D7E7D", +"8- c #808080", +"9- c #8C8B8B", +"0- c #898A88", +"a- c #228D25", +"b- c #217222", +"c- c #838484", +"d- c #828382", +"e- c #818281", +"f- c #7D7E7E", +"g- c #7D7D7C", +"h- c #9D9D9C", +"i- c #959594", +"j- c #949394", +"k- c #939292", +"l- c #8F9090", +"m- c #8E8F8E", +"n- c #8C8C8C", +"o- c #217422", +"p- c #828283", +"q- c #818081", +"r- c #7C7B7C", +"s- c #202020", +"t- c #969595", +"u- c #959494", +"v- c #8A8B8B", +"w- c #898989", +"x- c #858484", +"y- c #838483", +"z- c #7C7C7C", +"A- c #7B7B7A", +"B- c #7A7A79", +"C- c #9C9C9B", +"D- c #9B9B9A", +"E- c #929392", +"F- c #929191", +"G- c #6E6E6E", +"H- c #888888", +"I- c #858584", +"J- c #828281", +"K- c #7F7E7F", +"L- c #7E7D7E", +"M- c #7D7C7D", +"N- c #9A9A99", +"O- c #979898", +"P- c #949595", +"Q- c #929291", +"R- c #878787", +"S- c #858686", +"T- c #858585", +"U- c #818080", +"V- c #7B7C7C", +"W- c #7A7B7A", +"X- c #989798", +"Y- c #959696", +"Z- c #8F8F90", +"`- c #8A8B8A", +" ; c #868686", +".; c #808081", +"+; c #7F807F", +"@; c #7A7979", +"#; c #787979", +"$; c #767676", +"%; c #9B9C9C", +"&; c #949493", +"*; c #919090", +"=; c #8F908F", +"-; c #8F8F8E", +";; c #8C8C8D", +">; c #898988", +",; c #888787", +"'; c #828182", +"); c #808181", +"!; c #7F7F80", +"~; c #7D7D7E", +"{; c #7D7C7C", +"]; c #797879", +"^; c #777878", +"/; c #767675", +"(; c #0E0E0E", +"_; c #969797", +":; c #90908F", +"<; c #8D8D8E", +"[; c #757576", +"}; c #7F7E7E", +"|; c #7E7E7D", +"1; c #7C7B7B", +"2; c #787877", +"3; c #757574", +"4; c #8E8D8D", +"5; c #8D8C8D", +"6; c #7A7A7B", +"7; c #787978", +"8; c #767576", +"9; c #757475", +"0; c #737474", +"a; c #8C8D8C", +"b; c #898A8A", +"c; c #898889", +"d; c #787879", +"e; c #747473", +"f; c #727373", +"g; c #727171", +"h; c #959695", +"i; c #939293", +"j; c #8C8B8C", +"k; c #8A8989", +"l; c #878788", +"m; c #828383", +"n; c #787777", +"o; c #727172", +"p; c #0B0B0B", +"q; c #929293", +"r; c #898888", +"s; c #878887", +"t; c #878686", +"u; c #717070", +"v; c #80807F", +"w; c #7C7D7D", +"x; c #797A7A", +"y; c #787778", +"z; c #706F70", +"A; c #868586", +"B; c #848485", +"C; c #777677", +"D; c #767575", +"E; c #747475", +"F; c #737473", +"G; c #707070", +"H; c #6F6E6F", +"I; c #8E8D8E", +"J; c #8D8D8C", +"K; c #8C8C8B", +"L; c #888788", +"M; c #79797A", +"N; c #797978", +"O; c #707170", +"P; c #6F706F", +"Q; c #6D6D6D", +"R; c #848483", +"S; c #7F7F7E", +"T; c #747575", +"U; c #737372", +"V; c #717271", +"W; c #6F7070", +"X; c #181818", +"Y; c #8B8B8A", +"Z; c #868786", +"`; c #858586", +" > c #7A797A", +".> c #747374", +"+> c #707171", +"@> c #6F6F70", +"#> c #6E6F6E", +"$> c #8D8C8C", +"%> c #8B8A8A", +"&> c #8A8A89", +"*> c #878786", +"=> c #7E7D7D", +"-> c #7C7C7D", +";> c #7B7B7C", +">> c #7B7A7A", +",> c #757676", +"'> c #717170", +")> c #6E6F6F", +"!> c #888988", +"~> c #737273", +"{> c #727271", +"]> c #70706F", +"^> c #6D6D6E", +"/> c #89898A", +"(> c #878687", +"_> c #848384", +":> c #767677", +"<> c #757474", +"[> c #6F6E6E", +"}> c #6D6E6E", +"|> c #868787", +"1> c #757675", +"2> c #848383", +"3> c #828181", +"4> c #707071", +"5> c #6F6F6E", +"6> c #848585", +"7> c #7B7C7B", +"8> c #313131", +"9> c #807F80", +"0> c #090909", +"a> c #121212", +"b> c #7C7D7C", +"c> c #7C7C7B", +"d> c #7B7A7B", +"e> c #797878", +"f> c #070707", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" . . . ", +" . . . . ", +" . . . . ", +" . . . ", +" . . . ", +" . . . ", +" + . . . ", +" + + + . . . ", +" + + + . . . ", +" + @ + + . . . ", +" + + # + + . . . ", +" + $ # + + + . . . ", +" % & * = = - - - - = ; + + $ > , + + . . . ", +" & - ' ) ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ~ ; + { ] ^ / + + . . . ", +" ( = ~ ! ! ! _ : ! ! ! ! ! < [ } | 1 2 3 4 5 6 ! ! ! ! ! 7 + 8 $ # 9 0 + + + . . ", +" % a b ! ! ! ! ! ! ! c d e f g h i j k l m n o p q r 5 s t u v ! ! w % + + x ] y z A , + + . . . ", +" ( B ! ! ! ! ! ! C D E F G H I J K o L M N j O l P n Q R 4 5 S s T U V ! ! ! a + W X # Y Z ` .+ + .. . . . ", +" a +.! ! ! ! @.#.$.%.@.&.*.=.E -.;.>.,.'.).L M f < O l n !.~.q {.6 ].c ^./.(._.! ! - + :.<.] y z [.}.|...+ + . . . ", +" = 1.! ! ! 2.%.3.3.4.4.5.6.3.#.&.*.D H 7.8.v '.9.0.N j a.l b.c.2 q r d.s c u v e._.f.! ! = + + + + + + + { g.$ # z Z h.i.j.k.+ + . . . ", +" l.! ! ! m.n.3.5.4.o.p.q.p.r.s.t.u.v.C w.x.7.y.R z.A.B.f C.D.E.o 2 3 F.5 6 G.H.v I.J.K.L.! ! & + + + + + + + M.N.O.P.Q.R.S.T.<.] Y Z U.i.V.W.X.+ + + . . ", +" = ! ! ! F Y.Z.#.`.r.q. + +.+ + +++r.@+3.m.D F #+$+%+&+*+A.=+< [ -+n ;+3 q >+6 ].T ,+'+J._.L.)+! w + + + + + + + !+~+{+]+^+/+(+_+:+<+[+}+|+1+<.] y 2+3+i.4+5+6+7+8++ + . . . ", +" ; ! ! 7.x.9+m.$.3.p. +.+0+a+a+b+c+d+e+s.`.@.m.D -.8.f+g+h+'.i+j+O } k+l+p q >+6 m+T U n+(.o+p+q+r+r+s+t+, u+v+w+x+y+z+A+B+C+D+E+(+F+G+H+I+J+K+L+<.$ M+N+[.O+V.P+Q+R+S+T++ + + . . ", +" a ! ! ! #+F Y.@.3.r.U+d+a+V+W+W+X+Y+a+Z+U+4.3.2.=.F 7.$+`+ @c '.^.k l .@o +@&+r @@s #@$@$@%@p+p+&@*@=@-@;@>@,@,@'@)@!@~@{@]@^@/@E+(@_@:@<@[@}@K+L+g.$ # z [.h.4+|@1@2@3@4@5@6@+ + + . . . ", +" % ) ! ! 7@Y.$.t.p.Z+8@9@0@a@a@a@W+b@c@ +p.3.n.Y.F d@$+e@f@L i+z.g@[ h@o 2 q r i@i@i@$@j@k@l@m@n@o@p@q@q@r@s@t@u@'@v@w@x@A+^@y@z@A@_@_+:+[@[+}+L+1+B@# 2+Z h.4+C@Q+D@E@F@4@G@H@I@+ + + . . . ", +" J@! ! m.3.5.q.d+a+K@a@L@M@N@O@9@a+.+p.3.#.m.F H 8.e@P@L 0.Q@R@h@h@S@2 T@U@V@i@W@X@Y@Z@`@`@o@ #.#+#w+@###$#,@%#&#!@*#A+B+=#-#(@_@;#>#,#}@'#L+)#$ !#z ~#h.{#C@Q+]#E@F@4@4@4@^#/#@ + + . . ", +" (#! m.%.4._#d+b@:#a@M@<#N@a@9@a+[#p.4.@.C w.H $+e@}#|#M 1#2#3#b.n 4#&+r d.i@5#6#Y@7#8#9#n@p@.#+#0#a#b#c#t@u@)@!@*#A+B+y@z@A@_@_+d#[@}@e#L+T.B@# Y [.U.i.|@Q+D@3@4@4@4@4@4@f#..+ . . . ", +" g#! ! h#4.p.d+i#W+a@N@j#N@k#X+0+d+p.4.@.l#m#H n#o#}#L p#f +@*+q#r#2 s#r 6 i@i@t#Y@u#`@9#o@ #v#+#w#0#w+x#,@%#y#!@x@A+B+y@z#A@_@A#>#[@[+}+B#T.B@# z ~#C#i.|@Q+2@E@4@F@4@F@F@T++ + . . ", +" = ! ! @+r.D#8@E#0@a@a@F#0@V+d+ +p.@+@.C F G#$+`+H#L M j O I#z.r J#q K#5 s i@$@L#u#M#`@N#o@O#P#Q#Q#q@R#S#'@)@w@x@A+B+=#-#A@_@_+d#[@[+'#T#T.B@# Y Z h.i.C@Q+2@E@4@4@4@4@U#..+ . . ", +" & ! ! V# +d+a+9@W#W+:#V+c+D#_#X#3.Y#D F Z#$+g+}#L p#j O l `# $4#q {.d.s .$$@+$@$M#`@#$n@O#$$%$&$*$=$-$y#v@;$>$]@,$/@z#(+_@_+>#[@}@'#'$T.B@M+z Z h.i.)$Q+2@3@4@4@4@4@!$+ + . . ", +" ) ! `.p.e+.+0+a+a+a+8@.+ +X#6.@.m.w.H 7.f+`+H#~${$]$O l 5 ^$/$q {.@@s c $@$@($Z@_$:$#$<$[$}$|$1$2$3$4$w@*#{@B+,$z@E+(+F+G+<+5$J+'#'$g.$ y 2+Z O+4+P+6+R+3@4@4@4@G@I@+ . . ", +" & ! ! 4.p.U+D#D#6$d+7$q.8$9$#.Z.l#F Z#>.e@g+0$0.a$j+D.l n b$c$K#>+6 m+T v $@d$e$Z@f$g$h$i$i$j$k$l$l$m$*#{@]@^@y@-#A@_@;#G+<+I+J+B#)#<.] Y n$3+O+4+P+o$R+3@4@4@4@p$+ + . . ", +" q$! u.4.X#s.p.++U+p.4.`.3.n.l#w.-.7.$+`+H#r$B.j < l h@s$+@c$t$u$v$w$T x$$@%@y$z$A$B$C$D$C$E$F$G$]+H$I$A+^@y@z@A@(@J$:@>#[@}@e#L+1+<.!#Y ~#h.i.K$5+o$R+4@F@4@4@L$+ . . ", +" % ! ! $.3.3.4.4.6.@+3.#.Z.m.M$-.G#$+e@f@|#0.=+]$O l E.o 2 A.z.N$S #@u v I.p+O$P$Q$R$S$T$T$U$V$W$X$Y$Z$^@,$`$z#(@_@;#G+H+I+J+'#'$g.B@# z 3+C#4+|@1@D@E@4@4@4@ %+ + . . ", +" .%! m.&.@.@.$.#.@.2.m.D w.G Z#>.e@g+H#+%@%f < D.} n o 3 #%$%%%s &%^.n+(.p+p+*%=%-%;%>%>%W$,%'%)%!%~%{%/@z#]%(+F+_+<@[@}@}+B#^%<.$ M+2+[.h.4+P+Q+2@E@4@4@F@/%+ . . ", +" (%! ! D m.*.m.m.Y.*.9+F H Z#8._%:%H#L 0.=+1#O l h@o 2 3 <%A.*+^.H.[%/.}%|%p+1%P$2%3%4%5%5%6%7%8%9%9%0%-#A@(+F+:@:+,#5$J+'#'$)#B@# Y ~#a%O+V.)$6+b%3@F@4@c%d%+ . . . ", +" .%! G F 9+F E 7@e%G #+7.8.f%:%H#|#h {$j k l } n ;+3 q g%6 h%i%T v V _.K.p+j%k%l%l%m%n%o%p%q%r%s%t%u%v%_@F+:@d#<+I+}@e#|+1+<.$ y z [.h.i.|@1@D@R+4@4@4@w%+ + . . ", +" g#! ! H H H H H G#7.$+$+e@g+x%y%h {$j < O l E.r#2 &+r 5 6 z%A%v '+(._.B%q#j%C%D%E%E%F%G%G%r%s%H%I%J%K%;#:@L%<+I+}@}+B#T#g.B@# Y M%N%O%P%Q%o$D@3@4@4@F@R%+ . . ", +" S%! 8.7.8.8.T%$+_%e@:%g+H#L 0.0.j j+U%l k+r#l+~.q r V%S T A%t$V }%W%i+9.j%j%X%Y%Z%Z%Z%Z%`% &.&+&@&#&$&:+H+[@[+J+'#^%g.B@%&&&*&+ + + + + G@R+3@4@F@=&..+ . . ", +" * ! ! e@e@%+e@o#-&P@H#|#;&0.{$f ]$O >&} n o p T@r 5 6 N$,&'&h%(.}%K.)&!&~&j%{&]&^&/&/&(&_&_&:&<&P.[&}&<+5$[+J+'#T#)#<.|&/ + + + + 1&3@4@F@4@2&+ + . . . ", +" ! ! g+}#g+x%f@3&3&L 4&{${$j < O >&h@P o 2 &+5&6&@@s c T _.7&8&o+i+9.9&0&a&b&c&d&e&f&g&g&h&i&j&j&k&l&I+}@J+'#L+1+m&{ @ + + + n&3@4@4@4@o&+ . . ", +" & ! L g L L r$~$0.{${$p&]$q&O l h@.@1 2 3 q g%5 r&c T U ).s&t&K.L.!&0&u&a&v&w&x&x&y&z&A&B&j&C&D&E&F&G&}+'#T#1+H&I&+ + + + J&4@4@F@K&+ + . . ", +" ! ! 0.p#B.M {$a$j j+< a.[ L&h@n o 2 3 q r 5 M&]..$N&v (.t$z.O&q#!&0&P&Q&v&R&S&T&U&V&U&W&X&Y&Z&{ :.`&L+'$)# *I@+ + + X.4@F@4@.*+ . . ", +" ) ! f j j j j 1#< O +*l h@.@c.@*2 3 T@<%h+6 ].#@#*U /.(._.*+$*I#A.%*&***v&=*-*;*>*>*>*Y&,*'*)*!*~*{*]*g.&&@ + + + ^*4@4@4@L$+ . . ", +" - ! ! < < q&O O D.l /*b.n r#o J#3 q r 5 6 s c T (*n+(._.K._*s&A.0&P&:*<*[*=*}*|*1*1*2*'*3*4*!*5*6*7*8*9*..+ + + 0*4@4@a*+ + . . . ", +" ! ! +*>&D.L&-+h@| P n o 2 3 g@#%g%5 v$m+t T ^./.b*c*K.O&t$'.d*e*Q&f*g*h*=*i*j*k*l*m*n*o*p*q*r*s*t*u*..+ + v*4@4@w*+ . . ", +" x*! h@k+k+n n c.r#l+2 y*g@q r z*5 6 ].c T ^.v I.(._.O&)&!&'.A*B***z%g*t$=*C*D*E*F*F*G*H*H*I*J*J*X.K*L*.. + + M*4@N*+ . . ", +" - ! ! s$o o ;+!.J#y*R q U@r 5 O*v$w$P*T ^.v V (.o+K.L.I#!&2#Q*R*S*T*U*V*W*X*Y*Z*`* =.=I*I*+=@=#=$=r+%= + a*&=+ + . . ", +" ! ! 2 2 y*3 3 R q #%r g%d.s s c t ^.U *=I.(.==/$-=)+9&u&'&;=<*z%U*$*>=A*X*,='=)=!=~={={=]=^=/=(=r+q$ + _=.*+ . . ", +" +.! q s#R q F.r >+5 @@6 r&G.t T ^.v '+V :=<=[=i+}=|=0&1=z%2=3=g*4=3=5=6=X*7=8=8=9=0=0=a=b=c=d=(=! ! + n&o&+ . . ", +" = ! r r {.{.>+5 d.M&S s c T #*^.x$e=(.:=_.[=f=)+|=g=u&Q&**h= $t$3=i=A*j=X*k=l=m=n=o=p=q=r=d=d=s=! ! - + H@+ + . . ", +" ! ! 5 @@6 r&s m+G.P*T T ^.(*'+t=(.:=K./$u=9.!&A.%*P&**S*Q*v=$*w=A*x=y='&z=A=B=C=D=D=E=d=d=F=G=H=! x* + !$+ . . ", +" ! ! s s s I=c &%T N&^.U v V b*J._.K.i+q#9.J=u&%*K=L=S*M=N=*+w=A*6=y=O=P=z=Q=R=R=S=T=U=d=s&s=2#V=! ! + W=+ . . ", +" B ! T &%T #*H.u [%x$/.V e.(.:=X=Y=i+q#!&A.8&Z=Q&<*f*`= -.-2=O=+-@-O=#-$-z=%-&-*-=---d=;-s&>-H=V=! ! * + ..+ . . ", +" - ! ! ^.^.(*,-v '+V e.(._.|%K.i+u='-!&)-u&e*!-<*<*~-t$4=V*z.t&{-]-'&$-3#z=^-/-(-_-d=d=:-s=<-[-}-h%! .% + + + . . ", +" ! ! V e=V b*|-(.(.|%_.K.O&f=q#1-A.g=u&P&Q&2-3-g*4-5->=6-7-8-O='&$-3#9-0-^-a-b-d=d=c-d-e-8-V=f-g-! ! + + . . ", +" 1.! |-c*_.}%_.==K.B%/$-=q#I#!&h-0&P&K=Q&<*S*g*t$4=i-j-k-Q*d l-m-3#n-e $^-o-d=d=Q*p-G=q-V=$%h%r-! ! & + + . . ", +" s-! <=<=K.B%K.i+L.q#q#!&J=A.u&P&P&!-**<*z%g*t$t-u-A*6=x=v-7&$-3#n-e $w-^-U=d=x-y-s=<-R@$%h%z-A-B-! ( + + . . ", +" a ! ! i+i+-=u=9.}=!&A.g=8&C-P&D-Q&<*z%g*4-4=3=w=A*E-F-]-m-G-e n-e $w-H-U=d=I-:-s=J-8-K-L-M-c$K h=! ! . . ", +" ! ! 9.1-!&|=!&A.d*u&Z=P&&*N-<*S*O-U*t$$*P-j-A*Q-%%O=Q@$-'.`#e $J H-R-S-T-Q*s&e-U-V=$%g-V-W-h=d ! ! . . ", +" ! ! J=A.A.,.C-%*P&!-!-2-<*3-X-O-t$Y-V*>=5=6=j=%%Z-'&$-3#d V=`-w-H-R- ;T-c-s&>-.;+;}-h%V-c$@;#;A%$;! = . . ", +" .%! %;Z=Z=P&&*&*Q&<*f*f*X-~-U*t$5-w=&;A*+-Q-*;=;-;$-3#;;z-K w->;,; ;T-Q*s&';);!;v=~;{;c$K ];^;$;/;! (; . . ", +" - ! Q&Q&L=L=<*f*z%z%X-g*_;4=3=>=&;&;E-x=y=O=:;-;<;3#n-e 8-[;H-R- ;T-Q*s&s=2#8-};|;z-1;A-h=2;A%[;3;! ! . . ", +" & ! ! <*z%z%`=X-g*g*t$$*3=P-i=A*+-6=F-%%O='&$-4;5;n-e $F=^$R- ;T-Q*s&s=2#8-V=f-g-V-6;h=7;A%8;9;0;! ! ( ", +" ! ! g*g*b$_;t$Y-3=V*w=w=A*6=6=Q-O=O='&P=4;3#a;e e b;c; ;G- ;T-Q*s&s=q-8-V=$%g-r-K @;d;A%$;z.e;f;g;! - ", +" ! ! Y-$*h;3=i-w=&;A*+-i;6=%%i%O=Z-m-$-3#5;j;e $k;H-l;R-G-m;Q*s&';2#8-V=f-M-1;c$K #;n;$;[;*+'.o;7&! J@ ", +" p;! w=w=&;5=A*A*q;6=%%y=O=O=:;'&$-4;3#n-9- $b;w-r;s;t;S-u;v;p-s=2#v;V=$%w;z-c$x;h=y;A%z.*+'.^$7&z;! ! ", +" & ! E-E-q;6=6=Q-%%i%]-O='&#-$-3#3#n-n-e $k;t&H-R- ;A;B;'.z-s=H=8-K-L-g-z-c$B-h=2;C;D;E;F;^$7&G;H;! ! s- ", +" - ! x=F-%%%%O=O=l-'&-;#-I;<;J;n-K;e $k;c;H-L; ; ;T-Q*s&E;M;U-8-V=f-g-z-c$K N;y;A%8;E;F;^$g;O;P;G-Q;! = ", +" ( ! ! l-Z-Q@#-'&$-$-4;3#n-j;e e $J c;H-H-R- ;`#I-R;m;p-$;A%+;S;L-w;V-c$B-#;^;C;$;T;*+U;V;G;W;G-Q;Q;! X; ", +" ! ! P=$-$-$-N=3#J;n-9-e Y; $J w-r;l;R-Z;`;T-Q*s&p-G=2#A%z.};L-z-z-W- >d;d A%8;*+.>f;V;+>@>#>Q;Q;Q;! w ", +" ! ! 3#3#;;$>j;9-e `-%>&>w-r;r;L;*>*> ;T-x-s&F=s=e-U-V=d '.=>->;>>>x;#;y;$;,>9;e;f;o;'>@>)>Q;Q;Q;Q;! ! ", +" ! ! 9-9-e e v- $w-&>!>t&H-,;R-Z;_*T-Q*Q*F=p-s=2#8-+;}-^;^$z-c$K h=#;A%A%z.3;.>~>{>+>]>H;^>Q;Q;Q;Q;! ! ", +" (#! $b;/>w-w-w-!>H-R-(> ; ;`#T-Q*_>s&m;G=2#.;8-V=$%h%d G;c$ >h=d ^;:>8;<>F;'.V;'>W;[>}>Q;Q;Q;Q;Q;Q;! * ", +" ~ ! H-H-t&H-H-l;(>|> ;`;T-I-Q*c-s&d-s=2#);R@V=v=L-M-z-A%2=x;h=2;A%$;1>*+'.~>o;G;W;[>Q;Q;Q;Q;Q;Q;Q;Q;! a ", +" & ! R-*>t;|> ; ;`#T-T-Q*c-2>s&s=>-3>q-8-V=S;$%h%w;V-c$A%2=d d :>$;z.*+'.^$7&4>W;5>Q;Q;Q;Q;Q;Q;Q;Q;Q;! x* ", +" - ! ;A;`#T-I-6>Q*c-s&s&d-s=2#2#8-8-V=S;$%~;h%z-7>K x;^;8>! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! Q;! ! ", +" - ! I-Q*c-c-R;s&s&F=J-e-2#q-8-9>V=S;=>=>w;z-c$A-! ! ! ! ! ! ! X;- = = * & % % a = a 7 ! ! ! ! ! ! ", +" a ! s&s&d-s=s=2#2#<-<-8-8-V=v=$%|;h%{;z-c$! ! ! ! ! 0>- s- - a>! ", +" & ! 2#2#2#);8-8-8-9>V=v=S;f-h%h%z-z-! ! ! ! ! q$- ", +" : ! 8-8-9>+;V=V=};$%|;7-h%->z-! ! ! ! ! & s- ", +" % ! K-K-$%$%$%|;h%z-b>r-c>! ! ! ! B : ", +" & ! h%w;h%M-z-z-c$c$! ! ! ! l.- ", +" * ! ;>1;c$c$c$A-! ! ! ! x*& ", +" = ! d>K K x;! ! ! ! % ", +" - ! N;e>! ! ! w = ", +" ; ! ! ! ! b = ", +" p;! ! f>a ", +" ! f>- ", +" s-: ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/src/Mod/Surfaces/Icons/SliceIco.png b/src/Mod/Surfaces/Icons/SliceIco.png new file mode 100644 index 0000000000000000000000000000000000000000..c5f29a85c37c6f06c7acc64a7b0eee6762b83b58 GIT binary patch literal 5547 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 J{*wQ7{tInpL!1Br literal 0 HcmV?d00001 diff --git a/src/Mod/Surfaces/Icons/SliceIco.xpm b/src/Mod/Surfaces/Icons/SliceIco.xpm new file mode 100644 index 0000000000..64a796a3fe --- /dev/null +++ b/src/Mod/Surfaces/Icons/SliceIco.xpm @@ -0,0 +1,865 @@ +/* XPM */ +static char * SliceIco_xpm[] = { +"128 128 734 2", +" c None", +". c #008F00", +"+ c #009100", +"@ c #008700", +"# c #007800", +"$ c #007700", +"% c #009900", +"& c #007B00", +"* c #007500", +"= c #007400", +"- c #007F00", +"; c #008D00", +"> c #008000", +", c #007900", +"' c #009F00", +") c #009000", +"! c #007D00", +"~ c #007600", +"{ c #008100", +"] c #008A00", +"^ c #008E00", +"/ c #009300", +"( c #009E00", +"_ c #00B200", +": c #00D600", +"< c #009400", +"[ c #00A100", +"} c #008800", +"| c #007A00", +"1 c #008300", +"2 c #00A500", +"3 c #00C000", +"4 c #00EA00", +"5 c #00FF00", +"6 c #009D00", +"7 c #007C00", +"8 c #008900", +"9 c #00E700", +"0 c #00FD00", +"a c #00FE00", +"b c #009C00", +"c c #00A700", +"d c #007300", +"e c #00A000", +"f c #00C200", +"g c #00F400", +"h c #00F700", +"i c #00FA00", +"j c #00A300", +"k c #007000", +"l c #00C100", +"m c #00DF00", +"n c #00E900", +"o c #00EF00", +"p c #008200", +"q c #008500", +"r c #007100", +"s c #007E00", +"t c #00AE00", +"u c #00CA00", +"v c #00D400", +"w c #00D700", +"x c #00DE00", +"y c #00E800", +"z c #00F600", +"A c #008C00", +"B c #008600", +"C c #007200", +"D c #008400", +"E c #00A900", +"F c #00BE00", +"G c #00C500", +"H c #00CC00", +"I c #00DA00", +"J c #00ED00", +"K c #009200", +"L c #00AD00", +"M c #00B700", +"N c #00C600", +"O c #00D800", +"P c #009800", +"Q c #00A800", +"R c #00BA00", +"S c #00D100", +"T c #00F200", +"U c #00B500", +"V c #00D500", +"W c #00FC00", +"X c #00EE00", +"Y c #00A200", +"Z c #00C900", +"` c #00EB00", +" . c #00F300", +".. c #00FB00", +"+. c #008B00", +"@. c #00E300", +"#. c #00F100", +"$. c #02FF02", +"%. c #03FF03", +"&. c #05F805", +"*. c #00BF00", +"=. c #05FF05", +"-. c #01FF01", +";. c #000000", +">. c #2DEC2D", +",. c #2DEC2C", +"'. c #2CEB2C", +"). c #2BEA2B", +"!. c #2AE92A", +"~. c #BDBDBD", +"{. c #BCBDBD", +"]. c #BCBCBC", +"^. c #BABBBA", +"/. c #FF0000", +"(. c #2AE82A", +"_. c #29E829", +":. c #C1C2C2", +"<. c #C1C1C1", +"[. c #C0C1C1", +"}. c #C0C0C0", +"|. c #BFC0C0", +"1. c #BFBFBF", +"2. c #BEBDBE", +"3. c #BCBDBC", +"4. c #BBBBBB", +"5. c #BABABA", +"6. c #2CEA2B", +"7. c #C3C3C3", +"8. c #C4C3C3", +"9. c #C3C3C4", +"0. c #C3C4C3", +"a. c #C3C2C3", +"b. c #C2C1C2", +"c. c #C1C1C2", +"d. c #BFC0BF", +"e. c #BEBEBF", +"f. c #BDBDBE", +"g. c #BDBCBC", +"h. c #BCBBBB", +"i. c #BABAB9", +"j. c #B9B9B9", +"k. c #2BEB2B", +"l. c #2BE92B", +"m. c #28E728", +"n. c #C2C2C3", +"o. c #C4C4C4", +"p. c #C5C5C5", +"q. c #C4C5C5", +"r. c #C5C4C4", +"s. c #BEBEBE", +"t. c #BDBEBE", +"u. c #BBBABA", +"v. c #B8B8B8", +"w. c #29E728", +"x. c #C2C2C2", +"y. c #C3C3C2", +"z. c #C5C6C6", +"A. c #C6C6C6", +"B. c #C7C6C6", +"C. c #C6C6C5", +"D. c #C6C5C6", +"E. c #C4C5C4", +"F. c #C3C4C4", +"G. c #C3C2C2", +"H. c #C1C0C0", +"I. c #C0BFBF", +"J. c #BDBCBD", +"K. c #BBBCBB", +"L. c #B8B8B9", +"M. c #B8B8B7", +"N. c #28E829", +"O. c #27E728", +"P. c #C2C2C1", +"Q. c #C2C3C2", +"R. c #C5C5C4", +"S. c #C7C7C7", +"T. c #C8C8C7", +"U. c #C6C6C7", +"V. c #C5C4C5", +"W. c #BFBFBE", +"X. c #BABBBB", +"Y. c #BAB9BA", +"Z. c #B8B7B8", +"`. c #B7B7B6", +" + c #2BEB2C", +".+ c #2AEA2A", +"++ c #27E627", +"@+ c #C1C1C0", +"#+ c #C9C8C9", +"$+ c #C9C9C9", +"%+ c #C9C9C8", +"&+ c #C8C9C9", +"*+ c #C8C8C8", +"=+ c #C7C6C7", +"-+ c #B7B7B7", +";+ c #B6B5B5", +">+ c #2CEA2C", +",+ c #C7C7C6", +"'+ c #C9CACA", +")+ c #CACBCB", +"!+ c #CACBCA", +"~+ c #CAC9CA", +"{+ c #C7C7C8", +"]+ c #BCBBBC", +"^+ c #BABABB", +"/+ c #B9B8B9", +"(+ c #B6B6B6", +"_+ c #B5B4B5", +":+ c #2AE929", +"<+ c #C0C0C1", +"[+ c #C8C9C8", +"}+ c #CACACA", +"|+ c #CBCBCB", +"1+ c #CCCCCC", +"2+ c #C9CAC9", +"3+ c #C9C8C8", +"4+ c #BFBEBE", +"5+ c #B5B5B4", +"6+ c #B4B4B3", +"7+ c #04F204", +"8+ c #CBCACB", +"9+ c #CDCECD", +"0+ c #CECDCE", +"a+ c #CDCDCD", +"b+ c #CBCBCC", +"c+ c #BBBBBA", +"d+ c #B7B6B6", +"e+ c #B5B4B4", +"f+ c #B3B3B3", +"g+ c #B2B2B2", +"h+ c #26E526", +"i+ c #C6C7C6", +"j+ c #CACACB", +"k+ c #CFCFCE", +"l+ c #C8C7C8", +"m+ c #BAB9B9", +"n+ c #B7B8B8", +"o+ c #B6B6B7", +"p+ c #B5B5B5", +"q+ c #B3B3B4", +"r+ c #B2B2B1", +"s+ c #29E929", +"t+ c #C4C4C3", +"u+ c #C9C9CA", +"v+ c #CECECE", +"w+ c #CBCCCC", +"x+ c #C2C1C1", +"y+ c #C0C1C0", +"z+ c #BEBEBD", +"A+ c #BCBCBB", +"B+ c #B7B8B7", +"C+ c #B6B7B6", +"D+ c #B4B5B4", +"E+ c #B0B1B0", +"F+ c #28E729", +"G+ c #C7C8C8", +"H+ c #CACAC9", +"I+ c #CBCCCB", +"J+ c #BFBEBF", +"K+ c #B4B4B4", +"L+ c #B3B4B3", +"M+ c #B0B0B0", +"N+ c #AEAFAF", +"O+ c #C5C5C6", +"P+ c #CBCACA", +"Q+ c #C6C5C5", +"R+ c #C2C3C3", +"S+ c #BEBFBE", +"T+ c #B1B2B1", +"U+ c #AFAEAF", +"V+ c #ADADAD", +"W+ c #2AE829", +"X+ c #25E425", +"Y+ c #B8B9B8", +"Z+ c #B5B6B5", +"`+ c #B1B1B1", +" @ c #AEAFAE", +".@ c #27E526", +"+@ c #26E525", +"@@ c #C8C7C7", +"#@ c #C7C8C7", +"$@ c #C5C6C5", +"%@ c #C4C4C5", +"&@ c #B9BAB9", +"*@ c #B6B7B7", +"=@ c #B0B0AF", +"-@ c #AEAEAE", +";@ c #ADADAC", +">@ c #ABACAB", +",@ c #27E527", +"'@ c #26E425", +")@ c #B9B9B8", +"!@ c #B1B0B1", +"~@ c #AFB0AF", +"{@ c #ADACAC", +"]@ c #ABAAAB", +"^@ c #28E627", +"/@ c #26E527", +"(@ c #C1C0C1", +"_@ c #B2B1B2", +":@ c #AFAFAF", +"<@ c #AEADAE", +"[@ c #ACACAC", +"}@ c #ABAAAA", +"|@ c #AAA9A9", +"1@ c #27E727", +"2@ c #25E325", +"3@ c #B8B9B9", +"4@ c #B7B7B8", +"5@ c #B3B3B2", +"6@ c #ADACAD", +"7@ c #AAAAAB", +"8@ c #A9A9A9", +"9@ c #A7A7A8", +"0@ c #24E324", +"a@ c #084808", +"b@ c #BDBDBC", +"c@ c #B5B5B6", +"d@ c #ACACAD", +"e@ c #ABABAB", +"f@ c #A9AAAA", +"g@ c #A8A8A8", +"h@ c #A7A7A6", +"i@ c #C0BFC0", +"j@ c #AFB0B0", +"k@ c #ABACAC", +"l@ c #AAAAAA", +"m@ c #A8A7A8", +"n@ c #A7A7A7", +"o@ c #A5A5A5", +"p@ c #BBBABB", +"q@ c #B9BABA", +"r@ c #ADAEAE", +"s@ c #A6A6A6", +"t@ c #A4A4A5", +"u@ c #BDBEBD", +"v@ c #B1B2B2", +"w@ c #B0AFB0", +"x@ c #AEAEAF", +"y@ c #A6A7A6", +"z@ c #A5A6A5", +"A@ c #A4A4A4", +"B@ c #25E526", +"C@ c #25E424", +"D@ c #23E224", +"E@ c #23E223", +"F@ c #B4B3B3", +"G@ c #AFAFAE", +"H@ c #AEADAD", +"I@ c #A9A8A8", +"J@ c #A7A8A7", +"K@ c #A4A5A5", +"L@ c #A3A3A3", +"M@ c #A2A2A3", +"N@ c #25E324", +"O@ c #04E804", +"P@ c #B9B8B8", +"Q@ c #B2B1B1", +"R@ c #ACABAB", +"S@ c #A5A4A4", +"T@ c #A2A3A3", +"U@ c #A2A2A1", +"V@ c #B9B9BA", +"W@ c #B1B0B0", +"X@ c #AAAAA9", +"Y@ c #A6A6A5", +"Z@ c #A5A5A4", +"`@ c #A1A1A1", +" # c #9FA0A0", +".# c #25E525", +"+# c #24E424", +"@# c #23E324", +"## c #23E122", +"$# c #B3B2B3", +"%# c #A9A9AA", +"&# c #A9A9A8", +"*# c #A8A7A7", +"=# c #A6A7A7", +"-# c #A2A2A2", +";# c #A1A0A0", +"># c #9F9F9F", +",# c #22E122", +"'# c #B1B1B0", +")# c #AFAFB0", +"!# c #ABABAA", +"~# c #A8A8A7", +"{# c #A7A6A6", +"]# c #A4A5A4", +"^# c #9F9FA0", +"/# c #9E9F9E", +"(# c #9D9D9D", +"_# c #23E123", +":# c #B2B2B3", +"<# c #A5A6A6", +"[# c #A5A4A5", +"}# c #A0A09F", +"|# c #9F9E9F", +"1# c #9C9D9C", +"2# c #24E325", +"3# c #24E223", +"4# c #23E222", +"5# c #B2B3B3", +"6# c #B1B1B2", +"7# c #AEAEAD", +"8# c #AAA9AA", +"9# c #A8A9A9", +"0# c #A4A4A3", +"a# c #A3A2A3", +"b# c #9D9E9E", +"c# c #9C9C9D", +"d# c #9C9B9B", +"e# c #21E021", +"f# c #AFAEAE", +"g# c #ABABAC", +"h# c #A3A4A4", +"i# c #A09F9F", +"j# c #9E9E9E", +"k# c #9C9C9C", +"l# c #9A9B9B", +"m# c #99999A", +"n# c #23E323", +"o# c #21E022", +"p# c #ADAEAD", +"q# c #ACADAD", +"r# c #AAABAA", +"s# c #A9A8A9", +"t# c #A7A8A8", +"u# c #9C9D9D", +"v# c #9B9B9B", +"w# c #9A999A", +"x# c #999898", +"y# c #24E224", +"z# c #AAABAB", +"A# c #A1A2A2", +"B# c #A0A1A0", +"C# c #9E9E9F", +"D# c #9D9E9D", +"E# c #9B9C9B", +"F# c #9A9B9A", +"G# c #999999", +"H# c #989898", +"I# c #22E222", +"J# c #22E021", +"K# c #20E020", +"L# c #ADADAE", +"M# c #ACADAC", +"N# c #A8A9A8", +"O# c #A2A3A2", +"P# c #A2A1A2", +"Q# c #A1A1A0", +"R# c #A0A0A0", +"S# c #9F9E9E", +"T# c #9E9E9D", +"U# c #9B9B9C", +"V# c #9A9A9A", +"W# c #979797", +"X# c #24E323", +"Y# c #20DF20", +"Z# c #ACABAC", +"`# c #A5A5A6", +" $ c #A09FA0", +".$ c #9D9C9D", +"+$ c #969696", +"@$ c #959595", +"#$ c #21DF21", +"$$ c #A4A3A4", +"%$ c #9FA09F", +"&$ c #9F9F9E", +"*$ c #9C9B9C", +"=$ c #969796", +"-$ c #959596", +";$ c #949494", +">$ c #A8A8A9", +",$ c #A3A3A2", +"'$ c #9E9D9D", +")$ c #9B9A9B", +"!$ c #999A9A", +"~$ c #979798", +"{$ c #939393", +"]$ c #1FDE1F", +"^$ c #A4A3A3", +"/$ c #A1A1A2", +"($ c #A0A1A1", +"_$ c #999998", +":$ c #989897", +"<$ c #929393", +"[$ c #22E022", +"}$ c #A6A5A5", +"|$ c #A1A2A1", +"1$ c #9D9D9E", +"2$ c #989797", +"3$ c #969695", +"4$ c #959495", +"5$ c #929293", +"6$ c #919291", +"7$ c #909190", +"8$ c #20DF21", +"9$ c #1FDF20", +"0$ c #A3A3A4", +"a$ c #9E9F9F", +"b$ c #999A99", +"c$ c #989998", +"d$ c #969697", +"e$ c #969596", +"f$ c #949594", +"g$ c #949393", +"h$ c #929392", +"i$ c #919191", +"j$ c #909090", +"k$ c #8F8F8F", +"l$ c #20E021", +"m$ c #A0A0A1", +"n$ c #9D9D9C", +"o$ c #959594", +"p$ c #949394", +"q$ c #939292", +"r$ c #8F9090", +"s$ c #8E8F8E", +"t$ c #21E121", +"u$ c #1FDD1F", +"v$ c #969595", +"w$ c #959494", +"x$ c #929292", +"y$ c #929192", +"z$ c #909191", +"A$ c #8F8F90", +"B$ c #8E8E8E", +"C$ c #8D8D8D", +"D$ c #20DE1F", +"E$ c #1EDD1E", +"F$ c #9C9C9B", +"G$ c #9B9B9A", +"H$ c #929191", +"I$ c #8F908F", +"J$ c #8E8E8F", +"K$ c #8C8C8C", +"L$ c #9A9A9B", +"M$ c #9A9A99", +"N$ c #979898", +"O$ c #979697", +"P$ c #949595", +"Q$ c #929291", +"R$ c #908F8F", +"S$ c #8E8E8D", +"T$ c #8C8D8C", +"U$ c #8B8B8B", +"V$ c #8A8A8A", +"W$ c #1EDE1F", +"X$ c #059A05", +"Y$ c #9D9C9C", +"Z$ c #989798", +"`$ c #959696", +" % c #939493", +".% c #919292", +"+% c #8A8B8A", +"@% c #898989", +"#% c #1FDF1F", +"$% c #1DDC1D", +"%% c #9B9C9C", +"&% c #949493", +"*% c #919090", +"=% c #8F8F8E", +"-% c #8C8C8D", +";% c #898988", +">% c #1FDE20", +",% c #1DDD1E", +"'% c #969797", +")% c #90908F", +"!% c #8D8D8E", +"~% c #89898A", +"{% c #888888", +"]% c #878787", +"^% c #1FDD1E", +"/% c #1EDD1D", +"(% c #017501", +"_% c #939494", +":% c #8E8D8D", +"<% c #8D8C8D", +"[% c #868686", +"}% c #1CDC1D", +"|% c #004C00", +"1% c #979796", +"2% c #8E8F8F", +"3% c #898A8A", +"4% c #898889", +"5% c #858585", +"6% c #1DDC1C", +"7% c #1CDB1C", +"8% c #959695", +"9% c #939293", +"0% c #919091", +"a% c #8C8B8C", +"b% c #8A8989", +"c% c #878788", +"d% c #848585", +"e% c #848484", +"f% c #838383", +"g% c #1EDC1D", +"h% c #8C8B8B", +"i% c #898888", +"j% c #878887", +"k% c #878686", +"l% c #858686", +"m% c #858484", +"n% c #848483", +"o% c #828283", +"p% c #828282", +"q% c #1EDC1E", +"r% c #1CDA1C", +"s% c #888889", +"t% c #868586", +"u% c #848485", +"v% c #838282", +"w% c #808180", +"x% c #1CDC1C", +"y% c #1BDA1B", +"z% c #020A02", +"A% c #8E8D8E", +"B% c #8D8D8C", +"C% c #8C8C8B", +"D% c #888788", +"E% c #818182", +"F% c #818080", +"G% c #808080", +"H% c #1BDB1B", +"I% c #1B901B", +"J% c #000600", +"K% c #898A89", +"L% c #858685", +"M% c #858584", +"N% c #828383", +"O% c #818281", +"P% c #7F807F", +"Q% c #7F7F7E", +"R% c #1BDB1C", +"S% c #8D8E8D", +"T% c #8B8B8A", +"U% c #868786", +"V% c #858586", +"W% c #818282", +"X% c #818181", +"Y% c #7F7F7F", +"Z% c #7F7E7E", +"`% c #7E7D7E", +" & c #1DDB1D", +".& c #1BDA1C", +"+& c #8D8C8C", +"@& c #8B8A8A", +"#& c #8A8A89", +"$& c #878786", +"%& c #838382", +"&& c #7E7E7E", +"*& c #7E7D7D", +"=& c #7C7C7D", +"-& c #8A8B8B", +";& c #888988", +">& c #888787", +",& c #868685", +"'& c #7E7E7F", +")& c #7D7E7E", +"!& c #7D7D7D", +"~& c #7C7C7C", +"{& c #7B7B7B", +"]& c #1CDB1B", +"^& c #878687", +"/& c #848384", +"(& c #808081", +"_& c #7D7D7C", +":& c #7C7C7B", +"<& c #7A797A", +"[& c #257225", +"}& c #868787", +"|& c #838484", +"1& c #828382", +"2& c #808181", +"3& c #807F7F", +"4& c #7E7F7E", +"5& c #7D7C7D", +"6& c #7A7B7B", +"7& c #797A7A", +"8& c #797979", +"9& c #848383", +"0& c #828181", +"a& c #818081", +"b& c #7C7D7D", +"c& c #7B7C7C", +"d& c #7A7A7A", +"e& c #79797A", +"f& c #787878", +"g& c #7D7D7E", +"h& c #7B7C7B", +"i& c #787979", +"j& c #828281", +"k& c #807F80", +"l& c #7B7B7A", +"m& c #04FD04", +"n& c #818180", +"o& c #7E7E7D", +"p& c #7D7C7C", +"q& c #7D7E7D", +"r& c #7F7E7F", +"s& c #7C7D7C", +"t& c #7C7B7C", +"u& c #7B7B7C", +"v& c #7C7B7B", +"w& c #7B7A7B", +"x& c #797978", +"y& c #797878", +"z& c #021902", +"A& c #00BD00", +"B& c #00CF00", +"C& c #009700", +"D& c #00D000", +"E& c #00DC00", +"F& c #00E500", +"G& c #00F500", +"H& c #00A400", +"I& c #00B400", +"J& c #00E400", +"K& c #00F900", +"L& c #00B100", +"M& c #00C400", +"N& c #009600", +"O& c #00E600", +"P& c #00B000", +"Q& c #00B800", +"R& c #00C300", +"S& c #00B300", +"T& c #009500", +"U& c #00E100", +"V& c #00BB00", +"W& c #00F800", +"X& c #009B00", +"Y& c #009A00", +" ", +" ", +" ", +" ", +" ", +" . + @ # $ # ", +" % . & * = = $ - ; > , ", +" ' ) ! ~ ~ $ & { ] ^ / ( _ : < ~ ", +" [ } , # # # | ! - 1 + 2 3 4 5 5 5 5 5 6 * ", +" [ } # , , , , # # 7 8 [ 3 9 0 a a a 5 5 5 5 5 5 b * ", +" c ^ 7 | & 7 & $ = d $ @ e f 4 g g h i a 5 5 5 5 5 5 5 5 5 5 b * ", +" j } , ! - - , = k k $ @ e l m 9 n o h 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" 1 7 p q 1 , r k d s / t u v w x y z 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" 8 A B | C r ~ D < E F G H I J 0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" K K 1 ~ d C $ { . e L M N O J 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" P . ! * = = # > A P ' Q R S T 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ( A , ~ ~ , 7 { } A + ' U V W 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" e B # # # , & ! s D < E G n a 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ; , , # $ ! A 2 N X 0 0 0 a 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" A 7 Y Z ` T .z ..5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.+.@...5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.. g 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 $.%.&.*.*.*.*.*.*.*.*.*.*.*.=.-.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 $.;.;.;.;.;.;.;.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 -.;.;.;.;.;.;.;.;.;.;.;.;.*.>.,.'.'.'.).).).!.!.*.*.*.*.*.*.$.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 ;.;.;.;.;.;.;.;.;.;.~.{.].^././././.>.'.'.'.'.).).).!.!.(._._.*.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 ;.;.;.;.;.;.;.;.:.<.[.}.|.1.2.3.4.5././././.>.'.'.'.6.).).!.!.!._._._.*.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ ;.;.;.;.;.;.7.8.9.0.7.a.b.c.[.d.e.f.g.h.i.j./././.>.'.'.k.).).l.!.!.!._._.m.m.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.;.;.n.0.o.o.p.p.q.r.o.8.a.b.<.1.s.t.].u.i.v./././.'.'.'.).).).!.!.!._._.w.m.m.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.;.x.y.o.q.p.z.A.B.A.C.D.E.F.G.:.H.I.s.J.K.5.L.M./././.'.'.).).).!.!.!._._.N.m.m.O.*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.;.}.P.Q.8.R.C.B.S.S.T.S.S.U.C.V.o.x.<.}.W.~.g.X.Y.Z.`./././.'. +).)..+!.!._._._.m.m.O.++*.*.%.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.s.I.@+x.9.o.A.S.T.#+$+$+%+&+*+=+D.R.7.x.<.d.t.{.4.i.j.-+;+/././.>+).)..+!.!._._._.m.m.m.++*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.;.W.}.P.7.o.C.,+*+$+'+)+)+!+~+$+{+,+p.o.n.c.}.s.~.]+^+/+Z.(+_+/././.).).).!.!.:+_._.m.m.m.++++*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.;.<+P.9.E.A.{+[+}+|+1+1+1+)+2+3+S.A.o.y.P.}.4+~.].^.j.v.(+5+6+/././.).).!.!.(._._.m.m.m.++++++*.*.7+5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.x.o.q.B.*+$+8+1+9+0+a+b+}+$+T.A.o.8.x.}.1.t.].c+j.v.d+e+f+g+/././.).!.!.!._._.m.m.m.++++++h+*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.x.0.p.i+*+2+j+1+0+k+a+1+}+$+l+A.p.7.:.H.1.~.].u.m+n+o+p+q+r+/././.).!.!.s+_._.w.m.m.++++++h+*.*.*.5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.t+p.A.*+u+)+1+a+v+a+w+!+#+*+A.p.7.x+y+1.z+A+u.j.B+C+D+q+g+E+/././.!.!.!._._.F+m.m.++++++h+h+*.*.&.5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ;.;.;.V.C.G+[+H+|+1+1+I+|+'+*+S.A.V.7.:.}.J+~.]+5.j.n+(+K+L+g+M+N+/././.!.(._._.m.m.m.++++++h+h+h+*.*.5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.;.;.;.O+S.*+$+}+P+)+j+'+&+G+i+Q+o.R+<.}.S+~.4.u.j.B+(+K+f+T+M+U+V+/./.!.W+_._.m.m.m.++++++h+h+X+*.*.*.5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ ;.;.R.A.=+T.#+$+$+$+[+T.S.Q+r.7.x.H.1.s.{.]+5.Y+-+Z+K+f+`+M+ @V+/././.!._._.m.m.m.++++.@h+h++@X+*.*.5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ ;.;.;.p.A.,+G+G+@@*+#@B.$@%@8.Q.x+}.S+f.].4.&@v.*@;+q+f+`+=@-@;@>@/././._._.m.m.m.++++,@h+h+'@X+*.*.*.5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.;.;.F.p.Q+D.A.U.,+A.p.R.o.y.x+H.d.s.~.]+5.)@M.(+p+f+g+!@~@-@{@]@/././._._.m.m.^@++++/@h+h+X+X+X+*.*.5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.;.;.;.9.o.o.p.p.r.V.o.8.Q.x.(@d.J+~.].^.m+v.`.Z+K+f+_@M+:@<@[@}@|@/././.N.m.m.1@++++h+h+h+X+X+2@*.*.*.5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 ;.;.x.a.7.7.9.8.7.n.x.<.H.|.S+f.].4.5.3@4@C+p+q+5@`+M+-@6@[@7@8@9@/./.m.m.m.++++++h+h+h+X+X+2@0@*.*.5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 a@;.;.<.x.b.x.x.P.b.@+}.1.S+t.b@K.5.j.v.`.c@K+f+g+M+:@-@d@e@f@g@h@/././.m.m.++++++h+h+X+X+X+X+0@*.*.*.5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 ;.;.|.}.@+}.[.<+i@|.W.s.t.3.K.5.m+L.-+(+_+f+5@`+j@-@V+k@l@8@m@n@o@/./.m.m.++++/@h+h+X+X+X+0@0@0@*.*.5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 ;.;.;.1.1.1.1.1.J+s.~.~.].4.p@q@L.-+(+p+K+f+_@E+:@r@[@e@l@g@n@s@t@/././.++++++h+h+h+X+X+X+0@0@0@*.*.*.5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 ;.;.t.s.t.t.u@~.b@].K.4.5.j.v.v.(+;+5+f+v@E+w@x@V+[@}@|@g@y@z@A@/././.++++++h+h+B@X+X+C@0@0@D@E@*.*.5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 ;.;.;.].].g.].A+h.c+5.m+/+v.-+C+Z+K+F@5@`+M+G@H@[@e@l@I@J@s@K@L@M@/./.++++,@h+h++@X+X+N@0@0@E@E@*.*.O@5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 ;.;.4.u.4.p@^.i.i.j.P@-+-+(+p+K+F@g+Q@M+:@r@;@R@7@8@g@n@o@S@T@U@/././.++h+h+h+X+X+X+0@0@0@E@E@E@*.*.5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 ;.;.j.V@j.j.)@Y+v.-+-+o+Z+e+K+f+g+T+W@:@-@V+k@e@X@g@n@Y@Z@L@M@`@ #/./.++h+h+.#X+X++#0@0@@#E@E@##*.*.-.5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 O@;.;.v.B+M.n+-+*@(+;+p+D+6+$#g+`+M+:@-@V+[@e@%#&#*#=#o@L@-#U@;#>#/./.h+h+h+X+X+X+0@0@0@E@E@E@,#*.*.*.5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 ;.;.C+(+(+(+(+c@p+K+L+f+g+T+'#)#:@-@H@d@!#l@&#~#{#Y@]#L@-#`@^#/#(#/./.h+h+X+X+X+0@0@0@E@E@_#,#,#*.*.5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 ;.;.;.p+p+e+K+K+q+f+:#r+`+E+M+N+-@V+[@e@l@8@g@n@<#[#L@-#`@}#|#(#1#/./.h+X+X+X+2#0@0@3#E@E@4#,#,#*.*.&.5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 $.;.;.L+F@q+$#5#g+6#Q@`+M+:@-@7#6@k@e@8#9#m@n@s@]#0#a#`@;#>#b#c#d#/./.X+X+X+N@0@0@0@E@E@E@,#,#,#e#*.*.5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 ;.;.g+v@v@`+`+'#E+w@:@f#7#V+[@g#e@l@&#g@n@s@o@h#L@-#;#i#j#(#k#l#m#/./.X+X+2#0@0@n#E@E@,#,#,#o#e#*.*.-.5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 ;.;.;.!@M+M+j@~@N+f#p#V+q#[@e@r#8#s#t#n@s@o@A@L@U@`@ #/#j#u#v#w#x#/./.X+2#0@0@y#E@E@E@,#,#,#e#e#*.*.*.5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 $.;.;.:@:@f#-@-@p#V+6@[@k@z#8@8@g@m@s@Y@K@h#L@A#B#^#C#D#k#E#F#G#H#/./.X+0@0@0@E@E@E@I#,#,#J#e#e#K#*.*.5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 ;.;.V+L#p#V+M#[@>@e@7@l@X@N#m@n@s@o@t@A@O#P#Q#R#S#T#1#U#V#G#H#W#/././.0@0@X#E@E@E@,#,#,#e#e#e#Y#*.*.$.5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 ;.;.[@[@Z#Z#>@e@z#%#|@8@g@n@{#s@`#S@L@O#-#Q# $C#T#.$k#V#m#x#W#+$@$/./.0@0@E@E@E@,#,#,#o#e#e##$Y#*.*.*.5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 &.;.;.e@7@l@X@8@9#N#t#n@n@s@<#t@$$L@O#`@B#%$&$j#(#*$v#m#x#H#=$-$;$/./.0@E@E@E@_#,#,#,#e#e#e#Y#Y#Y#*.*.5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 ;.;.8@8@8@>$g@9@n@=#s@Y@o@A@0#,$-#`@R#>#&$'$k#*$)$!$x#~$=$@$;${$/./.0@E@E@E@,#,#,#o#e#e#Y#Y#Y#]$*.*.-.5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 ;.;.n@9@n@{#h@y@z@`#]#A@^$L@O#/$($R#>#j#(#u#E#V#G#_$:$=$-$;${$<$/././.E@E@,#,#,#[$e#e#e#Y#Y#Y#]$*.*.*.5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 ;.;.;.s@s@<#}$o@t@A@^$L@-#|$`@R#%$|#j#1$k#d#F#G#G#2$+$3$4${$5$6$7$/./.E@_#,#,#,#e#e#e#8$Y#Y#9$]$]$*.*.5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 %.;.;.A@S@A@0#0$L@L@|$-#`@;# $>#a$(#.$k#v#V#b$c$W#d$e$f$g$h$i$j$k$/./.##,#,#,#e#e#e#l$Y#Y#Y#]$]$]$*.*.-.b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 ;.;.0$a#-#M@-#A#`@m$B#^#>#/#j#n$1#v#)$V#G#x#W#+$3$o$p$q$i$i$r$s$/./.,#,#,#t$e#e#e#Y#Y#Y#]$]$]$u$*.*.*.b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 ;.;.P#P#`@m$`@R# #>#>#j#'$(#k#v#v#F#m#G#H#W#+$v$w${$x$y$z$A$B$C$/./.,#,#[$e#e#e#K#Y#Y#D$]$]$]$E$E$*.*.b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 ;.;.;.R#R#^#%$&$S#j#(#.$u#F$v#G$V#G#H#W#d$3$@$;${$h$H$7$I$J$C$K$/././.,#e#e#e#8$Y#Y#Y#]$]$]$E$E$E$*.*.b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 %.;.;.&$a$j#T#j#(#c#k#E#v#L$M$G#x#N$O$+$-$P$p${$Q$i$j$R$B$S$T$U$V$/./.e#e#e#e#Y#Y#Y#]$]$]$W$E$E$E$*.*.X$* ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 ;.;.'$(#(#Y$F$*$v#F#F#b$G#c$Z$N$+$`$4$f$ %x$.%i$A$k$B$C$K$U$+%@%/./.e#e#l$Y#Y#Y##%]$]$W$E$E$E$$%$%*.= * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 ;.;.%%E#E#v#L$L$V#G#_$_$Z$2$O$+$e$;$&%{$<$Q$*%I$=%B$C$-%U$V$@%;%/./.e#e#Y#Y#Y#>%]$]$]$E$E$E$,%$%$%*.= * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 ;.;.V#V#!$!$G#_$H#H#Z$W#'%3$@$f$&%&%h$y$z$j$)%=%!%C$K$U$V$~%{%]%/./.e#Y#Y#Y#Y#]$]$]$^%E$E$/%$%$%$%*.= (% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 ;.;.;.G#H#H#:$Z$W#W#+$-$@$P$_%{$<$x$H$i$j$k$B$:%<%K$U$V$;%{%]%[%/./.Y#Y#Y#Y#]$]$]$W$E$E$E$$%$%$%}%*.= |% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 $.;.;.W#W#1%'%+$`$@$4$;$;${$x$x$Q$j$j$k$2%:%C$T$U$U$3%4%{%]%[%5%/./.Y#Y#Y#]$]$]$u$E$E$E$$%$%$%6%7%7%= |% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.`$-$8%@$o$;$&%{$<$9%x$i$0%j$A$s$B$C$<%a%U$V$b%{%c%]%[%d%e%f%/./.Y#]$]$]$^%E$E$E$g%$%$%$%7%7%7%= |% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.;$;$&% %{${$5$x$i$z$j$j$)%k$B$:%C$K$h%V$3%@%i%j%k%l%m%n%o%p%/./.]$]$]$]$E$E$E$q%$%$%$%7%7%7%r%= |% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.h$h$5$x$x$Q$i$0%7$j$k$J$B$C$C$K$K$U$V$b%s%{%]%[%t%u%e%v%p%w%/./.]$]$]$E$E$E$/%$%$%$%x%7%7%7%y%= |%z% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.y$H$i$i$j$j$r$k$=%J$A%!%B%K$C%U$V$b%4%{%D%[%[%5%e%f%o%E%F%G%/./.]$]$E$E$E$q%$%$%$%x%7%7%7%H%y%I%|%J% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 ;.;.;.r$A$R$J$k$B$B$:%C$K$a%U$U$V$K%4%{%{%]%[%L%M%n%N%o%O%w%P%Q%/./.W$E$E$E$,%$%$%$%$%7%7%7%R%y%y%I%|%J% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 $.;.;.2%B$B$B$S%C$B%K$h%U$T%V$K%@%i%c%]%U%V%5%e%f%o%W%X%G%Y%Z%`%/./.E$E$E$E$$%$%$% &7%7%7%.&y%y%y%I%|%J% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.C$C$-%+&a%h%U$+%@&#&@%i%i%D%$&$&[%5%m%f%%&p%O%F%Y%Y%&&*&=&/./.E$E$q%$%$%$%6%7%7%7%.&y%y%y%y%I%|%J% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.h%h%U$U$-&V$@%#&;&s%{%>&]%U%,&5%e%e%%&o%p%X%G%P%'&)&!&~&{&/./.E$$%$%$%$% &7%7%7%]&y%y%y%y%y%I%|%J% ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.V$3%~%@%@%@%;&{%]%^&[%[%L%5%e%/&f%N%W%X%(&G%Y%&&!&_&:&{&<&/./.,%$%$%$%x%7%7%7%R%y%y%y%y%y%y%I%[&J%;. ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.{%{%s%{%{%c%^&}&[%V%5%M%e%|&f%1&p%X%2&3&Y%4&`%5&~&{&6&7&8&/./.$%$%$%7%7%7%7%R%y%y%y%y%y%y%y%I%[&J%;. ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.]%$&k%}&[%[%L%5%5%e%|&9&f%p%E%0&a&G%Y%Q%&&!&b&c&{&d&e&f&f&/./.$%$%7%7%7%7%R%y%y%y%y%y%y%y%y%I%[&J%;. ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.[%t%L%5%M%d%e%|&f%f%1&p%X%X%G%G%Y%Q%&&g&!&~&h&d&7&i&;.;.;.;.;.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.= [&J%;. ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.M%e%|&|&n%f%f%%&j&O%X%a&G%k&Y%Q%*&*&b&~&{&l&;.;.;.;.;.;.;.;.;.*.*.*.*.*.7+m&O@*.*.*.*.*.*.*.= |%J%;. ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.f%f%1&p%p%X%X%n&n&G%G%Y%4&&&o&!&p&~&{&;.;.;.;.;.;.;.;.$.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 -.X$|%J%;. ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.X%X%X%2&G%G%G%k&Y%4&Q%)&!&!&~&~&;.;.;.;.;.;.;.$.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.G%G%k&P%Y%Y%Z%&&o&q&!&=&~&;.;.;.;.;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.r&r&&&&&&&o&!&~&s&t&:&;.;.;.;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.!&b&!&5&~&~&{&{&;.;.;.;.;.;.-.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.u&v&{&{&{&l&;.;.;.;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.w&d&d&7&;.;.;.;.;.%.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.x&y&;.;.;.;.;.-.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.;.;.;.;.;.-.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 ;.;.;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 z&;.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.^ #.5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.) h 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" A D A&B&x T a 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" ; ~ r ! C&U D&O E&9 z 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" | > s # d k d > 6 f F&n J G&0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" H&} , | & & # * d 7 ) I&J&z h K&0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" e D # , , , , # s + L&E&5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" c K & # # , 7 > 1 A Y M&o 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" N&s $ * $ & 1 A K 6 U w 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" P ; & = = $ { . ' j t M&O&0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" . ) > * C r # @ 6 P&Q&R&I g 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" } } s d k d s P S&Z D&x .5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" +.& > D { ~ r r s T&M v E&U&` i 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 b * ", +" 6 7 & - s # C k $ } 2 H 4 ` o z 0 5 5 5 5 5 5 5 5 5 5 b * ", +" H&@ # & & | $ * = - T&V&O&h W&i W 5 5 5 5 5 5 b * ", +" X&s , , , , , | 7 } j Z G&5 5 5 5 5 b * ", +" H&) & $ $ $ & > 1 8 Y&R F&5 ( * ", +" 6 } $ ~ * # p +.C&p , ", +" C&+ 7 = d ~ , ", +" ; ^ 1 ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/src/Mod/Surfaces/InitGui.py b/src/Mod/Surfaces/InitGui.py new file mode 100644 index 0000000000..1a614efaf7 --- /dev/null +++ b/src/Mod/Surfaces/InitGui.py @@ -0,0 +1,38 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +class SurfWorkbench ( Workbench ): + """ @brief Workbench of Ship design module. Here toolbars & icons are append. """ + from surfUtils import Paths, Translator + import SurfGui + + Icon = Paths.iconsPath() + "/Ico.png" + MenuText = str(Translator.translate("Surface tools")) + ToolTip = str(Translator.translate("Surface tools")) + + def Initialize(self): + # ToolBar + list = ["Surf_IsoCurve", "Surf_SliceCurve", "Surf_Border", "Surf_Convert"] + self.appendToolbar("Surface tools",list) + + # Menu + list = ["Surf_IsoCurve", "Surf_SliceCurve", "Surf_Border", "Surf_Convert"] + self.appendMenu("Surface tools",list) +Gui.addWorkbench(SurfWorkbench()) diff --git a/src/Mod/Surfaces/SurfGui.py b/src/Mod/Surfaces/SurfGui.py new file mode 100644 index 0000000000..9f1832bdd8 --- /dev/null +++ b/src/Mod/Surfaces/SurfGui.py @@ -0,0 +1,75 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +from PyQt4 import QtCore, QtGui +import FreeCAD, FreeCADGui, os + +class IsoCurve: + def Activated(self): + import surfISOCurve + surfISOCurve.load() + + def GetResources(self): + from surfUtils import Paths, Translator + IconPath = Paths.iconsPath() + "/IsoCurveIco.png" + MenuText = str(Translator.translate('Get ISO curve')) + ToolTip = str(Translator.translate('Get ISO curve from surface')) + return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} + +class SliceCurve: + def Activated(self): + import surfSlice + surfSlice.load() + + def GetResources(self): + from surfUtils import Paths, Translator + IconPath = Paths.iconsPath() + "/SliceIco.png" + MenuText = str(Translator.translate('Get surface slice')) + ToolTip = str(Translator.translate('Get surface intersection with coordinates planes')) + return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} + +class Border: + def Activated(self): + import surfBorder + surfBorder.load() + + def GetResources(self): + from surfUtils import Paths, Translator + IconPath = Paths.iconsPath() + "/BorderIco.png" + MenuText = str(Translator.translate('Get border')) + ToolTip = str(Translator.translate('Get edges from objects')) + return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} + +class Convert: + def Activated(self): + import surfConvert + surfConvert.load() + + def GetResources(self): + from surfUtils import Paths, Translator + IconPath = Paths.iconsPath() + "/ConvertIco.png" + MenuText = str(Translator.translate('Convert to 4 sides surface')) + ToolTip = str(Translator.translate('Convert a surface (or couple of them) into 4 sides surface')) + return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} + +FreeCADGui.addCommand('Surf_IsoCurve', IsoCurve()) +FreeCADGui.addCommand('Surf_SliceCurve', SliceCurve()) +FreeCADGui.addCommand('Surf_Border', Border()) +FreeCADGui.addCommand('Surf_Convert', Convert()) diff --git a/src/Mod/Surfaces/surfBorder/__init__.py b/src/Mod/Surfaces/surfBorder/__init__.py new file mode 100644 index 0000000000..f3747dbe93 --- /dev/null +++ b/src/Mod/Surfaces/surfBorder/__init__.py @@ -0,0 +1,48 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD +import FreeCADGui +from FreeCAD import Base +from FreeCAD import Part + +# Qt libraries +from PyQt4 import QtGui,QtCore + +# Main object +from surfUtils import Geometry, Translator + +def load(): + """ Loads the tool. Getting the border don't require any + option, so can be executed directly without any task panel. """ + edges = Geometry.getBorders() + if not edges: + wrn = Translator.translate("Can't get any edge from selected objects") + FreeCAD.Console.PrintWarning(wrn) + return + obj = edges[0] + for i in range(0,len(edges)): + obj = obj.oldFuse(edges[i]) + Part.show(obj) + objs = FreeCAD.ActiveDocument.Objects + obj = objs[len(objs)-1] + obj.Label = 'Border' + diff --git a/src/Mod/Surfaces/surfConvert/Preview.py b/src/Mod/Surfaces/surfConvert/Preview.py new file mode 100644 index 0000000000..2ee908cb87 --- /dev/null +++ b/src/Mod/Surfaces/surfConvert/Preview.py @@ -0,0 +1,79 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD,FreeCADGui +from FreeCAD import Base +from FreeCAD import Part +# FreeCADShip modules +from surfUtils import Paths +from surfUtils import Geometry +from surfUtils import Math + +class Preview(object): + def __init__(self,U,V): + """ Constructor. + @param U Part::topoShape object that contains the U direction edge. + @param V Part::topoShape object that contains the V direction edge. + """ + self.objU = None + self.objV = None + self.U = U + self.V = V + self.buildObjs() + self.setProperties() + + def buildObjs(self): + """ Builds objects to show. + """ + Part.show(self.U) + objs = FreeCAD.ActiveDocument.Objects + self.objU = objs[len(objs)-1] + Part.show(self.V) + objs = FreeCAD.ActiveDocument.Objects + self.objV = objs[len(objs)-1] + + def setProperties(self): + """ Set colour of lines and width. + """ + self.objU.Label = 'U direction' + self.objV.Label = 'V direction' + # Get GUI objects instance + objU = FreeCADGui.ActiveDocument.getObject(self.objU.Name) + objV = FreeCADGui.ActiveDocument.getObject(self.objV.Name) + objU.LineColor = (0.0,0.0,1.0) + objU.LineWidth = 5.00 + objV.LineColor = (1.0,0.0,0.0) + objV.LineWidth = 5.00 + + def clean(self,Destroy=True): + """ Erase all sections from screen. + @param self Auto call object. + @param Destroy True if the object must be destroyed, False otherwise. + """ + if (not self.objU) or (not self.objV): + return + FreeCADGui.ActiveDocument.hide(self.objU.Name) + FreeCADGui.ActiveDocument.hide(self.objV.Name) + if Destroy: + FreeCAD.ActiveDocument.removeObject(self.objU.Name) + FreeCAD.ActiveDocument.removeObject(self.objV.Name) + self.objU=None + self.objV=None diff --git a/src/Mod/Surfaces/surfConvert/TaskPanel.py b/src/Mod/Surfaces/surfConvert/TaskPanel.py new file mode 100644 index 0000000000..49ed1c6e10 --- /dev/null +++ b/src/Mod/Surfaces/surfConvert/TaskPanel.py @@ -0,0 +1,576 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# Alicia Lapique <> +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# Standart libraries +import math +# Import FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui +# Import Qt libraries +from PyQt4 import QtGui,QtCore +# Import surface module utils +from surfUtils import Paths, Geometry, Math, Translator +# Import tool utils +import Preview + +class TaskPanel: + def __init__(self): + """ Class constructor, that loads the user interface and set + minimum data as empty values. + """ + self.ui = Paths.modulePath() + "/surfConvert/TaskPanel.ui" + self.objs = [] + self.edges = [] + self.faces = [] + self.surf = None + self.preview = None + + def accept(self): + """ Method called when accept button is clicked. + @return True if all gone right, False otherwise. + """ + if not self.surf: + return False + App.Part.show(self.surf.toShape()) + objs = App.ActiveDocument.Objects + obj = objs[len(objs)-1] + obj.Label = 'Surface' + self.preview.clean() + return True + + def reject(self): + """ Method called when cancel button is clicked. + @return True if all gone right, False otherwise. + """ + if self.preview : + self.preview.clean() + return True + + def clicked(self, index): + pass + + def open(self): + pass + + def needsFullSpace(self): + return True + + def isAllowedAlterSelection(self): + return False + + def isAllowedAlterView(self): + return True + + def isAllowedAlterDocument(self): + return False + + def helpRequested(self): + pass + + def setupUi(self): + """ Setups the user interface taking and storing all controls. + """ + mw = self.getMainWindow() + form = mw.findChild(QtGui.QWidget, "TaskPanel") + form.nU = form.findChild(QtGui.QSpinBox, "nU") + form.nV = form.findChild(QtGui.QSpinBox, "nV") + form.deg = form.findChild(QtGui.QSpinBox, "deg") + self.form = form + # Initial values + if self.initValues(): + return True + self.retranslateUi() + # Connect Signals and Slots + QtCore.QObject.connect(form.nU, QtCore.SIGNAL("valueChanged(int)"), self.onNUV) + QtCore.QObject.connect(form.nV, QtCore.SIGNAL("valueChanged(int)"), self.onNUV) + QtCore.QObject.connect(form.deg, QtCore.SIGNAL("valueChanged(int)"), self.onNUV) + return False + + def getMainWindow(self): + """ returns the main window """ + # using QtGui.qApp.activeWindow() isn't very reliable because if another + # widget than the mainwindow is active (e.g. a dialog) the wrong widget is + # returned + toplevel = QtGui.qApp.topLevelWidgets() + for i in toplevel: + if i.metaObject().className() == "Gui::MainWindow": + return i + raise Exception("No main window found") + + def initValues(self): + """ Setup initial values. """ + # Objects to work + self.objs = Gui.Selection.getSelection() + if not self.objs: + msg = Translator.translate("4 connected edges and at least 1 surface must be selected (Any object has been selected)") + App.Console.PrintError(msg) + return True + if len(self.objs) < 5: + msg = Translator.translate("4 connected edges and at least 1 surface must be selected (Less than 5 objects selected)") + App.Console.PrintError(msg) + return True + # Separate edge objects and face objects. + if self.getEdgesFaces(): + return True + # Ensure that closed object given + if not self.isClosed(): + return True + # Sort edges (as connect chain) + if self.sortEdges(): + return True + # First surface draft + if self.getPoints(): + return True + if self.createSurface(): + return True + # On screen data + self.preview = Preview.Preview(self.edges[0],self.edges[1]) + msg = Translator.translate("Ready to work") + App.Console.PrintMessage(msg) + return False + + def retranslateUi(self): + """ Set user interface locale strings. + """ + self.form.setWindowTitle(Translator.translate("Convert to 4 side surface")) + nUString = Translator.translate("Points at U") + self.form.findChild(QtGui.QLabel, "nULabel").setText("" + nUString + "") + nVString = Translator.translate("Points at V2") + self.form.findChild(QtGui.QLabel, "nVLabel").setText("" + nVString + "") + self.form.findChild(QtGui.QLabel, "degLabel").setText(Translator.translate("Surface degree")) + + def onNUV(self, value): + """ Answer to nU points or nV points modification events. + @param value Changed value. + """ + if self.getPoints(): + return + if self.createSurface(): + return + self.form.deg.setMaximum(self.surf.MaxDegree) + + def getEdgesFaces(self): + """ Returns two arrays filled with the edges and faces selected. + @return True if error happens. False otherwise + """ + self.edges = [] + self.faces = [] + for i in range(0,len(self.objs)): + objFaces = Geometry.getFaces(self.objs[i]) + if not objFaces: + objEdges = Geometry.getEdges([self.objs[i]]) + if not objEdges: + msg = Translator.translate("4 connected edges and at least 1 surface must be selected (Any edge found)") + App.Console.PrintError(msg) + return True + for j in range(0, len(objEdges)): + self.edges.append(objEdges[j]) + else: + for j in range(0, len(objFaces)): + self.faces.append(objFaces[j]) + if len(self.edges) != 4: + msg = Translator.translate("4 connected edges and at least 1 surface must be selected (More/less edges not allowed)") + App.Console.PrintError(msg) + return True + return False + + def isClosed(self): + """ Returns if the edges objects are a closed curve. + @return True if a closed curve can be built with edge objects. + False otherwise + """ + edges = self.edges + for i in range(0,len(edges)): + edge = edges[i] + vertex1 = edge.Vertexes + count = [0,0] + for j in range(0,len(edges)): + if j== i: + continue + vertex2 = edges[j].Vertexes + for k in range(0,2): + if Math.isSameVertex(vertex1[0],vertex2[k]): + count[0] = count[0]+1 + if Math.isSameVertex(vertex1[1],vertex2[k]): + count[1] = count[1]+1 + if count != [1,1]: + msg = Translator.translate("4 Edges curve must be closed") + App.Console.PrintError(msg) + return False + return True + + def sortEdges(self): + """ Sort the edges by their connection points. Also gives if + an edge is ill oriented (thir connection point is the end + point, not the starting point), with True when is good oriented, + and False otherwise. + @return True if error happens. False otherwise + """ + edges = self.edges + self.edges = [edges[0]] + self.direction = [True] + Vertex = self.edges[0].Vertexes[1] + for i in range(0,len(edges)-1): + for j in range(0,len(edges)): + if self.edges[i] == edges[j]: + continue + Vertexes = edges[j].Vertexes + if Math.isSameVertex(Vertex,Vertexes[0]): + Vertex = Vertexes[1] + self.edges.append(edges[j]) + self.direction.append(True) + break + if Math.isSameVertex(Vertex,Vertexes[1]): + Vertex = Vertexes[0] + self.edges.append(edges[j]) + self.direction.append(False) + break + return False + + def getPoints(self): + """ Get points that will make the surface. + @return True if error happens. False otherwise. + """ + if self.divideEdges(): + return True + if self.samplePoints(): + return True + if self.getSurfacePoints(): + return True + while self.redistributePointsU(): + continue + while self.redistributePointsV(): + continue + return False + + + def divideEdges(self): + """ Get points along the edges. + @return True if error happens. False otherwise. + """ + # Get curves from edges + curves=[] + for i in range(0,len(self.edges)): + curves.append(self.edges[i].Curve) + # Get number of divisions at U,V + nU = self.form.nU.value() + nV = self.form.nV.value() + # Get points at U direction (length parameter will used) + vertexes = self.edges[0].Vertexes + u = curves[0].parameter(App.Base.Vector(vertexes[0].X, vertexes[0].Y, vertexes[0].Z)) + uEnd = curves[0].parameter(App.Base.Vector(vertexes[1].X, vertexes[1].Y, vertexes[1].Z)) + du = (uEnd - u) / (nU-1.0) + Points0=[] + for i in range(0, nU): + knots = curves[0].KnotSequence + point0 = curves[0].value(u) + Points0.append(point0) + u = u + du + vertexes = self.edges[2].Vertexes + u = curves[2].parameter(App.Base.Vector(vertexes[1].X, vertexes[1].Y, vertexes[1].Z)) + uEnd = curves[2].parameter(App.Base.Vector(vertexes[0].X, vertexes[0].Y, vertexes[0].Z)) + du = (uEnd - u) / (nU-1.0) + Points2=[] + for i in range(0, nU): + knots = curves[2].KnotSequence + point2 = curves[2].value(u) + Points2.append(point2) + u = u + du + # Get points at V direction (length parameter will used) + vertexes = self.edges[1].Vertexes + v = curves[1].parameter(App.Base.Vector(vertexes[0].X, vertexes[0].Y, vertexes[0].Z)) + vEnd = curves[1].parameter(App.Base.Vector(vertexes[1].X, vertexes[1].Y, vertexes[1].Z)) + dv = (vEnd - v) / (nV-1.0) + Points1=[] + for i in range(0, nV): + knots = curves[1].KnotSequence + point1 = curves[1].value(v) + Points1.append(point1) + v = v + dv + vertexes = self.edges[3].Vertexes + v = curves[3].parameter(App.Base.Vector(vertexes[1].X, vertexes[1].Y, vertexes[1].Z)) + vEnd = curves[3].parameter(App.Base.Vector(vertexes[0].X, vertexes[0].Y, vertexes[0].Z)) + dv = (vEnd - v) / (nV-1.0) + Points3=[] + for i in range(0, nV): + knots = curves[3].KnotSequence + point3 = curves[3].value(v) + Points3.append(point3) + v = v + dv + # Store points arrays + self.EdgePoints=[Points0,Points1,Points2,Points3] + # Ensure that is good oriented + for i in range(0,4): + if not self.direction[i]: + self.EdgePoints[i].reverse() + return False + + def samplePoints(self): + """ Builds a set of points between the edges points. + @return True if error happens. False otherwise. + """ + # We will advance in V direction, getting point columns, so two + # points columns are knowed from U starting and end curves + startU = self.EdgePoints[0] + endU = self.EdgePoints[2] + endV = self.EdgePoints[1] + startV = self.EdgePoints[3] + self.sample = [startU] + # Take two guides froms the starting and end U curves. All + # sample points will be reprojects with this guides + Guide0 = startU[len(startU)-1] - startU[0] + Length0 = Guide0.Length + Guide0.normalize() + Guide1 = endU[len(endU)-1] - endU[0] + Length1 = Guide1.Length + Guide1.normalize() + # Loop over columns to get + for i in range(1,len(startV)-1): + # Get the guide + Guide = endV[i] - startV[i] + Length = Guide.Length + Guide.normalize() + # Loop over points of the column + points = [] + points.append(startV[i]) + for j in range(1,len(startU)-1): + # Get deviation at starting U + v0 = (startU[j] - startU[0]).multiply(1.0 / Length0) - Guide0 + # Get deviation at ending U + v1 = (endU[j] - endU[0]).multiply(1.0 / Length1) - Guide1 + # Get factor + factor = float(i) / len(startV) + # Interpolate + v = (v0.multiply(1.0-factor) + v1.multiply(factor) + Guide).multiply(Length) + points.append(startV[i]+v) + points.append(endV[i]) + self.sample.append(points) + # Append las points column (end U curve) + self.sample.append(endU) + return False + + def getSurfacePoints(self): + """ Get the points of the surface. + @return True if error happens. False otherwise. + """ + surf = self.faces[0].Surface + self.uv=[] + self.points=[] + self.surfacesID=[] + for j in range(0,len(self.sample)): + points=[] + uv=[] + surfacesID=[] + for k in range(0,len(self.sample[j])): + UV = surf.parameter(self.sample[j][k]) + umax = surf.UKnotSequence[len(surf.UKnotSequence)-1] + umin = surf.UKnotSequence[0] + vmax = surf.VKnotSequence[len(surf.VKnotSequence)-1] + vmin = surf.VKnotSequence[0] + uv.append([UV[0],UV[1]]) + uv[k][0] = max(min(uv[k][0],umax), umin) + uv[k][1] = max(min(uv[k][1],vmax), vmin) + point = surf.value(uv[k][0], uv[k][1]) + points.append(point) + surfacesID.append(0) + self.uv.append(uv) + self.points.append(points) + self.surfacesID.append(surfacesID) + + for i in range(1,len(self.faces)): + surf = self.faces[i].Surface + for j in range(0,len(self.sample)): + for k in range(0,len(self.sample[j])): + UV = surf.parameter(self.sample[j][k]) + uv = [UV[0],UV[1]] + UV = uv[:] + umax = surf.UKnotSequence[len(surf.UKnotSequence)-1] + umin = surf.UKnotSequence[0] + vmax = surf.VKnotSequence[len(surf.VKnotSequence)-1] + vmin = surf.VKnotSequence[0] + UV[0] = uv[0]/(surf.UKnotSequence[len(surf.UKnotSequence)-1]) + UV[1] = uv[1]/(surf.VKnotSequence[len(surf.VKnotSequence)-1]) + ru=abs(UV[0]-0.5) + rv=abs(UV[1]-0.5) + surf2 = self.faces[self.surfacesID[j][k]].Surface + UV2 = surf2.parameter(self.sample[j][k]) + uv2 = [UV2[0],UV2[1]] + UV2 = uv2[:] + umax2 = surf2.UKnotSequence[len(surf2.UKnotSequence)-1] + umin2 = surf2.UKnotSequence[0] + vmax2 = surf2.VKnotSequence[len(surf2.VKnotSequence)-1] + vmin2 = surf2.VKnotSequence[0] + UV2[0] = uv2[0]/(surf2.UKnotSequence[len(surf2.UKnotSequence)-1]) + UV2[1] = uv2[1]/(surf2.VKnotSequence[len(surf2.VKnotSequence)-1]) + ru2=abs(UV2[0]-0.5) + rv2=abs(UV2[1]-0.5) + point=surf.value(UV[0],UV[1]) + point2=surf2.value(UV2[0],UV2[1]) + dif= math.sqrt((point[0]-self.sample[j][k][0])**2+(point[1]-self.sample[j][k][1])**2+(point[2]-self.sample[j][k][2])**2) + dif2= math.sqrt((point2[0]-self.sample[j][k][0])**2+(point2[1]-self.sample[j][k][1])**2+(point2[2]-self.sample[j][k][2])**2) + nU = len(self.points) + nV = len(self.points[j]) + deltaU = 1/(2*nU) + deltaV = 1/(2*nV) + if ((ru < deltaU) and (rv < deltaV)): + uv[0] = max(min(uv[0],umax), umin) + uv[1] = max(min(uv[1],vmax), vmin) + self.uv[j][k]=uv + point = surf.value(uv[0], uv[1]) + self.points[j][k]=point + self.surfacesID[j][k] = i + elif (dif2 > dif): + uv[0] = max(min(uv[0],umax), umin) + uv[1] = max(min(uv[1],vmax), vmin) + self.uv[j][k]=uv + point = surf.value(uv[0], uv[1]) + self.points[j][k]=point + self.surfacesID[j][k] = i + + return False + + def redistributePointsU(self): + """ Redistributes the points of the surface (U direction). + @return False if all points are right placed. True otherwise. + """ + #Redistribute columns + for i in range(0,len(self.points)): + sumdif=0.0 + difs=[] + for j in range(1,len(self.points[i])): + vdif=self.points[i][j]-self.points[i][j-1] + dif=vdif.Length + sumdif=sumdif+dif + difs.append(dif) + for k in range(0,len(difs)): + if self.surfacesID[i][k] != self.surfacesID[i][k+1]: + if difs[k]>=(2*sumdif/len(difs)): + self.points[i][k][0]=self.points[i][k][0]+0.33*(self.points[i][k+1][0]-self.points[i][k][0]) + self.points[i][k][1]=self.points[i][k][1]+0.33*(self.points[i][k+1][1]-self.points[i][k][1]) + self.points[i][k][2]=self.points[i][k][2]+0.33*(self.points[i][k+1][2]-self.points[i][k][2]) + self.points[i][k+1][0]=self.points[i][k+1][0]-0.33*(self.points[i][k+1][0]-self.points[i][k][0]) + self.points[i][k+1][1]=self.points[i][k+1][1]-0.33*(self.points[i][k+1][1]-self.points[i][k][1]) + self.points[i][k+1][2]=self.points[i][k+1][2]-0.33*(self.points[i][k+1][2]-self.points[i][k][2]) + surf1 = self.faces[self.surfacesID[i][k]].Surface + surf2 = self.faces[self.surfacesID[i][k+1]].Surface + uv = surf1.parameter(self.points[i][k]) + self.uv[i][k] = [uv[0], uv[1]] + uv = surf2.parameter(self.points[i][k+1]) + self.uv[i][k+1] = [uv[0], uv[1]] + self.points[i][k]=surf1.value(self.uv[i][k][0],self.uv[i][k][1]) + self.points[i][k+1]=surf2.value(self.uv[i][k+1][0],self.uv[i][k+1][1]) + return True + break + continue + if difs[k]>=(2*sumdif/len(difs)): + self.uv[i][k][0]=self.uv[i][k][0]+0.33*(self.uv[i][k+1][0]-self.uv[i][k][0]) + self.uv[i][k][1]=self.uv[i][k][1]+0.33*(self.uv[i][k+1][1]-self.uv[i][k][1]) + self.uv[i][k+1][0]=self.uv[i][k+1][0]-0.33*(self.uv[i][k+1][0]-self.uv[i][k][0]) + self.uv[i][k+1][1]=self.uv[i][k+1][1]-0.33*(self.uv[i][k+1][1]-self.uv[i][k][1]) + surf = self.faces[self.surfacesID[i][k]].Surface + self.points[i][k] = surf.value(self.uv[i][k][0], self.uv[i][k][1]) + self.points[i][k+1] = surf.value(self.uv[i][k+1][0], self.uv[i][k+1][1]) + return True + break + return False + def redistributePointsV(self): + """ Redistributes the points of the surface (V direction). + @return False if all points are right placed. True otherwise. + """ + #Redistribute files + for i in range(0,len(self.points[0])): + sumdif=0 + difs=[] + for j in range(1,len(self.points)): + vdif=self.points[j][i]-self.points[j-1][i] + dif=vdif.Length + sumdif=sumdif+dif + difs.append(dif) + for k in range(0,len(difs)): + if self.surfacesID[k][i] != self.surfacesID[k+1][i]: + if difs[k]>=(2*sumdif/len(difs)): + self.points[k][i][0]=self.points[k][i][0]+0.33*(self.points[k+1][i][0]-self.points[k][i][0]) + self.points[k][i][1]=self.points[k][i][1]+0.33*(self.points[k+1][i][1]-self.points[k][i][1]) + self.points[k][i][2]=self.points[k][i][2]+0.33*(self.points[k+1][k+1][2]-self.points[k][i][2]) + self.points[k+1][i][0]=self.points[k+1][i][0]-0.33*(self.points[k+1][i][0]-self.points[k][i][0]) + self.points[k+1][i][1]=self.points[k+1][i][1]-0.33*(self.points[k+1][i][1]-self.points[k][i][1]) + self.points[k+1][i][2]=self.points[k+1][i][2]-0.33*(self.points[k+1][i][2]-self.points[k][i][2]) + surf1 = self.faces[self.surfacesID[k][i]].Surface + surf2 = self.faces[self.surfacesID[k+1][i]].Surface + uv = surf1.parameter(self.points[k][i]) + self.uv[k][i] = [uv[0], uv[1]] + uv = surf2.parameter(self.points[k+1][i]) + self.uv[k+1][i] = [uv[0], uv[1]] + self.points[k][i]=surf1.value(self.uv[k][i][0],self.uv[k][i][1]) + self.points[k+1][i]=surf2.value(self.uv[k+1][i][0],self.uv[k+1][i][1]) + return True + break + continue + if difs[k]>=(2*sumdif/len(difs)): + self.uv[k][i][0]=self.uv[k][i][0]+0.33*(self.uv[k+1][i][0]-self.uv[k][i][0]) + self.uv[k][i][1]=self.uv[k][i][1]+0.33*(self.uv[k+1][i][1]-self.uv[k][i][1]) + self.uv[k+1][i][0]=self.uv[k+1][i][0]-0.33*(self.uv[k+1][i][0]-self.uv[k][i][0]) + self.uv[k+1][i][1]=self.uv[k+1][i][1]-0.33*(self.uv[k+1][i][1]-self.uv[k][i][1]) + surf = self.faces[self.surfacesID[k][i]].Surface + self.points[k][i] = surf.value(self.uv[k][i][0], self.uv[k][i][1]) + self.points[k+1][i] = surf.value(self.uv[k+1][i][0], self.uv[k+1][i][1]) + return True + break + return False + + def createSurface(self): + """ Generates the BSpline surface. + @return False if all gone right. True otherwise. + """ + # Create a (1 x 1) plane with (nU x nV) knots + self.surf = App.Part.BSplineSurface() + nU = len(self.points) + nV = len(self.points[0]) + for i in range(1,nU-1): + u = i / float(nU-1) + self.surf.insertUKnot(u,i,0.000001) + for i in range(1,nV-1): + v = i / float(nV-1) + self.surf.insertVKnot(v,i,0.000001) + # Reposition points of surface + for i in range(0,nU): + for j in range(0,nV): + u = i / float(nU-1) + v = j / float(nV-1) + point = self.points[i][j] + self.surf.movePoint(u,v,point,i+1,i+1,j+1,j+1) + # Reaconditionate surface + self.surf.exchangeUV() + deg = self.form.deg.value() + if (deg > 1) and (deg < self.surf.MaxDegree): + self.surf.increaseDegree(deg,deg) + return False + +def createTask(): + """ Create a task panel. + @return Task panel. + """ + panel = TaskPanel() + Gui.Control.showDialog(panel) + if panel.setupUi(): + Gui.Control.closeDialog(panel) + return None + return panel diff --git a/src/Mod/Surfaces/surfConvert/TaskPanel.ui b/src/Mod/Surfaces/surfConvert/TaskPanel.ui new file mode 100644 index 0000000000..73c66e916f --- /dev/null +++ b/src/Mod/Surfaces/surfConvert/TaskPanel.ui @@ -0,0 +1,107 @@ + + + TaskPanel + + + + 0 + 0 + 307 + 268 + + + + Convert surface + + + + + + + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Ubuntu'; font-size:11pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#0000ff;">Points at U</span></p></body></html> + + + + + + + 4 + + + 10000 + + + + + + + <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> +<html><head><meta name="qrichtext" content="1" /><style type="text/css"> +p, li { white-space: pre-wrap; } +</style></head><body style=" font-family:'Ubuntu'; font-size:11pt; font-weight:400; font-style:normal;"> +<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-weight:600; color:#ff0000;">Points at V</span></p></body></html> + + + + + + + 4 + + + 10000 + + + + + + + Surface degree + + + + + + + 1 + + + 25 + + + 3 + + + + + + + Qt::Vertical + + + QSizePolicy::Fixed + + + + 20 + 15 + + + + + + + + + + + + + diff --git a/src/Mod/Surfaces/surfConvert/__init__.py b/src/Mod/Surfaces/surfConvert/__init__.py new file mode 100644 index 0000000000..c104e04e8f --- /dev/null +++ b/src/Mod/Surfaces/surfConvert/__init__.py @@ -0,0 +1,34 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD +import FreeCADGui + +# Qt libraries +from PyQt4 import QtGui,QtCore + +# Main object +import TaskPanel +from surfUtils import Paths + +def load(): + """ Loads the tool """ + TaskPanel.createTask() diff --git a/src/Mod/Surfaces/surfISOCurve/PointTracker.py b/src/Mod/Surfaces/surfISOCurve/PointTracker.py new file mode 100644 index 0000000000..0796bab732 --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/PointTracker.py @@ -0,0 +1,85 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui +import Draft +from FreeCAD import Vector +# Qt library +from PyQt4 import QtGui,QtCore +# Pivy +import pivy +from pivy import coin +from pivy.coin import * +# Module +from surfUtils import Paths +from surfUtils import Geometry +from surfISOCurve import Preview + +class PointTracker: + def __init__(self,view,task): + self.view=view + self.task=task + task.tracker = self + self.callback = self.view.addEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),self.mouseButton) + self.callbackMove = self.view.addEventCallbackPivy(SoLocation2Event.getClassTypeId(),self.mouseMove) + + def mouseMove(self, event_cb): + event = event_cb.getEvent() + surf = self.task.surf + if not surf: + return + # Get screen point + screen = event.getPosition() + ctrl = event.wasCtrlDown() + # Get snapped object if exist, else the screen point will used + point = Gui.Snapper.snap(screen, ctrl) + + def mouseButton(self, event_cb): + event = event_cb.getEvent() + if event.getState() != coin.SoMouseButtonEvent.DOWN: + return + surf = self.task.surf + if not surf: + return + # Get screen point + screen = event.getPosition() + ctrl = event.wasCtrlDown() + # Get snapped object if exist, else the screen point will used + point = Gui.Snapper.snap(screen, ctrl) + if not point: + point = self.view.getPoint(screen[0],screen[1]) + # Get the nearest surface point parameter + uv = surf.parameter(point) + uv = [uv[0], uv[1]] + uv[0] = uv[0] / surf.UKnotSequence[len(surf.UKnotSequence)-1] + uv[0] = max(0, min(uv[0], 1)) + uv[1] = uv[1] / surf.VKnotSequence[len(surf.VKnotSequence)-1] + uv[1] = max(0, min(uv[1], 1)) + # Set it into the task panel + self.task.setUV(uv[self.task.dirId]) + + def close(self): + # Switch off snapping + Gui.Snapper.off() + # Remove callback (Program crash otherwise) + self.view.removeEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),self.callback) + self.view.removeEventCallbackPivy(SoLocation2Event.getClassTypeId(),self.callbackMove) diff --git a/src/Mod/Surfaces/surfISOCurve/Preview.py b/src/Mod/Surfaces/surfISOCurve/Preview.py new file mode 100644 index 0000000000..cd8562d4a5 --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/Preview.py @@ -0,0 +1,122 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD,FreeCADGui +from FreeCAD import Base +from FreeCAD import Part +# FreeCADShip modules +from surfUtils import Paths +from surfUtils import Geometry +from surfUtils import Math + +class Preview(object): + def __init__(self): + """ Constructor. + @param self Auto call object. + @note Start it as unactive + """ + self.obj = None + self.reinit() + + def reinit(self): + """ Reinitializate drawer. + @param self Auto call object. + """ + self.clean() + self.obj = None + + def update(self, surf, direction, uv): + """ Update the 3D view printing curve. + @param self Auto call object. + @param surf Surf where get the curve. + @param direction 0 if u direction, 1 if v. + @param uv Curve uv index, between 0 and 1. + @return Curve from object (as Part::Feature). + """ + # Errors + if not surf: + return None + # Get curve + if direction == 0: + curve = self.getU(surf, uv) + elif direction == 1: + curve = self.getV(surf, uv) + else: + return None + # Draw at 3D view + self.clean() + Part.show(curve.toShape()) + objs = FreeCAD.ActiveDocument.Objects + self.obj = objs[len(objs)-1] + self.obj.Label = 'surfISOCurve' + return self.obj + + def getU(self, surf, uv): + """ Get U curve from object. + @param self Auto call object. + @param surf Surf where get the curve. + @param uv Curve uv index, between 0 and 1. + @return Curve from object. + """ + # Errors + if not surf: + return None + if (uv < 0.0) or (uv > 1.0): + return None + # Get UV data + knots = surf.UKnotSequence + id0 = knots[0] + id1 = knots[len(knots)-1] + # Get curve + curve = surf.uIso(id0 + uv*(id1-id0)) + return curve + + def getV(self, surf, uv): + """ Get U curve from object. + @param self Auto call object. + @param surf Surf where get the curve. + @param uv Curve uv index, between 0 and 1. + @return Curve from object. + """ + # Errors + if not surf: + return None + if (uv < 0.0) or (uv > 1.0): + return None + # Get UV data + knots = surf.VKnotSequence + id0 = knots[0] + id1 = knots[len(knots)-1] + # Get curve + curve = surf.vIso(id0 + uv*(id1-id0)) + return curve + + def clean(self,Destroy=True): + """ Erase all sections from screen. + @param self Auto call object. + @param Destroy True if the object must be destroyed, False otherwise. + """ + if not self.obj: + return + FreeCADGui.ActiveDocument.hide(self.obj.Name) + if Destroy: + FreeCAD.ActiveDocument.removeObject(self.obj.Name) + self.obj=None diff --git a/src/Mod/Surfaces/surfISOCurve/TaskPanel.py b/src/Mod/Surfaces/surfISOCurve/TaskPanel.py new file mode 100644 index 0000000000..2361d08242 --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/TaskPanel.py @@ -0,0 +1,165 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui +# Qt library +from PyQt4 import QtGui,QtCore +# Module +from surfUtils import Paths, Geometry, Math, Translator +import Preview +import PointTracker + +class TaskPanel: + def __init__(self): + self.ui = Paths.modulePath() + "/surfISOCurve/TaskPanel.ui" + self.preview = Preview.Preview() + self.tracker = None + + def accept(self): + if not self.obj: + return True + self.obj.Label = 'ISOCurve' + self.close() + return True + + def reject(self): + self.preview.clean() + self.close() + return True + + def clicked(self, index): + pass + + def open(self): + pass + + def needsFullSpace(self): + return True + + def isAllowedAlterSelection(self): + return False + + def isAllowedAlterView(self): + return True + + def isAllowedAlterDocument(self): + return False + + def helpRequested(self): + pass + + def setupUi(self): + mw = self.getMainWindow() + form = mw.findChild(QtGui.QWidget, "TaskPanel") + form.direction = form.findChild(QtGui.QComboBox, "direction") + form.uv = form.findChild(QtGui.QSlider, "uv") + form.uvText = form.findChild(QtGui.QDoubleSpinBox, "uvText") + self.form = form + # Initial values + if self.initValues(): + return True + self.obj = self.preview.update(self.surf, self.dirId, self.uv) + self.retranslateUi() + # Connect Signals and Slots + QtCore.QObject.connect(form.direction, QtCore.SIGNAL("activated(QString)"), self.selectDirection) + QtCore.QObject.connect(form.uv, QtCore.SIGNAL("valueChanged(int)"), self.onUVSlider) + QtCore.QObject.connect(form.uvText, QtCore.SIGNAL("valueChanged(double)"), self.onUVText) + + def getMainWindow(self): + "returns the main window" + # using QtGui.qApp.activeWindow() isn't very reliable because if another + # widget than the mainwindow is active (e.g. a dialog) the wrong widget is + # returned + toplevel = QtGui.qApp.topLevelWidgets() + for i in toplevel: + if i.metaObject().className() == "Gui::MainWindow": + return i + raise Exception("No main window found") + + def selectDirection(self): + self.dirId = self.form.direction.currentIndex() + self.obj = self.preview.update(self.surf, self.dirId, self.uv) + if not self.obj: + msg = Translator.translate("Can't get the curve from selected object") + App.Console.PrintWarning(msg) + + def onUVSlider(self, value): + uv = self.form.uv.value() + uv = uv/(float(self.form.uv.maximum())) + self.setUV(uv) + + def onUVText(self, value): + uv = self.form.uvText.value() + self.setUV(uv) + + def setUV(self, uv): + self.form.uv.setValue(uv*self.form.uv.maximum()) + self.form.uvText.setValue(uv) + self.uv = uv + if not self.surf: + return + self.obj = self.preview.update(self.surf, self.dirId, self.uv) + if not self.obj: + msg = Translator.translate("Can't get the curve from selected object") + App.Console.PrintWarning(msg) + + def initValues(self): + self.obj = None + self.dirId = 0 + self.uv = 0 + self.surf = None + self.selObj = Geometry.getSelectedObj() + if not self.selObj: + msg = Translator.translate("1 surface must be selected (Any object has been selected)") + App.Console.PrintError(msg) + return True + self.surf = Geometry.getSelectedSurface() + if not self.surf: + msg = Translator.translate("1 surface must be selected (Any face object found into selected objects)") + App.Console.PrintError(msg) + return True + msg = Translator.translate("Ready to work") + App.Console.PrintMessage(msg) + return False + + def retranslateUi(self): + """ Set user interface locale strings. + """ + self.form.setWindowTitle(Translator.translate("Get surface ISO curve")) + self.form.direction.setItemText(0, Translator.translate("U direction")) + self.form.direction.setItemText(1, Translator.translate("V direction")) + + def close(self): + """ Destroy all dependant objects + @param self Main object. + """ + if self.tracker: + self.tracker.close() + +def createTask(): + panel = TaskPanel() + Gui.Control.showDialog(panel) + if panel.setupUi(): + Gui.Control.closeDialog(panel) + return None + tracker = PointTracker.PointTracker(Gui.ActiveDocument.ActiveView, panel) + return panel diff --git a/src/Mod/Surfaces/surfISOCurve/TaskPanel.ui b/src/Mod/Surfaces/surfISOCurve/TaskPanel.ui new file mode 100644 index 0000000000..68898bb05e --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/TaskPanel.ui @@ -0,0 +1,65 @@ + + + TaskPanel + + + + 0 + 0 + 307 + 268 + + + + Get ISO curve from surface + + + + + + + U direction + + + + + V direction + + + + + + + + + + 0 + + + 10000 + + + Qt::Horizontal + + + + + + + 0.000000000000000 + + + 1.000000000000000 + + + 0.010000000000000 + + + + + + + + + + diff --git a/src/Mod/Surfaces/surfISOCurve/__init__.py b/src/Mod/Surfaces/surfISOCurve/__init__.py new file mode 100644 index 0000000000..c104e04e8f --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/__init__.py @@ -0,0 +1,34 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD +import FreeCADGui + +# Qt libraries +from PyQt4 import QtGui,QtCore + +# Main object +import TaskPanel +from surfUtils import Paths + +def load(): + """ Loads the tool """ + TaskPanel.createTask() diff --git a/src/Mod/Surfaces/surfSlice/PointTracker.py b/src/Mod/Surfaces/surfSlice/PointTracker.py new file mode 100644 index 0000000000..863c47924e --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/PointTracker.py @@ -0,0 +1,68 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui +import Draft +from FreeCAD import Vector +# Qt library +from PyQt4 import QtGui,QtCore +# Pivy +import pivy +from pivy import coin +from pivy.coin import * +# Module +from surfUtils import Paths +from surfUtils import Geometry +from surfSlice import Preview + +class PointTracker: + def __init__(self,view,task): + self.view=view + self.task=task + task.tracker = self + self.callback = self.view.addEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),self.mouseButton) + self.callbackMove = self.view.addEventCallbackPivy(SoLocation2Event.getClassTypeId(),self.mouseMove) + + def mouseMove(self, event_cb): + event = event_cb.getEvent() + # Get screen point + screen = event.getPosition() + ctrl = event.wasCtrlDown() + # Get snapped object if exist, else the screen point will used + point = Gui.Snapper.snap(screen, ctrl) + + def mouseButton(self, event_cb): + event = event_cb.getEvent() + if event.getState() != coin.SoMouseButtonEvent.DOWN: + return + # Get screen point + screen = event.getPosition() + ctrl = event.wasCtrlDown() + # Get snapped object if exist, else the screen point will used + point = Gui.Snapper.snap(screen, ctrl) + if not point: + point = self.view.getPoint(screen[0],screen[1]) + # Set it into the task panel + self.task.setR3(point) + + def close(self): + self.view.removeEventCallbackPivy(coin.SoMouseButtonEvent.getClassTypeId(),self.callback) diff --git a/src/Mod/Surfaces/surfSlice/Preview.py b/src/Mod/Surfaces/surfSlice/Preview.py new file mode 100644 index 0000000000..b0c1f1f8c2 --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/Preview.py @@ -0,0 +1,97 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD,FreeCADGui +from FreeCAD import Base +from FreeCAD import Part +# FreeCADShip modules +from surfUtils import Paths +from surfUtils import Geometry +from surfUtils import Math + +class Preview(object): + def __init__(self): + """ Constructor. + @param self Auto call object. + @note Start it as unactive + """ + self.objs = None + self.reinit() + + def reinit(self): + """ Reinitializate drawer. + @param self Auto call object. + """ + self.clean() + self.objs = None + + def update(self, surf, direction, r): + """ Update the 3D view printing curve. + @param surf Surf where get the curve. + @param direction Slice plane normal vector. + @param r Absolute position at Slice plane normal direction. + @return Curve from object (as Part::Feature). + """ + # Errors + if not surf: + return None + # Get curve + curve = self.getSlice(surf, direction, r) + # Draw at 3D view + self.clean() + self.objs = [] + for i in range(0,len(curve)): + for j in range(0,len(curve[i])): + Part.show(curve[i][j]) + objs = FreeCAD.ActiveDocument.Objects + objs[len(objs)-1].Label = 'surfSliceCurve' + self.objs.append(objs[len(objs)-1]) + return self.objs + + def getSlice(self, surf, direction, r): + """ Get surface slice. + @param surf Surf where get the curve. + @param direction Slice plane normal vector. + @param r Absolute position at Slice plane normal direction. + @return Curve from object. + """ + # Errors + if not surf: + return None + # Get curve + curve = [] + for i in range(0,len(surf)): + curve.append(surf[i].slice(direction, r)) + return curve + + def clean(self,Destroy=True): + """ Erase all sections from screen. + @param self Auto call object. + @param Destroy True if the object must be destroyed, False otherwise. + """ + if not self.objs: + return + for i in range(0,len(self.objs)): + FreeCADGui.ActiveDocument.hide(self.objs[i].Name) + if Destroy: + FreeCAD.ActiveDocument.removeObject(self.objs[i].Name) + if Destroy: + self.objs=None diff --git a/src/Mod/Surfaces/surfSlice/TaskPanel.py b/src/Mod/Surfaces/surfSlice/TaskPanel.py new file mode 100644 index 0000000000..795787b564 --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/TaskPanel.py @@ -0,0 +1,214 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui +from FreeCAD import Vector +# Qt library +from PyQt4 import QtGui,QtCore +# Module +from surfUtils import Paths, Geometry, Math, Translator +import Preview +import PointTracker + +class TaskPanel: + def __init__(self): + self.ui = Paths.modulePath() + "/surfSlice/TaskPanel.ui" + self.preview = Preview.Preview() + self.tracker = None + self.dir = Vector(0.0,0.0,1.0) + + def accept(self): + if not self.objs: + return True + for i in range(0,len(self.objs)): + self.objs[i].Label = 'SliceCurve' + self.close() + return True + + def reject(self): + self.preview.clean() + self.close() + return True + + def clicked(self, index): + pass + + def open(self): + pass + + def needsFullSpace(self): + return True + + def isAllowedAlterSelection(self): + return False + + def isAllowedAlterView(self): + return True + + def isAllowedAlterDocument(self): + return False + + def helpRequested(self): + pass + + def setupUi(self): + mw = self.getMainWindow() + form = mw.findChild(QtGui.QWidget, "TaskPanel") + form.direction = form.findChild(QtGui.QComboBox, "direction") + form.r = form.findChild(QtGui.QSlider, "r") + form.rText = form.findChild(QtGui.QDoubleSpinBox, "rText") + self.form = form + # Initial values + if self.initValues(): + return True + self.retranslateUi() + self.form.rText.setMinimum(self.bound[4]) + self.form.rText.setMaximum(self.bound[5]) + self.setR(self.r) + # Connect Signals and Slots + QtCore.QObject.connect(form.direction, QtCore.SIGNAL("activated(QString)"), self.selectDirection) + QtCore.QObject.connect(form.r, QtCore.SIGNAL("valueChanged(int)"), self.onRSlider) + QtCore.QObject.connect(form.rText, QtCore.SIGNAL("valueChanged(double)"), self.onRText) + return False + + def getMainWindow(self): + "returns the main window" + # using QtGui.qApp.activeWindow() isn't very reliable because if another + # widget than the mainwindow is active (i.e. a dialog) the wrong widget is + # returned + toplevel = QtGui.qApp.topLevelWidgets() + for i in toplevel: + if i.metaObject().className() == "Gui::MainWindow": + return i + raise Exception("No main window found") + + def selectDirection(self): + if(self.form.direction.currentIndex() == 0): # XY + self.dir = Vector(0.0,0.0,1.0) + self.r = max(self.r, self.bound[4]) + self.r = min(self.r, self.bound[5]) + self.form.rText.setMinimum(self.bound[4]) + self.form.rText.setMaximum(self.bound[5]) + if(self.form.direction.currentIndex() == 1): # XZ + self.dir = Vector(0.0,1.0,0.0) + self.r = max(self.r, self.bound[2]) + self.r = min(self.r, self.bound[3]) + self.form.rText.setMinimum(self.bound[2]) + self.form.rText.setMaximum(self.bound[3]) + if(self.form.direction.currentIndex() == 2): # YZ + self.dir = Vector(1.0,0.0,0.0) + self.r = max(self.r, self.bound[0]) + self.r = min(self.r, self.bound[1]) + self.form.rText.setMinimum(self.bound[0]) + self.form.rText.setMaximum(self.bound[1]) + self.objs = self.preview.update(self.face, self.dir, self.r) + if not self.objs: + msg = Translator.translate("Can't calculate section") + App.Console.PrintWarning(msg) + + def onRSlider(self, value): + # Get r at [0,1] interval + r = self.form.r.value() + r = r/(float(self.form.r.maximum())) + # Expand to real interval + dr = self.form.rText.maximum()-self.form.rText.minimum() + r = r*dr + self.form.rText.minimum() + # Set value + self.setR(r) + + def onRText(self, value): + r = self.form.rText.value() + self.setR(r) + + def setR(self, r): + self.form.rText.setValue(r) + self.r = max(self.form.rText.minimum(), min(self.form.rText.maximum(), r)) + dr = self.form.rText.maximum()-self.form.rText.minimum() + r = (r - self.form.rText.minimum())/dr*self.form.r.maximum() + self.form.r.setValue(r) + if not self.face: + return + self.objs = self.preview.update(self.face, self.dir, self.r) + if not self.objs: + msg = Translator.translate("Can't calculate section") + App.Console.PrintWarning(msg) + + def setR3(self, r): + if(self.form.direction.currentIndex() == 0): # XY + self.setR(r.z) + if(self.form.direction.currentIndex() == 1): # XZ + self.setR(r.y) + if(self.form.direction.currentIndex() == 2): # YZ + self.setR(r.x) + + def initValues(self): + self.objs = None + self.dir = Vector(0.0,0.0,1.0) + self.r = 0.0 + self.face = None + self.selObj = Geometry.getSelectedObj() + if not self.selObj: + msg = Translator.translate("At least 1 surface must be selected (Any selected object)") + App.Console.PrintError(msg) + return True + self.face = Geometry.getFaces() + if not self.face: + msg = Translator.translate("At least 1 surface must be selected (Any face object found into selected objects)") + App.Console.PrintError(msg) + return True + bound = self.face[0].BoundBox + self.bound = [bound.XMin, bound.XMax, bound.YMin, bound.YMax, bound.ZMin, bound.ZMax] + for i in range(1,len(self.face)): + face = self.face[i] + bound = face.BoundBox + self.bound[0] = min(self.bound[0],bound.XMin) + self.bound[1] = min(self.bound[1],bound.XMax) + self.bound[2] = min(self.bound[2],bound.YMin) + self.bound[3] = min(self.bound[3],bound.YMax) + self.bound[4] = min(self.bound[4],bound.ZMin) + self.bound[5] = min(self.bound[5],bound.ZMax) + self.r = max(self.r, self.bound[4]) + self.r = min(self.r, self.bound[5]) + msg = Translator.translate("Ready to work") + App.Console.PrintMessage(msg) + return False + + def retranslateUi(self): + """ Set user interface locale strings. + """ + self.form.setWindowTitle(Translator.translate("Get surface slice")) + + def close(self): + """ Destroy all dependant objects + @param self Main object. + """ + if self.tracker: + self.tracker.close() + +def createTask(): + panel = TaskPanel() + Gui.Control.showDialog(panel) + if panel.setupUi(): + Gui.Control.closeDialog(panel) + return None + tracker = PointTracker.PointTracker(Gui.ActiveDocument.ActiveView, panel) + return panel diff --git a/src/Mod/Surfaces/surfSlice/TaskPanel.ui b/src/Mod/Surfaces/surfSlice/TaskPanel.ui new file mode 100644 index 0000000000..20b7029ef7 --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/TaskPanel.ui @@ -0,0 +1,70 @@ + + + TaskPanel + + + + 0 + 0 + 307 + 268 + + + + Get surface slice + + + + + + + XY + + + + + XZ + + + + + YZ + + + + + + + + + + 0 + + + 10000 + + + Qt::Horizontal + + + + + + + 0.000000000000000 + + + 1.000000000000000 + + + 0.010000000000000 + + + + + + + + + + diff --git a/src/Mod/Surfaces/surfSlice/__init__.py b/src/Mod/Surfaces/surfSlice/__init__.py new file mode 100644 index 0000000000..c104e04e8f --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/__init__.py @@ -0,0 +1,34 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD +import FreeCADGui + +# Qt libraries +from PyQt4 import QtGui,QtCore + +# Main object +import TaskPanel +from surfUtils import Paths + +def load(): + """ Loads the tool """ + TaskPanel.createTask() diff --git a/src/Mod/Surfaces/surfUtils/Geometry.py b/src/Mod/Surfaces/surfUtils/Geometry.py new file mode 100644 index 0000000000..d34844e1f3 --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/Geometry.py @@ -0,0 +1,171 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +import math +# FreeCAD +import FreeCAD, FreeCADGui +from FreeCAD import Base +from FreeCAD import Part +# FreeCAD ship +from surfUtils import Math + +def getSelectedObjs(): + """ Returns the selected objects list + @return Selected objects list + """ + return FreeCADGui.Selection.getSelection() + +def getSelectedObj(): + """ Returns the first element of the selected objects list + @return Selected object. None if errors happens + """ + objs = FreeCADGui.Selection.getSelection() + if not objs: + return None + if not len(objs): + return None + obj = objs[0] + return FreeCAD.ActiveDocument.getObject(obj.Name) + +def getEdges(objs=None): + """ Returns object edges (list of them) + @param objs Object to get the faces, none if selected + object may used. + @return Selected edges. None if errors happens + """ + edges = [] + if not objs: + objs = FreeCADGui.Selection.getSelection() + if not objs: + return None + for i in range(0, len(objs)): + obj = objs[i] + if obj.isDerivedFrom('Part::Feature'): + # get shape + shape = obj.Shape + if not shape: + return None + obj = shape + if not obj.isDerivedFrom('Part::TopoShape'): + return None + objEdges = obj.Edges + if not objEdges: + continue + for j in range(0, len(objEdges)): + edges.append(objEdges[j]) + return edges + +def getFaces(obj=None): + """ Returns object faces (list of them) + @param obj Object to get the faces, none if selected + object may used. + @return Selected faces. None if errors happens + """ + if not obj: + obj = getSelectedObj() + if not obj: + return None + if obj.isDerivedFrom('Part::Feature'): + # get shape + shape = obj.Shape + if not shape: + return None + obj = shape + if not obj.isDerivedFrom('Part::TopoShape'): + return None + # get face + faces = obj.Faces + if not faces: + return None + if not len(faces): + return None + return faces + +def getSelectedSurface(obj=None): + """ Returns object surface (the first of the list) + @param obj Object to get the surface, none if selected + object may used. + @return Selected surface. None if errors happens + """ + faces = getFaces(obj) + if not faces: + return None + obj = faces[0] + # get surface + surf = obj.Surface + if not surf: + return None + return surf + +def getBorders(objs=None): + """ Returns the borders of all selected objects as edge array + @param objs Objects to get the edges, none if selected objects + may used. + @return Borders + """ + edges = [] + if not objs: + objs = FreeCADGui.Selection.getSelection() + if not objs: + return None + if len(objs) < 1: + return None + for i in range(0, len(objs)): + faces = getFaces(objs[i]) + if not faces: + continue + for j in range(0, len(faces)): + edgList = faces[j].Edges + for k in range(0, len(edgList)): + edges.append(edgList[k]) + return edges + + +def lineFaceSection(line,surface): + """ Returns the point of section of a line with a face + @param line Line object, that can be a curve. + @param surface Surface object (must be a Part::Shape) + @return Section points array, [] if line don't cut surface + """ + # Get initial data + result = [] + vertexes = line.Vertexes + nVertex = len(vertexes) + # Perform the cut + section = line.cut(surface) + # Filter all old points + points = section.Vertexes + nPoint = len(points) + if nPoint <= nVertex: + # Any valid point + result + for i in range(0,nPoint): + disp = len(result) + flag = 0 + if not Math.isAprox(points[i].X,vertexes[i-disp].X,0.0001): + flag = flag+1 + if not Math.isAprox(points[i].Y,vertexes[i-disp].Y,0.0001): + flag = flag+1 + if not Math.isAprox(points[i].Z,vertexes[i-disp].Z,0.0001): + flag = flag+1 + if flag > 0: + result.append(points[i]) + return result + diff --git a/src/Mod/Surfaces/surfUtils/Math.py b/src/Mod/Surfaces/surfUtils/Math.py new file mode 100644 index 0000000000..9063c9560e --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/Math.py @@ -0,0 +1,54 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +def isAprox(a,b,tol=0.0001): + """returns if a value is into (b-tol,b+tol) + @param a Value to compare. + @param b Center of valid interval + @param tol Radius of valid interval + @return True if a is into (b-tol,b+tol), False otherwise + """ + if (a < b+abs(tol)) and (a > b-abs(tol)): + return True + return False + +def isSamePoint(a,b,tol=0.0001): + """returns if two points are the same with a provided tolerance + @param a Point to compare. + @param b Reference point. + @param tol Radius of valid interval + @return True if twice point are the same, False otherwise + @note FreeCAD::Base::Vector types must be provided + """ + if isAprox(a.x,b.x,tol) and isAprox(a.y,b.y,tol) and isAprox(a.z,b.z,tol): + return True + return False + +def isSameVertex(a,b,tol=0.0001): + """returns if two points are the same with a provided tolerance + @param a Point to compare. + @param b Reference point. + @param tol Radius of valid interval + @return True if twice point are the same, False otherwise + @note FreeCAD::Part::Vertex types must be provided + """ + if isAprox(a.X,b.X,tol) and isAprox(a.Y,b.Y,tol) and isAprox(a.Z,b.Z,tol): + return True + return False diff --git a/src/Mod/Surfaces/surfUtils/Paths.py b/src/Mod/Surfaces/surfUtils/Paths.py new file mode 100644 index 0000000000..fc9f8a1938 --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/Paths.py @@ -0,0 +1,52 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +import FreeCAD, FreeCADGui, os + +def modulePath(): + """returns the current Ship design module path + @return Module path""" + path1 = FreeCAD.ConfigGet("AppHomePath") + "Mod/Surfaces" + path2 = FreeCAD.ConfigGet("UserAppData") + "Mod/Surfaces" + if os.path.exists(path2): + return path2 + else: + return path1 + +def iconsPath(): + """returns the current Ship design module icons path + @return Icons path""" + path = modulePath() + "/Icons" + return path + +def getPathFromFile(fileName): + """ Gets the directory path from a file name + @param fileName Name of the file + @return Directory path. + """ + if not fileName: + return '' + i = 1 + try: + while 1: + i = fileName.index("/", i+1) + except ValueError: + pass + return fileName[0:i+1] diff --git a/src/Mod/Surfaces/surfUtils/Translator.py b/src/Mod/Surfaces/surfUtils/Translator.py new file mode 100644 index 0000000000..8d08d7fe4a --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/Translator.py @@ -0,0 +1,27 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +import FreeCAD, FreeCADGui, os +from PyQt4 import QtCore,QtGui + +def translate(text,context="surfaces"): + "convenience function for Qt translator" + return QtGui.QApplication.translate(context, text, None, + QtGui.QApplication.UnicodeUTF8) diff --git a/src/Mod/Surfaces/surfUtils/__init__.py b/src/Mod/Surfaces/surfUtils/__init__.py new file mode 100644 index 0000000000..e82fff67ce --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/__init__.py @@ -0,0 +1,22 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# Empty file to treat the folder as a package + From 6c42b9f0a9c3c76d91bbe02d4124b84d75d02aed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 11:02:19 +0100 Subject: [PATCH 07/40] Added Surfaces module readme file --- src/Mod/Surfaces/README | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 src/Mod/Surfaces/README diff --git a/src/Mod/Surfaces/README b/src/Mod/Surfaces/README new file mode 100644 index 0000000000..dba2de4ec1 --- /dev/null +++ b/src/Mod/Surfaces/README @@ -0,0 +1,11 @@ +* Authors +--------- + +Jose Luis Cercós Pita +Alicia Lapique + +* Introduction +-------------- + +Surfaces is a module to work with surfaces, providing GUI for tools implemented at python API, and more complex tools. + From a269c144c703f3ae6426c7b642c051034822b173 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 11:02:37 +0100 Subject: [PATCH 08/40] Added Surfaces module doxygen file --- src/Mod/Surfaces/surfaces.dox | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 src/Mod/Surfaces/surfaces.dox diff --git a/src/Mod/Surfaces/surfaces.dox b/src/Mod/Surfaces/surfaces.dox new file mode 100644 index 0000000000..7d90bc1aec --- /dev/null +++ b/src/Mod/Surfaces/surfaces.dox @@ -0,0 +1,3 @@ +/** \defgroup SURFACES Surfaces + * \ingroup WORKBENCHES */ + From 79d8130d7491c03f6759e8a3a6be04a622982368 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 11:04:38 +0100 Subject: [PATCH 09/40] Added Surfaces module cmake files --- src/Mod/Surfaces/CMakeLists.txt | 30 ++++++++++++++++++++ src/Mod/Surfaces/Icons/CMakeLists.txt | 21 ++++++++++++++ src/Mod/Surfaces/surfBorder/CMakeLists.txt | 7 +++++ src/Mod/Surfaces/surfConvert/CMakeLists.txt | 10 +++++++ src/Mod/Surfaces/surfISOCurve/CMakeLists.txt | 11 +++++++ src/Mod/Surfaces/surfSlice/CMakeLists.txt | 11 +++++++ src/Mod/Surfaces/surfUtils/CMakeLists.txt | 11 +++++++ 7 files changed, 101 insertions(+) create mode 100644 src/Mod/Surfaces/CMakeLists.txt create mode 100644 src/Mod/Surfaces/Icons/CMakeLists.txt create mode 100644 src/Mod/Surfaces/surfBorder/CMakeLists.txt create mode 100644 src/Mod/Surfaces/surfConvert/CMakeLists.txt create mode 100644 src/Mod/Surfaces/surfISOCurve/CMakeLists.txt create mode 100644 src/Mod/Surfaces/surfSlice/CMakeLists.txt create mode 100644 src/Mod/Surfaces/surfUtils/CMakeLists.txt diff --git a/src/Mod/Surfaces/CMakeLists.txt b/src/Mod/Surfaces/CMakeLists.txt new file mode 100644 index 0000000000..5284816196 --- /dev/null +++ b/src/Mod/Surfaces/CMakeLists.txt @@ -0,0 +1,30 @@ +add_subdirectory(Icons) +add_subdirectory(surfBorder) +add_subdirectory(surfConvert) +add_subdirectory(surfISOCurve) +add_subdirectory(surfSlice) +add_subdirectory(surfUtils) + + +SET(Surfaces_SRCS + InitGui.py + SurfGui.py +) +SOURCE_GROUP("" FILES ${Surfaces_SRCS}) + +SET(all_files ${Surfaces_SRCS}) + +ADD_CUSTOM_TARGET(Surfaces ALL + SOURCES ${all_files} +) + +fc_copy_sources("Mod/Surfaces" "Surfaces" ${all_files}) + +INSTALL( + FILES + ${Surfaces_SRCS} + README + DESTINATION + Mod/Surfaces +) + diff --git a/src/Mod/Surfaces/Icons/CMakeLists.txt b/src/Mod/Surfaces/Icons/CMakeLists.txt new file mode 100644 index 0000000000..5f02f4d4a9 --- /dev/null +++ b/src/Mod/Surfaces/Icons/CMakeLists.txt @@ -0,0 +1,21 @@ +INSTALL( + FILES + BorderIco.png + BorderIco.xpm + ConvertIco.png + ConvertTo4SidesIco.xpm + Ico.xcf + IsoCurveIco.png + IsoCurveIco.xpm + SliceIco.xcf + BorderIco.xcf + ConvertIco.xcf + Ico.png + Ico.xpm + IsoCurveIco.xcf + SliceIco.png + SliceIco.xpm + DESTINATION + Mod/Surfaces/Icons +) + diff --git a/src/Mod/Surfaces/surfBorder/CMakeLists.txt b/src/Mod/Surfaces/surfBorder/CMakeLists.txt new file mode 100644 index 0000000000..fb9e2befe1 --- /dev/null +++ b/src/Mod/Surfaces/surfBorder/CMakeLists.txt @@ -0,0 +1,7 @@ +INSTALL( + FILES + __init__.py + DESTINATION + Mod/Surfaces/surfBorder +) + diff --git a/src/Mod/Surfaces/surfConvert/CMakeLists.txt b/src/Mod/Surfaces/surfConvert/CMakeLists.txt new file mode 100644 index 0000000000..2bd1f7e58e --- /dev/null +++ b/src/Mod/Surfaces/surfConvert/CMakeLists.txt @@ -0,0 +1,10 @@ +INSTALL( + FILES + __init__.py + Preview.py + TaskPanel.py + TaskPanel.ui + DESTINATION + Mod/Surfaces/surfConvert +) + diff --git a/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt b/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt new file mode 100644 index 0000000000..21445ed821 --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt @@ -0,0 +1,11 @@ +INSTALL( + FILES + __init__.py + PointTracker.py + TaskPanel.py + Preview.py + TaskPanel.ui + DESTINATION + Mod/Surfaces/surfISOCurve +) + diff --git a/src/Mod/Surfaces/surfSlice/CMakeLists.txt b/src/Mod/Surfaces/surfSlice/CMakeLists.txt new file mode 100644 index 0000000000..7757f84eac --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/CMakeLists.txt @@ -0,0 +1,11 @@ +INSTALL( + FILES + __init__.py + PointTracker.py + TaskPanel.py + Preview.py + TaskPanel.ui + DESTINATION + Mod/Surfaces/surfSlice +) + diff --git a/src/Mod/Surfaces/surfUtils/CMakeLists.txt b/src/Mod/Surfaces/surfUtils/CMakeLists.txt new file mode 100644 index 0000000000..46ceac9efc --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/CMakeLists.txt @@ -0,0 +1,11 @@ +INSTALL( + FILES + __init__.py + Geometry.py + Math.py + Paths.py + Translator.py + DESTINATION + Mod/Surfaces/surfUtils +) + From 75323e068e4abe18c96e9456f6a70714d819ee84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 11:05:57 +0100 Subject: [PATCH 10/40] Edited Mod cmake file in order to consideer Surfaces module --- src/Mod/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Mod/CMakeLists.txt b/src/Mod/CMakeLists.txt index bf02f119b9..d90166054a 100644 --- a/src/Mod/CMakeLists.txt +++ b/src/Mod/CMakeLists.txt @@ -44,3 +44,4 @@ if(FREECAD_BUILD_SANDBOX) add_subdirectory(Sandbox) endif(FREECAD_BUILD_SANDBOX) +add_subdirectory(Surfaces) From aa5fae41a24c75656b79d9a29783f64968149ca1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 11:34:46 +0100 Subject: [PATCH 11/40] Added Ship design module sources --- src/Mod/Ship/Icons/AreaCurveIco.png | Bin 0 -> 6019 bytes src/Mod/Ship/Icons/AreaCurveIco.xcf | Bin 0 -> 99979 bytes src/Mod/Ship/Icons/AreaCurveIco.xpm | 841 ++++++ src/Mod/Ship/Icons/DataIco.png | Bin 0 -> 11365 bytes src/Mod/Ship/Icons/DataIco.xcf | Bin 0 -> 85943 bytes src/Mod/Ship/Icons/DataIco.xpm | 1021 +++++++ src/Mod/Ship/Icons/DiscretizeIco.png | Bin 0 -> 14038 bytes src/Mod/Ship/Icons/DiscretizeIco.xcf | Bin 0 -> 54067 bytes src/Mod/Ship/Icons/DiscretizeIco.xpm | 2028 +++++++++++++ src/Mod/Ship/Icons/HydrostaticsIco.png | Bin 0 -> 16230 bytes src/Mod/Ship/Icons/HydrostaticsIco.xcf | Bin 0 -> 188117 bytes src/Mod/Ship/Icons/HydrostaticsIco.xpm | 3323 +++++++++++++++++++++ src/Mod/Ship/Icons/Ico.png | Bin 0 -> 8552 bytes src/Mod/Ship/Icons/Ico.xcf | Bin 0 -> 22326 bytes src/Mod/Ship/Icons/Ico.xpm | 1281 ++++++++ src/Mod/Ship/Icons/OutlineDrawIco.png | Bin 0 -> 10468 bytes src/Mod/Ship/Icons/OutlineDrawIco.xcf | Bin 0 -> 64037 bytes src/Mod/Ship/Icons/OutlineDrawIco.xpm | 1824 +++++++++++ src/Mod/Ship/Icons/ReparametrizeIco.png | Bin 0 -> 12178 bytes src/Mod/Ship/Icons/ReparametrizeIco.xcf | Bin 0 -> 53229 bytes src/Mod/Ship/Icons/ReparametrizeIco.xpm | 1737 +++++++++++ src/Mod/Ship/Icons/Ship.xcf | Bin 0 -> 6365 bytes src/Mod/Ship/Icons/Ship.xpm | 431 +++ src/Mod/Ship/InitGui.py | 39 + src/Mod/Ship/Instance.py | 609 ++++ src/Mod/Ship/ShipGui.py | 49 + src/Mod/Ship/shipCreateShip/Preview.py | 127 + src/Mod/Ship/shipCreateShip/TaskPanel.py | 196 ++ src/Mod/Ship/shipCreateShip/TaskPanel.ui | 299 ++ src/Mod/Ship/shipCreateShip/__init__.py | 33 + src/Mod/Ship/shipOutlineDraw/Plot.py | 92 + src/Mod/Ship/shipOutlineDraw/Preview.py | 123 + src/Mod/Ship/shipOutlineDraw/TaskPanel.py | 332 ++ src/Mod/Ship/shipOutlineDraw/TaskPanel.ui | 277 ++ src/Mod/Ship/shipOutlineDraw/__init__.py | 33 + src/Mod/Ship/shipUtils/Math.py | 54 + src/Mod/Ship/shipUtils/Paths.py | 52 + src/Mod/Ship/shipUtils/Translator.py | 27 + src/Mod/Ship/shipUtils/__init__.py | 22 + 39 files changed, 14850 insertions(+) create mode 100644 src/Mod/Ship/Icons/AreaCurveIco.png create mode 100644 src/Mod/Ship/Icons/AreaCurveIco.xcf create mode 100644 src/Mod/Ship/Icons/AreaCurveIco.xpm create mode 100644 src/Mod/Ship/Icons/DataIco.png create mode 100644 src/Mod/Ship/Icons/DataIco.xcf create mode 100644 src/Mod/Ship/Icons/DataIco.xpm create mode 100644 src/Mod/Ship/Icons/DiscretizeIco.png create mode 100644 src/Mod/Ship/Icons/DiscretizeIco.xcf create mode 100644 src/Mod/Ship/Icons/DiscretizeIco.xpm create mode 100644 src/Mod/Ship/Icons/HydrostaticsIco.png create mode 100644 src/Mod/Ship/Icons/HydrostaticsIco.xcf create mode 100644 src/Mod/Ship/Icons/HydrostaticsIco.xpm create mode 100644 src/Mod/Ship/Icons/Ico.png create mode 100644 src/Mod/Ship/Icons/Ico.xcf create mode 100644 src/Mod/Ship/Icons/Ico.xpm create mode 100644 src/Mod/Ship/Icons/OutlineDrawIco.png create mode 100644 src/Mod/Ship/Icons/OutlineDrawIco.xcf create mode 100644 src/Mod/Ship/Icons/OutlineDrawIco.xpm create mode 100644 src/Mod/Ship/Icons/ReparametrizeIco.png create mode 100644 src/Mod/Ship/Icons/ReparametrizeIco.xcf create mode 100644 src/Mod/Ship/Icons/ReparametrizeIco.xpm create mode 100644 src/Mod/Ship/Icons/Ship.xcf create mode 100644 src/Mod/Ship/Icons/Ship.xpm create mode 100644 src/Mod/Ship/InitGui.py create mode 100644 src/Mod/Ship/Instance.py create mode 100644 src/Mod/Ship/ShipGui.py create mode 100644 src/Mod/Ship/shipCreateShip/Preview.py create mode 100644 src/Mod/Ship/shipCreateShip/TaskPanel.py create mode 100644 src/Mod/Ship/shipCreateShip/TaskPanel.ui create mode 100644 src/Mod/Ship/shipCreateShip/__init__.py create mode 100644 src/Mod/Ship/shipOutlineDraw/Plot.py create mode 100644 src/Mod/Ship/shipOutlineDraw/Preview.py create mode 100644 src/Mod/Ship/shipOutlineDraw/TaskPanel.py create mode 100644 src/Mod/Ship/shipOutlineDraw/TaskPanel.ui create mode 100644 src/Mod/Ship/shipOutlineDraw/__init__.py create mode 100644 src/Mod/Ship/shipUtils/Math.py create mode 100644 src/Mod/Ship/shipUtils/Paths.py create mode 100644 src/Mod/Ship/shipUtils/Translator.py create mode 100644 src/Mod/Ship/shipUtils/__init__.py diff --git a/src/Mod/Ship/Icons/AreaCurveIco.png b/src/Mod/Ship/Icons/AreaCurveIco.png new file mode 100644 index 0000000000000000000000000000000000000000..88c220e4e8fc794372243a4e6f208bb1261480bc GIT binary patch literal 6019 zcmZX2XFS}^_x5+!YOAyQVwLD!^kB8J60079eG}Tad7X3dZBDm|nDB6wO8ITW3 zLj|ZAhwt1?2<&w<)PURnwc@Ud^gD#uOViQ^07z*5ryw9VpWzN9^wrW+CtM%~lM;}s zV{bz5AVyzx3tv@F507WheF0VPXLi2No+A8Qe4P;*T6%`&VdV4xK)0-=rflLrzh`aj zZatNGGu?LfPvnIc%dM~WnpQqH65OYy2Vd{g()`Z#q3@MwoLEu;JD(~Gw&6ba_|P{|2w?OE-d`Dv*R*e)Hlqebwk7- zH0f^M6TCDtqjB-BT9j;ZW+u72yZb8EG#6-{GJsGTSth0=)7F3p2ndjB2o6$G(hY-8 zD2T1AYh2EpLH8wy;l~f-Had$PFlN-&vGa1jBjjl1`fqJ-R4;d^KdpqY{*w(NzZW#>)C0yxC;n+ElBExeiw83RVSr%`i2nyfl()o$$eYYC0Brk_ z8~}0CqqR>!g4Ee=Xs9H}mWvpaKN0%O6>vmTQ;NxGp!vn1wpF62|9u=My1-<|>caNGOi`31m?Zv;ig`01IJc8VPbU zDlC=^&jy#2ulA&>GR&+&+HU}hI3`;fG$8^H^x9LRDr&ee645y1gN13qI_v zCDe++yy&|f9UVO!9VNBN$-xPj*OV!-+291&LPyy`&e?lTzUwUh z{CUCygpw3z$cKeagJ-|j?H)j;f%DDNy@k-gi=)l?Z}mnQasBtz$6QM1%d2zds)3eU zQuOa!*M!7G+|lMpf6#v0Rshh`9HJ@=*lgf&0n}VG=@f=wuNThSHzhi6h5sZHRFukw1i0gH|n;@X}YxhFw;&3kS$HP=FDyf)zR6uzwiv`asu4uV;zFep+y zZ7jOxbaiu!%>ksk<6{eMGa9h3#w5b&Y*9?TS}Hc7Y|Ejy*8>Iee%*wt7Q%qJ4_KAK zOJV=`GU#ldCHSKJ?GMv&{ke2c-|YyDjMkyf3NwB=UvMoRft6M6pXo=Qrc2%Uy_706ed>xOkutL=Zh}O#c!hr2Q` zrR8Ns;$i`M;1d9Fa5ZgzEuQDn3VDIUxbq@0`VD=>3Td*GNC@&1UN zT?Z;p?4umE#9EnnazvoYW3V=q%BesnIE;^>jiMBCl{(ysX1me%@G)*oUW2nso`ViA zh|7O#x#Cq)%j64fa#Ax89InNSlr}g2)~IPft(Ji8b^}th~@6kJU_} zzuiW+g_0V_4Cx8O(?uULCMG6kXJ>0dBe8kFZviWSl=41ijR<4B#VTuV)$E#SHW5fw zp~Zj3=7^h$|9Toze3kkq@mf!iqwwUmqy3d#aBwgSYN$0_5?!CTMyCNx*I0MFIvIWA z)K?a53f=r3NjowL7*H}jnp_(*r)0?5F18bSOpOe@iskY8p(m|CQ2eg+1^Vfq`M$&l z=c{idtIcOfn3F{9S{!n$=7#j2WUIY92BU~YiIvk3=I3QqDB8liI}E`nnRHShiG}>- zvSaj<6A~;WN3D!5i8qE8eago9u(zu?JKl{+<$*GlKA0*LTUYDHM$RJF#D<9-o&pdv z9JcI(Nq3IE{OIZS#?Ix-64ogu1rgy5dl2B52$uWGzNuQ*ned&1T%DVWMU-Je@sd=# z{QC;$n5G$mI@?w(82#gp2+(4cK7*)xKCTs7x`Gje1}NJCSLx+YQTQb#h%yaB*$-aB zrk(0-9~^iRiasep8iGsl^$2+)RdC(wuLnI^84VRHS9`_CG2&}9)YTYev`UmHn7pfK z1SMm^TEzPD=G!qZ3~B(funqtNg1&P86XPuMx22VpU#q=$Kq(2h%)pA(rT~dz<388- zv~Q3D>DW1wfOm(b9N?c_)^x_H8P&@$e<#54LW7Vw~o!u^V;IiIjv>4UQO-P#Y7ZMIY zy7tlM=f^FNJjqzwpzA7No)+Bm&9q^%6tiQ&CJ;xm4RVm*vX8(vPFFJ!dwwnh1bg07 zgES6+s3}tf8Q3=p-)SU6w}i&zymO}bDeQK>HWoRw{$~eVTdd=YTmP4@0L{hrszf!b zZZEI2zZ4*6Q@oM{IBC}*?;}#4mgr(qO#qVtR_f*B_}QwbA_$ZwhM!;4<8!ACwUx?0 zs*Hb>+!pwB?9tLhy34QvrBGJ26Klca>$h7ENo=x@4o$1gKFv4YkrZiG?GSwWTceN2 z(T#WmeTeGD$?i6C_I13+kRcU(FR?E?-nQV!r$?VltE=5evSd?zr>A;}-5a+r=+T9D z^85F1SGyX?xQgR5xft`l!_l&O%{~fx<^ahjkIU<)UE_Li+~!5PT^1rr^~jBX{*muqN*xJR?#OpGmmd{%Wu4 zY@OW~cHr};U^XCw^}#LEs;z-RGT0`Y>KVXEqydH4J5q3PQwk&jV(JIIzo7Ts3cl!RrLs20oAyEyKv-rwbDYJR)lcoBXyJlhSJEDf%Pa)zN%J}z)A$_TPEmjG# zNAzVCsrW>UVxLno0dYJY{d}Z{#~vPFWmZQ+qyxnl?Rm`+7pmSN+aqL|0NY{hac&@SUb|aSZ=$3Tubs7!zD6q>}(MNBbWnH-k#|m>lwV zIlw6ywUyRdVj&;mt>twEVdBkdiVjIcCsExCGl@)nNGIt=H0??Bfr`DX7-Z|~3j=PL zkam$^WtUd9j8Q*W-RF*ug&ik_u+%*Yv96aJ_NHOF(;6@DqqxMAx|s*Pz)lUC{PH^m z13!yqn|5}$|NGA!@9-0CJRaAv4U?ITx%teC%hSCbRmoQVdg+!4SOci4Plr2Eu!g29 zI$_2XXBfQBearnEor z48N6GDBAy!?*&h*bChAfr958yAgC~IR`%BQxl8ZO^(8YvTKfROn=|9F-u}Gj`t&Xs zs~X-wpo`CgmzM$E4}@}%E%*5A}J^5fBxVd?E{h)KA$)a?SGaKBXPVt#>I$p zB#npBWJiS^s}V2GOij@$JQ$~YiK$0FyY5lc&kA+1u$Te&y-?CwMptC^cY=kU5=>7Z zl8(r6eg*~<(|4hXhhY(b68kbg95s&5##>riVqAOAfgY+tfDQ)QKyfcrr3%TPNX;hq zWS13Ge%9SUK!4czsyB2RaA3ct^MpN9Va)5IKxa^jQ|R03rEzu0%gfVFOvu`Y=%Gx= z+{=&*wfMS=>}q>%@4Bv9N0fK}BLV_LQ&UNZ?HKe3wD`8u z5wzWX@hi{GZ03<`m(Xy6X-ywE8}B^)LsBw~FG5{r@EXx{(+B4d8UVlD;}ERGSzVr7$RW%+7JX>0sG&Ib;IN#u*K7CiDmaBI+AQqCNK zu4xwEj%sgjmv8s;tET1qBS{?+9pQ^}m#W_vpbGCxniE+eYKu5g8glHW|8#0V!Oh z=oJV#mjg5&2|~L&ajuQJ9-hsS0I{bKj2**LhgpuYpWF`R1R-q$l}pa_F+U8Z z!X0V5mBcbz|IT3v^(K02S-^i^5dmtw-LCJDSnm3@wVUNRp!r+cNwbt6wvK_Uc}L#E zMk8Vws!l-(-d8Wu*g5-`v`)IB9Zlia3JM25D~$kuM?RM@*-dboNCk*|(SJRW`D}m3 zXsnQIkezmS46doDrqWgzR?KT+;@_3@2mbjDCph*-j*5s@EY|2fGE>N{UxPrg>c!$8 zwCDa(2R#c53o|GbwuUJR-=8^*VlPr@!E<19zMrDuSSeN1Na`TR5S!UxtB*O z%4v?Ubk{iGeqS9t+*}dcNXR7@8_|ILB3Cqfn% z=jZ2@{8wJ*zA<1Df0@3WCwlI$a46iRfJ0uzl!_(7s?zF#--g_8Xi&q*pZvnh864BV zLzzH=q2-hy`KOW#3({+Su{1(JNZlwFIdjilpX0Er{#$)ndzDqXlC1C`^|#F3GdwkN zHjdGvQU!4T2Irm&=Hre%<=lX`Vz|nicc&^bW8t+55uV)T)zJ-1y_O#(oF+=UyKms= zPb2)$Y)%$ipVzOihlVPtp7K3;#-upZ^vTFFGr`*IJmkFyvMDN3DkiQQAF5d;Y*h0k zPOEg-0A_1;)ujph;DyK&WgwHjzgiOAZ4Exu2I}7i!+-@&=V?XE$kup)z$Z)NS{k1G zr6Dclx*Lf~-TL=q`VaGzDhX?K;#g7`_r&RBlVPSnbgB431nPYp!<=5Vi9P>5zKfgN<@8Q{Jt<)iTxUj}-e@J1@$E)az4%+`;RkkQo8o-1!;N%<@R%nAbsjDx=ogBZk66qv z`+9%el=&0omwJiViPpz~$y(CS=c9Q~Z{OLc z2!19Cl;E%Ii1~Tuv$emyjmeR4G6S9S0Mdd>qLcgIa{d7}ynrdN9Jq0Hk>&AuxvJ~< zL!Ge^pJcg6!}Z5J)#_6*BRry{*n+1HC(aHoM6Xh(4EyGiaPv%4lP>$^$9>cHS^^J}xe4s_sIe5G z=Xj0JMzT6Uo%ORSqJ%1%V2<|rs~No3*$&T@p}sx{eLVhHopOFtYPHJ3c&mx-{(*)V z+p2519b=nqvp_bKMP1HnoUKxglCR%$P5keN`mkY{nxB<4zeS;4p~rZCE%t===1_?g7l9s<-u_v(>v zpQwhE;C}djx6-ksD$Wn*i8p3hHA>T!;gJYt^MtBO+|8+0o`{-0pN8pxKCi2*>vkmD zHPK))n-X+Y=|7+AMu)(_+=_~do+iX&Ndg5)?>OZ{HOkUH*Mq~{k8(UDG-*O?K3J9K zd5mZCw-!G3vG3~!xrx8`XoYbOcXK0@?U^kqy5hgTIz<`cI`W2(hom}3m*baU0`+@` zHGvcRfrl4VmyS%_3ln+>MPr4IqZNU!O-Ke}vGH%mRdY&+!P(qhj%4eotFQkrV0U-- zT>uq2)tK|K`J;+>(FCgTtaL}tpB;ZTt&X~yYDKv zZF-Ftt5?cp;!*4LI&gPx0oEeCZE7!K`YM07c)QTDi*q>kt96!I32~*!hzXtbpXdev zGxQnDN!9kG9Min`_m^m#O&MJA^1nv$Drq4qow%K+Jdh&3ChecquNquQwAQ|8mM`be zp9~U6aG2KJ!lC>!ulbasfpTF!p98L`hWiv~^G)r&FCo&Jl6p6fE3!7*ET>qlCzcwe zt$QCkOE8T(P}|HX{^$)lzz1~o^u~IKQykpgGpe;+#0J@JPc%C3a<&=To^e7^N!hO% zDMi>e{VT!y$Q)nMI*TB}Er%?(vl0C(I6guXDGca1oKT!h#M2eB{O-e46up+Cum1l_ e#};Ypw;%)o&`prC`R=Y94rrfW+8=j^rD+AGZY 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

fo>AH1LPKjP7%uVOco&(r) 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 c #B0AFAF", +", c #B0AFB0", +"' c #AEAFAE", +") c #050505", +"! c #AFAEAE", +"~ c #AEAEAE", +"{ c #060606", +"] c #ADACAC", +"^ c #070707", +"/ c #070706", +"( c #ADADAD", +"_ c #ACACAC", +": c #080708", +"< c #ACADAD", +"[ c #ACABAB", +"} c #090909", +"| c #AAABAA", +"1 c #09090A", +"2 c #090A0A", +"3 c #AAABAB", +"4 c #A9A9AA", +"5 c #0A0A0A", +"6 c #0B0A0B", +"7 c #AAAAAA", +"8 c #A9A9A9", +"9 c #0C0C0B", +"0 c #0C0B0B", +"a c #A8A8A8", +"b c #0C0D0D", +"c c #0D0D0C", +"d c #A7A8A7", +"e c #0E0E0D", +"f c #0D0D0E", +"g c #A7A8A8", +"h c #A6A6A7", +"i c #0E0F0F", +"j c #A6A6A5", +"k c #100F0F", +"l c #0F0F0F", +"m c #A6A6A6", +"n c #A5A5A5", +"o c #111010", +"p c #111110", +"q c #A6A5A5", +"r c #A4A4A4", +"s c #111111", +"t c #A4A5A4", +"u c #A3A3A3", +"v c #131212", +"w c #A2A3A3", +"x c #131314", +"y c #131313", +"z c #A3A2A3", +"A c #A2A2A2", +"B c #141414", +"C c #A1A1A1", +"D c #151515", +"E c #A1A1A2", +"F c #A0A0A0", +"G c #161616", +"H c #A1A0A0", +"I c #9F9F9F", +"J c #181617", +"K c #171717", +"L c #181818", +"M c #9E9E9D", +"N c #191919", +"O c #191819", +"P c #9E9E9E", +"Q c #9D9D9D", +"R c #1A191A", +"S c #1A1A1A", +"T c #9D9C9C", +"U c #1B1B1A", +"V c #1B1B1B", +"W c #9C9C9C", +"X c #9B9C9B", +"Y c #1C1C1C", +"Z c #9B9B9B", +"` c #9A9A9A", +" . c #1C1D1D", +".. c #1D1C1D", +"+. c #9A9B9B", +"@. c #1D1D1D", +"#. c #1E1D1E", +"$. c #989998", +"%. c #1F1E1F", +"&. c #1E1E1F", +"*. c #999999", +"=. c #989898", +"-. c #201F1F", +";. c #20201F", +">. c #999898", +",. c #101010", +"'. c #3B3B3B", +"). c #404040", +"!. c #403F40", +"~. c #3F403F", +"{. c #282828", +"]. c #989797", +"^. c #212121", +"/. c #212020", +"(. c #979797", +"_. c #696969", +":. c #C2C1C1", +"<. c #EFF0EF", +"[. c #F0F0F0", +"}. c #F0EFEF", +"|. c #F0F0EF", +"1. c #EFEFEF", +"2. c #EEEFEF", +"3. c #E2E2E2", +"4. c #A09FA0", +"5. c #585858", +"6. c #969696", +"7. c #212122", +"8. c #212221", +"9. c #969797", +"0. c #121212", +"a. c #939292", +"b. c #ECECEC", +"c. c #F1F0F1", +"d. c #EEEEEE", +"e. c #EEEDEE", +"f. c #EEEDED", +"g. c #E5E5E5", +"h. c #8D8D8D", +"i. c #959695", +"j. c #222323", +"k. c #222322", +"l. c #2F2F2F", +"m. c #D6D6D6", +"n. c #F1F1F0", +"o. c #F1F0F0", +"p. c #EFF0F0", +"q. c #EDEEED", +"r. c #EDEDED", +"s. c #ECEDED", +"t. c #ECEDEC", +"u. c #D8D8D8", +"v. c #4D4D4D", +"w. c #959595", +"x. c #242323", +"y. c #242324", +"z. c #585859", +"A. c #E8E8E8", +"B. c #F0F1F1", +"C. c #EEEEEF", +"D. c #EDEEEE", +"E. c #EDEDEC", +"F. c #EBEBEC", +"G. c #EBEBEB", +"H. c #949494", +"I. c #252424", +"J. c #606060", +"K. c #F1F1F1", +"L. c #F0F0F1", +"M. c #EFEEEE", +"N. c #EDEDEE", +"O. c #EDECED", +"P. c #ECECED", +"Q. c #ECEBEB", +"R. c #ECEBEC", +"S. c #EBECEB", +"T. c #EAEBEA", +"U. c #D4D4D4", +"V. c #323232", +"W. c #949393", +"X. c #262525", +"Y. c #252525", +"Z. c #949493", +"`. c #3D3D3D", +" + c #EBEBEA", +".+ c #EAEAEA", +"++ c #EAEAE9", +"@+ c #D7D7D7", +"#+ c #292929", +"$+ c #939392", +"%+ c #272626", +"&+ c #262626", +"*+ c #939393", +"=+ c #D9D9D9", +"-+ c #EEEEED", +";+ c #EDECEC", +">+ c #EBEAEB", +",+ c #E9E9E9", +"'+ c #D2D2D1", +")+ c #222222", +"!+ c #929292", +"~+ c #272727", +"{+ c #282727", +"]+ c #F0F1F0", +"^+ c #E9E8E9", +"/+ c #E8E9E8", +"(+ c #C2C1C2", +"_+ c #919191", +":+ c #919291", +"<+ c #606061", +"[+ c #EFEFF0", +"}+ c #EFEEEF", +"|+ c #EFEFEE", +"1+ c #EAEBEB", +"2+ c #EBEAEA", +"3+ c #E9EAE9", +"4+ c #EAE9E9", +"5+ c #E8E9E9", +"6+ c #E8E7E7", +"7+ c #E7E8E8", +"8+ c #8F8F8F", +"9+ c #909090", +"0+ c #2A2929", +"a+ c #919090", +"b+ c #0C0C0C", +"c+ c #DBDBDB", +"d+ c #E9E9EA", +"e+ c #E9E8E8", +"f+ c #E7E7E7", +"g+ c #E7E6E6", +"h+ c #474747", +"i+ c #2B2A2A", +"j+ c #747475", +"k+ c #F0EFF0", +"l+ c #E9E9E8", +"m+ c #E8E8E9", +"n+ c #E7E6E7", +"o+ c #E6E6E6", +"p+ c #D3D3D3", +"q+ c #8F8E8E", +"r+ c #2B2B2B", +"s+ c #E4E4E4", +"t+ c #E9EAEA", +"u+ c #E7E7E8", +"v+ c #E5E5E6", +"w+ c #8D8E8E", +"x+ c #2D2C2C", +"y+ c #2C2C2C", +"z+ c #8E8E8E", +"A+ c #7F807F", +"B+ c #E6E7E7", +"C+ c #E7E7E6", +"D+ c #E6E7E6", +"E+ c #E5E6E5", +"F+ c #E6E6E5", +"G+ c #E4E5E4", +"H+ c #6D6D6D", +"I+ c #8D8C8D", +"J+ c #2D2C2D", +"K+ c #2D2D2D", +"L+ c #E8E8E7", +"M+ c #E6E5E5", +"N+ c #E5E4E4", +"O+ c #DDDEDE", +"P+ c #8C8C8C", +"Q+ c #2F2E2E", +"R+ c #2E2D2E", +"S+ c #8D8C8C", +"T+ c #757575", +"U+ c #EAEAEB", +"V+ c #E8E7E8", +"W+ c #E6E6E7", +"X+ c #E5E5E4", +"Y+ c #E3E4E4", +"Z+ c #E3E3E4", +"`+ c #8C8B8B", +" @ c #8B8B8B", +".@ c #D1D1D1", +"+@ c #E4E3E4", +"@@ c #E3E3E3", +"#@ c #E3E2E3", +"$@ c #444444", +"%@ c #8B8B8A", +"&@ c #312F30", +"*@ c #30302F", +"=@ c #373737", +"-@ c #ECECEB", +";@ c #E5E6E6", +">@ c #E6E5E6", +",@ c #E5E4E5", +"'@ c #E4E3E3", +")@ c #BFBFBE", +"!@ c #8A8A8A", +"~@ c #313130", +"{@ c #E7E8E7", +"]@ c #E1E1E1", +"^@ c #555555", +"/@ c #898989", +"(@ c #898A89", +"_@ c #D9DAD9", +":@ c #E4E4E5", +"<@ c #E3E4E3", +"[@ c #E3E3E2", +"}@ c #E1E1E2", +"|@ c #C2C3C2", +"1@ c #888888", +"2@ c #333232", +"3@ c #333332", +"4@ c #353435", +"5@ c #EBECEC", +"6@ c #E4E4E3", +"7@ c #E3E2E2", +"8@ c #E1E0E0", +"9@ c #E0E0E0", +"0@ c #545454", +"a@ c #878788", +"b@ c #343434", +"c@ c #343334", +"d@ c #7C7C7C", +"e@ c #E2E3E2", +"f@ c #E2E2E3", +"g@ c #E2E1E2", +"h@ c #E2E1E1", +"i@ c #E1E0E1", +"j@ c #E0E1E1", +"k@ c #E0E1E0", +"l@ c #C1C1C0", +"m@ c #868786", +"n@ c #353535", +"o@ c #878687", +"p@ c #C1C1C1", +"q@ c #E2E2E1", +"r@ c #E1E2E1", +"s@ c #E1E1E0", +"t@ c #DFE0E0", +"u@ c #DFDFE0", +"v@ c #DFDFDF", +"w@ c #4A4A4A", +"x@ c #858686", +"y@ c #353635", +"z@ c #363535", +"A@ c #868686", +"B@ c #EAE9EA", +"C@ c #E2E3E3", +"D@ c #E1E2E2", +"E@ c #DFDEDF", +"F@ c #B4B4B4", +"G@ c #858585", +"H@ c #373636", +"I@ c #363736", +"J@ c #858586", +"K@ c #646464", +"L@ c #DFE0DF", +"M@ c #DEDFDF", +"N@ c #DFDFDE", +"O@ c #DEDEDE", +"P@ c #454545", +"Q@ c #848484", +"R@ c #383838", +"S@ c #858485", +"T@ c #DEDEDF", +"U@ c #DDDDDE", +"V@ c #DDDEDD", +"W@ c #B2B2B2", +"X@ c #838483", +"Y@ c #383938", +"Z@ c #393839", +"`@ c #848384", +" # c #0B0B0B", +".# c #E4E5E5", +"+# c #E0DFDF", +"@# c #DEDEDD", +"## c #DDDDDD", +"$# c #DCDCDC", +"%# c #828282", +"&# c #3A393A", +"*# c #3A3939", +"=# c #838283", +"-# c #464646", +";# c #DDDDDC", +"># c #3B3B3A", +",# c #3A3B3B", +"'# c #818181", +")# c #E0E0E1", +"!# c #DFDEDE", +"~# c #DEDDDD", +"{# c #DDDCDD", +"]# c #DCDDDC", +"^# c #DADADB", +"/# c #202020", +"(# c #3C3B3B", +"_# c #828181", +":# c #BCBCBC", +"<# c #E0DFE0", +"[# c #DEDFDE", +"}# c #DCDCDD", +"|# c #DBDCDC", +"1# c #DBDCDB", +"2# c #7A7A7A", +"3# c #808080", +"4# c #3C3C3C", +"5# c #3C3C3D", +"6# c #808180", +"7# c #DEDDDE", +"8# c #DBDBDC", +"9# c #DADBDB", +"0# c #CCCCCC", +"a# c #7F8080", +"b# c #3E3D3D", +"c# c #807F80", +"d# c #424241", +"e# c #DCDDDD", +"f# c #DDDCDC", +"g# c #DADADA", +"h# c #DADBDA", +"i# c #575757", +"j# c #7E7E7E", +"k# c #3F3E3E", +"l# c #3E3E3D", +"m# c #7F7F7F", +"n# c #DCDCDB", +"o# c #DBDBDA", +"p# c #DADAD9", +"q# c #B5B5B5", +"r# c #7E7D7E", +"s# c #3F3F3F", +"t# c #D9D9DA", +"u# c #D8D8D9", +"v# c #7D7D7D", +"w# c #414040", +"x# c #7D7D7E", +"y# c #DAD9DA", +"z# c #D8D9D9", +"A# c #D9D8D8", +"B# c #D9D8D9", +"C# c #7D7C7D", +"D# c #414141", +"E# c #3E3D3E", +"F# c #DAD9D9", +"G# c #D8D9D8", +"H# c #D8D7D8", +"I# c #D2D2D2", +"J# c #7B7C7B", +"K# c #424142", +"L# c #424242", +"M# c #7B7C7C", +"N# c #767676", +"O# c #D7D8D8", +"P# c #686968", +"Q# c #7A7B7B", +"R# c #444243", +"S# c #444342", +"T# c #AEADAD", +"U# c #DBDADA", +"V# c #D8D7D7", +"W# c #D6D7D6", +"X# c #C1C0C0", +"Y# c #454344", +"Z# c #E0E0DF", +"`# c #D6D7D7", +" $ c #797979", +".$ c #464545", +"+$ c #454544", +"@$ c #7A7979", +"#$ c #D9DADA", +"$$ c #D7D8D7", +"%$ c #D7D7D8", +"&$ c #D6D6D7", +"*$ c #D5D5D6", +"=$ c #787878", +"-$ c #474546", +";$ c #787879", +">$ c #6C6C6C", +",$ c #D7D7D6", +"'$ c #D5D5D5", +")$ c #777878", +"!$ c #474646", +"~$ c #DCDBDB", +"{$ c #D9D9D8", +"]$ c #D7D6D7", +"^$ c #D6D6D5", +"/$ c #D5D4D5", +"($ c #737373", +"_$ c #777777", +":$ c #484748", +"<$ c #494748", +"[$ c #D5D6D5", +"}$ c #D4D4D5", +"|$ c #C4C4C4", +"1$ c #494948", +"2$ c #494848", +"3$ c #2A2A2A", +"4$ c #D5D5D4", +"5$ c #D4D5D4", +"6$ c #D3D4D4", +"7$ c #D3D4D3", +"8$ c #494949", +"9$ c #4A4949", +"0$ c #4A494A", +"a$ c #767575", +"b$ c #636263", +"c$ c #D7D6D6", +"d$ c #D6D5D6", +"e$ c #D4D4D3", +"f$ c #747575", +"g$ c #4B4A4B", +"h$ c #4B4B4B", +"i$ c #D5D6D6", +"j$ c #D4D5D5", +"k$ c #D3D2D2", +"l$ c #747473", +"m$ c #4C4B4B", +"n$ c #4C4B4C", +"o$ c #747374", +"p$ c #D1D1D2", +"q$ c #878787", +"r$ c #727273", +"s$ c #4D4C4D", +"t$ c #4D4C4C", +"u$ c #434343", +"v$ c #D8D8D7", +"w$ c #D4D3D4", +"x$ c #D2D3D2", +"y$ c #D2D1D2", +"z$ c #171716", +"A$ c #717272", +"B$ c #4E4D4D", +"C$ c #727272", +"D$ c #D3D3D4", +"E$ c #D1D1D0", +"F$ c #D0D1D1", +"G$ c #676767", +"H$ c #717171", +"I$ c #4F4E4E", +"J$ c #4E4E4E", +"K$ c #727172", +"L$ c #C6C6C6", +"M$ c #D5D4D4", +"N$ c #D3D2D3", +"O$ c #D2D2D3", +"P$ c #D1D2D2", +"Q$ c #D0D0D0", +"R$ c #707071", +"S$ c #504F4F", +"T$ c #504F50", +"U$ c #707070", +"V$ c #D2D3D3", +"W$ c #D2D1D1", +"X$ c #D1D0D0", +"Y$ c #D0CFD0", +"Z$ c #CFCFCF", +"`$ c #505151", +" % c #706F6F", +".% c #515050", +"+% c #6F6F70", +"@% c #616161", +"#% c #D6D5D5", +"$% c #D3D3D2", +"%% c #D1D0D1", +"&% c #D0D0D1", +"*% c #CFD0D0", +"=% c #ABABAB", +"-% c #6F6F6E", +";% c #525151", +">% c #515151", +",% c #6F6F6F", +"'% c #A1A1A0", +")% c #DCDBDC", +"!% c #D4D3D3", +"~% c #CFCFD0", +"{% c #D0D0CF", +"]% c #CECFCF", +"^% c #CECECE", +"/% c #6E6E6E", +"(% c #525252", +"_% c #535252", +":% c #CFCECE", +"<% c #CDCECE", +"[% c #535353", +"}% c #6D6E6D", +"|% c #595858", +"1% c #D0CFCF", +"2% c #CFCECF", +"3% c #CECECF", +"4% c #CECDCD", +"5% c #CDCDCD", +"6% c #CDCCCC", +"7% c #555454", +"8% c #6C6C6D", +"9% c #D1D2D1", +"0% c #CDCDCE", +"a% c #6B6B6B", +"b% c #565455", +"c% c #565555", +"d% c #6B6C6C", +"e% c #CFCFCE", +"f% c #CECFCE", +"g% c #CECECD", +"h% c #CDCCCD", +"i% c #CCCCCD", +"j% c #CBCBCB", +"k% c #303030", +"l% c #6B6A6A", +"m% c #565656", +"n% c #575656", +"o% c #D0D1D0", +"p% c #CFD0CF", +"q% c #CDCECD", +"r% c #CCCCCB", +"s% c #CBCCCB", +"t% c #A9A8A9", +"u% c #6A696A", +"v% c #575756", +"w% c #6A6A6A", +"x% c #CECDCE", +"y% c #CCCBCC", +"z% c #CBCBCC", +"A% c #CACBCA", +"B% c #CBCACA", +"C% c #585758", +"D% c #767576", +"E% c #DBDADB", +"F% c #CDCDCC", +"G% c #CACACA", +"H% c #B9BABA", +"I% c #0D0D0D", +"J% c #686868", +"K% c #595959", +"L% c #595958", +"M% c #686869", +"N% c #CBCCCC", +"O% c #CBCBCA", +"P% c #C9CAC9", +"Q% c #C9C9CA", +"R% c #737372", +"S% c #5B5A59", +"T% c #5B5A5A", +"U% c #686767", +"V% c #CCCDCC", +"W% c #CBCACB", +"X% c #CAC9C9", +"Y% c #C9C9C9", +"Z% c #C6C5C5", +"`% c #666767", +" & c #5B5B5A", +".& c #5B5B5B", +"+& c #1E1E1E", +"@& c #CCCBCB", +"#& c #C8C8C9", +"$& c #C8C8C8", +"%& c #656566", +"&& c #5C5C5C", +"*& c #5C5B5C", +"=& c #666766", +"-& c #B4B3B3", +";& c #C9CACA", +">& c #C9C9C8", +",& c #C7C8C7", +"'& c #C8C7C7", +")& c #656565", +"!& c #5D5C5D", +"~& c #5D5D5C", +"{& c #656665", +"]& c #707171", +"^& c #CCCDCD", +"/& c #C9C8C8", +"(& c #C7C7C8", +"_& c #C8C7C8", +":& c #C7C7C7", +"<& c #C4C4C5", +"[& c #5E5D5D", +"}& c #656464", +"|& c #3E3E3E", +"1& c #CACBCB", +"2& c #CAC9CA", +"3& c #B4B4B3", +"4& c #646363", +"5& c #5F5E5F", +"6& c #5F5E5E", +"7& c #636364", +"8& c #3E3F3F", +"9& c #C9C8C9", +"0& c #C7C8C8", +"a& c #C6C5C6", +"b& c #C5C6C5", +"c& c #BDBDBD", +"d& c #3B3C3C", +"e& c #636363", +"f& c #605F60", +"g& c #605F5F", +"h& c #5A5A5A", +"i& c #C6C6C7", +"j& c #C5C5C5", +"k& c #5D5D5D", +"l& c #5E5E5E", +"m& c #5F5F5E", +"n& c #626261", +"o& c #5C5D5C", +"p& c #666666", +"q& c #666565", +"r& c #656465", +"s& c #636262", +"t& c #626161", +"u& c #616060", +"v& c #616160", +"w& c #5C5D5D", +"x& c #5F5F5F", +"y& c #5F6060", +"z& c #606160", +"A& c #626262", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" . . ", +" . . ", +" . . . . ", +" . + @ . ", +" . . # # . . ", +" . $ $ $ $ . ", +" % % & & & & * * ", +" = = = - - ; > , ", +" ' ) ) ! ", +" ~ { { ~ ", +" ] ^ / ( ", +" _ : ^ < ", +" [ } } _ ", +" | 1 2 3 ", +" 4 5 6 7 ", +" 8 9 0 4 ", +" a b c a ", +" d e f g ", +" h i i h ", +" j k l m ", +" n o p q ", +" r s s t ", +" u v v u ", +" w x y z ", +" A B B A ", +" C D D E ", +" F G G H ", +" I J K F ", +" I L L I ", +" M N O P ", +" Q R S Q ", +" T U V W ", +" X Y Y Z ", +" ` ...+. ", +" ` @.#.` ", +" $.%.&.*. ", +" =.-.;.>. @ ,.'.).!.~.{.- @ ", +" ].^./.(. @ D _.:.<.[.}.|.1.2.3.4.5.s @ ", +" 6.7.8.9. 0.a.b.c.[.[.[.1.1.2.d.d.e.f.g.h.B @ ", +" i.j.k.6. @ l.m.n.o.[.}.p.<.1.d.d.e.q.r.s.t.b.u.v.@ ", +" w.x.y.i. @ z.A.n.B.[.[.1.1.C.2.d.d.D.r.E.b.b.b.F.G.Z y ", +" H.I.I.H. @ J.K.K.L.|.1.1.1.C.M.D.q.N.r.O.P.Q.R.S.G.G.T.U.V. ", +" W.X.Y.Z. `.e.o.[.[.p.}.1.d.C.D.r.N.r.E.P.b.Q.F. + +.+.+++@+#+ ", +" $+%+&+*+ D =+L.[.<.1.1.1.C.d.-+r.r.;+;+b.F.G.Q.>+ +.+.+,+,+,+'+)+ ", +" !+~+{+!+ $ * ]+[.<.<.1.M.C.d.N.r.r.r.b.b.F.G.G.>+.+.+++,+,+^+/+A.(+} ", +" _+{.{.:+ @ <+L.[.[.[+}+|+d.d.r.r.r.O.P.b.S.G.T.1+2+++3+4+,+5+A.A.6+7+8+@ ", +" 9+#+0+a+ b+c+|.<.[+|+M.d.-+f.f.r.P.b.R.G.G.G.1+.+.+d+,+,+e+A.A.A.f+g+g+h+@ ", +" 8+i+i+9+ @ j+k+<.1.M.|+d.q.r.r.;+P.b.b.S.G.>+.+.+.+4+,+l+m+A.A.6+f+n+g+o+p+K ", +" q+r+r+8+ B s+1.1.M.d.d.-+q.r.P.P.b.Q.b.G.2+2+.+t+,+,+5+/+A.u+f+f+n+o+o+v+g.~ & ", +" w+x+y+z+ @ A+1.1.1.d.d.N.f.r.O.;+b.Q.Q.G..+.+.+,+,+e+e+A.A.A.f+B+C+D+o+E+F+g.G+H+@ ", +" I+J+K+h. y 3.2.1.d.D.e.r.E.r.b.b.F.G. + +.+.+t+d+,+5+A.L+L+6+D+o+g+M+v+g.g.N+s+O+~+ ", +" P+Q+R+S+ T+C.C.d.e.r.r.E.r.b.Q.Q.G.U+2+.+4+d+,+e+A.A.V+f+f+f+W+o+F+v+g.g.X+s+Y+Z+r @ ", +" `+l.l. @ # .@|+d.d.r.r.P.b.b.F.Q.G..+.+.+++t+5+,+A.A.f+f+f+f+o+o+E+v+g.X+G++@@@Y+@@#@$@ ", +" %@&@*@ @ =@2.D.D.r.O.O.t.R.-@G.G.2+T.4+,+,+l+A.m+A.6+6+f+W+g+;@>@g.,@X+s+Y+Y+'@@@3.3.)@) ", +" !@~@~@!@ @ @f.-+r.r.;+b.Q.S.G.G. +.+.+3+,+,+5+A.{@f+f+W+n+o+F+E+g.,@s+N+s++@@@@@#@3.3.]@^@ ", +" /@V.V.(@ & _@d.r.E.b.b.S.Q.G.1+T..+3+d+,+,+,+A.A.f+f+B+D+o+v+g.g.g.:@s+Z+<@@@[@3.3.}@]@]@|@& ", +" 1@2@3@1@ 4@q.r.P.t.-@5@-@G.1+.+t+.+d+,+5+A.A.f+f+f+W+B+o+o+g.g.X+X+s+6@<@@@7@3.3.}@]@]@8@9@0@ ", +" a@b@c@a@ @ d@r.P.t.b.G.G. +>+.+t+d+,+,+^+e+A.A.f+f+g+D+;@>@g.:@G+s++@Z+@@#@e@f@g@]@h@i@j@k@9@l@& ", +" m@n@n@o@ @ p@P.b.b.G.G..+.+.+++++,+^+/+A.u+L+f+C+o+o+v+E+g.,@,@s+6@6@@@[@f@3.q@r@}@s@k@9@t@u@v@w@ ", +" x@y@z@A@ Y s.R.-@S.G.1+U+B@t+,+,+^+^+V+{@6+f+B+W+o+F+g.g.N+X+s+6@@@@@C@7@g@D@}@]@9@i@t@9@u@v@E@F@@ ", +" G@H@I@J@ K@b.R.R.2+1+U+.+++3+m+,+5+A.f+f+n+W+n+F+E+M+,@s+s+6@6@@@@@e@3.q@D@r@j@k@8@u@L@v@M@N@O@O@P@ ", +" Q@=@R@S@ @ _ R.F.G..+.+.+4+3+5+l+e+V+7+f+n+g+o+o+g.g.g.G+s+s+s+@@C@f@3.]@3.h@i@i@9@9@v@v@M@N@T@U@V@W@# ", +" X@Y@Z@`@ #s+G.G.G..+++3+,+,+e+A.u+f+f+W+o+o+;@g.g..#g.s+s+@@@@3.e@3.D@D@]@]@s@9@+#v@v@v@O@O@@#V@##$#R@ ", +" %#&#*#=# -#G.>+1+.+d+++l+l+m+A.L+f+f+n+g+o+F+g.g.g.s+s+'@@@C@f@f@3.]@]@]@]@k@9@9@v@N@T@O@O@O@U@;#;#$#(.@ ", +" %#>#,#%# @ '# +.+.+++,+5+^+A.V+6+f+f+B+W+>@M+g.g.X+s+s+Y+Z+@@@@3.r@3.]@]@s@)#u@v@v@v@T@!#O@~#@###{#]#$#^#/# ", +" '#'.(#_# @ :#.+.+d+,+^+A.A.A.V+f+f+W+o+>@v+g.g.N+s++@@@@@@@3.3.D@g@]@8@s@9@<#+#v@M@[#O@O@O@V@##}#$#$#|#1#2#@ ", +" 3#4#5#6# b+o+d+++,+l+A.A.6+f+f+C+g+o+;@v+,@:@s+s+Y+6@@@7@f@3.3.h@]@j@9@9@9@v@v@v@T@O@7#V@######$#$#8#c+9#0#} ", +" a#`.b#c# d#t+d+,+5+/+A.7+f+f+o+W+F+>@F+g.G+s+s+Y+@@@@e@e@D@h@]@]@k@9@9@9@v@v@T@O@O@U@U@e#f#{#$#1#8#9#g#h#g#i# ", +" j#k#l#m# @ d@,+^+5+A.A.u+f+D+g+o+>@v+v+X+G+s+<@Z+@@@@3.3.}@]@]@]@)#9@9@v@v@N@[#O@7#V@####$#$#n#n#c+c+o#h#p#g#q#@ ", +" r#s#s#j# @ q#,+l+A.A.f+f+f+D+o+;@E+g.G+N+s+s+@@@@@@[@3.3.h@]@]@j@9@L@<#v@v@!#O@O@U@##f#f#$#n#n#c+o#g#g#t#t#=+u#b@ ", +" v#w#).x# 5 Y+A.V+V+u+f+B+W+o+;@;@g.,@g.s+Y+Z+@@3.7@q@g@}@j@]@9@9@u@v@v@T@!#O@@#U@##e#$#$#n#|#c+h#g#g#p#y#z#A#B#z+@ ", +" C#D#w#d@ E#m+A.A.f+n+n+g+o+o+M+g.,@s+s+@@Z+@@e@C@q@]@]@s@j@9@t@v@v@[#!#O@O@O@~###e#$#$#1#c+o#g#g#g#F#F#=+z#G#H#I#G ", +" J#K#L#M# @ N#A.7+f+n+W+o+o+;@g.X+:@s++@Y+@@@@e@3.q@g@]@i@)#9@9@L@v@N@O@O@O@V@##{#e#$#|#$#c+o#9#g#g#p#=+=+G#G#u.O#@+P#@ ", +" Q#R#S#Q# @ T#6+f+f+W+o+;@v+g.:@N+s+@@<@@@C@3.3.D@r@]@]@k@9@u@L@v@N@O@O@V@U@##e#$#$#n#c+c+U#^#g#g#F#=+=+u.u.V#H#@+W#X#- ", +" 2#Y#$@2# ^ )#f+f+D+o+v+F+g.g.G+s++@Y+@@3.7@3.D@h@]@i@8@9@L@Z#v@!#T@O@O+U@##;#}#$#n#|#c+^#g#g#_@=+=+G#u.H#u.V#@+`#m.m.$@ ", +" $.$+$@$ n@f+D+o+o+F+;@g..#:@+@s+@@[@f@3.D@q@]@]@j@8@9@u@L@v@E@O@O@O@##{#;#}#$#8#1#h#o#g##$=+t#=+A#B#$$%$@+@+@+&$m.*$=.@ ", +" =$-$-#;$ >$f+o+o+g.g.g.:@s+s+<@@@f@3.3.}@]@]@j@9@9@9@t@u@v@O@O@O@####;#$#$#n#1#c+c+U#g#t#y#=+=+A#u.$$%$$$@+,$m.m.'$'$p+Y ", +" )$h+!$=$ @ n o+o+v+g..#,@s++@@@@@@@e@3.r@}@]@j@s@9@Z#Z#N@[#O@O@O@@#;###;#$#$#~$o#c+g#g#g#t#{$u.u#u.H#%$@+]$m.m.^$'$/$'$U.($@ ", +" _$:$<$_$ $ =+v+E+g.G+s+Y+Y+<@C@f@[@g@]@]@s@)#9@t@Z#v@v@E@O@O@@#####]#]#$#n#c+9#^#g#g#g#y#=+u.u#u.V#%$@+@+m.m.'$[$'$'$}$U.|${ ", +" N#1$2$N# 3$E+v+N+:@N+s+<@@@@@7@3.3.h@h@s@j@9@9@+#v@[#[#T@~#V@O+##]#f#n#1#c+c+^#g##$_@=+z#{$u.u.$$@+W#@+m.^$*$'$4$4$5$6$U.7$8$ ", +" T+9$0$a$ @ b$g.X+s+s+'@'@@@@@3.f@g@]@]@)#j@9@u@L@v@N@O@O@O@######;#]#$#~$c+U#^#g#_@=+=+{$G#u.u.@+@+@+c$m.*$d$'$/$U.U.e$6$p+p+E @ ", +" f$g$h$T+ @ n N+G+s++@Z+@@f@3.3.g@}@]@]@8@<#<#+#v@N@!#O@~#@#e#;#{#$#n#c+c+h#g#g##$F#=+{$A#u.u.O#@+@+m.m.i$^$4$j$/$U.6$p+p+p+k$I#K+ ", +" l$m$n$o$ 5 7#s+s++@@@@@[@#@3.h@]@s@]@8@t@L@v@v@T@O@O@~###e#]#$#$#n#1#9#c+g#g##$=+=+u.G#u.@+@+@+m.m.m.m.'$'$5$U.e$p+p+p+I#I#'+p$q$@ ", +" r$s$t$($ u$:@s+<@@@f@3.3.g@}@]@]@j@8@9@L@v@v@[#O@V@####;#e#$#$#|#c+c+^#g#g#y#F#G#u#u.v$%$@+W#&$m.m.d$'$/$4$U.U.w$p+k$x$I#y$.@.@0#z$ ", +" A$B$B$C$ @ '#s+@@@@#@@@3.D@D@]@]@k@9@9@v@v@v@O@O@V@V@##f#$#$#$#c+c+c+h#g##$F#z#B#u.u.u.@+@+]$m.^$m.d$'$'$/$U.6$D$p+p+k$I#I#'+.@E$F$G$@ ", +" H$I$J$K$ @ L$@@@@C@C@3.q@h@i@]@9@9@9@u@v@v@!#O@@#~#{#{#;#$#c+~$c+U#U#g#y#=+z#B#A#O#u.H#@+`#&$d$i$'$'$'$M$6$w$7$N$O$I#y$P$p$.@E$Q$Q$)@^ ", +" R$S$T$U$ /#@@@@C@3.q@}@]@k@8@9@Z#u@v@v@T@O@7#O@##{#$#$#|#c+c+c+h#g#g#F#=+=+A#u.O#$$@+@+m.m.i$*$'$j$M$U.U.w$p+V$x$I#I#I#W$.@X$X$Q$Y$Z$`$ ", +" %.%.%+% @ @%@@C@3.q@g@]@]@i@9@9@v@v@v@N@O@~#V@####}#$#~$1#c+o#U#g#g#F#=+B#u.u.$$V#@+,$,$m.#%#%'$5$5$U.D$7$p+$%x$I#I#y$.@%%&%Q$*%Y$Z$Z$=%@ ", +" -%;%>%,% @ '%7@3.q@}@]@8@s@9@9@+#v@!#T@@#@#O+##{#$#)%n#)%c+o#U##$y#p#=+B#u.u.V#v$`#&$`#m.m.[$'$5$4$U.p+!%p+N$N$'+'+W$.@F$&%Q$~%{%Z$]%]%^%=@ ", +" /%(%_%/% ,.7#r@}@]@i@i@)#9@v@v@M@T@O@O@O+##{#;#$#$#|#c+c+^#g#g#g#F#=+u.u.u.H#%$,$@+&$m.#%[$/$5$U.7$!%p+k$x$I#I#I#.@F$Q$Q$Q$Y$Z$:%Z$^%^%<%Z @ ", +" H+[%[%}% @ |%D@3.]@]@j@9@t@Z#v@v@T@N@O@7###{#;#$#~$~$c+c+9#g#y#y#=+=+u.u#H#%$@+`#`#m.m.[$'$'$5$U.U.D$p+O$$%I#p$W$.@.@Q$Q$Q$1%Z$2%3%^%^%4%5%6%~@ ", +" >$7%0@8% @ E D@]@i@]@9@9@t@v@M@O@O@U@####f#}#$#)%c+c+^#h#g#g#_@=+{$G#u.H#@+@+c$@+m.^$*$'$j$U.U.U.!%p+p+k$I#y$9%.@%%Q$Q$Q$~%Z$2%]%^%^%0%5%6%0#z+@ ", +" a%b%c%d% V ~#s@]@)#t@<#Z#v@O@O@O@U@V@##}#}#$#$#c+c+^#h#g#g#t#=+u.u.u.u.V#@+&$W#m.i$[$'$/$j$U.e$D$p+p+I#y$y$.@.@F$X${%Q$Z$e%3%f%g%0%5%6%h%i%0#j%k% ", +" l%m%n%l% @ G@]@8@)#<#9@+#M@M@!#O+@###e#;#;#$#c+c+9#^#^#g#F#=+{$G#u.u.H#%$@+c$]$d$'$'$'$j$U.6$e$p+p+N$I#I#W$.@.@o%X$Q$~%p%Z$]%e%^%q%5%5%0#6%r%s%s%t%- ", +" u%v%v%w% K #$8@9@9@t@<#E@[#O@~#@#U@e#f#]#|#|#c+c+U#g#F#y#=+=+G#u.u.@+v$@+@+&$d$'$#%'$/$U.U.!%p+p+x$I#'+9%.@E$Q$Q$Q${%Z$2%:%^%x%g%5%5%h%0#y%z%j%A%B%m%@ ", +" _.5.C%_. @ D%)#9@9@L@v@v@!#O@O+V@####;#$#|#c+c+E%g#g#p#y#=+=+u.u.u.@+@+c$&$m.d$*$'$/$U.U.U.!%$%$%V$I#P$.@.@F$Q$Q$Q$Z$Z$e%]%^%q%q%5%F%0#y%y%z%j%j%B%G%H%I% ", +" J%K%L%M% I%I#9@<#v@v@N@T@O@@#V@##f#$#)%n#c+c+^#^#g#=+p#=+{$u#u.v$@+,$W#m.i$'$^$'$j$U.U.e$p+$%O$x$I#y$p$.@&%E${%*%Z$Z$Z$^%^%g%0%5%F%0#N%0#j%O%B%G%P%P%Q%R%@ ", +" G$S%T%U% @ =$Z#u@v@v@E@O@O@O@##;#]#$#$#)%8#E%h#g#g#y#=+z#G#u.u.v$@+`#c$m.m.'$'$/$U.U.6$p+!%p+I#x$I#.@.@o%.@Q$Q$*%1%Z$3%^%^%4%5%5%i%V%0#j%j%O%W%G%G%X%Y%Y%Z%Y. ", +" `% &.&G$ +&V#<#v@N@E@O@O@####;###$#)%|#c+c+h#g#g##$=+{$A#u.$$%$@+,$m.m.i$#%'$/$5$U.!%p+p+$%p+I#y$9%.@E$Q$Q$Y$Z$Z$e%^%^%^%0%5%V%h%0#0#@&j%W%G%G%X%Q%Y%Y%#&$&(.# ", +" %&&&*&=& - -&v@v@[#[#O@O@~#####{#$#n#~$9#9#g#g#y#F#=+{$G#u.u.V#@+`#@+m.m.d$'$5$}$U.!%w$p+N$k$y$'+.@F$o%Q$*%*%Z$]%e%^%^%^%q%5%V%V%0#0#y%j%B%B%;&;&;&Y%>&$&$&,&'&K@@ ", +" )&!&~&{& @ ]&v@v@M@O@O@V@##f#e#]#$#8#1#c+^#g#g#t#=+=+G#u.O#H#V#@+W#m.m.'$'$j$4$j$e$p+p+p+p+I#P$9%p$E$X$Q$Q$Y$Z$Z$3%^%^%x%x%^&0#i%y%s%s%W%A%A%G%P%Y%Y%/&$&(&_&:&:&<&b@@ ", +" K@[&[&}& @ |&8#N@E@O@O+@#######$#$#$#1#c+g#^#g#_@=+=+z#u.O#v$@+@+]$W#d$#%'$'$M$U.e$e$p+x$N$I#P$I#9%o%&%Q$*%1%1%]%^%^%g%0%5%5%F%0#0#0#j%1&G%G%2&X%Y%Y%#&/&_&,&:&L$L$L$3&&+@ ", +" 4&5&6&7& @ 8&'$v@O@!#7#O+##]#}#$#~$~$c+c+U#g##$=+=+{$z#u.V#V#@+@+&$m.^$*$'$4$j$U.U.7$p+$%I#I#P$P$.@.@&%Q$Q$~%Z$]%:%^%5%<%5%^&V%N%s%j%j%O%G%G%2&Y%Y%9&$&$&0&:&:&:&L$L$a&b&c&d&@ = % ", +" e&f&g&e& @ h&c+N@N@O@O+####]#}#n#n#c+9#o#h#g#y#=+B#u#u.u.u.@+`#`#W#m.[$'$'$j$/$U.w$p+p+$%O$I#W$.@.@E$Q$Q$*%p%Z$Z$^%^%0%5%5%h%^&z%@&z%O%W%G%G%;&P%Y%#&$&$&0&:&:&L$i&L$j&j&j&j&p@J$@ = % . . ", +" !&k&l&m&J.J.@%n&e&4&K@)&%&`%G$J%_.u%l%a%>$H+/%-% %R$H$A$r$l$f$T+N#_$)$=$ $2#Q#J#C#v#r#j#a#3#'#%#%#X@Q@G@x@m@a@1@/@!@%@`+P+I+w+q+8+9+_+!+$+W.H.w.i.6.].=.$.` ` X T Q M I I F C A w u r n j h d a 8 4 | [ _ ] ~ ' = & $ . . . ", +" o&p&q&r&K@s&t&u&f&5&[&!&&& &S%K%5.v%m%b%7%[%(%;%.%S$I$B$s$m$g$9$1$:$h+-$.$Y#R#K#D#w#s#k#`.4#'.>#&#Y@=@H@y@n@b@2@V.~@&@l.Q+J+x+r+i+#+{.~+%+X.I.x.j.7.^.-.%.@. .Y U R N L J G D B x v s o k i e b 9 5 1 } : ^ { ) - & $ # + . . . ", +" o&p&q&r&4&s&t&v&g&6&[&~&*&.&T%L%C%v%n%c%0@[%_%>%.%T$J$B$t$n$h$0$2$<$!$-#+$$@S#L#w#).s#l#b#5#(#,#*#Z@R@I@z@n@c@3@V.~@*@l.R+K+y+r+i+0+{.{+&+Y.I.y.k.8./.;.&.#...Y V S O L K G D B y v s p l i f c 0 6 2 } ^ / { ) - & $ # @ . . . ", +" w&k&l&x&y&z&t&A&e&7&}&{&=&G$U%M%_.w%l%d%8%}%/%,%+%U$K$C$($o$T+a$N#_$=$;$@$2#Q#M#d@x#j#m#c#6#_#%#=#`@S@J@A@o@a@1@(@!@ @ @S+h.z+8+9+a+:+!+*+Z.H.i.6.9.(.>.*.` +.Z W Q P I F H E A z u t q m h g a 4 7 3 _ < ( ~ ! ; & $ . . . ", +" m&r&r&x& > * . . ", +" l&q&q&l& , * ", +" k&p&p&k& ", +" !&o&o&w& ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/src/Mod/Ship/Icons/DataIco.png b/src/Mod/Ship/Icons/DataIco.png new file mode 100644 index 0000000000000000000000000000000000000000..223338ceae17dcf8c11298f9d79b76cdaeb8f68d GIT binary patch literal 11365 zcmWk!WmKC>5KV9>g&@Vgy9YKE}m?_9e z0=EADCNB%wLU)i|WOdyDfDc&zKR`fM4jyz9(OphS3ULJi7KM*}n@H*$x`pp9^~GJn z+0oI`$sHi!YH8|jX+h>?>uy6PBd4UQ6O4un0FVLXB*iqnm(K!x+_ki_Adr;<5>$1xsLx{<3Vus^%e8@>cIpZ-dRokp$Gw4Fm9=wdoSwm-h@SWW z6j33lC}HYw;vm>4MRF`E9xwi9zo49k`=x^r924<~^iFLuuVJD4Q^?B3#WPKTy+=*$ z?K`As(v>n6m&FR)i)ms827-H0R|B8V{z)Bcu*|f2XTE%%2xA@%dPZ?4xN0x&>M8_E z!oiT!HfJ*;w`rGK1He6SU?j=imnoOL6TMtxc#thMpeG418On@i{HIHpW}K*S)Ej6DJ48v7?1dvC#?n}InDARX6e z-Pd;linZP}V&2y^%`KLhJ!&xV7>ic~o29tM7PrAH9T(!|CSlq-z_B!Da|GD&NmC1P zpGT`WJRjsA@JjA5!Mz}uK(Bi0(vQdhOi7qTRPbfr2Nu@QuMnYo^>jGi!7O2OetL0- zr(GBGoS3grt_=5GKTa|uUz`5COJg!;-APu;78Mr-;IWxerTAt%_LBylc=_xEt*bhFgbVeI zGk*Y>NCyOTp1|``M8J_VVt)OX;7bdO>B0(w%YcB_yym&WWAxsQ!|c8>JUljrm~<_4 ze0S`!@(E9|TO6IWPUfmxPfFBYoL4Qwq!EcvZaEe-B7rB2SjS`GS#*FOxvx zq1^F=(dPjSfA_(x)!39rKw@1qhZ&Um+)K6^*q)D%!)!2&I$xd-_%}ZvA_h=cecd7T zV(U3#>vh!zW?fw|P0D==g9JgI&vi@>H0^yGgiGQ6=ok|ZlT}`~Q&d0Vks%eXyD^kq z1gcl0aI2?Qy0j{B5W)_#(7AAb3tnC(V8wGgSYInlig1g8Rm>OuhAk!vXz%uadprmX z$`jlPfTU|JHhYoYoozr4^vytv*YBSYWN8t@I~GDL5L|j8PDiTB7_;-E6hkrKa0x({kRqJIj|y3`Mud(-uPwarq`ddm#b3(1<0z zA17-aaiB3rVsFXc^#3&m;#=Zdj#YIjG9wcsnMQ?ydT}k<6!3ruIfvUZt1O%*w|%R6 zjp5<5@2!;#QPt3&=qXWuY@lv(EPDuiS-Pk%E*-3#`hL+gJ1KBQQIbA zl02sAm5Xf=>9A7Azbz)mnwTnBFo|3ccJ>oFpuw*)_a2iF0W2mzwN6Q@Oj!ijQ_(hX- zxAIRVBIz(1bQPy~`*HXhK`=DMC2)%5{A7}e$)KgaKPJ?zua!}!)&l;{VX+0HZ%x*f zf(Int@+bAEz3L-wt@UPCS+yVe>ODW))%rn*a4ju4r|fRWz7N5GeW0G z3z!_M!iq*LT+J35Plv4c`k_v*G3Jv+yVII4>~9RREsRmWNprMhvY05CNxzUnGVxwe zNH5?sBhnaVo)Hg*Fg^L2gQ*NV9={P1aTd;>+uVb&KxN*X&9>Ouvu$>O!k;b5NUp4< znT*Z2uG8g4(#wa-ox_{x_pU!T^MN->^A+MqJPwS45ukGZ);`{vuxcBeU&U%+l)6ZI zX@uyic-^Fp8j6VD?j8@tWy_g{CBe-eSsIR(^=!SNH<@ccUvdgP7LSj`g*!X zpIN-HARe&=VH=Ir8E!`d0Rm%A8d}xM+q>yBZh$Io%!2=5()Wga;);O^(wG*mQZgetcam*{qF8*^Eg?I?P^tI zefy_a{}hUjcj|DCNb0|d`?!CEndhzZ6{tdug#GDLQGGo~{0oB~tW`DKjt4m1P{3_} zouhMW!8oXsG_*XFEjF{<8-PU#LL$RMefk#)BC&9w2#)a~V%m{~vHJ7Ve8`<>XHwur z@nSXvo_~7As3^+4Z9pf?SiK33XQ~Td(J0aC<$*CE|GF2Eloj?%qn%|$JWm{#m~iSQ zyepimo7-2TgliC5cxsdi>kc0{KcCH9T1sK<#lEhS8*luc{erB=)Jld4E>sLIL~P0= z%pMVhe_l~;Mb%(#&)V}@O<&*s2MMh)xN+U3mZ_I)pF4pnZ+>v0&Uk7(PUr0^#y$*r zmGhZKwXDmM<@cybwO*tA^LQGFR{!xlI?}HV4#W5UD73GSqDR0~1?X+H{M(kRrV+WW z^Ue-~BM{}!l-54@Q#}Y-hHMq0B#jCXUXcj@p{oF-r#?P8xfRZUBv{D+M{HsS$ud_A zP+lftofqrHPTq8Iy0_g5WdS_vF2(r|=YBfXU$z`b*!vp$rr)VJVI_-o4_BI5e*OCO z&$<+uHsybJLll=g+t5IOf3_h0!z{45z0f269;ZH_x)FgNtzAb&N+?gqui9-O)eZ zn^{$LkLLQ0qu;6P*3mc7Pe)IxU2tG}!DGN`bNs-Hp~UJd{G4u!wD`iqwpe-j0W&3V zAejMVRwWqgoP)T&vZRfxJEzX7tpNo{BGxT zobBv)Y(}aSq_J#(9O#w^6k8ye!U7#@QM4w}TBZSn`AyIY-(@wPgghXw>`TKw34-~# zq1#IL$4&FFTS9+Zy}Itph?DMQbg93?>vD(LLqtB0K6w1zQ7A~&78gt!Wr`JI0=f!D zhU$`WI(Qj<@y;*|~cf8i0~F_jXn;J;CAAAgUv& z56?J3`z3Gx;70`17Eo(zE5jnU*KCO#m(7s<-RTk+fNwM_Sd-$2$n)sX3mx;WgA6|G zCssT-g(iMl4iEfg$qC^QsBz=>UF>MAX#4zdtt#ED0Fg#H>o+p7$wZ!zA666z*l*cU z;0!}g_bFly;tdCA#}umo-_alpc)i=twy7rPjaYxkSmJn9P|$K6B*dase4yl?&Jyyw zBaJ@%2&n(tlm>8+4OS!)T|st=7x&YEwVnVF@;F&cArvI*{X7&_+Qkp1rluaAoK&kI zPAD+1l^IrIYAQX;y-=h#@kTu6O7*@v5P8oO=z?=ehNQiej{5X|FbPFlp5g+|b0cFi<9bk2 zZkWXAuwjspK|-PN9Y|B6s^UrN>=NR>b^zv?QbdFbYk}~O7b9gVi%b)&io#bNf$BvY z4IiOFU-O+izuomEm5Vs@t--miA_9D%8B!VI+X#X9BAvQ+-?#O_AjQ6QLRv4od(?h!xH?8#Dm^YUyror>blxJaD9jxd(jaS-UE7;hml<%Nh~v^qgFpk(Z^ZX z>IB?H`zBz#B;fZv9^7l@bi1y$Tz<+8e&d;FtAGhhZJV4Cx>V<<9}8q?(2hFtAp`t^oA8olOlzhISEy z@bEDK!y_ZooCI1+Eo1z+ueO;e4)m`qrO(|}2*0TS0hL~3ttjt{QOYe*HpQcsVHW7b|3LMen!)$&HX~@-8>aA+ z2B&=QzsQesT?Na(#%ql3spbG3UpX$z4|7g5Xb%QmC57W8)jX-nQbq;L?uC38meFAy zR+_#kF&YiAn3RRKc4JyU!II$~Tiox5>%S9EOllW7>6BB6@ZFd47xGDy`SfJm+;g#G zNr{DZKk#R?ikW*|JHMv=(PFBD884Det##zqP#vK8b3G-JZwu+gz2?dh#eId1y7N$e z`YS90gT%VxWXJn#YRY41(AR)*d~z&^PiAsMWKmZ**qQ>U9KE~me(&t=QTMJfoWNvO z_i-#SAZ)(IX`K-}(zJ{eCr?!{UgN_D%qi~vrk;O2Sj@*SCC4h>!H4B)Y>b%s+$c2H z>38oIfer7E*@N4ADc-hw>_2-{Uowc-di(Gl4`vrYO!eEHtZ=mLYmr+efPZUH$Y2=v zVo5fSP_~Nzznx0r%t<@WfbB4~jT5e6<~ zoXicPQzQg9UBf0&#(k&r?(~9mzeCojzTEZplI(cPk&Q@-J8EuB{s6*F1Jd!hUcD(_joUgHj({xkczVRhoY@#01zv9B zztu_iQlo_pp&%D;p5vNtbpak06igbQ0gX55-@i@~43EN0Bz?|S^AtI@3WA4q|pMKdyDw=;h z|B8S9lsg(Y${hog9Kn%UmM1FG5UHUb#lD{euw@iDcL$!8$?nGCn><`>AuyvFhr&&v zxp?GOeL^RB(er@KoXf-mM_UCWO(?Ok;EGn7fsPtrsRWP649tDzt9Acv;fcxt!DLHF zh=dQ#POT7v@aH>-j?r!klYSHGIqHCMoBNUpOc@A+fRNBbu7w#p>B1UD?tw9Ed1QRD z;SQ$bJ1aMA1i?P%Twh@*;>`4PL4BB?K;&hl->1nLJbQj!NIxoqPaZfW&JFLxmI-n3lb-I>KxTl2^80%?;I6X_a8RJZHi=nULTu;>qA?Qaon{E>^B$*U%Z zoGw$m?wFSRY96eu<{KUSqEjC(mK&Zg0pU@OU%E-=hALA9eirzj%zK`Fg0kFSNIfv1 z>BWCh0nc|njX{|}(h*u8fU@itUkMt1ept=ZN|WZf4Y|bf(eV3K(F&DlPX8S)`+2%L z6FOj>!n_z(?_vS!nAhAn9v$a zX|Gn^IH89&&s)4X?soqqDjAUlUxcAT5=p$ysFTfcnX^=0o84s$s<138%}+l=x{cvB zKe3j{rY*Lbm&4j5@q{fep#;Tur$0JRGFTa~+ogEs_V$dEPM+ee^?5jF2Dh`jsK;l{C$FKTqvh$iO3UaKjdedBkFRKgP^QM{wburW3ue>& z^}koC8tc@>3gx`A>J9nsgF1feHh9h^rKHD`oK3KL^$&7bPdaqhm~}sFf8hR`eemj= zcYdDBr$2S{e2SxBC;lOy6HEZR!;UUi-~}zfK zWMW07L9cnbdgT7j&3%^5#pkEqn=9k64_7&|lWydhS=Vl*FBj_Ed6>s?SKk&qMB+E@ zwY@cuCU{q6{OA%D(uy^6sokCIc3Bgi`Pm=h8LW8kxwdT3-&Ee!c+6=<t?;UnM1jj@mxCp)jm zqxcKJo-P%uycZ`39>;CCN!`CZUK^s(Qf?^O8F}w#T5}eLv(k8eXNyJ8On|R#G5Z{W zihpW~+@k>y;c(rhuCXGl)@?6~5*4xB&u`FQX?gDn)YLwohr2c~y7~#O%{A%%#Cjg{ z6`$i*BXx@jHPlL84%6(}wlJ*`PH zqycc5|PEtv#NV%CWHB1&!8(Lyt+w4p2V{~}&{ zC?;xPd`3R0&j>XW4aR)HZztAJh~+*aFf22;tV~+-eEpmG++5y|1^n5!q6`fe7`&d; zouOx{qD*ykN-@nj%}G`~lbIqZ^rfZ%5snWOdRS3v~R`D1Yeg*wF{5C58|wRCq}+9m}kx7hB*0)?MQNYMN9 z!}IT)%j_J$VKS=883t`NUL4E7E-bQTc>v ztbGQbgn5KtB-o$8lWlSGSbq9*luM)T?riF6Z%kJP)?m&KbE6TMx(U(1n>;t(VwrgR)oQZI+C=V+x>}q>czLsv*Z^I!jgT^}S(qbhKKP&fV=Z4xxzs ze04$^lkt9-s&X(g68TMeJ{s#)xyUO$9$KVACG@jDmCvGY0RQ85FHdMSs0aKv@Vzz$ zMaP#TFYwA1_eP_5k$ARB?G$D=d#(zY9JeqD@eqExJ&Ror@TC+G7~*Lg)R4o^9qmXi zy^Jj@qaosRg^NTZ5m%aED;^%nk*`tD)kQD9QR1Vymp`2l$rH4Uc@~bQ*Qlid+)N5U z;*`q&F3={Av{#$BNKs)wjl|(|#0UNDdbPaV-Wc4zlyO**roz<4O&BWwAJEIIt8#dp z^XTa5Tk|s^R7DH3M>oHo&)c2#tAJwGad_IAhw8KCdH$pLpX}qUy{h6HWdLrf4FpGa z10<;E6e1#|gM))~pXo%Mj7W-R==ze7VA9~pk(!v2Z~WKxbZr0Ik=5tQ!c`@Zj#l7VhgLbqd)LOJk&aoo zj+~Lvb?kP*xLfcV8y6cp2N$V;Ds}rgD?1zFieHcu6=?e5E5-bDJ(lQc*YmkTMYn#v zNiTqYZ`*{GbGhj+d#ZdVD0Yy<_hBm%>nsHLTkS9pM2(!{cPOxhLjBL=JIAydJc)lN z$}nG2-_YkgS?YV|VLSnq2>$Ce!AI+vzdVk~ru)fTgn&3(jq;;e$Vf8Hv#{CGZ0U~K z&&BQ6=llDS$@n7csq6H`rq?f2m`k*!M0v7Q%+~viB`L5_bAsqCsZ!iG{rAz|#+Xb_+gUm1 z&y0)>uCA^mHB~i!FVkBR+G=VTQ2RL`s3t3yv&7SGhmT0Ie=ZGkTp^?QlC~HB+avJv z*z879W_D@Hb4IJYJRkIgDmXw^R+g|lO|sj0JETkEEFLI$KkZhW7x-j*c9&^G4iIvd zeRoU-tDI3q|!a*^d= z^7RrjrOW%ExUkt9Dkm`j2)t{^$5)~$W%(wrvZQ`wrQFw;?#?jbFL0F5u0Sb9ZC((1 z{Ez-|w?l~ItA-_{@=bU)7p3y*)oL>5h%Ms5a~oFF$?2Spe4xD01k~hM+}esiF)<-a zg^9rJ%8>FeuDoTO91f-zAYKUS+p0IC!Xe`QiPlcZ+(*Wk0M>_teVEgSMq_x|t>J3b9Kv>>{xtK-%fw%>V@4`j?$>7*;= z@Ls|KzO;Kficuta-yF^y2R$5D)m3YY~xHFuOl(Y-h_% z>cr7iHcYqM+Skb;4SM;S;4K(mk%yxbO&t5w4q}z`;gI7e7LM@mgL%A+q~sRsor!Ek09X#Nz4$plUe>=&5sl z*C#uEeyG*Q67)D0_sxs@B>(*}-&DCoL#T3OU=!KMp3qzH>-X@T9q!qQI+L8I73aQf_yJ0<31~crC9Fk8C|$nvi@eX6+mz7#WhlDv;$oTf=J{IcIO@yO!gZtA z{eyXePx0QcLT1Q}Z(i@iLeL}b!d1l9UyTTIYu*3?XMV1SV!hSL&J$&pV9H|sO8&-J z9H!a)uVYLivlNm@U-7|ycJ}tx0hfcgYxb*V7z#)wj{1ZSX_n+fXvI*j?Wv|VgM#zo ztXo)p56v$b!Wxgd+S=T3Jt|?A6CdG2)u=!I9x{8O!bFCGlaTr-e1+yQJ(ir{0qVuz z`5J*@z{};32hPk+!W3)|9;Zz`A?@QBmX zY}IY5(`Zb;fx4D4o4Ngz{Z)wDVYSDFw*T$1+jxH5?IghoN+X?Cd42EKyc!zXEjJS5 zXdx@mduTCi_e?6@5waJ-L){Mfj=9v(GE^0;y2+DFtFr!Pc=xNix*F8eFCLW-AKHtA zyj51LkXw_ZT%IILg;xGokS8^!J74a_Z4}_wwb(xjd7m>+u+wpVdwJx4G@srS+jt0Q za^5(nN8CWZH9L8K-gr0cZ$gV3Z+U-1jMMmNtfLIEjh-oHdHrJ#mHm@|e|j@!>Y>8~ zzyF^F7-Q+KmU=vEUMs`5T5b6X2RNCp$@V#%F8rk;{79wX0cs9|#|(p(%sU}n0X*=1 zTajhTSvOx5PLGPDVtv2h2-)iPwpWXS6Qk{Aqb(?Y;!5s7T6W@L9ZwM2grABNUewz; zuY;}$C&D+R{d?$TiG>~TK9X|hh+d>I~>=p{PR+anf_P|rx`U;=h{$i73_uzQ`%4x2@etId#Qj^fvt-kPsMts_yCg}469;p%qMLXMs> z92A+!*5jbJwcZai{p4zmGgI;gZPfku=g|L8<6kAqSms<7^YlhTH3~?fJPinB{I{2GA zKa;~sAaAa6om{CpX@q#;P+q{@lFP~a3$`z0-vrbwGK&2+_+1B_?wNnXYyIcD{w)_Em|~?Vcm5WEBr!FWx}liwJu|`}!kvJOzl=RnAPL0w*Up-1jhg_8*DaOD612tE#G6{qE0KrXWii=a1VT3MK0uSANvhHJ7BA zb33o+@YwzP5i#EqsH>YPC7E9Kw<1TAVb6Z@69`9qOBD;_%vpn|fTQmJAWcVg^}ZsLqv3e5 ztm_yUSXgj#5D*Z!>|SgcNxDl|T3WVnxf|1Ax6zO!7|$;*9%5`r!SpAwhV*XELm|A3 z8Np^SRhH^bAE<_b3fDodrcRNnTv%Bd109jE;^F3wcm8VczVxdLYH-h&hfAku$-Y?l zMKmgRaHLGB#-1fthW68U0Qnwr5e(ik9j*o z2`ZH}HQ|`=d9*!Hs`L!~2U*T328NQ)=TJ9eU#-z^t}0ClRgcz`)=M)-J+G`D=n8nY z(i1xghN@@SK@0Xy>m7V}(UMNFTtnv~zBe|knTmFu5csg1kpann2ifX_6|w#sj%Uk_ zC+hTjopW<@BCAb~`cqJeR+QTAyIs^C&R2KHIx(e8yaO{my-!}|J1g{F8jd}G`9EIu zsnT)Yd-q=k@n75q8#QuqS^Z@@gZWN&!{3byty%o>QNrIak>K8V&Hu!~8lp~%+YiMP zALysulCCs4wmbDdeIygZ<8>iJx%!~a)yUNgt(h3rD}Il`DaU+)mOW5K)+#+MtrjI* z{5>-@_4YiGTtfK+12ZGzhuhO7H+P2AwuZ8@{X2ceb*swoRU!o_0~Pwe428y1Lq6W?>1+j^c(3?L9W_k0_0ng;9o$LdK$r za^cNkEbV}TgNl9ppcB9UuIy27D58{xM)HbMIOi38SPwik^)E7!AWE<%#kwFvlAGv& zdr5WJ1Ee{mZrcakL=zt=^1-ic9sUQx#LkSu=x zjFv7w{9BIhdwbl-g&8f#?Q^wTT3+*~ZTO$B{bUXwH^)07_)pQf6gn+tbdmrg!zuws zIokJV@=dKfP!i+1%9@yzn(>SX5t{jQLGYc=!L7Fv(&cuET=Jxis248mZ*ERWs?5i| zDUo-78!AkEddDMdwnTtf+eG=Mr>Pb<%p-rEg{QU_ZT_$+_ zDAZ2spry>g2l5D7OynFdBeo}WydL0KAC$8nU2OG30S<8mbqi-S@1NPm+#Iw+5ACkg zF*8fkVQ()l>)AOuML4bq^=(}Y0^0BjglfG7g%5gyVX?a2p6m^Lk4jw!qA+3s4l1SU zI{)V8UN?ugC=V9q7NVgsp!OL@MnZzPBxQJFLTZ?@ZG2*4@8#vC5{lB_#_x1IJU%w3 zrl+T$u6MRuKs!1?-B1H2O#QwqfZl+QmbP}hje~>#;ZB0cVC6=PEmo zkBsouTa0{P8^Kjxx~G(~CjYJG0$f zUEereHhUZatkAa|U=AQ$QC*FS2os#+E%;_*WV9~w$BYdd8^>v6ar%?iNW+uNI9$WfGprddr6r_~k>@j*m1qKBK156s?OP=*qk@u*~F3pU*@)-M1<#2jq=CD=5#${> Y)4}H8-f2<+9ry*vNhwR#ikpP|2Nop=iU0rr literal 0 HcmV?d00001 diff --git a/src/Mod/Ship/Icons/DataIco.xcf b/src/Mod/Ship/Icons/DataIco.xcf new file mode 100644 index 0000000000000000000000000000000000000000..81e05ac42dbb609ebfb16f223a591fcbdc7753fc GIT binary patch literal 85943 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 h0~b`s#Lczj0mLT~s7GeMZ literal 0 HcmV?d00001 diff --git a/src/Mod/Ship/Icons/DataIco.xpm b/src/Mod/Ship/Icons/DataIco.xpm new file mode 100644 index 0000000000..19aed7ffa0 --- /dev/null +++ b/src/Mod/Ship/Icons/DataIco.xpm @@ -0,0 +1,1021 @@ +/* XPM */ +static char * DataIco_xpm[] = { +"128 128 890 2", +" c None", +". c #A7A7A7", +"+ c #A7A7A6", +"@ c #A6A5A6", +"# c #A5A6A5", +"$ c #A5A5A5", +"% c #A5A5A4", +"& c #A4A4A4", +"* c #A7A7A8", +"= c #A6A6A6", +"- c #A5A4A5", +"; c #A5A4A4", +"> c #A8A8A7", +", c #A8A7A7", +"' c #979797", +") c #989898", +"! c #999899", +"~ c #A5A6A6", +"{ c #A8A8A8", +"] c #A7A8A8", +"^ c #979898", +"/ c #999999", +"( c #999A9A", +"_ c #A9A9A8", +": c #99999A", +"< c #9A9A9B", +"[ c #B2B2B2", +"} c #A9A9AA", +"| c #A9A9A9", +"1 c #9B9A9A", +"2 c #9C9B9B", +"3 c #A7A6A6", +"4 c #B3B4B3", +"5 c #B3B3B3", +"6 c #AAAAAA", +"7 c #9A9A9A", +"8 c #9B9B9B", +"9 c #9C9C9C", +"0 c #A7A6A7", +"a c #9E9E9E", +"b c #9D9D9D", +"c c #B5B5B5", +"d c #B5B4B5", +"e c #B4B4B4", +"f c #B4B3B4", +"g c #B2B3B3", +"h c #9D9C9C", +"i c #9F9E9E", +"j c #9E9E9F", +"k c #B7B6B7", +"l c #B6B6B6", +"m c #B6B5B5", +"n c #B4B4B5", +"o c #828181", +"p c #B3B3B4", +"q c #ABAAAB", +"r c #9C9C9B", +"s c #9C9C9D", +"t c #9F9FA0", +"u c #9E9F9E", +"v c #9E9F9F", +"w c #9E9D9E", +"x c #9E9D9D", +"y c #9C9D9C", +"z c #807F7F", +"A c #818080", +"B c #828281", +"C c #B4B5B4", +"D c #ABABAB", +"E c #A9A8A8", +"F c #A0A0A0", +"G c #A09FA0", +"H c #9F9F9F", +"I c #ADADAD", +"J c #ADAEAE", +"K c #9D9D9E", +"L c #B7B7B7", +"M c #B6B6B5", +"N c #818081", +"O c #828282", +"P c #838383", +"Q c #ADADAC", +"R c #ABACAC", +"S c #ABACAB", +"T c #A8A9A8", +"U c #A6A7A7", +"V c #A0A1A0", +"W c #AFAFAF", +"X c #B7B6B6", +"Y c #818181", +"Z c #828383", +"` c #848383", +" . c #B4B3B3", +".. c #AFB0AF", +"+. c #AEAEAF", +"@. c #AFAEAE", +"#. c #AEAEAE", +"$. c #ACADAD", +"%. c #ACACAC", +"&. c #A0A1A1", +"*. c #A5A5A6", +"=. c #A1A2A2", +"-. c #A1A1A1", +";. c #A1A1A0", +">. c #B0B0B0", +",. c #B1B1B0", +"'. c #838382", +"). c #848484", +"!. c #858585", +"~. c #B5B5B4", +"{. c #B4B4B3", +"]. c #B2B1B2", +"^. c #B1B1B1", +"/. c #B0B1B0", +"(. c #AEAFAF", +"_. c #9C9D9D", +":. c #9E9E9D", +"<. c #A2A2A2", +"[. c #A3A3A4", +"}. c #A6A6A5", +"|. c #A4A4A5", +"1. c #A1A2A1", +"2. c #B2B1B1", +"3. c #A09F9F", +"4. c #B7B7B8", +"5. c #B6B6B7", +"6. c #868585", +"7. c #868786", +"8. c #B3B2B3", +"9. c #B2B2B3", +"0. c #B1B2B1", +"a. c #B0B1B1", +"b. c #949494", +"c. c #959595", +"d. c #969696", +"e. c #979798", +"f. c #989899", +"g. c #A0A09F", +"h. c #A3A3A3", +"i. c #A4A4A3", +"j. c #A6A5A5", +"k. c #A4A3A3", +"l. c #A3A2A2", +"m. c #A1A0A0", +"n. c #B8B8B8", +"o. c #848584", +"p. c #858686", +"q. c #868787", +"r. c #888888", +"s. c #919090", +"t. c #919192", +"u. c #929392", +"v. c #969697", +"w. c #979897", +"x. c #999898", +"y. c #9D9C9D", +"z. c #A8A7A8", +"A. c #A8A9A9", +"B. c #A9AAAA", +"C. c #AAABAB", +"D. c #ACACAD", +"E. c #A4A5A4", +"F. c #A3A2A3", +"G. c #B3B4B4", +"H. c #898888", +"I. c #898989", +"J. c #8B8A8A", +"K. c #8C8C8B", +"L. c #8D8D8D", +"M. c #8E8E8E", +"N. c #8F8F8F", +"O. c #909090", +"P. c #929291", +"Q. c #939393", +"R. c #959495", +"S. c #969695", +"T. c #979796", +"U. c #9B9B9C", +"V. c #A0A0A1", +"W. c #AAAAA9", +"X. c #ACABAB", +"Y. c #ACADAC", +"Z. c #AEADAE", +"`. c #AFB0B0", +" + c #B1B0B1", +".+ c #B3B2B2", +"++ c #A2A1A2", +"@+ c #B7B8B7", +"#+ c #878787", +"$+ c #888988", +"%+ c #8A8A8A", +"&+ c #8A8B8B", +"*+ c #8C8C8C", +"=+ c #8E8D8D", +"-+ c #8F8E8F", +";+ c #919091", +">+ c #929292", +",+ c #949495", +"'+ c #969596", +")+ c #9B9C9C", +"!+ c #A2A3A3", +"~+ c #A7A8A7", +"{+ c #AEAFAE", +"]+ c #A2A1A1", +"^+ c #B9B8B8", +"/+ c #868686", +"(+ c #888787", +"_+ c #898889", +":+ c #8B8B8B", +"<+ c #8D8E8D", +"[+ c #8F8E8E", +"}+ c #919191", +"|+ c #939392", +"1+ c #949393", +"2+ c #959494", +"3+ c #989798", +"4+ c #989998", +"5+ c #9A9999", +"6+ c #9A9B9B", +"7+ c #A1A0A1", +"8+ c #ACABAC", +"9+ c #B0AFB0", +"0+ c #B8B8B7", +"a+ c #A2A3A2", +"b+ c #B9B9B9", +"c+ c #868687", +"d+ c #878887", +"e+ c #8D8C8C", +"f+ c #8F8F8E", +"g+ c #909091", +"h+ c #929192", +"i+ c #939493", +"j+ c #9A9A99", +"k+ c #9D9D9C", +"l+ c #A2A2A3", +"m+ c #A4A5A5", +"n+ c #AAA9A9", +"o+ c #B2B2B1", +"p+ c #BABABA", +"q+ c #BAB9BA", +"r+ c #B9B9BA", +"s+ c #878687", +"t+ c #888887", +"u+ c #8C8C8D", +"v+ c #929393", +"w+ c #949493", +"x+ c #969796", +"y+ c #A1A1A2", +"z+ c #A6A6A7", +"A+ c #A9A8A9", +"B+ c #AFAEAF", +"C+ c #B0AFAF", +"D+ c #B5B6B6", +"E+ c #B8B7B8", +"F+ c #BABAB9", +"G+ c #BBBBBA", +"H+ c #BABABB", +"I+ c #8C8D8C", +"J+ c #8E8D8E", +"K+ c #919190", +"L+ c #929191", +"M+ c #939293", +"N+ c #979697", +"O+ c #999998", +"P+ c #9C9B9C", +"Q+ c #A6A7A6", +"R+ c #ABABAC", +"S+ c #ADACAC", +"T+ c #BCBBBB", +"U+ c #A3A3A2", +"V+ c #BCBCBC", +"W+ c #BBBBBC", +"X+ c #BBBBBB", +"Y+ c #979696", +"Z+ c #989797", +"`+ c #9FA09F", +" @ c #ABAAAA", +".@ c #ACACAB", +"+@ c #B0B0AF", +"@@ c #B3B3B2", +"#@ c #B6B7B7", +"$@ c #B9B9B8", +"%@ c #BBBCBB", +"&@ c #BCBDBC", +"*@ c #BDBCBD", +"=@ c #BDBDBD", +"-@ c #818182", +";@ c #858586", +">@ c #8B8B8C", +",@ c #8C8D8D", +"'@ c #8F9090", +")@ c #909190", +"!@ c #919292", +"~@ c #959695", +"{@ c #9D9E9D", +"]@ c #AAAAAB", +"^@ c #BBBABA", +"/@ c #BBBCBC", +"(@ c #BEBDBD", +"_@ c #BEBDBE", +":@ c #BBBABB", +"<@ c #C3C3C4", +"[@ c #BDBDBE", +"}@ c #808181", +"|@ c #828283", +"1@ c #848485", +"2@ c #868685", +"3@ c #8B8C8B", +"4@ c #908F8F", +"5@ c #B1B0B0", +"6@ c #AFAFAE", +"7@ c #ADAEAD", +"8@ c #BEBFBE", +"9@ c #BEBEBE", +"0@ c #B9BAB9", +"a@ c #C4C4C4", +"b@ c #C3C3C3", +"c@ c #C3C2C3", +"d@ c #BFBFBE", +"e@ c #7F7F80", +"f@ c #878686", +"g@ c #8A8B8A", +"h@ c #8D8E8E", +"i@ c #929293", +"j@ c #AFAFB0", +"k@ c #AEAEAD", +"l@ c #AEADAD", +"m@ c #B5B5B6", +"n@ c #BABBBA", +"o@ c #BCBBBC", +"p@ c #BDBEBD", +"q@ c #C5C5C5", +"r@ c #C3C4C3", +"s@ c #BFC0C0", +"t@ c #BFBFBF", +"u@ c #7E7E7E", +"v@ c #7F7F7F", +"w@ c #808081", +"x@ c #818281", +"y@ c #838282", +"z@ c #8F8F90", +"A@ c #B9BABA", +"B@ c #BABBBB", +"C@ c #9FA0A0", +"D@ c #C4C5C4", +"E@ c #6F6F6F", +"F@ c #C4C3C4", +"G@ c #C2C3C3", +"H@ c #C3C3C2", +"I@ c #C0C0C0", +"J@ c #7C7D7C", +"K@ c #808080", +"L@ c #838283", +"M@ c #858685", +"N@ c #B8B9B8", +"O@ c #B8B9B9", +"P@ c #B8B7B7", +"Q@ c #A2A2A1", +"R@ c #C6C6C6", +"S@ c #6D6E6D", +"T@ c #6F6E6F", +"U@ c #707071", +"V@ c #C3C4C4", +"W@ c #C4C3C3", +"X@ c #C2C2C2", +"Y@ c #C2C1C1", +"Z@ c #C1C1C1", +"`@ c #C1C0C1", +" # c #7D7D7D", +".# c #7E7D7E", +"+# c #888989", +"@# c #8C8B8B", +"## c #B9B8B9", +"$# c #C7C7C7", +"%# c #6E6D6E", +"&# c #707070", +"*# c #717172", +"=# c #727372", +"-# c #C3C2C2", +";# c #7B7B7B", +"># c #7D7D7E", +",# c #828382", +"'# c #848483", +")# c #858584", +"!# c #888788", +"~# c #888889", +"{# c #B7B8B8", +"]# c #ADACAD", +"^# c #C7C8C8", +"/# c #C6C7C7", +"(# c #C6C7C6", +"_# c #C5C6C5", +":# c #717271", +"<# c #727272", +"[# c #747374", +"}# c #757575", +"|# c #767676", +"1# c #777878", +"2# c #797978", +"3# c #797A7A", +"4# c #7D7E7D", +"5# c #878788", +"6# c #959596", +"7# c #AAABAA", +"8# c #B1B2B2", +"9# c #C6C6C5", +"0# c #717171", +"a# c #737372", +"b# c #777777", +"c# c #797879", +"d# c #7A7A7A", +"e# c #7C7C7D", +"f# c #7E7D7D", +"g# c #7E7F7F", +"h# c #B6B7B6", +"i# c #C7C6C7", +"j# c #737474", +"k# c #747574", +"l# c #767675", +"m# c #797878", +"n# c #7B7C7C", +"o# c #7F7E7F", +"p# c #939494", +"q# c #C5C6C6", +"r# c #757474", +"s# c #787878", +"t# c #797A79", +"u# c #7A7A7B", +"v# c #767777", +"w# c #797979", +"x# c #7B7B7A", +"y# c #7C7C7B", +"z# c #7D7D7C", +"A# c #808180", +"B# c #BEBFBF", +"C# c #B2B3B2", +"D# c #ABABAA", +"E# c #747474", +"F# c #767677", +"G# c #787777", +"H# c #7C7B7B", +"I# c #7D7C7C", +"J# c #B1B1B2", +"K# c #A4A3A4", +"L# c #C7C7C6", +"M# c #747473", +"N# c #7A7A79", +"O# c #C1C0C0", +"P# c #C7C8C7", +"Q# c #737373", +"R# c #787879", +"S# c #7C7B7C", +"T# c #B7B7B6", +"U# c #C1C1C0", +"V# c #AAA9AA", +"W# c #C8C8C8", +"X# c #C8C8C7", +"Y# c #737374", +"Z# c #7A7979", +"`# c #7A7B7A", +" $ c #C8C9C8", +".$ c #C8C8C9", +"+$ c #727171", +"@$ c #757576", +"#$ c #777677", +"$$ c #C2C2C1", +"%$ c #CAC9C9", +"&$ c #C8C9C9", +"*$ c #737273", +"=$ c #7C7C7C", +"-$ c #A9AAA9", +";$ c #CACBCA", +">$ c #C9C9CA", +",$ c #757676", +"'$ c #777877", +")$ c #C4C4C3", +"!$ c #CBCBCB", +"~$ c #CBCACB", +"{$ c #6F7070", +"]$ c #757475", +"^$ c #787877", +"/$ c #7B7A7A", +"($ c #8E8E8F", +"_$ c #C5C5C4", +":$ c #CBCACA", +"<$ c #717071", +"[$ c #727271", +"}$ c #767575", +"|$ c #767776", +"1$ c #787978", +"2$ c #A3A4A3", +"3$ c #6F6F6E", +"4$ c #737473", +"5$ c #79797A", +"6$ c #C5C5C6", +"7$ c #CDCCCD", +"8$ c #CCCCCC", +"9$ c #CBCCCC", +"0$ c #70706F", +"a$ c #707171", +"b$ c #C6C6C7", +"c$ c #ADADAE", +"d$ c #9F9F9E", +"e$ c #CDCDCC", +"f$ c #CCCDCD", +"g$ c #6D6D6D", +"h$ c #6E6E6E", +"i$ c #706F6F", +"j$ c #727172", +"k$ c #737272", +"l$ c #747373", +"m$ c #777676", +"n$ c #9D9E9E", +"o$ c #CDCECE", +"p$ c #CDCDCD", +"q$ c #6D6D6C", +"r$ c #757675", +"s$ c #C8C7C7", +"t$ c #CECECE", +"u$ c #CECDCE", +"v$ c #6C6C6C", +"w$ c #9F9E9F", +"x$ c #D3D3D3", +"y$ c #D2D3D2", +"z$ c #D2D2D2", +"A$ c #D2D2D1", +"B$ c #D1D1D1", +"C$ c #D0D0D1", +"D$ c #D0D0D0", +"E$ c #D0D0CF", +"F$ c #D0CFCF", +"G$ c #CFCFCF", +"H$ c #CFCECF", +"I$ c #727273", +"J$ c #C9C8C9", +"K$ c #9B9A9B", +"L$ c #D3D4D3", +"M$ c #D3D2D2", +"N$ c #D2D1D1", +"O$ c #D1D1D0", +"P$ c #CECFCE", +"Q$ c #6A6A6A", +"R$ c #6B6C6C", +"S$ c #6C6D6D", +"T$ c #757574", +"U$ c #C9C9C9", +"V$ c #9B9B9A", +"W$ c #9A9B9A", +"X$ c #D4D4D4", +"Y$ c #D3D4D4", +"Z$ c #5F5F5F", +"`$ c #606061", +" % c #616161", +".% c #636263", +"+% c #646464", +"@% c #656465", +"#% c #666666", +"$% c #676767", +"%% c #686969", +"&% c #696A69", +"*% c #6B6B6B", +"=% c #706F70", +"-% c #CAC9CA", +";% c #9A999A", +">% c #969797", +",% c #D4D5D4", +"'% c #5F5F5E", +")% c #606060", +"!% c #626263", +"~% c #636463", +"{% c #656566", +"]% c #686868", +"^% c #696969", +"/% c #6E6F6F", +"(% c #717170", +"_% c #C9CAC9", +":% c #CACACA", +"<% c #B0B0B1", +"[% c #D4D5D5", +"}% c #D4D4D5", +"|% c #606161", +"1% c #626261", +"2% c #636363", +"3% c #656565", +"4% c #696869", +"5% c #6C6B6C", +"6% c #707170", +"7% c #717272", +"8% c #CBCBCA", +"9% c #989999", +"0% c #D5D5D5", +"a% c #D5D4D4", +"b% c #D2D3D3", +"c% c #D0D1D1", +"d% c #6A6B6B", +"e% c #6B6B6C", +"f% c #6D6C6D", +"g% c #6E6E6D", +"h% c #949595", +"i% c #949594", +"j% c #D6D5D6", +"k% c #D5D4D5", +"l% c #D3D3D4", +"m% c #D3D2D3", +"n% c #D1D2D2", +"o% c #69696A", +"p% c #6F6E6E", +"q% c #959696", +"r% c #939394", +"s% c #D1D2D1", +"t% c #6D6E6E", +"u% c #6E6F6E", +"v% c #CBCCCB", +"w% c #676768", +"x% c #696868", +"y% c #6A696A", +"z% c #6B6C6B", +"A% c #CCCCCD", +"B% c #666766", +"C% c #6F706F", +"D% c #807F80", +"E% c #919291", +"F% c #909191", +"G% c #90908F", +"H% c #676766", +"I% c #676867", +"J% c #6D6D6E", +"K% c #C1C1C2", +"L% c #B5B4B4", +"M% c #908F90", +"N% c #676666", +"O% c #6B6A6A", +"P% c #6C6B6B", +"Q% c #6D6C6C", +"R% c #8E8F8E", +"S% c #666767", +"T% c #686968", +"U% c #6A6969", +"V% c #CECECD", +"W% c #8F908F", +"X% c #8D8C8D", +"Y% c #8D8D8C", +"Z% c #656666", +"`% c #676667", +" & c #8C8B8C", +".& c #CECFCF", +"+& c #8B8B8A", +"@& c #D5D5D4", +"#& c #666565", +"$& c #676868", +"%& c #B8B8B9", +"&& c #D6D6D5", +"*& c #646364", +"=& c #CFD0CF", +"-& c #CFCECE", +";& c #8A8A8B", +">& c #898A8A", +",& c #8A8989", +"'& c #D6D6D6", +")& c #646564", +"!& c #89898A", +"~& c #898A89", +"{& c #8A8A89", +"]& c #878888", +"^& c #626262", +"/& c #646465", +"(& c #D6D6D7", +"_& c #D7D6D6", +":& c #636362", +"<& c #636464", +"[& c #656665", +"}& c #686867", +"|& c #D0CFD0", +"1& c #D7D7D7", +"2& c #D6D7D7", +"3& c #6E6D6D", +"4& c #CFD0D0", +"5& c #BCBCBB", +"6& c #838483", +"7& c #D8D9D8", +"8& c #D8D8D7", +"9& c #656564", +"0& c #6A6B6A", +"a& c #BCBDBD", +"b& c #858485", +"c& c #848384", +"d& c #838484", +"e& c #DAD9DA", +"f& c #D9D9D9", +"g& c #D8D8D8", +"h& c #5E5E5E", +"i& c #5F5F60", +"j& c #606160", +"k& c #636364", +"l& c #838384", +"m& c #818282", +"n& c #DBDBDB", +"o& c #DADADA", +"p& c #DAD9D9", +"q& c #5D5D5D", +"r& c #5E5D5E", +"s& c #5E5F5E", +"t& c #605F5F", +"u& c #686768", +"v& c #BFBEBF", +"w& c #828182", +"x& c #7F8080", +"y& c #B4B5B5", +"z& c #DCDCDC", +"A& c #DCDCDB", +"B& c #DBDADB", +"C& c #5A5A5A", +"D& c #5A5B5B", +"E& c #5C5C5C", +"F& c #605F60", +"G& c #616160", +"H& c #696A6A", +"I& c #6B6A6B", +"J& c #6C6C6D", +"K& c #818180", +"L& c #7F7F7E", +"M& c #DDDCDD", +"N& c #DCDDDD", +"O& c #585858", +"P& c #595859", +"Q& c #595A59", +"R& c #5B5A5A", +"S& c #5B5B5C", +"T& c #D8D9D9", +"U& c #D8D7D8", +"V& c #626162", +"W& c #636262", +"X& c #646463", +"Y& c #666667", +"Z& c #80807F", +"`& c #7F807F", +" * c #7F7E7E", +".* c #DDDDDD", +"+* c #DDDDDC", +"@* c #575657", +"#* c #585857", +"$* c #595959", +"%* c #D9DADA", +"&* c #D8D8D9", +"** c #696968", +"=* c #6C6C6B", +"-* c #C1C2C1", +";* c #C2C1C2", +">* c #7E7F7E", +",* c #7E7E7D", +"'* c #BAB9B9", +")* c #7B7B7C", +"!* c #DCDCDD", +"~* c #575757", +"{* c #DBDCDC", +"]* c #DBDADA", +"^* c #D9DAD9", +"/* c #D7D6D7", +"(* c #616162", +"_* c #6A6A69", +":* c #6C6D6C", +"<* c #C0BFBF", +"[* c #CECECF", +"}* c #C2C2C3", +"|* c #7D7E7E", +"1* c #7C7D7D", +"2* c #DCDBDC", +"3* c #DCDBDB", +"4* c #616262", +"5* c #626362", +"6* c #C8C7C8", +"7* c #C5C4C5", +"8* c #DEDEDE", +"9* c #D7D8D7", +"0* c #626363", +"a* c #686767", +"b* c #CECDCD", +"c* c #7A7B7B", +"d* c #7B7A7B", +"e* c #A4A2A2", +"f* c #DEDDDD", +"g* c #D9D8D8", +"h* c #616061", +"i* c #626161", +"j* c #646565", +"k* c #CCCBCB", +"l* c #CACBCB", +"m* c #7A797A", +"n* c #BCBCBD", +"o* c #AEB0B0", +"p* c #A9A7A7", +"q* c #D7D8D8", +"r* c #616060", +"s* c #6A6A6B", +"t* c #C4C5C5", +"u* c #CACAC9", +"v* c #787778", +"w* c #787979", +"x* c #A8A8A9", +"y* c #656464", +"z* c #686869", +"A* c #727373", +"B* c #777778", +"C* c #A6A6A4", +"D* c #A3A3A5", +"E* c #6E6E6F", +"F* c #D8D7D7", +"G* c #747475", +"H* c #747575", +"I* c #C0C1C0", +"J* c #D9D8D9", +"K* c #C0C1C1", +"L* c #646363", +"M* c #949394", +"N* c #5F6060", +"O* c #666566", +"P* c #AAAAA8", +"Q* c #5F5E5F", +"R* c #5D5D5E", +"S* c #5F605F", +"T* c #6B6B6A", +"U* c #5D5D5C", +"V* c #DBDBDA", +"W* c #5A5A5B", +"X* c #5B5B5B", +"Y* c #5B5C5C", +"Z* c #D6D7D6", +"`* c #D6D5D5", +" = c #666665", +".= c #C9CACA", +"+= c #C4C4C5", +"@= c #5A595A", +"#= c #5B5B5A", +"$= c #D9D9D8", +"%= c #D5D6D6", +"&= c #D4D3D4", +"*= c #CCCBCC", +"== c #CACACB", +"-= c #B9B7B9", +";= c #DBDBDC", +">= c #585757", +",= c #D9D9DA", +"'= c #D4D4D3", +")= c #D3D3D2", +"!= c #CDCDCE", +"~= c #CDCCCC", +"{= c #CBCBCC", +"]= c #C7C7C8", +"^= c #C5C4C4", +"/= c #B5B7B7", +"(= c #A9A9A7", +"_= c #565555", +":= c #565656", +"<= c #DADBDB", +"[= c #DEDEDD", +"}= c #555454", +"|= c #555555", +"1= c #767576", +"2= c #DFDEDF", +"3= c #DDDEDD", +"4= c #545554", +"5= c #D1D0D1", +"6= c #DDDEDE", +"7= c #DDDDDE", +"8= c #D0D1D0", +"9= c #C7C6C6", +"0= c #777776", +"a= c #5E5F5F", +"b= c #5E5E5F", +"c= c #5C5C5D", +"d= c #5C5D5C", +"e= c #BBB9B9", +"f= c #5B5C5B", +"g= c #D4D3D3", +"h= c #959594", +"i= c #5B5A5B", +"j= c #A7A5A5", +"k= c #AAAAAC", +"l= c #D5D6D5", +"m= c #8E8F8F", +"n= c #6A6A6C", +"o= c #828482", +"p= c #CBCDCB", +"q= c #ABAAA9", +"r= c #A3A4A4", +"s= c #6F6F70", +"t= c #757577", +"u= c #C7C7C5", +"v= c #C0C2C2", +"w= c #D5D5D7", +" ", +" ", +" . + @ # $ % & ", +" * . = # $ - ; ", +" > , ' ) ! ~ $ ", +" { ] ^ / ( @ # ", +" _ { ) : < = ~ ", +" [ [ } | / 1 2 3 + ", +" 4 5 [ 6 | 7 8 9 ] 0 a b ", +" c d e f 4 g 6 6 < 9 h { . i j b b b ", +" k l m c n o p 5 q 6 r s b { ] t u v w x b y ", +" l l z A B C f 5 D 6 9 b a E { F G H I J a K b ", +" L l M N O P e e I I Q R S D b w H | | T * . U . V F W W W j a K ", +" L X Y Z ` d e . ..W +.@.#.I I $.%.9 b i t &.| E { > , U 0 = *.$ =.-.;.>.,.>.H v ", +" L k l '.).!.~.e {. ].^./.>.>.W (.#.) / 7 8 _.:.H F -.<.[.& }.+ * U 0 = ~ *.; |. <.1.^.^.2.3.t i ", +" 4.L 5.).6.7.e n e 5 8.9.[ 0.a.,.b.c.d.e.f.: 8 9 b a g.F <.h.i.$ = . { | 6 D = j.# |.& & k.h.l.<.g g 8.m.g. ", +" n.L o.p.q.r.n e {.5 5 [ s.t.u.b.c.v.w.x.7 8 y.b H F V <.h.; $ + z.A.B.C.%.D.J W $ & E.& h.F. .G.e -.F F ", +" n.4.L p.q.H.I.J.K.L.M.N.O.P.Q.R.S.T.) / 7 U.h a H V.-.h.i.% = . { W.6 X.Y.Z.W `. +2..+5 4 e e c c ++-. ", +" n.@+p.#+$+%+&+*+=+-+O.;+>+Q.,+'+' f./ 8 )+y.a H -.<.!+& j.U ~+T 6 D %.I {+W >.].[ 5 {.n c M l X <.]+ ", +" ^+L /+(+_+%+:+*+<+[+O.}+|+1+2+d.3+4+5+6+9 b i F 7+<.h.E.*.U { | C.8+Y.#.(.9+^.[ 8.e c l k L 0+n.a+<. ", +" b+n.c+d+I.%+:+e+=+f+g+h+Q.i+c.d.) 4+j+8 k+w j F 1.l+& m+j.. T n+D %.I #.W >.o+5 {.c l k L n.b+b+!+l. ", +" p+q+r+^+s+t+$+%+:+u+L.N.O.t.v+w+c.x+w./ 7 8 y.a H V y+l+k.$ z+* A+6 D %.I B+C+,.[ p C D+k E+^+b+F+p+[.h.F.<. ", +" G+H+p+r+!.s+t+_+%+K.I+J+N.K+L+M+b.c.N+) O+7 P+_.a H ;.-.h.& $ Q+~+_ 6 R+S+#.W >.0.8.e c l L n.b+p+G+T+T+k.U+a+<. ", +" V+W+X+Z ).6.#+#+I.J.:+L.M.N.O.h+Q.b.d.Y+Z+/ 8 r y a `+&.1.h.& j.3 > | @.@Q #.+@>.[ @@e m #@L $@p+X+%@&@*@V+X+!+!+<. ", +" =@V+V+-@P ).;@7.r.I.%+>@,@M.'@)@!@Q.b.~@N+) {@h.> R+#.{+W B+#.J S+S ]@6 D .@Q {+W /.o+5 C c #@n.r+^@/@*@(@_@=@V+:@h.l+<. ", +" <@ [@=@=@}@-@|@1@2@c+r.I.&+3@L.M.4@;+>+Q.b.{@> `. .5 9.[ 2.^.5@>.W W 6@#.#.7@I R+%.I W ,.[ 5 C m L n.b+:@T+=@8@9@_@V+X+0@h.l.<. ", +" a@a@b@c@ d@9@9@e@A O P ).6.f@t+I.g@K.e+h@N.)@i@<.j@c c e {.G.5 #.k@l@I I Y.S I ^.5 n m@#@0+b+n@o@*@p@=@=@o@X+0@b+h.U+<. H a a ", +" q@a@a@r@b@ s@t@9@u@v@w@x@y@).!.q.r.I.J.3@L.M.z@<.e 5.l M c I %.%.R D W e c #@4.b+A@B@V+V+*@V+X+X+b+n.L h.!+a+ C@`+H v ", +" q@q@D@E@F@r@G@H@ I@s@J@u@v@K@Y L@).M@/+#+I.%+:+L.8 0.n.4.L 5. S+%..@D %.^.D+L N@r+^@X+o@T+X+p+p+O@P@5.c h.U+<.Q@y+&.V G G v i ", +" R@q@S@T@U@V@W@b@X@X@Y@Z@`@I@ #.#u@A Y P ).!.7.r.+#%+@#. r+b+n.n. %.8+D D {+l n.O@b+q+p+p+r+b+##E+L l c 5 h.F.<.<.y+-.S @F v ", +" $#$#R@%#E@&#*#=#b@b@-#X@X@Z@;# #>#v@K@Y ,#'#)#/+!#~#>+^.p+p+b+ .@D q %.e {#n.$@b+##O@n.@+L l c e 5 [ /.>.(.l@]#D 6 F H H ", +" ^#/#(#R@_#&#:#<#[#}#|#1#2#3#;#J@4#v@K@Y |@'#o./+5#6#n.X+X+ R+7#7#8.L {#@+0+L L X l m e 5 .+8#/.W #.]#%.D ;.7+F g. ", +" $#/#R@9#0#a#[#}#|#b#c#d#;#e#f#g#K@Y O ` o.p.' T+V+V+ %.D ]@2.h#5.5.h#m@M c C p 5 ].,.>.W J %..@=.-.-.V ", +" i#R@_#q@j#k#l#b#m#3#;#n#>#o#K@Y O P 1@p#*@=@*@ X.D 6 [ c m c e e f 5 g 0.^...W #.I %.U+l+<. ", +" (#R@q#q@r#}#b#s#t#u#n# #u@K@N B P L.b+9@[@ D D @].e p p 4 .+8.o+^.>.W #.I %.X.h.h. ", +" R@_#r#}#v#s#w#x#y#z#u@v@A#-@'.[ B#9@ .@D S g C#C#[ [ ^.5@W W #.l@S+.@D#k.h. ", +" /#R@E#l#F#G#2#d#H#I#.#v@K@o = I@t@ X.D ]#J#^.a./.>.j@W #.l@S+%.]@} & K# ", +" i#L#M#}#|#b#2#N#;#I#>#u@K@~@O#I@ D D #.>.>.W W #.Z.I %.8+ @} A+|.& ", +" P#$#Q#k#|#b#R#t#x#S#f#u@K@T#Z@U# %.D q B+(.#.7@I ]#%.D 6 V#A.{ $ ; ", +" W#X#P#Y#E#|#b#R#Z#`#y#z#u@a X@Y@ 8+R %.I I S+%.X.q C.V#| z.. ~ $ $ ", +" $.$+$Q#E#@$#$s#w#d#H#z#o#=@c@$$ D.8+R+D %.8+D 6 V#| A.~+. = @ @ $ ", +" %$&$0#*$M#}#F#G#c#N#;#=$b b@b@ $.8+D C.7#-$| _ T . U = # m+= $ ", +" ;$>$%$0#*$j#}#,$'$2#t#`#=$N@)$r@ I %.7#B.| | { z.. z+= $ & & z+= @ ", +" !$~${$0#<#Q#]$l#v#^$w#/$($_$a@ ]#%.| { , . + ~ $ m+& h.l.=.Q+~ ", +" !$:$E@<$[$Q#E#}$|$^$1$d#. q@q@ I Q -$0 0 *.$ - & 2$h.l.1.V . . ", +" !$!$3$�#<#4$k#|#b#m#5$V+6$ I %.# $ % & K#k.a+<.]+&.F , . ", +" 7$8$9$T@0$a$<#Q#E#l#b#s#!.R@b$ #.c$$ & [.h.a+<.]+-.;.g.d$> ~+. ", +" e$f$g$h$i$0#j$k$l$}#m$b#v.$#i# #.c$= !+a+<.<.-.V.C@H H n$b ] z. ", +" o$p$q$h$E@�#<#Y#k#r$#$$ X#s$ W +.{ ++-.&.m.F 3.H a :.b 9 _ { ", +" t$u$v$g$h$i$a$0#*$r#,$F#2.W# B+]@V.F F H w$d$K x h 8 8 | { ", +" x$y$z$A$B$C$D$E$F$G$H$t$v$g$h$E@�#I$Q#}#|#V+J$ W R+t d$j a :.b 9 9 2 K$7 | A._ z., + U = j. ", +" L$x$M$z$z$N$C$O$F$G$P$Q$R$S$%#E@0$0#<#Q#T$r$X@U$ C+c$:.n$K b y 9 U.V$W$j+/ x.| T T { . + 0 = ", +" X$Y$Z$`$ %.%+%@%#%$%%%&%*%v$g$h$=%&#<#I$[#}#W#-% >.W y.b h 9 r 8 K$;%/ 4+) 3+>%d.6#2+b.Q.. z+ ", +" ,%X$'%)% %!%~%@%{%$%]%^%Q$*%q$%#/%&#(%<#Q#E#_%:% <%W 9 8 8 < 7 7 / 4+f.' ' Y+d.c.b.w+Q.>+] . ", +" [%}%Z$Z$|%1%2%+%3%#%$%4%Q$*%5%g$h$=%6%7%I$j#W#8% a.+@6+7 7 : 9%f.) w.' Y+d.c.,+p#Q.u.P.}+z.~+ ", +" 0%a%,%X$x$x$b%z$A$B$c%]%^%d%e%f%g%3$&#U@j$Q#a@!$ J#B+/ / ! ) ) ^ ' ' d.6#h%i%D D 6 B.-$_ A+{ ", +" j%0%k%X$L$l%x$m%z$n%B$O$%%o%*%v$g$p%E@�#Q#(@!$ 8#I ) w.) >%x+d.q%c.c.,+r%%.R+D C.]@6 n+| E ", +" z$s%]%^%Q$e%S$t%u%{$<$<#5 v% 9.6 N+N+d.d.q%6#h%b.r%Q.|+%.%. ", +" z$n%w%x%y%d%v$g$h$E@�#j.8$v% p C#$ d.S.c.2+,+b.i+Q.u.>+t.Q %. ", +" m%z$$%]%^%Q$z%q$%#p%E@6%b.A%8$ {. .g.h%b.b.i+Q.Q.u.!@}+K+O.7@]# ", +" x$y$B%w%4%y%*%v$S$h$E@C%D%p$p$ e f f.Q.M+v+>+P.E%}+F%O.G%N.#.7@ ", +" X$x$x$H%I%^%Q$*%v$J%h$=%&#K%p$ L%..>+P.P.!@}+}+)@O.M%N.f+(.(.#. ", +" x$x$N%$%]%&%O%P%Q%g$/%C%. u$p$ D+c j.}+g+;+O.G%4@N.f+R%J+<+C+6@ ", +" X$l%{%S%$%T%U%Q$R$f%h$E@+#t$V% l l 5+M%W%z@N.($[+M.M.J+X%Y%9+j@ ", +" }%X$3%Z%`%]%^%Q$*%v$g$h$E@t@t$o$ L l C+R%($M.M.<+h@L.L.Y%e+ &:+>.>. ", +" 0%[%X$3%H%$%]%y%Q$z%v$J%h$7 .&t$ n.L g.L.L.L.I+,@*+*+*+3@+&J.2.5@5@ ", +" @&X$+%#&$%$&^%y%Q$e%q$g$a$$#P$t$ %&n. .L.*+*+:+@#>@:+:+J.%+%+I.[ ^. ", +" &&@&*&+%#%N%]%x%Q$*%R$g$h$9 =&-& ##%&F :+:+J.;&;&;&>&%+,&I.H.$+[ ]. ", +" '&0%2%)&3%#%$%]%^%Q$*%v$g$J%s@G$t$ p+r+^.%+>&%+!&~&{&I.I.~#r.]&#+5 @@[ ", +" '&&&^&2%/&Z%#%w%x%^%Q$z%v$g$L.F$G$ n@p+^ I.H.r.r.r.r.]&t+#+s+q.c+p 5 ", +" (&_&1%:&<&3%[&`%}&]%&%Q$z%Q%S@. |&G$ T+X+# (+5#d+#+#+#+q.#+/+/+6.p.!.e f ", +" 1&2& %1%2%+%3%Z%`%]%^%U%*%P%Q%3&X+4&G$ V+5&..7./+/+p.2@2@/+;@6.!.!.).).6&L%{. ", +" 7&8&8&)% %^&2%+%9&#%$%}&T%Q$0&*%Q% #W#=&G$ =@a&L M.b&b&b&)#b&b&).b&).c&d&P P '.~.~. ", +" e&f&7&g&h&i&j& %^&k&/&3%#%$%]%^%Q$d%*%q$#+G$|&F$ 9@_@V+M+c&'#6&'#` l&P P P Z Z '.y@m&o c c e f ", +" n&n&o&p&f&q&r&s&t& %1%.%2%9&3%#%$%u&%%&%0&*%v$%+G$D$G$ t@v&=@i+P L@'.'.|@O y@,#O w&-@o -@Y }@A#x&c C y&e e ", +" z&A&n&B&C&D&E&q&h&Z$F&G&1%2%~%)&{%#%$%]%T%H&I&z%J&#+W#|&G$ I@t@A@}+Y Y Y o Y Y Y Y Y Y K&A w@D%x&v@v@u@L&u@y&e e f ", +" M&N&z&O&P&Q&R&S&E&T&g&g&U&1&V&W&X&+%{%Y&$%]%^%^%Q$e%v$ #X+4&G$G$ Z@I@I@o+{&K@K@K@Z&K@K@K@x&Z&D%`&v@v@v@o# *g# #>#f# #z#c e e ", +" .*+*z&@*#*O&$*o&p&%*f&&*8&1&1&^&2%2%9&#&#%$%]%**^%Q$*%=*J&. E$G$-&t$ b@X@-*;*E.g#L&>*v@L&v@g#v@v@g#>* *u@u@,*'*b+%&n.E+L =$y#)*m@y& ", +" .*.*!*~*{*n&]*o&^* g&U&/*(*2%<&/&3%#%$%$&**_*Q$*%5%:**+<*=&P$[*o$ a@b@b@}*L !@ #f# #4#|*,*u@4#4# #4#4# # #1*p+p+q+b+$@n.{#@+T#l D+m h.<.h. ", +" .*+*!*2*3*n& 8&8&`$4*5*2%+%#&#%$%]%]%^%Q$O%*%v$g$8 6*G$t$t$t$ q#7*D@a@_@h )*y#S#=$=$=$=$=$J@J@J@I#=$=$y#n#S#:@H+ n.@+L L l $ a U.<. ", +" 8*.*.*M& g&g&9* %1%0*2%+%3%#%H%a*]%^%H&Q$=*v$f%E@/ d@t$b*t$p$8$8$ X#$#L#R@_#q@##8 =$d#`#c*d*;#x#;#;#;#;#;#;#;#;#/$u#/$V+T+:@ @+L L . a 8 e* ", +" f* g*U&9*h*i*!%k&9&j*#%B%a*]%4%y%Q$*%z%Q%g$%##+3 $$p$7$f$8$k*!$l*8%:%U$U$U$W#P#$#V+$ &m#s#2#w#w#5$t#5$t#d#m*Z#5$m*N#d#5$m*w#a&n*5& ^.D o* p*H 9 & 9 ", +" g&q*8&r*^&5*2%+%@%#%#%$%u&x%^%Q$s*=*=*v$g$h$h$u@Q.; 5 =@t*W#u*$#G@o@^.& b.|@|#|##$b#'$b#v*v*s#s#R#R#s#w#m#m#m#c#m#w*m#_@=@=@ m E Q.x* | F b $ a [.F 8 ", +" g&g&9*h*i*:&2%~%y*3%#%S%I%z*T%Q$Q$d%=*v$g$t%J%p%E@&#�#0#+$<#*$A*j#E#E#}#}#}#}$|#|#F#v#b#b#b#b#b#B*'$b#b#v*b#B*b#v&9@p@ %.M.O+^. %.6 = & H K & $ C*|.D* E.D y+ ", +" g&9*1& % %^&2%*&+%3%#%`%$%]%T%U%Q$I&*%R$v$g$3&g%E*E@i$&#<$a$0#7%I$=#Q#Q#M#E#E#E#}#}#}#}$l#|#,$}$|#|#|#|#|#|#m$t@t@9@ - *+H >.>.%.E.a 9 / 7 b H -.h.= . . = & h.-.6 6 H ", +" g&F*U&1& %V&5*k&+%3%3%N%$%$%x%4%y%Q$0&z%v$g$g$g$h$u%E@C%C%&#a$0#0#j$<#k$=#Q#Q#j#E#E#G*E#}#T$T$}#T$H*}#}#Z@I*<*I@ 5 h%%+Q.c.d.}+Q.d.) 8 a F <.% . W.6 $.]#l@#.5 { ", +" J*g&F*1& %4*^&2%<&+%3%#&`%$%]%T%^%Q$Q$*%P%P%v$q$S@%#h$/%E@&#=%&#a$(%0#0#<#<#<#A*=#Q#Q#Y#[#M#Q#j#[#[#Z@Z@K*I* c 7 #+%+*+N.P.b.T./ 9 a -.h.$ { D I W ^. .c c | ", +" g&g&)%j& %^&:&L*+%3%3%#%$%$%u&x%^%^%Q$Q$P%e%v$g$g$g%h$u%h$E@{$=%=%&#&#(%0#+$[$<#*#<#<#=#<#I$A*}*X@Y@ X+W M*#+%+*+N.>+b.T./ 9 H -.K#= | X.#.>.g c L L #.i. ", +" 7&g&Z$N*)% %V&.%2%*&+%3%O*Y&$%I%u&z*^%^%Q$O%*%z%v$v$f%S@h$h$h$p%E@E@E@&#&#&#U@6%U@<$0#a$0#:#0#b@X@ p+*.M.!.(+%+,@z@>+S.j+H h.& $ . . P*6 I ,.5 l n.p+p+5 Q+ ", +" J*7&h&Q*Z$)% % %1%:&~%<&+%3%#%H%$%a*I%]%^%^%&%Q$d%*%*%R$v$g$g$t%%#g%h$T@/%E@/%C%E@{$=%0$=%&#&#V@b@ Z@ V+*.~#L@!.r.%+,@>+9 = I W W W I .@6 6 D#%.W [ l b+X+V+X+].$ ", +" f&&*q&R*h&Z$S*`$ %4*^&2%2%+%3%3%#&N%Y&w%u&]%%%^%o%Q$Q$T**%e%v$v$q$q$g$g$g$h$%#h$h$h$p%/%u%/%3$a@)$ Z@D b+ D #+v@y@!.#++&/ | [ | R {+e L q+p+b+l W = F H F H ", +" B&o&f&E&U*q&1&1&_&_&'&0%^&W&2%k&+%)&3%{%#%B%$%$&]%4%4%^%_*Q$s*I&*%=*5%R$v$v$Q%S$W#X#$#(#(#g$%#t%7*a@b@ C /+:+. ^.B+u.=$v@O !.>@H >. | %.e l n.L l e #.{ . . <.b ", +" V*o&W*X*Y*g*g&1&9*Z*'&&&`*k%X$W&.%~%+%+%3% =#%N%$%$%w%]%T%^%^%^%U%Q$Q$O%d%u*.=U$ $W#X#$#$#R@v$v$v$+=a@a@ R@e O. #;#f#d#1*v@O I.& L 6 $.[ e c e [ >.#.%.$ F ", +" 3*n&n&$*@=#=f&$= Z*'&%=[%X$X$&=x$L*k&/&@%#&3%#%H%B%a*}&]%4%**8$*=v%!$==:%%$U$ P#i#b$O%*%*%7*a@ 9@a b#b#d#=$v@).=.-= 6 %.^.g [ >.6@I | <. ", +" M&z&;=>=O&$*o&,=J* 0%[%,%X$'=x$)=z$n%+%/&)&#% =G$P$t$t$!=~=8$*={=8% ]=$#Q$H&H&q@^=a@ %.|#b#w#S# #) /= (=%.`.W #.S+D | l. ", +" .*.*_=:=~*<=o&e& X$x$x$M$)=N$2%+%+%D$|&G$.&t$V%p$ W#$#$#**]%T%q@a@ | }#|#2#;#I.C+ 6 D D X.6 | . h. ", +" 8*[=.*}=|=:=3*<= b%z$^&^&2%C$E$ 6*]=$%$%$%q@q@_$ b@c.Q#1=s#/$H t@ 6 n+| { . E.& ", +" 2=8*3=.*4=z&z&n& x$b% %(*^&5=B$ W#P#$#b$L#9#q#q@ V+Y Q#}#b#).[ | ~+. = m+h.h.<. ", +" 2=6=7=.*M&z& &=x$)%j&h*N$8= W#W#6*$#9= ^.Q#<#E#0=Q.=@ D { & & U+-.-.m+ ", +" 8*6=.*.* X$l%a=Z$Z$N$B$ U$W#W# :%H 0#0#Q#^$y+Z@ { <.-.m.H b h. ", +" 8* X$X$q&h&b=z$n% U$*+g$&#<#w#R+ 6 y+H a h 8 -.= ", +" 0%X$c=d=q&z$z$ $#e=b+$@#.=$:*E@0#w#5 %.F 9 r 7 O+b h.h.<.$ ", +" 0%0%f=X*E&g=x$ -.v$g$h$0#^%*%h$&#w#l %.H 7 / ) ' c.d.h=/ h. ", +" &&%=C&i=X*g=g= t@| | { b E#Q$g$E@w#e I b ) ' d.c.) C@g.F j= ", +" Z*j%&&0%[%X$X$ p$r.^%R$h$}#>. I 7 c.h%p#v+a k= ", +" 2&_&&&l=0%,%X$ p$m=]%Q$v$&#& } d.>+>+}+O.H ", +" . *%^%*%g$b.W# $ }+O.N.R%L+# ", +" l n=$%U%z%u@/@ [ 9 M.L.L.*+h+| ", +" ~$v@#%]%Q$E@& p$ 6 O.:+:++&%+/ #. ", +" V%` j*#%x%0&P V+ e 9 I.I.I.r.%+h. ", +" t$o=2%3%$%**v$2 W# l = %+/+/+/+!.~&D ", +" 8$ # %2%3%$%^%}#| p= Y.O.).).c&P P r.D ", +" 1&X@c.^& %2%X&3%$%^% #W p$ 9+b.o B Y Y Y K@x@8 %.[ ", +" f&%.*$E#7 q ) **+%{%$%^%=$. W# =@6 }+u@v@v@v@L&).:+%+!.O.#. ", +" n&e y+q@1& x$'+2%+%O*$%^%<#) $@W# I@^+-.#+=$z# #1*=$u@=.[ [ q=& 5 ", +" z&g& I@L@ %~%3%H%]%O%=$V$c b@R@ q@t@c <.:+;#w#N#d#d#d#w#c.c l ", +" V+O 1%2%y*#%u&^%v$}##+c.<.{ { r=7 M.D%b#|#b#b#b#b#b#b#Q.e ", +" *@O.]%!%+%O*$%4%Q$*%g$h$�#0#7%:#=#Q#E#E#T$T$}#v@8 c ", +" D$I.|%^&L*3%#%]%^%Q$*%v$g$h$T@E@�#0#7%<#<#w#}.V+ ", +" x$}+b=)%V&2%+%O*H%w%^%Q$*%z%v$g$g%h$E@E@s=&#K@p+ ", +" 0%%+E#>%7 *+E#+%~%3%#%$%]%^%Q$Q$O%&#u@Q./ #+u@L ", +" b+E@$ '& B$I@A+) v@t=#%3%Q#w##+9 6 p+W#u=l ).>+9@ ", +" t$O :+t$ z$q@t@O <#.+v=Z@!$ <.b#>. ", +" 1&F X+ t$}+s#a@ 9@& p+ ", +" w=z& t$'@|#q@ R@ ", +" D$N.E#R@ ", +" z$= b.:% ", +" z$G$ "}; diff --git a/src/Mod/Ship/Icons/DiscretizeIco.png b/src/Mod/Ship/Icons/DiscretizeIco.png new file mode 100644 index 0000000000000000000000000000000000000000..bdba9aca0e679ae6c405ae94059960257e3e8eeb GIT binary patch literal 14038 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�#F{R9|;jQ34YOODR6KP(J2VWUspe9<+`Y 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 Wr}8<967wsQzd^f%e?N}@oc{&dx->cf literal 0 HcmV?d00001 diff --git a/src/Mod/Ship/Icons/DiscretizeIco.xpm b/src/Mod/Ship/Icons/DiscretizeIco.xpm new file mode 100644 index 0000000000..9bff402e33 --- /dev/null +++ b/src/Mod/Ship/Icons/DiscretizeIco.xpm @@ -0,0 +1,2028 @@ +/* XPM */ +static char * DiscretizeIco_xpm[] = { +"128 128 1897 2", +" c None", +". c #9F6602", +"+ c #9F6601", +"@ c #A06602", +"# c #9F6502", +"$ c #A16702", +"% c #A06701", +"& c #A06700", +"* c #A16703", +"= c #9F6501", +"- c #A26803", +"; c #A16802", +"> c #A16601", +", c #A26905", +"' c #A66E0E", +") c #A76F0F", +"! c #A36902", +"~ c #A36802", +"{ c #A26802", +"] c #A26804", +"^ c #A56D0B", +"/ c #A77011", +"( c #A77012", +"_ c #A87212", +": c #A26A07", +"< c #A06601", +"[ c #A56903", +"} c #A46A04", +"| c #A36803", +"1 c #A56D0A", +"2 c #A67010", +"3 c #A77111", +"4 c #A77010", +"5 c #AA751A", +"6 c #B38432", +"7 c #A66F0F", +"8 c #A06702", +"9 c #A56902", +"0 c #A36904", +"a c #A46B08", +"b c #A56E0F", +"c c #A67011", +"d c #AF7E28", +"e c #BF9854", +"f c #B1802B", +"g c #A36B09", +"h c #A66B03", +"i c #A56A03", +"j c #A46B06", +"k c #A46E0D", +"l c #A56E10", +"m c #B1822E", +"n c #CBAC74", +"o c #C6A366", +"p c #A16803", +"q c #A66B04", +"r c #A66B06", +"s c #A56C0C", +"t c #A46D10", +"u c #A46D0F", +"v c #A46E0F", +"w c #A56F10", +"x c #B78A3D", +"y c #D3B889", +"z c #D6BD91", +"A c #BB9249", +"B c #A46D0B", +"C c #A16602", +"D c #A86C04", +"E c #A76C04", +"F c #A76C03", +"G c #A76C05", +"H c #A46C0B", +"I c #A36D0F", +"J c #A36D10", +"K c #A46E10", +"L c #A56F0F", +"M c #A77317", +"N c #CCAC76", +"O c #E1CFAF", +"P c #DEC9A5", +"Q c #D8C096", +"R c #A97418", +"S c #A16804", +"T c #A96D05", +"U c #A86D05", +"V c #AA6D03", +"W c #A56C09", +"X c #A26D0F", +"Y c #A26D10", +"Z c #B07F2B", +"` c #E9DCC5", +" . c #E7D9C0", +".. c #E6D7BC", +"+. c #C9A86E", +"@. c #A56E0D", +"#. c #AA6D05", +"$. c #A96D04", +"%. c #A66C08", +"&. c #A26B0E", +"*. c #A16B10", +"=. c #A16C0F", +"-. c #A26C0F", +";. c #C19D5D", +">. c #EBDFCB", +",. c #F3ECDF", +"'. c #F0E7D7", +"). c #E9DBC3", +"!. c #B88D40", +"~. c #A36A06", +"{. c #AB6F06", +"]. c #AB6E05", +"^. c #AB6E04", +"/. c #A86D07", +"(. c #A26B0C", +"_. c #A06B10", +":. c #A16B0F", +"<. c #B5893C", +"[. c #E5D6BC", +"}. c #F3EDE1", +"|. c #FCFAF7", +"1. c #F9F5EF", +"2. c #ECE1CE", +"3. c #B48636", +"4. c #A76F10", +"5. c #A36D0E", +"6. c #AC7006", +"7. c #AC6F05", +"8. c #A96D07", +"9. c #A36B0C", +"0. c #9F6A0F", +"a. c #A06A0F", +"b. c #A16A0F", +"c. c #A16A0E", +"d. c #C6A56B", +"e. c #E6D7BE", +"f. c #EFE6D6", +"g. c #F4EEE3", +"h. c #A36E10", +"i. c #BE8013", +"j. c #B9790A", +"k. c #9D6401", +"l. c #AD7006", +"m. c #AC6F06", +"n. c #AD7005", +"o. c #A46C0A", +"p. c #9F6A0D", +"q. c #9E6A0F", +"r. c #9F6A0E", +"s. c #A06B0E", +"t. c #A16B0E", +"u. c #B48639", +"v. c #D4BA8F", +"w. c #E0CEAF", +"x. c #EDE3D1", +"y. c #DAC59F", +"z. c #A47217", +"A. c #B77B12", +"B. c #DF9616", +"C. c #E69B17", +"D. c #DB9315", +"E. c #AE7107", +"F. c #AE7106", +"G. c #AD7007", +"H. c #A66D09", +"I. c #9F690E", +"J. c #9D6A0F", +"K. c #A06A0E", +"L. c #A8761E", +"M. c #C29E5F", +"N. c #D3B88B", +"O. c #DBC6A1", +"P. c #D4BB8F", +"Q. c #B1853A", +"R. c #AD7310", +"S. c #CC8913", +"T. c #E09616", +"U. c #4D3408", +"V. c #A26E14", +"W. c #EDA323", +"X. c #C2800D", +"Y. c #AE7206", +"Z. c #AF7206", +"`. c #B07106", +" + c #A96E08", +".+ c #9F6A0C", +"++ c #9C690D", +"@+ c #9E690D", +"#+ c #9E6A0E", +"$+ c #A7751D", +"%+ c #B88E46", +"&+ c #C4A165", +"*+ c #C5A46A", +"=+ c #B2863D", +"-+ c #C58313", +";+ c #DC9416", +">+ c #DF9515", +",+ c #EA9D17", +"'+ c #875D10", +")+ c #4E483D", +"!+ c #F2C983", +"~+ c #DE9516", +"{+ c #A86C05", +"]+ c #B07207", +"^+ c #B07306", +"/+ c #AC7007", +"(+ c #A06A0B", +"_+ c #9B670D", +":+ c #9C680D", +"<+ c #9D690D", +"[+ c #9E680D", +"}+ c #A7741D", +"|+ c #B18435", +"1+ c #AB7E2F", +"2+ c #BC7E12", +"3+ c #D89115", +"4+ c #DE9415", +"5+ c #DA9215", +"6+ c #DC9316", +"7+ c #E8A125", +"8+ c #827C72", +"9+ c #C8B694", +"0+ c #EFA019", +"a+ c #CC8710", +"b+ c #9D6501", +"c+ c #B17408", +"d+ c #B17207", +"e+ c #B27307", +"f+ c #A26B0B", +"g+ c #9A660D", +"h+ c #9E6A0D", +"i+ c #A27018", +"j+ c #AB7F33", +"k+ c #AC8035", +"l+ c #A87927", +"m+ c #A26D13", +"n+ c #A06C12", +"o+ c #9F6C10", +"p+ c #B47911", +"q+ c #D38E14", +"r+ c #DD9416", +"s+ c #DB9215", +"t+ c #E29816", +"u+ c #EAA32A", +"v+ c #CFB07B", +"w+ c #898988", +"x+ c #E09717", +"y+ c #D68E13", +"z+ c #A26702", +"A+ c #B27408", +"B+ c #B37508", +"C+ c #B17308", +"D+ c #A66D0A", +"E+ c #9B670C", +"F+ c #9D670C", +"G+ c #9D680D", +"H+ c #9E690E", +"I+ c #9E6B0E", +"J+ c #A3721B", +"K+ c #B6965C", +"L+ c #C0A779", +"M+ c #CDBDA4", +"N+ c #AE843D", +"O+ c #A77724", +"P+ c #A26C11", +"Q+ c #AC7410", +"R+ c #DC9314", +"S+ c #D99214", +"T+ c #D99115", +"U+ c #DC9315", +"V+ c #D79015", +"W+ c #432D06", +"X+ c #CA8713", +"Y+ c #F4AC2B", +"Z+ c #422C05", +"`+ c #8C5A05", +" @ c #A86F0A", +".@ c #9C670C", +"+@ c #99660C", +"@@ c #9C670D", +"#@ c #9C680C", +"$@ c #A57626", +"%@ c #B79760", +"&@ c #D2C9BB", +"*@ c #CFC7B7", +"=@ c #C2AC83", +"-@ c #B38D4C", +";@ c #A06B11", +">@ c #9D680E", +",@ c #C58312", +"'@ c #DA9114", +")@ c #D79014", +"!@ c #D89014", +"~@ c #D99114", +"{@ c #D18C14", +"]@ c #C28313", +"^@ c #F3A317", +"/@ c #4A3208", +"(@ c #442E06", +"_@ c #C9840D", +":@ c #A36903", +"<@ c #AD6F03", +"[@ c #B47609", +"}@ c #B57508", +"|@ c #AD7009", +"1@ c #9D670B", +"2@ c #98640C", +"3@ c #9A660C", +"4@ c #A06D16", +"5@ c #B69358", +"6@ c #C7B89D", +"7@ c #D8D7D5", +"8@ c #D1CBC0", +"9@ c #B39359", +"0@ c #A16F16", +"a@ c #9C680E", +"b@ c #C38211", +"c@ c #D69013", +"d@ c #D68F13", +"e@ c #D79013", +"f@ c #E39815", +"g@ c #E39816", +"h@ c #79510C", +"i@ c #140E03", +"j@ c #EB9E17", +"k@ c #C3810E", +"l@ c #996303", +"m@ c #B47608", +"n@ c #B57608", +"o@ c #B67709", +"p@ c #B07309", +"q@ c #97640C", +"r@ c #99650C", +"s@ c #A16F1C", +"t@ c #C0A982", +"u@ c #D2CCC1", +"v@ c #D6D6D6", +"w@ c #D4D3D2", +"x@ c #AC8540", +"y@ c #9B680E", +"z@ c #9D690E", +"A@ c #B47810", +"B@ c #D38C13", +"C@ c #895C0C", +"D@ c #D08C13", +"E@ c #D89114", +"F@ c #D68F14", +"G@ c #DA9214", +"H@ c #D58E13", +"I@ c #2A1C04", +"J@ c #E19716", +"K@ c #E29817", +"L@ c #382402", +"M@ c #A26A05", +"N@ c #A16704", +"O@ c #A76C06", +"P@ c #B87709", +"Q@ c #B47509", +"R@ c #A36B0B", +"S@ c #96630C", +"T@ c #98650C", +"U@ c #9B660C", +"V@ c #A07220", +"W@ c #BDA47A", +"X@ c #D8D8D8", +"Y@ c #D5D5D5", +"Z@ c #D0CCC5", +"`@ c #BCA37A", +" # c #9E680E", +".# c #9B680D", +"+# c #AD730F", +"@# c #CB8811", +"## c #E29714", +"$# c #372505", +"%# c #513607", +"&# c #E59914", +"*# c #AE7510", +"=# c #D38D13", +"-# c #E89C15", +";# c #181003", +"># c #7C520A", +",# c #BD7B09", +"'# c #A86B03", +")# c #AC6F04", +"!# c #AC7618", +"~# c #CDB58A", +"{# c #B6780A", +"]# c #B97809", +"^# c #B67609", +"/# c #A76E0A", +"(# c #98640B", +"_# c #95630C", +":# c #9A670C", +"<# c #BEAB8A", +"[# c #D0CDC9", +"}# c #C4B292", +"|# c #A77B30", +"1# c #99660D", +"2# c #C58311", +"3# c #D48E13", +"4# c #D89013", +"5# c #C38212", +"6# c #000000", +"7# c #BD7F11", +"8# c #E59915", +"9# c #3C2805", +"0# c #483007", +"a# c #EA9C15", +"b# c #AB7009", +"c# c #EAEAEA", +"d# c #B8780A", +"e# c #B87809", +"f# c #B97909", +"g# c #AC710A", +"h# c #99660B", +"i# c #94620B", +"j# c #96630B", +"k# c #97640B", +"l# c #9E6C15", +"m# c #B1925B", +"n# c #D4D4D4", +"o# c #D3D3D4", +"p# c #D7D7D7", +"q# c #B99D6E", +"r# c #A16E14", +"s# c #BC7E10", +"t# c #D38C12", +"u# c #D58E12", +"v# c #D28C12", +"w# c #D38D12", +"x# c #E39714", +"y# c #604009", +"z# c #362405", +"A# c #EC9D16", +"B# c #C68412", +"C# c #4D3202", +"D# c #A46A03", +"E# c #A76B04", +"F# c #E9EAEA", +"G# c #BA790A", +"H# c #BA7A0A", +"I# c #B0740A", +"J# c #9C670B", +"K# c #93620B", +"L# c #94620A", +"M# c #96640B", +"N# c #B2935C", +"O# c #D1CEC6", +"P# c #D3D2D2", +"Q# c #D1D1D0", +"R# c #D2D3D3", +"S# c #CCC4B5", +"T# c #BC8B35", +"U# c #CF8A11", +"V# c #D48D12", +"W# c #D18B12", +"X# c #D08B12", +"Y# c #8F5F0C", +"Z# c #DE9414", +"`# c #D58E14", +" $ c #000001", +".$ c #A66D0B", +"+$ c #B17307", +"@$ c #AF7105", +"#$ c #AA6E05", +"$$ c #EBEBEB", +"%$ c #ECECEC", +"&$ c #BA790B", +"*$ c #BC7B0A", +"=$ c #B5770A", +"-$ c #A06A0A", +";$ c #93600B", +">$ c #93610A", +",$ c #95630A", +"'$ c #95630B", +")$ c #AC8643", +"!$ c #CEC7B8", +"~$ c #D4D3D4", +"{$ c #C8C8C9", +"]$ c #CCCCCC", +"^$ c #D3B683", +"/$ c #D48F18", +"($ c #DE9413", +"_$ c #070501", +":$ c #80550C", +"<$ c #E09412", +"[$ c #A26907", +"}$ c #B47405", +"|$ c #E7E7E8", +"1$ c #BB7B0B", +"2$ c #BA7B0A", +"3$ c #BD7C0A", +"4$ c #B97A0A", +"5$ c #A56C0A", +"6$ c #94610A", +"7$ c #92600A", +"8$ c #95620A", +"9$ c #95620B", +"0$ c #96640C", +"a$ c #9C6C16", +"b$ c #BDA67D", +"c$ c #D0D0CB", +"d$ c #CDCDCD", +"e$ c #C2C1C3", +"f$ c #D2D2D1", +"g$ c #D6D6D5", +"h$ c #D4A95E", +"i$ c #CE8C19", +"j$ c #D18C12", +"k$ c #D28D12", +"l$ c #5E3F08", +"m$ c #F0A115", +"n$ c #764C04", +"o$ c #AA6E04", +"p$ c #A96E05", +"q$ c #E7E7E7", +"r$ c #E8E8E8", +"s$ c #BB7C0B", +"t$ c #BD7C0B", +"u$ c #BC7B0B", +"v$ c #AA700A", +"w$ c #956209", +"x$ c #905F0A", +"y$ c #946109", +"z$ c #A57C36", +"A$ c #C1B298", +"B$ c #D0D0D0", +"C$ c #C8C8C8", +"D$ c #C1C1C1", +"E$ c #CFCFCF", +"F$ c #D6D0C9", +"G$ c #D3A24E", +"H$ c #CD8911", +"I$ c #C88611", +"J$ c #7F550B", +"K$ c #E69A13", +"L$ c #B27710", +"M$ c #050300", +"N$ c #B8790C", +"O$ c #AD6F06", +"P$ c #B37406", +"Q$ c #AC7005", +"R$ c #BC7C0B", +"S$ c #BE7C0B", +"T$ c #BF7D0B", +"U$ c #B0730A", +"V$ c #986409", +"W$ c #8F5F09", +"X$ c #91610A", +"Y$ c #95640B", +"Z$ c #98650B", +"`$ c #94620C", +" % c #BCA580", +".% c #D2CEC8", +"+% c #CECECE", +"@% c #C0C0C0", +"#% c #C0C1C1", +"$% c #D0D0CF", +"%% c #D7CAB6", +"&% c #D6A54F", +"*% c #D08B11", +"=% c #D68F12", +"-% c #C78411", +";% c #AE750F", +">% c #D08A0F", +",% c #A86D06", +"'% c #B47506", +")% c #AC7106", +"!% c #E8E8E7", +"~% c #E9E9E9", +"{% c #C07E0C", +"]% c #B5770B", +"^% c #9C670A", +"/% c #8F5E09", +"(% c #915F09", +"_% c #926009", +":% c #936109", +"<% c #92610A", +"[% c #96630A", +"}% c #97630B", +"|% c #AE7714", +"1% c #D2C2A8", +"2% c #C8C7C7", +"3% c #BDBDBD", +"4% c #BEBDBE", +"5% c #D0CFCF", +"6% c #D5D2CC", +"7% c #D19C3F", +"8% c #221703", +"9% c #8E5F0C", +"0% c #EB9D14", +"a% c #7C5208", +"b% c #9B6407", +"c% c #AD7106", +"d% c #BF7E0C", +"e% c #C2800C", +"f% c #BB7A0B", +"g% c #A26A0A", +"h% c #8E5D09", +"i% c #925F09", +"j% c #926109", +"k% c #A66E0C", +"l% c #CF9A3C", +"m% c #D1C7B6", +"n% c #D0CFD0", +"o% c #C6C5C5", +"p% c #BCBBBB", +"q% c #BDBCBB", +"r% c #CECECD", +"s% c #D4D5D5", +"t% c #E4AB48", +"u% c #81560B", +"v% c #2D1E03", +"w% c #B47507", +"x% c #AF7207", +"y% c #ECEBEB", +"z% c #C07E0D", +"A% c #BF7D0C", +"B% c #A86F0B", +"C% c #905E09", +"D% c #8C5C09", +"E% c #905F09", +"F% c #94610B", +"G% c #91610B", +"H% c #9E6A0C", +"I% c #BC7D0E", +"J% c #CC870F", +"K% c #CB870F", +"L% c #CFAA69", +"M% c #D2CFC9", +"N% c #CBCBCB", +"O% c #C0BFC0", +"P% c #BAB9B9", +"Q% c #BEBEBE", +"R% c #CDCECD", +"S% c #C9C9C9", +"T% c #D0AA69", +"U% c #C17F0C", +"V% c #B37407", +"W% c #E8E9E8", +"X% c #E7E8E7", +"Y% c #EBEAEB", +"Z% c #C3800D", +"`% c #C3800C", +" & c #AF730B", +".& c #8B5C09", +"+& c #8E5E09", +"@& c #916009", +"#& c #91600A", +"$& c #99660A", +"%& c #B5770E", +"&& c #C9850F", +"*& c #CA860F", +"=& c #D2B88A", +"-& c #D1CFCB", +";& c #CACACB", +">& c #BEBEBD", +",& c #B9BABA", +"'& c #CACBCB", +")& c #D3D3D3", +"!& c #C5A672", +"~& c #B07307", +"{& c #E6E6E6", +"]& c #DDDEDD", +"^& c #DEDDDE", +"/& c #C27F0D", +"(& c #C5810D", +"_& c #B6780C", +":& c #98640A", +"<& c #8A5B09", +"[& c #8D5C08", +"}& c #915F0A", +"|& c #95610A", +"1& c #AE730C", +"2& c #C7830E", +"3& c #CA850F", +"4& c #C7840F", +"5& c #C8850F", +"6& c #C9891C", +"7& c #D0B586", +"8& c #D1D1D1", +"9& c #C7C7C7", +"0& c #BCBCBB", +"a& c #BABBBA", +"b& c #B8B8B8", +"c& c #C4C4C4", +"d& c #D6CEC1", +"e& c #BB8B34", +"f& c #DDDCDD", +"g& c #C3810D", +"h& c #C3800E", +"i& c #C6830D", +"j& c #BC7B0C", +"k& c #9D6709", +"l& c #8A5B08", +"m& c #8B5B08", +"n& c #8D5D09", +"o& c #8E5E08", +"p& c #8F5E08", +"q& c #AD720C", +"r& c #C6820E", +"s& c #CE880F", +"t& c #C6830E", +"u& c #C7840E", +"v& c #D28C10", +"w& c #B98323", +"x& c #D6BB8B", +"y& c #B9BAB9", +"z& c #B9B9B9", +"A& c #BFBFBF", +"B& c #D5D4D1", +"C& c #E2E3E1", +"D& c #B3B3B3", +"E& c #E8E8E9", +"F& c #C4810E", +"G& c #C3820D", +"H& c #C7830D", +"I& c #C17F0D", +"J& c #895A07", +"K& c #8D5D08", +"L& c #8E5D08", +"M& c #906009", +"N& c #9E690A", +"O& c #BB7B0D", +"P& c #C1800E", +"Q& c #2A1B03", +"R& c #BE7E0D", +"S& c #C9850E", +"T& c #CD880F", +"U& c #CB860F", +"V& c #080808", +"W& c #D1C0A2", +"X& c #CFCFCE", +"Y& c #C4C3C4", +"Z& c #BABABA", +"`& c #B9B9B8", +" * c #B8B7B7", +".* c #C9CAC9", +"+* c #D7D8D7", +"@* c #DCDCDC", +"#* c #E9EAE9", +"$* c #E4E5E5", +"%* c #CBCBCA", +"&* c #ADADAD", +"** c #D2D1D2", +"=* c #EBEBEC", +"-* c #C4820E", +";* c #C5820E", +">* c #AB710B", +",* c #8E5D07", +"'* c #885907", +")* c #8C5C07", +"!* c #8C5C08", +"~* c #B5780C", +"{* c #D38C0E", +"]* c #3B2704", +"^* c #4A3105", +"/* c #D38B0F", +"(* c #503406", +"_* c #C07F0E", +":* c #D99010", +"<* c #35270E", +"[* c #C1B39B", +"}* c #CFD0D0", +"|* c #B8B9B9", +"1* c #B7B7B7", +"2* c #B5B6B6", +"3* c #BEBFBF", +"4* c #D7D8D8", +"5* c #E7E7E6", +"6* c #DFE0E0", +"7* c #B1B1B1", +"8* c #A6A5A5", +"9* c #C5830F", +"0* c #B4760C", +"a* c #936008", +"b* c #875806", +"c* c #8A5A07", +"d* c #8C5B07", +"e* c #8C5B08", +"f* c #8F5D09", +"g* c #936009", +"h* c #AE720B", +"i* c #C7850E", +"j* c #B8790D", +"k* c #010000", +"l* c #AB720C", +"m* c #D9900F", +"n* c #312004", +"o* c #472F06", +"p* c #CC870E", +"q* c #B9801B", +"r* c #CDB487", +"s* c #C5C4C4", +"t* c #B6B5B6", +"u* c #C6C7C6", +"v* c #E4E4E3", +"w* c #C1C2C2", +"x* c #969797", +"y* c #A3A3A3", +"z* c #DDDDDE", +"A* c #BC7B0D", +"B* c #865706", +"C* c #8B5B07", +"D* c #8A5B07", +"E* c #8D5C09", +"F* c #C07F0D", +"G* c #C5820D", +"H* c #C1800D", +"I* c #CC860E", +"J* c #D58C0F", +"K* c #5D3D06", +"L* c #291C03", +"M* c #D78E0F", +"N* c #B9790C", +"O* c #9F6808", +"P* c #B87909", +"Q* c #B6770A", +"R* c #C9B38E", +"S* c #D1D2D1", +"T* c #C6C7C7", +"U* c #B6B7B7", +"V* c #B5B5B5", +"W* c #B3B3B2", +"X* c #B6B5B5", +"Y* c #C8C6C8", +"Z* c #D7D7D8", +"`* c #E5E5E5", +" = c #D0D1D0", +".= c #9A9B9B", +"+= c #949494", +"@= c #AEAEAE", +"#= c #E5E6E6", +"$= c #C9840F", +"%= c #C2800E", +"&= c #A06909", +"*= c #865806", +"== c #895A06", +"-= c #895B07", +";= c #9F680A", +">= c #BB7C0D", +",= c #C4810D", +"'= c #C4820D", +")= c #B3760C", +"!= c #3A2604", +"~= c #CF880E", +"{= c #281A02", +"]= c #BB7B0A", +"^= c #B8790A", +"/= c #CECECF", +"(= c #BBBBBB", +"_= c #B6B6B6", +":= c #B4B3B3", +"<= c #B2B1B2", +"[= c #B6B6B7", +"}= c #CAC9CA", +"|= c #D8D7D7", +"1= c #E3E3E3", +"2= c #A4A4A4", +"3= c #939393", +"4= c #979797", +"5= c #E6E5E5", +"6= c #CC8810", +"7= c #C8840F", +"8= c #A86E0B", +"9= c #895906", +"0= c #855605", +"a= c #895907", +"b= c #8B5A07", +"c= c #B4760B", +"d= c #C27F0C", +"e= c #C07F0C", +"f= c #CE870E", +"g= c #060401", +"h= c #C6830C", +"i= c #C17E0A", +"j= c #BBBCBB", +"k= c #B4B4B5", +"l= c #B3B2B2", +"m= c #AFAFAF", +"n= c #D9D8D8", +"o= c #D9D9D9", +"p= c #DEDDDD", +"q= c #E7E6E7", +"r= c #E5E5E4", +"s= c #E2E2E2", +"t= c #D3D4D4", +"u= c #9F9F9F", +"v= c #999898", +"w= c #969696", +"x= c #9B9B9C", +"y= c #D2D2D2", +"z= c #EBEAEA", +"A= c #CA8610", +"B= c #CD8710", +"C= c #CC880F", +"D= c #B0750C", +"E= c #835505", +"F= c #885906", +"G= c #8A5A06", +"H= c #8C5D08", +"I= c #8B5B09", +"J= c #946108", +"K= c #B0740B", +"L= c #BE7D0C", +"M= c #CD870D", +"N= c #CA850E", +"O= c #4D3205", +"P= c #D88E0F", +"Q= c #B9790B", +"R= c #CFCECF", +"S= c #B4B4B4", +"T= c #B2B2B2", +"U= c #ADADAE", +"V= c #BFBFC0", +"W= c #DDDEDE", +"X= c #DEDEDE", +"Y= c #E4E4E5", +"Z= c #DADADB", +"`= c #C7C7C6", +" - c #A9A7A8", +".- c #949394", +"+- c #9A9999", +"@- c #979798", +"#- c #A4A4A5", +"$- c #D6D7D7", +"%- c #EAEAE9", +"&- c #CB8710", +"*- c #CE8911", +"=- c #B97A0D", +"-- c #825505", +";- c #855706", +">- c #885806", +",- c #8A5B06", +"'- c #8D5C07", +")- c #895A08", +"!- c #744C07", +"~- c #C9850C", +"{- c #432C05", +"]- c #D68D0E", +"^- c #462E04", +"/- c #B97A0B", +"(- c #BC7C0A", +"_- c #BFBFBE", +":- c #B7B7B6", +"<- c #B5B4B4", +"[- c #B2B3B2", +"}- c #B0B0B0", +"|- c #CACACA", +"1- c #DBDBDB", +"2- c #DEDFDF", +"3- c #DFDFDF", +"4- c #DEDEDF", +"5- c #E0E1E1", +"6- c #E1E2E2", +"7- c #E0DFDF", +"8- c #E4E3E3", +"9- c #DEDEDD", +"0- c #CBCDCC", +"a- c #B7B8B7", +"b- c #A2A2A2", +"c- c #989898", +"d- c #999999", +"e- c #CD8810", +"f- c #D08A11", +"g- c #C2800F", +"h- c #9A6508", +"i- c #825506", +"j- c #835606", +"k- c #895806", +"l- c #8A5A08", +"m- c #9E6809", +"n- c #BF7E0B", +"o- c #C17F0B", +"p- c #010100", +"q- c #845608", +"r- c #C7830C", +"s- c #C3810C", +"t- c #CB860D", +"u- c #C5810C", +"v- c #C2C1C1", +"w- c #B4B5B4", +"x- c #B3B3B4", +"y- c #B1B2B1", +"z- c #B1B1B0", +"A- c #ABABAB", +"B- c #AAAAAA", +"C- c #B6B6B5", +"D- c #D3D4D3", +"E- c #D5D6D5", +"F- c #CECFCE", +"G- c #C4C4C3", +"H- c #A0A0A0", +"I- c #9E9E9D", +"J- c #9A999A", +"K- c #9A9A9A", +"L- c #999899", +"M- c #949495", +"N- c #A8A8A8", +"O- c #CD8811", +"P- c #D18B11", +"Q- c #C98610", +"R- c #A36B0A", +"S- c #825305", +"T- c #986308", +"U- c #B3750A", +"V- c #BE7D0A", +"W- c #7E5308", +"X- c #110B01", +"Y- c #C4800B", +"Z- c #7F5308", +"`- c #D38B0D", +" ; c #C6820C", +".; c #BD7C0C", +"+; c #C3C3C3", +"@; c #B6B7B6", +"#; c #B5B5B6", +"$; c #ACACAD", +"%; c #AAABAB", +"&; c #A9A9A9", +"*; c #A9A9A8", +"=; c #ABAAAA", +"-; c #B0AFAF", +";; c #ACABAB", +">; c #A0A09F", +",; c #A2A2A1", +"'; c #9D9D9D", +"); c #9C9C9C", +"!; c #9B9B9B", +"~; c #9A9A99", +"{; c #989897", +"]; c #E1E1E0", +"^; c #AC720C", +"/; c #875705", +"(; c #805204", +"_; c #865605", +":; c #926007", +"<; c #AC7109", +"[; c #BB7A0A", +"}; c #BD7B0B", +"|; c #C7820D", +"1; c #201502", +"2; c #684506", +"3; c #D78D0D", +"4; c #835608", +"5; c #754D07", +"6; c #BD7D0C", +"7; c #C2C3C2", +"8; c #B8B9B8", +"9; c #B0AFB0", +"0; c #AFAEAF", +"a; c #ADAEAE", +"b; c #ACADAD", +"c; c #A9A8A9", +"d; c #A6A6A6", +"e; c #A5A5A5", +"f; c #A0A0A1", +"g; c #A3A3A2", +"h; c #9E9D9D", +"i; c #9E9E9E", +"j; c #9D9E9D", +"k; c #9D9C9B", +"l; c #989998", +"m; c #969697", +"n; c #D3D3D2", +"o; c #EDEDEC", +"p; c #CF8911", +"q; c #B7790D", +"r; c #8C5B06", +"s; c #7E5103", +"t; c #825405", +"u; c #845505", +"v; c #855606", +"w; c #845708", +"x; c #D1890C", +"y; c #CA850D", +"z; c #C6C6C6", +"A; c #B0B1B0", +"B; c #ADADAC", +"C; c #ABACAC", +"D; c #A6A7A7", +"E; c #A6A7A6", +"F; c #A2A2A3", +"G; c #A1A1A1", +"H; c #9E9E9F", +"I; c #9D9D9E", +"J; c #9C9D9C", +"K; c #9B9C9B", +"L; c #9A9B9A", +"M; c #959695", +"N; c #9F9FA0", +"O; c #CDCCCD", +"P; c #EAEBEA", +"Q; c #D28B12", +"R; c #D58D12", +"S; c #C07F0F", +"T; c #946107", +"U; c #7E5203", +"V; c #815304", +"W; c #835504", +"X; c #845506", +"Y; c #9E6808", +"Z; c #BE7D0B", +"`; c #C07E0B", +" > c #AC7209", +".> c #CA850C", +"+> c #B1750C", +"@> c #CBCCCB", +"#> c #CDCDCC", +"$> c #B8B7B8", +"%> c #B4B3B5", +"&> c #B2B3B3", +"*> c #B1B0B1", +"=> c #AEAEAD", +"-> c #ACACAC", +";> c #ACACAB", +">> c #AAA9A9", +",> c #A9A8A8", +"'> c #A5A4A5", +")> c #A2A1A1", +"!> c #A1A0A0", +"~> c #9A9B9C", +"{> c #9F9F9E", +"]> c #E5E5E6", +"^> c #E6E7E6", +"/> c #9D6708", +"(> c #7F5203", +"_> c #7E5204", +":> c #845605", +"<> c #986307", +"[> c #B27409", +"}> c #BA7A09", +"|> c #B7780A", +"1> c #BD7B0A", +"2> c #261902", +"3> c #D1890B", +"4> c #674406", +"5> c #A16A0B", +"6> c #C1800C", +"7> c #CCCDCD", +"8> c #B7B7B8", +"9> c #AFB0AF", +"0> c #AEAEAF", +"a> c #ACADAC", +"b> c #AAA9AA", +"c> c #A8A7A7", +"d> c #A7A7A7", +"e> c #A3A4A4", +"f> c #A2A3A2", +"g> c #A2A0A0", +"h> c #A09F9F", +"i> c #9C9D9D", +"j> c #AEADAD", +"k> c #D18C13", +"l> c #A66E0A", +"m> c #815404", +"n> c #7C5003", +"o> c #825404", +"p> c #845606", +"q> c #915E06", +"r> c #B77709", +"s> c #A86D08", +"t> c #B7770A", +"u> c #B77809", +"v> c #A26A09", +"w> c #624005", +"x> c #2B1C03", +"y> c #CA860E", +"z> c #C8C9C8", +"A> c #BCBCBC", +"B> c #ADACAC", +"C> c #ACACAA", +"D> c #A9A9AA", +"E> c #A7A6A6", +"F> c #A5A5A4", +"G> c #A4A4A3", +"H> c #9D9D9C", +"I> c #9B9C9C", +"J> c #9FA0A0", +"K> c #BBBCBC", +"L> c #D28C13", +"M> c #D78F13", +"N> c #B2750C", +"O> c #855604", +"P> c #7A4F03", +"Q> c #805304", +"R> c #815303", +"S> c #855506", +"T> c #865606", +"U> c #835506", +"V> c #A56C07", +"W> c #B77708", +"X> c #A56C08", +"Y> c #AD7109", +"Z> c #C07E09", +"`> c #B37509", +" , c #C4800A", +"., c #845607", +"+, c #C8840E", +"@, c #B7B8B8", +"#, c #B1B0B0", +"$, c #AEAFAF", +"%, c #ACABAC", +"&, c #A9AAAA", +"*, c #A7A7A6", +"=, c #A4A5A5", +"-, c #A4A3A3", +";, c #A1A1A0", +">, c #A0A1A1", +",, c #9E9F9F", +"', c #9D9C9C", +"), c #CDCECE", +"!, c #E4E4E4", +"~, c #E7E8E8", +"{, c #D48D13", +"], c #BD7D0E", +"^, c #8D5C05", +"/, c #7A4E02", +"(, c #7E5104", +"_, c #805303", +":, c #805403", +"<, c #875805", +"[, c #9F6707", +"}, c #B47508", +"|, c #C27F0A", +"1, c #3E2803", +"2, c #412A03", +"3, c #C2800A", +"4, c #AA6F08", +"5, c #080500", +"6, c #C6820A", +"7, c #654307", +"8, c #BEBEBF", +"9, c #B4B4B3", +"0, c #AFB0B0", +"a, c #ABABAC", +"b, c #A9AAA9", +"c, c #A2A3A3", +"d, c #E1E1E2", +"e, c #E6E5E6", +"f, c #D58F13", +"g, c #DB9214", +"h, c #966207", +"i, c #7A4F02", +"j, c #7C5002", +"k, c #805203", +"l, c #815203", +"m, c #815405", +"n, c #835405", +"o, c #976306", +"p, c #B07208", +"q, c #B67608", +"r, c #B37408", +"s, c #B37409", +"t, c #B67708", +"u, c #AC6F08", +"v, c #9B6508", +"w, c #CA840A", +"x, c #362202", +"y, c #634206", +"z, c #B2B2B1", +"A, c #B0B0B1", +"B, c #A7A6A7", +"C, c #C9C9CA", +"D, c #C2C2C2", +"E, c #C7C7C8", +"F, c #E2E2E1", +"G, c #E4E5E4", +"H, c #A16A09", +"I, c #7B4F03", +"J, c #794E02", +"K, c #835404", +"L, c #815305", +"M, c #915D06", +"N, c #AA7007", +"O, c #B27508", +"P, c #BF7D09", +"Q, c #C88209", +"R, c #563804", +"S, c #1C1201", +"T, c #D28C0F", +"U, c #C7C8C7", +"V, c #BABAB9", +"W, c #B9B8B9", +"X, c #B5B5B4", +"Y, c #AFAEAE", +"Z, c #AAAAA9", +"`, c #A3A3A4", +" ' c #E0E0E0", +".' c #DADADA", +"+' c #D78F14", +"@' c #AC710C", +"#' c #774C02", +"$' c #7D5003", +"%' c #7F5103", +"&' c #805305", +"*' c #8B5A05", +"=' c #B27308", +"-' c #B77808", +";' c #0C0800", +">' c #BB7A09", +",' c #7C5209", +"'' c #C9860F", +")' c #C6830F", +"!' c #ADACAD", +"~' c #D9D9D8", +"{' c #DDDCDC", +"]' c #E1E1E1", +"^' c #B6780E", +"/' c #754B01", +"(' c #7D5103", +"_' c #865704", +":' c #9E6606", +"<' c #593904", +"[' c #BD7A08", +"}' c #191001", +"|' c #CD8910", +"1' c #C5C5C5", +"2' c #C2C3C3", +"3' c #B7B6B6", +"4' c #A8A9A9", +"5' c #C48310", +"6' c #8E5C06", +"7' c #754A01", +"8' c #7C4F03", +"9' c #815403", +"0' c #7F5104", +"a' c #A16906", +"b' c #AB6F07", +"c' c #C07D08", +"d' c #1E1301", +"e' c #482F02", +"f' c #C8830B", +"g' c #C3820E", +"h' c #D78F10", +"i' c #C5C5C6", +"j' c #BDBEBD", +"k' c #BBBABB", +"l' c #B1B2B2", +"m' c #A4A5A4", +"n' c #DADAD9", +"o' c #724800", +"p' c #764C01", +"q' c #915D05", +"r' c #966105", +"s' c #2E1E02", +"t' c #B87806", +"u' c #B57507", +"v' c #583904", +"w' c #281A01", +"x' c #C17E07", +"y' c #A76D09", +"z' c #A16B0D", +"A' c #C98510", +"B' c #C4C5C4", +"C' c #C3C3C2", +"D' c #BABBBB", +"E' c #BAB9BA", +"F' c #B3B4B3", +"G' c #A7A8A7", +"H' c #DA9314", +"I' c #DE9515", +"J' c #C38210", +"K' c #754C01", +"L' c #7B4F02", +"M' c #7C4F02", +"N' c #7C5103", +"O' c #7D5104", +"P' c #8A5A04", +"Q' c #A36A05", +"R' c #AF7106", +"S' c #B27306", +"T' c #0A0700", +"U' c #764D04", +"V' c #B77607", +"W' c #472E03", +"X' c #BC7907", +"Y' c #A96D06", +"Z' c #191002", +"`' c #B87A0D", +" ) c #CB8610", +".) c #BBBBBC", +"+) c #BBBABA", +"@) c #B3B4B4", +"#) c #B2B1B1", +"$) c #D5D5D4", +"%) c #986408", +"&) c #845503", +"*) c #9D6605", +"=) c #B57606", +"-) c #774D04", +";) c #0E0900", +">) c #B27406", +",) c #794E05", +"') c #C9840C", +")) c #D68E11", +"!) c #C3C4C3", +"~) c #C3C2C3", +"{) c #C0BFBF", +"]) c #B7B6B7", +"^) c #B0B0AF", +"/) c #AEAFAE", +"() c #ABACAB", +"_) c #CF8A13", +":) c #784D02", +"<) c #7E5003", +"[) c #976104", +"}) c #B67606", +"|) c #B77706", +"1) c #201501", +"2) c #563803", +"3) c #C37E07", +"4) c #9C6609", +"5) c #C48210", +"6) c #C2C2C1", +"7) c #BCBCBD", +"8) c #B8B9B7", +"9) c #B4B3B4", +"0) c #B0B1B1", +"a) c #734900", +"b) c #905D04", +"c) c #AB6F05", +"d) c #845604", +"e) c #4E3303", +"f) c #BF7C06", +"g) c #8A5903", +"h) c #CE8810", +"i) c #C0C0BF", +"j) c #B8B8B7", +"k) c #B4B5B5", +"l) c #B3B2B3", +"m) c #7E5102", +"n) c #784E01", +"o) c #7B4E02", +"p) c #A26904", +"q) c #AF7205", +"r) c #8F5D04", +"s) c #B67605", +"t) c #9C6505", +"u) c #A16807", +"v) c #D99112", +"w) c #CE8A12", +"x) c #D6D7D6", +"y) c #B40202", +"z) c #A50303", +"A) c #970303", +"B) c #B2760D", +"C) c #724900", +"D) c #794F02", +"E) c #794D03", +"F) c #875703", +"G) c #9C6404", +"H) c #A86B05", +"I) c #B47305", +"J) c #A96E04", +"K) c #C07C07", +"L) c #BFC0C0", +"M) c #B2B2B3", +"N) c #CCCBCC", +"O) c #BE0B0B", +"P) c #B30101", +"Q) c #A30303", +"R) c #940101", +"S) c #830202", +"T) c #750101", +"U) c #DA9315", +"V) c #956003", +"W) c #9F6603", +"X) c #734903", +"Y) c #B27204", +"Z) c #593903", +"`) c #684403", +" ! c #BD7B04", +".! c #654202", +"+! c #724C09", +"@! c #C0C1C0", +"#! c #C0BFC1", +"$! c #BBBBBA", +"%! c #B8B8B9", +"&! c #ADAEAD", +"*! c #ABABAA", +"=! c #D1D1D2", +"-! c #AF4E51", +";! c #A43637", +">! c #9A1616", +",! c #8C0E0F", +"'! c #7F0202", +")! c #6E0000", +"!! c #630102", +"~! c #BF7F0F", +"{! c #905C03", +"]! c #A46903", +"^! c #8E5C03", +"/! c #9D6404", +"(! c #AA6D04", +"_! c #835403", +":! c #B97805", +"~ c #CF8B13", +",~ c #DD9415", +"'~ c #D58F14", +")~ c #C1C0C0", +"!~ c #B9B8B8", +"~~ c #BDBCBC", +"{~ c #CCCBCB", +"]~ c #CFCECE", +"^~ c #C38229", +"/~ c #B87D28", +"(~ c #AB7425", +"_~ c #9E6B22", +":~ c #92621F", +"<~ c #85591C", +"[~ c #78521A", +"}~ c #6F4B17", +"|~ c #9C6401", +"1~ c #956002", +"2~ c #120C00", +"3~ c #9E6501", +"4~ c #533707", +"5~ c #C88612", +"6~ c #D99215", +"7~ c #BCBDBD", +"8~ c #B9B9BA", +"9~ c #CECDCD", +"0~ c #C08028", +"a~ c #B57A27", +"b~ c #A87124", +"c~ c #9B6921", +"d~ c #90601E", +"e~ c #82591C", +"f~ c #76501A", +"g~ c #A56B04", +"h~ c #AA6E01", +"i~ c #1E1300", +"j~ c #603F04", +"k~ c #C2C2C3", +"l~ c #C9C9C8", +"m~ c #CCCDCC", +"n~ c #BE8029", +"o~ c #B07827", +"p~ c #A46F23", +"q~ c #976620", +"r~ c #8C5E1C", +"s~ c #7F561B", +"t~ c #744E19", +"u~ c #DB9316", +"v~ c #DF9517", +"w~ c #C1C1C2", +"x~ c #BA7D29", +"y~ c #AE7626", +"z~ c #A06D22", +"A~ c #946420", +"B~ c #885C1D", +"C~ c #7C531B", +"D~ c #734C18", +"E~ c #DD9516", +"F~ c #BEBDBD", +"G~ c #BDBDBE", +"H~ c #B5B4B5", +"I~ c #CBCACB", +"J~ c #C28129", +"K~ c #B87C28", +"L~ c #AB7325", +"M~ c #9D6A22", +"N~ c #916220", +"O~ c #855A1C", +"P~ c #795119", +"Q~ c #704B17", +"R~ c #C3C3C4", +"S~ c #B5B6B5", +"T~ c #CCCCCD", +"U~ c #C08129", +"V~ c #A77124", +"W~ c #9A6821", +"X~ c #8E601F", +"Y~ c #81571C", +"Z~ c #765018", +"`~ c #BCBDBC", +" { c #CBCBC9", +".{ c #BC7F28", +"+{ c #B07826", +"@{ c #A46F22", +"#{ c #976621", +"${ c #8B5E1E", +"%{ c #7E551B", +"&{ c #734D18", +"*{ c #C38428", +"={ c #BA7D27", +"-{ c #AE7524", +";{ c #A16D22", +">{ c #724C18", +",{ c #C9C8C9", +"'{ c #C08128", +"){ c #B77B27", +"!{ c #AA7325", +"~{ c #91621F", +"{{ c #845A1C", +"]{ c #714B17", +"^{ c #C1C3C2", +"/{ c #BCBBBC", +"({ c #BF8128", +"_{ c #B47A27", +":{ c #A67124", +"<{ c #8D5F1E", +"[{ c #81571B", +"}{ c #754F18", +"|{ c #C4C3C3", +"1{ c #B9BAB8", +"2{ c #C7C6C6", +"3{ c #B17726", +"4{ c #A36E24", +"5{ c #8A5D1D", +"6{ c #7E541B", +"7{ c #744D18", +"8{ c #C1BFC0", +"9{ c #C7C6C7", +"0{ c #C28329", +"a{ c #B97D28", +"b{ c #AD7526", +"c{ c #A06C23", +"d{ c #875B1D", +"e{ c #7A531A", +"f{ c #724D17", +"g{ c #C5C6C6", +"h{ c #C5C5C4", +"i{ c #B1AFB0", +"j{ c #C6C6C5", +"k{ c #C18229", +"l{ c #B77C27", +"m{ c #A97425", +"n{ c #9D6922", +"o{ c #91611F", +"p{ c #84581C", +"q{ c #775019", +"r{ c #6F4B16", +"s{ c #C4C5C5", +"t{ c #A57123", +"u{ c #9A6721", +"v{ c #8D5F1D", +"w{ c #764F19", +"x{ c #C0C1BF", +"y{ c #B07726", +"z{ c #A26E23", +"A{ c #966520", +"B{ c #7D541A", +"C{ c #744D17", +"D{ c #C8C7C8", +"E{ c #C5C4C5", +"F{ c #BABABB", +"G{ c #BFBEBE", +"H{ c #C3C4C4", +"I{ c #C38329", +"J{ c #AD7625", +"K{ c #9F6C23", +"L{ c #936320", +"M{ c #875B1C", +"N{ c #724C17", +"O{ c #BF8028", +"P{ c #B67B27", +"Q{ c #AA7224", +"R{ c #9C6A21", +"S{ c #8F611E", +"T{ c #83591C", +"U{ c #785119", +"V{ c #6F4A15", +"W{ c #B6B8B8", +"X{ c #C5C7C7", +"Y{ c #BE8128", +"Z{ c #B37926", +"`{ c #A57023", +" ] c #996720", +".] c #80571C", +"+] c #C6C6C7", +"@] c #C3C4C2", +"#] c #C2C3C1", +"$] c #B3B5B3", +"%] c #BB7E27", +"&] c #AF7725", +"*] c #A26D23", +"=] c #96641F", +"-] c #8A5C1D", +";] c #7C541B", +">] c #C1C2C1", +",] c #C1C0C1", +"'] c #C2832A", +")] c #AC7425", +"!] c #9F6B22", +"~] c #92631F", +"{] c #865A1C", +"]] c #7A5219", +"^] c #714B16", +"/] c #BF8029", +"(] c #A97224", +"_] c #9C6922", +":] c #8F601F", +"<] c #83581C", +"[] c #785019", +"}] c #6F4916", +"|] c #C3C2C2", +"1] c #BE8028", +"2] c #B27826", +"3] c #A47023", +"4] c #986821", +"5] c #8B5F1E", +"6] c #80561C", +"7] c #744F17", +"8] c #BB7F27", +"9] c #AE7625", +"0] c #956520", +"a] c #885C1E", +"b] c #C28227", +"c] c #B97D27", +"d] c #865A1D", +"e] c #7A5119", +"f] c #C7C9C7", +"g] c #B67B26", +"h] c #A87223", +"i] c #8E611E", +"j] c #6E4A16", +"k] c #CACBCA", +"l] c #C9CBC9", +"m] c #986721", +"n] c #8B5F1D", +"o] c #80561B", +"p] c #C38327", +"q] c #BB7E28", +"r] c #A16E23", +"s] c #895C1D", +"t] c #714C18", +"u] c #A8A8A7", +"v] c #C2C1C2", +"w] c #C28229", +"x] c #B87C27", +"y] c #9E6B23", +"z] c #85591D", +"A] c #78511A", +"B] c #714C17", +"C] c #C4C3C2", +"D] c #A77224", +"E] c #9B6821", +"F] c #8F601E", +"G] c #82581C", +"H] c #BD7F28", +"I] c #986620", +"J] c #7F561C", +"K] c #734E18", +"L] c #B7B6B8", +"M] c #C38328", +"N] c #BB7D28", +"O] c #AF7625", +"P] c #C08228", +"Q] c #90621F", +"R] c #785219", +"S] c #704B16", +"T] c #9A6822", +"U] c #8D601F", +"V] c #81581C", +"W] c #765019", +"X] c #BDBFBD", +"Y] c #BC7F27", +"Z] c #A36F24", +"`] c #7F561A", +" ^ c #C48328", +".^ c #A06C22", +"+^ c #875C1D", +"@^ c #714D17", +"#^ c #AFAFB0", +"$^ c #CAC9C9", +"%^ c #C18227", +"&^ c #9D6A21", +"*^ c #91611E", +"=^ c #785118", +"-^ c #9A6720", +";^ c #8E5F1D", +">^ c #81571A", +",^ c #C78C35", +"'^ c #7C541A", +")^ c #A7A8A8", +"!^ c #F6C06D", +"~^ c #D9A34F", +"{^ c #C18935", +"]^ c #BD8731", +"^^ c #A47126", +"/^ c #8D601D", +"(^ c #845B1A", +"_^ c #775017", +":^ c #F1BB65", +"<^ c #E7B05A", +"[^ c #DEA74C", +"}^ c #D9A240", +"|^ c #C18C30", +"1^ c #AA7720", +"2^ c #AA771B", +"3^ c #916415", +"4^ c #E8B259", +"5^ c #E3AC4E", +"6^ c #DCA540", +"7^ c #D39B32", +"8^ c #D09625", +"9^ c #D0941C", +"0^ c #E6B056", +"a^ c #E0AA49", +"b^ c #D9A23B", +"c^ c #D49B2F", +"d^ c #D09623", +"e^ c #E5AF51", +"f^ c #DFA847", +"g^ c #D9A139", +"h^ c #D3992C", +"i^ c #CD9321", +"j^ c #B0AEAE", +"k^ c #E2AB4B", +"l^ c #DEA743", +"m^ c #D89F36", +"n^ c #D49A2A", +"o^ c #DBA344", +"p^ c #DAA23E", +"q^ c #D79E33", +"r^ c #826122", +" ", +" ", +" ", +" . ", +" + + @ # ", +" $ % & * = # ", +" - ; > , ' ) + . ", +" ! ~ { ] ^ / ( _ : = < ", +" [ } ! | 1 2 3 4 5 6 7 8 @ ", +" } 9 0 a b c 2 2 c d e f g + . ", +" h h i j k l b l 7 4 2 m n o 4 p < ", +" q q h r s t u v b b l 7 w x y z A B % C ", +" D E F G H I J I u u K L l w M N O P Q R S < ", +" T U V D W X Y X I u I v v u K l Z O ` ...+.@.8 $ ", +" T #.$.%.&.*.=.-.X I u u u v u K v ;.>.,.'.).!.3 ~.% $ ", +" {.].^./.(._.:.=.=.-.X X I I I v u I <.[.}.|.1.2.3.4.5.$ $ ", +" 6.7.7.8.9.0.a.b.c.:.:.-.-.-.X X I I I v d.e.f.g.f.L h.K i.j.k.8 ", +" l.m.n.{.o.p.q.r.r.s.t.t.:.:.=.=.X X X I I u.v.w.` x.y.z.A.B.C.D.| 8 ", +" E.F.G.H.I.J.p.r.K.r.r.s.a.:.:.=.=.=.=.-.X L.M.N.O.P.Q.R.S.T.U.V.W.X.k.$ ", +" Y.Z.`. +.+++@+#+#+#+#+r.K.K.a.b.c.t.=.-.=.X $+%+&+*+=+) -+;+>+,+'+)+!+~+{+8 ", +" ]+]+^+/+(+_+:+<+[+@+@+@+#+r.p.r.r.K.c.t.=.=.=.=.}+|+1+X 2+3+4+5+D.6+7+8+9+0+a+b+$ ", +" c+d+e+E.f+g+_+:+:+<+[+@+@+h+#+#+p.r.i+j+k+l+m+t.=.=.n+o+p+q+r+s+5+5+>+t+u+v+w+x+y+i - z+ ", +" A+A+B+C+D+E+g+_+_+:+:+F+G+<+@+@+H+I+J+K+L+M+N+O+P+t.K.J.Q+S.R+S+T+S+U+3+V+W+X+Y+Z+`+. @ - ", +" B+B+B+ @.@+@E+E+E+E+.@@@:+#@<+<+@+$@%@&@*@=@-@r.;@K.>@7 ,@'@S+)@!@!@~@{@]@^@/@(@_@:@<@| { ", +" [@}@}@|@1@2@3@3@3@E+E+E+E+E+.@.@@@4@5@6@7@8@9@0@r.r.a@:.b@c@~@d@e@)@f@~@g@h@i@j@k@l@:@:@:@ ", +" m@n@o@p@(+q@q@r@+@+@3@E+E+E+E+E+.@_+s@t@u@v@w@x@H+#+y@z@A@B@C@D@E@F@G@H@b@I@J@K@L@M@N@O@i ", +" o@o@P@Q@R@q@S@T@T@+@+@+@3@3@U@E+E+_+E+V@W@X@Y@Z@`@ #:+.#+#@#e@##$#%#&#!@*#=#-#;#>#,#'#)#!#~# ", +" o@{#]#^#/#(#_#(#(#2@T@T@r@+@+@3@3@:#E+E+E+<#[#Y@Y@}#|#1#' 2#y+3#=#4#5#6#7#8#9#0#a#b#7.i E c# ", +" d#e#f#g#h#i#j#k#k#(#2@T@T@T@T@r@+@3@3@E+l#m#n#o#n#p#q#r#s#t#u#v#v#w#d@x#y#z#A#B#C#$.D#D E# F# ", +" j.G#H#I#J#K#L#j#M#k#k#k#k#2@2@2@T@r@+@+@+@:#N#O#P#Q#R#S#T#U#V#W#W#v#X#y+Y#Z#`# $.$+$@$#$U $$%$ ", +" G#&$*$=$-$;$>$,$,$'$j#M#M#k#q@q@2@(#T@T@r@T@r@)$!$~${$]$Y@^$/$X#W#W#t#($v#'@_$:$<$[$}$T #$ c#|$ ", +" 1$2$3$4$5$6$7$6$8$9$,$8$j#'$M#k#0$k#2@2@2@T@T@T@a$b$c$d$e$f$g$h$i$U#t#j$k$l$l$m$#@n$o$p$]. q$r$ ", +" s$t$u$v$w$x$>$y$6$6$8$8$8$,$,$j#j#M#k#k#2@2@2@T@T@z$A$B$C$D$E$F$G$U#H$I$J$K$L$M$N$O$P$Q$Q$ q$r$$$ ", +" R$S$T$U$V$W$X$>$>$>$6$6$L#8$8$8$'$Y$j#j#k#k#2@2@2@Z$`$ %.%+%@%#%$%%%&%*%=%-%6#;%>%,%'%)%/+ r$!%~% ", +" S$S${%]%^%/%(%_%_%_%:%<%>$6$L#L#8$8$9$,$[%j#M#M#k#k#9$}%|%1%E$2%3%4%5%6%7%8%9%0%a%b%{.c%l. q$q$~% ", +" d%d%e%f%g%/%h%(%i%i%<%j%j%>$:%:%>$6$L#L#8$9$,$,$'$Y$'$K#k%k@l%m%n%o%p%q%r%s%t%u%v%G#l.w%x% !%r$~%y% ", +" z%{%X.A%B%C%D%C%E%(%(%_%_%_%<%<%:%>$>$>$6$6$i#F%'$8$i#G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%}@V%]+ W%X%q$Y% ", +" U%Z%`% &y$.&+&/%W$E%(%(%(%@&_%<%_%j%<%j%>$>$6$L#8$9$#&$&%&&&*&&&&&=&-&;&>&,&,&'&)&!&E.C+~& {&]&^&Y% ", +" /&Z%(&_&:&<&[&/%/%/%/%/%C%E%E%(%i%_%_%j%j%>$<%>$6$y$}&|&1&2&3&4&4&5&6&7&8&9&0&a&b&c&n#d&e& X%c#+%f&W% ", +" g&h&i&j&k&l&m&n&o&/%p&/%/%/%C%/%E%E%(%_%_%7$_%_%j%>$(%#&q&r&s&t&t&u&4&v&w&x&5%o%y&y&z&A&Q#B& ~%C&D&p#E& ", +" F&G&H&I&o.m&J&K&L&h%L&p&p&p&/%/%C%E%E%E%E%(%@&_%j%<%M&W$N&O&P&Q&R&S&&&T&U&J#V&W&X&Y&Z&`& *z&.*+*@* #*$*%*&***=* ", +" -*2&;*>*,*'*)*!*[&[&!*L&h%L&p&/%/%/%/%/%E%E%E%(%_%(%/%:&~*H&;*{*]*^*/*k@(*_*:*<*[*}*Y&P%|*1*2*3*$%4* 5*6*7*8*)&%$ ", +" 9*u&5&0*a*b*c*m&d*e*)*!*K&h%K&K&h%f*/%p&/%C%W$W$E%(%h%g*h*h&;*h&k@i*j*k*l*m*n*o*p*q*r*E$s* *b&1*t*b&u*Y@X@ v*~%w*x*y*z*$$ ", +" u&u&*&A*V$B*J&C*D*m&C*d*)*)*!*[&[&K&n&o&p&f*/%/%/%/%E*E%.$F*G*H*X.h&I*t&J*K*L*M*N*O*P*Q*R*S*T*z&1*U*V*W*X*Y*v@Z* {&`* =.=+=@=#=c# ", +" 5&$=J%%=&=b**===-=C*D*C*C*e*e*)*d*!*[&L&h%L&o&L&/%/%n&D%;=>=,=/&I&X.'=I&)=!=~=t&{=U$Q*]=^= f$/=(=1*_=V*:=<=[=}=|=X@ 1=c#]$2=3=4=1*5=y% ", +" &&5&6=7=8=9=0=a=9=J&J&c*c*b=C*C*m&)*)*e*!*!*n&L&+&h%n&.&:&c=d=U%e=F*F*G*q&Z%f=g=a%h=*$i=j. P#+%j=_=V*k=D&l=m=l=2%n=o=p= q=r=s=t=u=v=w=x=y=!%z= ", +" A=B=C=D=)*E=b*F=F=9===J&G=D*D*D*C*m&d*!*d*!*!*H=[&L&I=J=K=U%{%L=d%d%M={%N=v%O=P=/#Q=4$G#G# R=8&%*j=V*V*S=:=T=7*U=U=V=8&X@W=X= {&Y=r=s=Z=`= -.-+-@-#-$-%- ", +" &-6=*-=-a*--;-b*>->-9=9=9=9=9=c*,-D*C*C*C*m&d*d*!*'-)-K&1 R$!-~-L=L=e=L=n&{-]-8=^-s$/-(-1$ B$B$_-:-V*<-D&[-7*}-m=&*@=3%|-R#1-Z=2-3-z*4-5-6-7-8-9-0-a-b-c-d-w=d-b&c#%- ", +" a+e-f-g-h-i-j-*=b*b*b*b*k-k-9=9=a===G=c*c*D*C*C*C*e*l-b=m-/-n-o-p-q-r-s-@&t-N*6#D+U%u-T$u$ +%E$v-V*_=w-x-D&y-z-m=m=@=A-B-m=C-c&/=Y@D-v@X@E-)&F-G-1*H-I-J-K-L-M-N-y=X% ", +" e-O-P-Q-R-j-S-B*B*B*B**=b*b*b*>-9=9=9=J&a=J&c*D*D*C*J&'*T-U-V-R$1$r-W-X-Y-d=6#Z-`-o. ;R$.; +%d$+;@;V*#;k=x-T=7*}-m=@=&*$;%;&;*;B-=;-;D&T=&*m=;;>;,;';K-);!;~;{;!;z&];c# ", +" H$v#*-^;/;(;0=0=_;B*B*B**=b*b*b*>->->-9===9=J&J&G=J&'*:;<;(-u$[;1$};u$|;1;2;3;4;5;A%L=6; ]$/=7;8;_=X*S=x-W*T=7*9;0;a;b;;;%;&;c;d;d;e;f;b-g;u=h;u=i;j;k;!;K-l;m;N-n;o;y% ", +" p;P-v#q;r;s;t;u;v;v;;-B*B*B*B*B**=b*b*>->-F=k-9=====b*'-H.G#*$4$/-[;H#f%w;x;w$p-R${%y;d%A% N%d$z; *1*_=V*S=D&T=A;}-m=@=B;C;A-B-&;N-D;E;e;#-F;b-G;>;H;I;J;K;L;L-M;N;O;X%P; ", +" f-Q;R;S;T;U;V;W;E=u;X;u;0=v;_;B*B*B**=*=b*b*b*F=>-k-B*a=Y;{#]=^=^=4$Z;n-`; >6#D+.>+>_@d%d% @>#>z;(=[=$>2*V*%>&><=*>}-0;=>->;>B->>,>D;d;8*'>y*b-)>!>>;u=';);~>d-K-{>|-]>^> ", +" X#W#=%Q-/>(>_>E=W;W;E=E=E=u;:>v;0=;-B**=*=*=*=b*b*b*B**=<>[>}>|>|>|>1>|>j.2>[&3>4>5>F*6>F* |-7>z;(=8>1*:-_=S=[-T=7*A;9>0>&*a>;;b>N-c>d>d;#-e>f>,;g>h>i;i;i>!;c-!;j>z;q$`* ", +" v#k>d@*%l>m>n>m>o>E=W;E=W;E=E=u;u;p>0=v;;-B*B*B**=*=B*p>q>r>s>i=o@o@t>u>v>l-3>w>x>,=Z%y>X. |-|-z>A>b&b&1*_=V*D&T=7*}-m=0>a;B>C>=;D>,>c>E>8*F>G>b-G;H-u=i;H>d-I>J>K>)&1=r$ ", +" L>M>H@N>O>P>Q>R>m>o>o>o>W;W;E=E=E=u;u;0=S>0=T>B*B*;-U>r;V>W>X>6#Y>f#Z>`> ,.,6#]=e%;*+,X.X. {$;&9&_-@,8; *_=V*S=D&T=#,}-$,=>&*%,=;&,c;,>*,e;=,-,,;;,>,,,J;!;',b-_=),3-!,~, ", +" {,d@4#],^,/,(,(;_,:,Q>V;m>o>--W;E=W;E=E=E=:>p>v;0=B*E=<,[,},r>},|,1,2,3,4,5,<;6,7,R&-*'=F& S%|-{$8,z&b&b&1*2*k=9,D&T=#,0,m=&*->a,B-b,N-d>y*&;c>d;g;;,,,c,*,}-D$N%X=d,`*e, ", +" f,d@g,-%h,i,j,(;(;(;k,Q>l,Q>m>m>m,o>n,W;E=E=E=u;:>:>t;X;o,p,q,r,s,B+t,u,p-v,w,x,y,2&S&S&-* z>S%V=z&z&b&8>_=V*S=D&z,A,A,m=j>b;->A-B-&;B,8*}-2%E$C,@%D,9&E,E$3-z*];F,G, ", +" F@F@D.X#H,I,J,U;(>(>(>(>k,k,l,V;V;V;m,o>K,----E=W;E=t;L,M,N,m@A+A+O,[>P,4,Q,R,S, ,F*T,7=;* C$U,w*V,P%W,b&1*_=X,D&[-y-#,}-Y,&*->A-B-Z,N-`,x-B$ '.'1-@*1-@*X=3-s=d,1= ", +" +'+'U+)@@'U;#'$'s;s;%'(>(>(>(;k,(;_,V;V;V;o>o>t;--E=t;&'*'j V%e++$='},-'}@9=;'>'P@,'''4&)' 9&E,w*K>V,y&b&1*_=V*S=D&T=7*}-m=@=!'a,=;>>&;2=@=B$~'o= {']'s=3- ", +" )@s+D.^'O>/'I,n>('('('s;U;(>(>k,k,k,k,k,Q>m>m>m>o>o>Q>_':']+e+~&~&~&x%+$<'C+['}'[%&&|'5&+, 1'T*2'K>a&z&|*@,3'X*<-D&l=7*#,0,0>j>B>a,%;4'D;B-]$o=p# ", +" T+~@B.5'6'7' 8'$'n>$'('('s;(>(>(>(>k,k,Q>Q>:,9'R>0'o>a'E.w%x%x%]++$t,b'c'd'e'f'g'h'&&5& i'i'+;j'k'k'z&b&1*3'X*S=&>l'7*}-$,U=b;->A-Z,m'b;c&n'p# ", +" G@S+.$o'p' n>8'$'('('s;U;(>(>(>k,k,k,(;(;(>(>q',%r's't'F.'%+$u'v'w'x'y'z'H$A=A' B'1'C'>&K>D'E'z&a-1*X*S=F'T=7*A;-;@=&*->A-B-G'G'9&E-X@ ", +" H'I'J'K'L' 8'M'n>N'$'('('s;s;(>(>(>k,%'O'P'Q'R'l.S'T'U'V'[$W'X'Y'Z'`'a+f- ) +;c&+;3%K>.)+)z&8;U*C-X,@)&>#)*>}-m=j>B>->A-c;N-A&X@$) ", +" 5+T.%)7'L' 8'j,8'8'n>n>('s;s;U;(>U;n>&)*)n.l.m.m.=)-);)>)w%6#,)')*-))a+&- !)!)~){)A>K>(=Z&`& *])t*<-@)T=y-#,^)/)&*;>()G'&;(=n#v@ ", +" U+_):)i,i,i,L'L'I,M'8'8'$'('('<)s;n>R>[)#$Q$#$].].})m.|)1)2)3)4)5)U#O-e- 6)+;+;A&7)j=j=Z&y&8)1*_=#;9)D&y-0)}-0;@=b;C;B-e;7)8&Y@ ", +" 5+T.5$a)/,i,I,8'M'M'8'8'n>$'n>I,$'b)E 7.T #$p$c)#$d)e)f)g)9#Q-X#P-h) D,D,i)3%3%(=a&z&b&j)@;V*k)x-l)z,}-m=m=@=a>B-c;S=o#~$ ", +" D.F@m)n)i,o)L'L'M'L'8'n>P>P>g)p)#$T T T U q)r)s)t)6#u)K%v)w#w) D$D$@%8,3%A>(=V,P%j)])_=V*9,D&<=#,-;@=&*b;%;N-X*]$x)y= y)z)A) ", +" D.J@B)C)D)i,i,i,L'L'/,E)F)G)$.D H)G {+I)#$J)6#P>K).+M>k>X# L)D$@%Q%Q%3%p%a&z&|*b&])#;k=F'l)7*}--;0>&*->d>M)N)P# O)P)Q)R)S)T) ", +" U)6+<,p'/,/,i,i,:)s;V)W)X)Y)q E#E#D Z)`) !.!+!j$=#X#W# A&@!#!O%Q%Q%A>$!V,%!8>])_=w-@)W*T=7*}-m=&!->*!=>N%y==! -!;!>!,!'!)!!! ", +" D.T.~!a)J,/,#'P>{!]!$.^!6#/!D (!_!:!Z&z&%!1*_=2*S=D&T=7*}-m=@=->&;7*G-o#8& 2!3!4!5!6!7!8!9! ", +" D.J@0!a!:)b!c!h ]!} d!e!f!g!h!6#i!['j!k!=#L> l!|!@%@%}!m!3%0&j=Z&W,$>:-C-k)@)&>n!*>9;@==>A-$;i'E$8& o!p!q!r!s!t!u! ", +" v!w!x!y!i :@:@:@h h z!A!B!C!D!E!F@+'=# Q%m!|!D$@%l!3%A>(=Z&z&b&])#;V*S=F!T=7*A;}-@=->C;G!S*E$ H!I!J!K!L!M!N! ", +" O!T.d#= $ { P!| i!Q!R!S!{=T!U!V!H@ Q%3%Q%W!W!A&Q%X!A>(=Z&`&b&_=t*V*x-#)*>A,m=$,A-Y!7)E$Z! `! ~.~+~@~#~$~ ", +" %~F@$ &~*~- =~-~6#;~(->~,~'~`# A>0&>&)~D${)Q%m!3%.)Z&P%!~1*@;V*S=D&T=*>}-m=&*B-~~{~]~ ^~/~(~_~:~<~[~}~ ", +" D.B.L=|~1~2~3~*~4~5~6~~@)@ (=0&D$D$@%|!m!7~A>(=8~b&$>_=_=k=x-D&<=*>-;Y!->[=9~]$ 0~a~b~c~d~e~f~ ", +" %~D.g~h~i~j~*%v!I')@ D'K>L)k~#%A&Q%3%7)(=$!z&8;1*2*V*S=l)T=0)9;@=$;U*l~+%m~ n~o~p~q~r~s~t~ ", +" u~v~-*i _*g@%~T+ z&D'A&w*w~@%_-Q%7~K>(=Z&z&b&@;2*k)S=l)#)A,m=A-])9&]$ ^~x~y~z~A~B~C~D~ ", +" U+,~U)E~5+6~ Z&V,A&~)w~G!A&F~G~A>(=Z&z&b&1*@;X*H~:=T=7*}-0>0)9&N%I~ J~K~L~M~N~O~P~Q~ ", +" 4+U+u~U) W,E'j'R~k~D$L)A&3%1!0&(=Z&!~8>2*S~w-D&D&#)}-a;D&D,T~|- U~a~V~W~X~Y~Z~ ", +" D. b& *Q%7;+;D$G!}!3*j'`~(=Z&8~b&a-2*w-S=D&T=z-@=n!D,|- { .{+{@{#{${%{&{ ", +" *1*$!!)+;D,D$@%l!j'`~(=+)E'%!b&1*2*S=:=T=y-9;-;@%S%C, *{={-{;{A~B~#~>{ ", +" _=1*(=+;c&~)6)@%A&Q%>&A>k'E'z&b&1*_=V*S=l)M)0,n!.)z>,{ '{){!{M~~{{{P~]{ ", +" _=V*Z&^{1'+;D,@!@%A&m!7)/{(=V,b&@,1*S~k)x-l'A,m=3%z;C$ ({_{:{W~<{[{}{ ", +" #;V*_=+;1'|{D,D$@%A&Q%3%~~(=Z&1{b&1*@;S~S=l)T=-;`&2{9& .{3{4{#{5{6{7{ ", +" S=b&8{2{G-D,w*D$@%3*>&7).)D'8~%!8>_=V*k):=z,7* *c&9{ 0{a{b{c{A~d{e{f{ ", +" w-[-S~@!g{h{+;7;#%{)A&3*j'A>$!E'8~b&1*C-V*S=l=i{b&+;j{ k{l{m{n{o{p{q{r{ ", +" D&[-}!9&s{c&+;D,@!A&Q%j'7~/{$!z&8;b&1*C-w-@)7*H~+;h{j{ ({_{t{u{v{[{w{ ", +" z,:=j=U,z;c&!)7;D$x{_-Q%1!/{+)P%z&a-_=_=X,x-l'X,{)1'G- .{y{z{A{5{B{C{ ", +" 7*#)3%j{D{E{G-+;D,D$O%|!G~A>.)F{z&z&1*_=V*9,z,V*G{H{s{ I{a{J{K{L{M{e{N{ ", +" z-}-8~E,`=1'c&+;D,D$@%A&4%3%.)$!Z&z&b&1*_=V*F'T=j'+;~) O{P{Q{R{S{T{U{V{ ", +" 0,A;W{X{C$z;h{c&D,D,D$L)Q%3%7)j=Z&z&b&8>3'S~F'<-$!7;2' Y{Z{`{ ]<{.]}{ ", +" 9>&!b&c&S%+]i'h{@]#]W!i)A&Q%3%A>(=Z&z&@,])S~$]F'k'L)w* %]&]*]=]-];]f{ ", +" -;/)D&u*l~`=i'1'c&7;>]D${)3*Q%A>(=Z&y&8;1*3'V*9)z&,]D$ ']a{)]!]~]{]]]^] ", +" Y!:=7;N%2%z;1'c&+;D,#%@%|!m!1!0&a&,&`&j)1*C-V*8;i)@% /]P{(]_]:]<][]}] ", +" 0;->n!6)|-C$2{z;s{+;|]v-@%i)8,3%`~p%k'8~`&1*_=w-8;Q%@% 1]2]3]4]5]6]7] ", +" !'&*w~S%z>T*o%h{c&+;|]W!}!3*Q%F~0&+)E'!~b&_=#;2*3%G{ 8]9]z{0]a]C~f{ ", +" A-0>.)]$S%C$9{j{h{+;2'D$@!A&Q%F~A>(=Z&z&b&8>2*1*K>4%G{ b]c])]!]:~d]e]]{ ", +" *!;;7)S%N%f]U,2{1'c&+;D,D$@%A&Q%7).)(=Z&|*1*2*U*(=3%>& ({g]h]c~i]<]w{j] ", +" a,b,V,k]l]C$T*T*z;s{+;7;D$W!A&m!3%A>(=+)W,b&1*_=8~A>3% n~2]p~m]n]o]7{ ", +" 4'%;w-{~@>l~,{9&z;1'c&C'6)@%}!Q%3%A>(=+)Z&W,1* *z&(=1! p]q] ~r]A~s]#~t] ", +" ;>u]_=9&d$|-S%C$E,z;s*G-D,v])~A&4%3%A>(=V,!~j)1*z&D'(= w]x](~y]~{z]A]B] ", +" @=c>^)l~]$'&N%N% z;h{C]6),]V=8,m!3%/{D'V,b&$>b&P%D' '{){D]E]F]G]w{ ", +" -;B>v-+%N% !)#]@!|!Q%3%~~(=Z&z&$>$>,&Z& H]2]p~I]${J]K] ", +" m=a,L],{]$ C'i)_-Q%A>(=a&E'W,$>W,z& M]N]O];{+~B~#~N{ ", +" ->,>D$]$ G!A&G~A>(=E'z&b&$>b& P]){!{M~Q]{{R]S] ", +" ;>j>S%d$ A&3%p%k'P%b&@,1*b& Y{_{:{T]U]V]W] ", +" T=&;9,C$+% X]1!(=F{b&1*1*1* Y]+{Z]#{${`]K] ", +" _=d>1*'&d$ 4%7)(=8;2*t*_= ^c]y~.^A~+^e{@^ ", +" N-#^$^|- X!/{Z&_=V*]) %^l{!{&^*^<~=^^] ", +" b>Y!|{N% X!+)2*S=S= '{Z{`{-^;^>^}{ ", +" 0;N-z&S% (=_=D&S= ,^O]:{q~B~'^t] ", +" 0,)^m=D$z; Z&1*&>D& !^~^{^]^^^/^(^_^ ", +" x-->1*i'9& F{_=D&D& :^<^[^}^|^1^2^3^ ", +" A-&;S=l!C'1'c& A&b&_=#)W* 4^5^6^7^8^9^ ", +" B-A-m=@;K>3%Q%3%8~_=y-<=3'9, 0^a^b^c^d^ ", +" S=}-=;->-;7*}-m=7*z-V, e^f^g^h^i^ ", +" b&#,D&j^}-A;T=b& k^l^m^n^ ", +" o^p^q^ ", +" r^ ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/src/Mod/Ship/Icons/HydrostaticsIco.png b/src/Mod/Ship/Icons/HydrostaticsIco.png new file mode 100644 index 0000000000000000000000000000000000000000..735b4e3a87b1c12551ace776e91f2929c56a25e8 GIT binary patch literal 16230 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 IpTL0s0T?>%fdBvi literal 0 HcmV?d00001 diff --git a/src/Mod/Ship/Icons/HydrostaticsIco.xcf b/src/Mod/Ship/Icons/HydrostaticsIco.xcf new file mode 100644 index 0000000000000000000000000000000000000000..334c65b816767cf1a7d5d996ce5d75d032a29d11 GIT binary patch literal 188117 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 N;6(rP-}V2x{|AX4eh>fv literal 0 HcmV?d00001 diff --git a/src/Mod/Ship/Icons/HydrostaticsIco.xpm b/src/Mod/Ship/Icons/HydrostaticsIco.xpm new file mode 100644 index 0000000000..a9d1db9ec4 --- /dev/null +++ b/src/Mod/Ship/Icons/HydrostaticsIco.xpm @@ -0,0 +1,3323 @@ +/* XPM */ +static char * HidrostaticsIco_xpm[] = { +"128 128 3192 2", +" c None", +". c #929292", +"+ c #878787", +"@ c #838383", +"# c #89898A", +"$ c #8F8F90", +"% c #939494", +"& c #8B8B8B", +"* c #808180", +"= c #7A7A7A", +"- c #767676", +"; c #747575", +"> c #737373", +", c #898989", +"' c #888888", +") c #868686", +"! c #7C7C7C", +"~ c #7B7B7B", +"{ c #787878", +"] c #7A7B7A", +"^ c #777676", +"/ c #777776", +"( c #929291", +"_ c #858585", +": c #828282", +"< c #7B7C7C", +"[ c #7C7D7C", +"} c #7B7B7C", +"| c #7A7B7B", +"1 c #878484", +"2 c #777877", +"3 c #767675", +"4 c #818180", +"5 c #7F7F7F", +"6 c #828382", +"7 c #818282", +"8 c #808181", +"9 c #7E7E7F", +"0 c #7D7E7E", +"a c #7D7D7D", +"b c #7B7A7A", +"c c #848282", +"d c #767677", +"e c #8B8B8C", +"f c #7A7A7B", +"g c #838484", +"h c #838483", +"i c #828283", +"j c #818181", +"k c #808080", +"l c #7E7E7E", +"m c #7B7B7A", +"n c #817F7F", +"o c #807E7F", +"p c #777777", +"q c #747474", +"r c #7C7B7C", +"s c #949494", +"t c #868585", +"u c #838384", +"v c #828281", +"w c #7F8080", +"x c #7E7D7D", +"y c #82807F", +"z c #7C7B7A", +"A c #777878", +"B c #717171", +"C c #6A6A6A", +"D c #696969", +"E c #8A8A8A", +"F c #8B8C8B", +"G c #898889", +"H c #888788", +"I c #848484", +"J c #7E7F7F", +"K c #7E7D7E", +"L c #807E7E", +"M c #797979", +"N c #767476", +"O c #909090", +"P c #9A9A9A", +"Q c #727272", +"R c #6F6F6F", +"S c #7E7F7E", +"T c #8E8E8E", +"U c #8C8C8C", +"V c #868787", +"W c #858586", +"X c #858485", +"Y c #7F7F80", +"Z c #7D7D7E", +"` c #7C7D7D", +" . c #7E7C7C", +".. c #797A7A", +"+. c #797978", +"@. c #767777", +"#. c #767576", +"$. c #747574", +"%. c #606161", +"&. c #454545", +"*. c #6A6969", +"=. c #666666", +"-. c #7F7F7E", +";. c #757576", +">. c #909190", +",. c #8F8F8E", +"'. c #929192", +"). c #8E8F8F", +"!. c #8D8D8D", +"~. c #8D8C8C", +"{. c #878687", +"]. c #868685", +"^. c #858584", +"/. c #828181", +"(. c #7C7A7A", +"_. c #757676", +":. c #757475", +"<. c #727373", +"[. c #747373", +"}. c #686869", +"|. c #626262", +"1. c #6E6D6F", +"2. c #767776", +"3. c #969696", +"4. c #999999", +"5. c #939393", +"6. c #919091", +"7. c #908F90", +"8. c #828383", +"9. c #818081", +"0. c #7F7E7E", +"a. c #7B7979", +"b. c #7B797A", +"c. c #787979", +"d. c #757575", +"e. c #737474", +"f. c #9C9C9C", +"g. c #606060", +"h. c #565556", +"i. c #9E9E9E", +"j. c #959695", +"k. c #A0A0A0", +"l. c #9D9D9D", +"m. c #989798", +"n. c #989897", +"o. c #959595", +"p. c #919191", +"q. c #8F8F8F", +"r. c #8B8A8B", +"s. c #878888", +"t. c #7F807F", +"u. c #7E7E7D", +"v. c #787676", +"w. c #6B6C6B", +"x. c #888887", +"y. c #A1A0A0", +"z. c #4F4E4E", +"A. c #565655", +"B. c #50504F", +"C. c #656565", +"D. c #9B9B9B", +"E. c #9E9F9E", +"F. c #A5A4A4", +"G. c #9F9F9F", +"H. c #9E9E9D", +"I. c #9C9D9C", +"J. c #999998", +"K. c #989898", +"L. c #979797", +"M. c #959696", +"N. c #949594", +"O. c #949393", +"P. c #919291", +"Q. c #908F8F", +"R. c #868687", +"S. c #848584", +"T. c #848383", +"U. c #757374", +"V. c #777677", +"W. c #737374", +"X. c #727271", +"Y. c #717170", +"Z. c #979696", +"`. c #4D4E4E", +" + c #515252", +".+ c #626362", +"++ c #6F7070", +"@+ c #9FA0A0", +"#+ c #8C8C8B", +"$+ c #ACACAC", +"%+ c #A7A8A7", +"&+ c #A3A3A2", +"*+ c #A3A3A3", +"=+ c #A0A1A0", +"-+ c #A09FA0", +";+ c #9D9D9E", +">+ c #9C9D9D", +",+ c #9C9B9B", +"'+ c #969695", +")+ c #959594", +"!+ c #929293", +"~+ c #919090", +"{+ c #8C8D8C", +"]+ c #8B898B", +"^+ c #868786", +"/+ c #858685", +"(+ c #848585", +"_+ c #807F7F", +":+ c #747372", +"<+ c #7B7A7B", +"[+ c #737372", +"}+ c #717271", +"|+ c #6F706F", +"1+ c #6D6C6C", +"2+ c #888787", +"3+ c #5E5E5E", +"4+ c #4F4F4F", +"5+ c #4C4C4D", +"6+ c #5A5A5A", +"7+ c #515251", +"8+ c #808281", +"9+ c #686868", +"0+ c #A8A9A9", +"a+ c #B3B2B3", +"b+ c #AEAEAF", +"c+ c #A9A8A9", +"d+ c #A9A8A8", +"e+ c #A5A5A4", +"f+ c #A4A5A4", +"g+ c #A2A3A2", +"h+ c #A1A1A1", +"i+ c #989899", +"j+ c #979897", +"k+ c #939293", +"l+ c #8E8F8E", +"m+ c #8D8E8E", +"n+ c #8B8B8A", +"o+ c #858686", +"p+ c #777675", +"q+ c #757574", +"r+ c #787777", +"s+ c #6E6E6D", +"t+ c #6D6D6D", +"u+ c #686768", +"v+ c #A4A5A5", +"w+ c #9B9A9A", +"x+ c #AAAAAB", +"y+ c #A8A8A8", +"z+ c #ABABAA", +"A+ c #B2B2B2", +"B+ c #B3B3B3", +"C+ c #ADADAD", +"D+ c #AAAAAA", +"E+ c #A9A9A9", +"F+ c #A8A8A9", +"G+ c #A7A7A8", +"H+ c #A7A7A6", +"I+ c #A6A6A5", +"J+ c #A1A2A1", +"K+ c #9F9E9F", +"L+ c #9A9B9A", +"M+ c #969595", +"N+ c #939294", +"O+ c #8B8A8A", +"P+ c #878786", +"Q+ c #717070", +"R+ c #777576", +"S+ c #717071", +"T+ c #707070", +"U+ c #6E6F6E", +"V+ c #6B6C6C", +"W+ c #676767", +"X+ c #A6A6A7", +"Y+ c #A6A6A6", +"Z+ c #AAA9AA", +"`+ c #ADAEAD", +" @ c #ABABAB", +".@ c #ACABAC", +"+@ c #ACACAD", +"@@ c #ACADAD", +"#@ c #ACABAA", +"$@ c #A7A7A7", +"%@ c #A5A4A5", +"&@ c #9E9D9C", +"*@ c #999898", +"=@ c #969697", +"-@ c #939394", +";@ c #909091", +">@ c #868586", +",@ c #6C6B6B", +"'@ c #797878", +")@ c #717272", +"!@ c #6C6D6C", +"~@ c #6C6C6C", +"{@ c #ACAAAA", +"]@ c #ABAAAB", +"^@ c #ADADAE", +"/@ c #AEAFAF", +"(@ c #AEAEAE", +"_@ c #AEAEAD", +":@ c #ACABAB", +"<@ c #A8A8A7", +"[@ c #A4A4A4", +"}@ c #A2A2A2", +"|@ c #9A9B9B", +"1@ c #9A9999", +"2@ c #979796", +"3@ c #929392", +"4@ c #909191", +"5@ c #8F908F", +"6@ c #8F8E8E", +"7@ c #8E8D8D", +"8@ c #8C8D8D", +"9@ c #888988", +"0@ c #818182", +"a@ c #767575", +"b@ c #6F6E6E", +"c@ c #6B6B6B", +"d@ c #A8A9A8", +"e@ c #A9A9AA", +"f@ c #ABACAB", +"g@ c #ADACAD", +"h@ c #AFAFAF", +"i@ c #B0AFAF", +"j@ c #ABACAC", +"k@ c #A9AAA9", +"l@ c #A6A7A6", +"m@ c #A5A5A5", +"n@ c #979898", +"o@ c #90908F", +"p@ c #858687", +"q@ c #848483", +"r@ c #747475", +"s@ c #706F70", +"t@ c #6E6E6E", +"u@ c #9B9B9C", +"v@ c #5A5959", +"w@ c #AFAEAE", +"x@ c #AFAEAF", +"y@ c #AEADAF", +"z@ c #ACACAB", +"A@ c #ABAAAA", +"B@ c #A1A2A2", +"C@ c #A0A0A1", +"D@ c #9D9C9C", +"E@ c #969596", +"F@ c #8A8B8A", +"G@ c #898A89", +"H@ c #848485", +"I@ c #6E6C6C", +"J@ c #737272", +"K@ c #7D7B7C", +"L@ c #797A79", +"M@ c #797879", +"N@ c #777778", +"O@ c #6E6E6F", +"P@ c #6C6D6D", +"Q@ c #6B6A6A", +"R@ c #656666", +"S@ c #616161", +"T@ c #A6A7A7", +"U@ c #ADAEAE", +"V@ c #AEAFAE", +"W@ c #ACADAC", +"X@ c #A5A6A6", +"Y@ c #A3A4A3", +"Z@ c #A2A1A1", +"`@ c #A1A0A1", +" # c #A09F9F", +".# c #9F9E9E", +"+# c #9B9B9A", +"@# c #939292", +"## c #8C8B8C", +"$# c #8A8A8B", +"%# c #8A8989", +"&# c #838282", +"*# c #656363", +"=# c #787879", +"-# c #747473", +";# c #727372", +"># c #707170", +",# c #6F6E6F", +"'# c #6E6D6E", +")# c #AAA9A9", +"!# c #A6A5A5", +"~# c #A7A6A6", +"{# c #AEADAD", +"]# c #A7A8A8", +"^# c #A7A6A7", +"/# c #9B9C9C", +"(# c #979697", +"_# c #8D8D8C", +":# c #818281", +"<# c #605F5F", +"[# c #6D6D6E", +"}# c #676667", +"|# c #555555", +"1# c #A9A9A8", +"2# c #A8A7A7", +"3# c #A4A4A5", +"4# c #A3A3A4", +"5# c #9D9C9D", +"6# c #9B9A9B", +"7# c #99999A", +"8# c #8E8E8F", +"9# c #848384", +"0# c #838283", +"a# c #787877", +"b# c #636161", +"c# c #7C7B7B", +"d# c #757675", +"e# c #707171", +"f# c #70706F", +"g# c #6F6F6E", +"h# c #686867", +"i# c #666667", +"j# c #5B5A5A", +"k# c #B5B4B5", +"l# c #575758", +"m# c #AAAAA9", +"n# c #A0A09F", +"o# c #9E9E9F", +"p# c #9D9E9D", +"q# c #999A99", +"r# c #949595", +"s# c #949493", +"t# c #8A898A", +"u# c #878686", +"v# c #696868", +"w# c #686969", +"x# c #676868", +"y# c #676766", +"z# c #656566", +"A# c #656465", +"B# c #636363", +"C# c #696968", +"D# c #7A7979", +"E# c #5D5D5E", +"F# c #A8A7A8", +"G# c #AAACAD", +"H# c #A9AAAA", +"I# c #A9AEB0", +"J# c #A9AFB1", +"K# c #A8ABAB", +"L# c #A8ABAC", +"M# c #A6AEB0", +"N# c #A5A9AB", +"O# c #A4A5A6", +"P# c #A3A4A4", +"Q# c #A2A3A3", +"R# c #9FA1A2", +"S# c #9F9FA0", +"T# c #9C9C9B", +"U# c #979798", +"V# c #929393", +"W# c #8F9090", +"X# c #8B8C8C", +"Y# c #898988", +"Z# c #878788", +"`# c #616061", +" $ c #727273", +".$ c #7A7A79", +"+$ c #767778", +"@$ c #666565", +"#$ c #636364", +"$$ c #5D5C5C", +"%$ c #A2A2A3", +"&$ c #A5ACAE", +"*$ c #A6AAAB", +"=$ c #A8ACAC", +"-$ c #A8B0B2", +";$ c #A89089", +">$ c #A8A5A4", +",$ c #A9B3B6", +"'$ c #A66353", +")$ c #A67A6F", +"!$ c #A79692", +"~$ c #A6AFB1", +"{$ c #A65B49", +"]$ c #A56354", +"^$ c #A4827A", +"/$ c #A39A99", +"($ c #A2A7A8", +"_$ c #A1AAAC", +":$ c #A0ABAE", +"<$ c #A1928F", +"[$ c #A09C9B", +"}$ c #9EA4A5", +"|$ c #9CA4A6", +"1$ c #9BA0A2", +"2$ c #989999", +"3$ c #959596", +"4$ c #929191", +"5$ c #898A8A", +"6$ c #585757", +"7$ c #7D7D7F", +"8$ c #7D7C7C", +"9$ c #757474", +"0$ c #6D6E6E", +"a$ c #6B6C6D", +"b$ c #6A6B6B", +"c$ c #6A6A69", +"d$ c #676768", +"e$ c #646464", +"f$ c #636463", +"g$ c #636263", +"h$ c #5F5F5F", +"i$ c #575857", +"j$ c #646465", +"k$ c #B5B5B5", +"l$ c #B8B7B7", +"m$ c #A6A9AA", +"n$ c #A29E9E", +"o$ c #A2A8AA", +"p$ c #A4918C", +"q$ c #A76555", +"r$ c #A58981", +"s$ c #A58982", +"t$ c #A6391D", +"u$ c #A75844", +"v$ c #A76B5B", +"w$ c #A42809", +"x$ c #A53317", +"y$ c #A5422B", +"z$ c #A42D0F", +"A$ c #A1280B", +"B$ c #A32B0E", +"C$ c #A4361B", +"D$ c #A43215", +"E$ c #A3290C", +"F$ c #A42F13", +"G$ c #A43D24", +"H$ c #A45541", +"I$ c #A3746A", +"J$ c #A63C21", +"K$ c #A63519", +"L$ c #A6472F", +"M$ c #A35F4E", +"N$ c #A0796F", +"O$ c #9C8F8C", +"P$ c #999B9C", +"Q$ c #979FA1", +"R$ c #969D9F", +"S$ c #95999A", +"T$ c #929091", +"U$ c #8E908F", +"V$ c #8A8B8B", +"W$ c #565656", +"X$ c #6C6C6B", +"Y$ c #69696A", +"Z$ c #626162", +"`$ c #5B5C5C", +" % c #545B5B", +".% c #859295", +"+% c #A59591", +"@% c #A75D49", +"#% c #A93A1D", +"$% c #A8442B", +"%% c #A72E10", +"&% c #A62F11", +"*% c #A73619", +"=% c #A63518", +"-% c #A22C10", +";% c #A22B0E", +">% c #A7391E", +",% c #A53419", +"'% c #A02A0F", +")% c #A83C1F", +"!% c #B35033", +"~% c #A93B1F", +"{% c #A22F13", +"]% c #A6371B", +"^% c #BC5F41", +"/% c #AF472B", +"(% c #A6371C", +"_% c #A32E13", +":% c #A12B0E", +"<% c #A32A0D", +"[% c #A5351A", +"}% c #A6381C", +"|% c #A52E12", +"1% c #A73112", +"2% c #A93519", +"3% c #A84025", +"4% c #A5533E", +"5% c #A06B5C", +"6% c #9B817A", +"7% c #969290", +"8% c #929899", +"9% c #90989B", +"0% c #909697", +"a% c #909292", +"b% c #878887", +"c% c #6F6F70", +"d% c #478545", +"e% c #7D7C7D", +"f% c #6D6C6D", +"g% c #6C6B6C", +"h% c #696A69", +"i% c #646364", +"j% c #636362", +"k% c #5F5F60", +"l% c #5D5D5D", +"m% c #5A5B5B", +"n% c #9E452D", +"o% c #A26657", +"p% c #AA4125", +"q% c #A73A1D", +"r% c #A33216", +"s% c #B55135", +"t% c #B0482D", +"u% c #A53519", +"v% c #BD6244", +"w% c #C1694A", +"x% c #B44F32", +"y% c #C26A4C", +"z% c #D08565", +"A% c #C77354", +"B% c #C87556", +"C% c #D58D6D", +"D% c #D38868", +"E% c #CE7F60", +"F% c #CA7858", +"G% c #D58D6C", +"H% c #D38A6A", +"I% c #D18566", +"J% c #CC7A5A", +"K% c #C16849", +"L% c #B55234", +"M% c #B34E32", +"N% c #D08465", +"O% c #C67153", +"P% c #BD6042", +"Q% c #B34E30", +"R% c #AB4024", +"S% c #A7381D", +"T% c #A73519", +"U% c #A83417", +"V% c #AB3718", +"W% c #AB3E21", +"X% c #A84B33", +"Y% c #A35F4D", +"Z% c #9B7469", +"`% c #958683", +" & c #8F9091", +".& c #8C9395", +"+& c #8B9194", +"@& c #8A8E90", +"#& c #4F8D4E", +"$& c #7C7C7B", +"%& c #727171", +"&& c #6D6D6C", +"*& c #6B6B6A", +"=& c #626261", +"-& c #575858", +";& c #545453", +">& c #4D4D4D", +",& c #BABABA", +"'& c #AC3E22", +")& c #AA381B", +"!& c #AC4125", +"~& c #C97657", +"{& c #C2694A", +"]& c #CE7E5F", +"^& c #CF8162", +"/& c #CE7F5F", +"(& c #D08463", +"_& c #D28666", +":& c #D08262", +"<& c #D08263", +"[& c #D18565", +"}& c #D08464", +"|& c #D28566", +"1& c #D18464", +"2& c #D38767", +"3& c #D38969", +"4& c #D08363", +"5& c #D08364", +"6& c #CE8060", +"7& c #C97858", +"8& c #C2694B", +"9& c #B8583B", +"0& c #B04A2D", +"a& c #AA3C1F", +"b& c #AB3A1C", +"c& c #AE3B1D", +"d& c #AE3F21", +"e& c #AD472C", +"f& c #A75641", +"g& c #9F695A", +"h& c #957A73", +"i& c #8C8786", +"j& c #878D8E", +"k& c #858D8F", +"l& c #858A8C", +"m& c #858888", +"n& c #3F7D3E", +"o& c #589758", +"p& c #79797A", +"q& c #737273", +"r& c #6B6B6C", +"s& c #646463", +"t& c #616261", +"u& c #606160", +"v& c #5C5B5C", +"w& c #5B5B5A", +"x& c #595859", +"y& c #585859", +"z& c #AA3E23", +"A& c #AD4428", +"B& c #B8573A", +"C& c #CD7F5F", +"D& c #CC7A5B", +"E& c #CD7D5D", +"F& c #CC7B5C", +"G& c #CC7D5D", +"H& c #CD7E5E", +"I& c #CF8161", +"J& c #D18465", +"K& c #D18666", +"L& c #D28767", +"M& c #D28665", +"N& c #D28565", +"O& c #D18463", +"P& c #CF8262", +"Q& c #CE8061", +"R& c #CD7F60", +"S& c #CD7E5F", +"T& c #CD7D5E", +"U& c #CE7E60", +"V& c #CB7859", +"W& c #C56E50", +"X& c #BD6043", +"Y& c #B55236", +"Z& c #AF482B", +"`& c #AD4326", +" * c #AD4024", +".* c #AF4022", +"+* c #B14224", +"@* c #B1472A", +"#* c #AD5137", +"$* c #A3604D", +"%* c #987065", +"&* c #8D7D79", +"** c #81878A", +"=* c #808688", +"-* c #808385", +";* c #397637", +">* c #609E5F", +",* c #7D7D7C", +"'* c #666767", +")* c #60605F", +"!* c #5D5C5D", +"~* c #595A5A", +"{* c #585959", +"]* c #575656", +"^* c #AC3F23", +"/* c #A93C20", +"(* c #BA5C3E", +"_* c #CE7E5E", +":* c #CA7959", +"<* c #CB7A5A", +"[* c #CC7C5D", +"}* c #CE8161", +"|* c #D38867", +"1* c #D28667", +"2* c #D28564", +"3* c #CD7C5C", +"4* c #CB7B5C", +"5* c #CA7A5A", +"6* c #CA795A", +"7* c #CB785A", +"8* c #CC795A", +"9* c #CB795A", +"0* c #C97758", +"a* c #C67052", +"b* c #C06648", +"c* c #B95A3D", +"d* c #B45033", +"e* c #B14A2D", +"f* c #B0462A", +"g* c #B24528", +"h* c #B44628", +"i* c #B54A2B", +"j* c #B24F33", +"k* c #AA5A44", +"l* c #9E6758", +"m* c #90746C", +"n* c #857E7C", +"o* c #5D9D5F", +"p* c #5EA063", +"q* c #7A7F82", +"r* c #7B7D7D", +"s* c #686767", +"t* c #656665", +"u* c #605F60", +"v* c #5D5E5E", +"w* c #5D5D5C", +"x* c #5C5C5C", +"y* c #5B5B5B", +"z* c #5A5A59", +"A* c #575757", +"B* c #B6B6B6", +"C* c #BCBCBC", +"D* c #A83A1F", +"E* c #C2684A", +"F* c #CB7A5B", +"G* c #CE8162", +"H* c #D38968", +"I* c #CA7859", +"J* c #CA7758", +"K* c #C77455", +"L* c #C67354", +"M* c #C57051", +"N* c #C1684A", +"O* c #BC5F42", +"P* c #B7573A", +"Q* c #B45134", +"R* c #B34E31", +"S* c #B44C2F", +"T* c #B74C2E", +"U* c #B84D2E", +"V* c #B75133", +"W* c #86812E", +"X* c #7C883A", +"Y* c #956C60", +"Z* c #867571", +"`* c #767C7E", +" = c #747A7D", +".= c #75797A", +"+= c #6B6A6B", +"@= c #5F6060", +"#= c #5E5F5F", +"$= c #5D5E5D", +"%= c #595959", +"&= c #595858", +"*= c #565555", +"== c #515050", +"-= c #515150", +";= c #595A59", +">= c #AB4023", +",= c #A93D21", +"'= c #C87455", +")= c #CB795B", +"!= c #CB7B5B", +"~= c #CC7C5C", +"{= c #D38A69", +"]= c #D48A69", +"^= c #D38769", +"/= c #D18363", +"(= c #CF8362", +"_= c #CC7B5B", +":= c #C97759", +"<= c #C97656", +"[= c #C77253", +"}= c #C67152", +"|= c #C56F50", +"1= c #C46F50", +"2= c #C46E4F", +"3= c #C36C4E", +"4= c #C0694A", +"5= c #BE6244", +"6= c #B75639", +"7= c #B65336", +"8= c #8B7C27", +"9= c #8C7C27", +"0= c #BB5334", +"a= c #BC5435", +"b= c #B8583C", +"c= c #AD5F48", +"d= c #9D6757", +"e= c #8B6F66", +"f= c #7C7471", +"g= c #737777", +"h= c #6F7677", +"i= c #6F7476", +"j= c #707273", +"k= c #6A6B6A", +"l= c #606061", +"m= c #5E5E5F", +"n= c #5C5D5C", +"o= c #585857", +"p= c #545454", +"q= c #535353", +"r= c #525252", +"s= c #AB3F23", +"t= c #AD4529", +"u= c #CA7A5B", +"v= c #CC7A5C", +"w= c #CF8060", +"x= c #D08161", +"y= c #D3896A", +"z= c #D48A6B", +"A= c #D48B6B", +"B= c #D48B6A", +"C= c #D18665", +"D= c #D08564", +"E= c #C97556", +"F= c #C57050", +"G= c #C36D4F", +"H= c #C36C4D", +"I= c #C36B4D", +"J= c #C26A4B", +"K= c #C16A4C", +"L= c #C1694B", +"M= c #C16749", +"N= c #918B35", +"O= c #8F8530", +"P= c #BA5A3E", +"Q= c #B9583B", +"R= c #BA593A", +"S= c #BE5939", +"T= c #BF5A3A", +"U= c #BD5C3E", +"V= c #B66045", +"W= c #A76550", +"X= c #936A5D", +"Y= c #806E69", +"Z= c #6A7072", +"`= c #696F71", +" - c #6A6E6F", +".- c #6B6D6C", +"+- c #616060", +"@- c #5E5D5D", +"#- c #5C5B5B", +"$- c #585858", +"%- c #565756", +"&- c #535454", +"*- c #535252", +"=- c #515151", +"-- c #4C4C4C", +";- c #BBBBBB", +">- c #AA3D22", +",- c #D18667", +"'- c #D28868", +")- c #D48969", +"!- c #D58B6B", +"~- c #D48A6A", +"{- c #D28768", +"]- c #CA7658", +"^- c #C87254", +"/- c #C67151", +"(- c #C46E50", +"_- c #C16548", +":- c #928B35", +"<- c #BE6446", +"[- c #918A34", +"}- c #BE6245", +"|- c #BD6143", +"1- c #BB5D40", +"2- c #BA5C3F", +"3- c #BB5D3F", +"4- c #BD5E40", +"5- c #BF5E40", +"6- c #C25F40", +"7- c #C36040", +"8- c #BF6345", +"9- c #B2654D", +"0- c #9E6957", +"a- c #886B61", +"b- c #746B69", +"c- c #676A6C", +"d- c #63696C", +"e- c #63686A", +"f- c #656868", +"g- c #666766", +"h- c #666566", +"i- c #646564", +"j- c #575657", +"k- c #545353", +"l- c #525352", +"m- c #505050", +"n- c #4A4A4B", +"o- c #696869", +"p- c #AC4024", +"q- c #A93C21", +"r- c #BD6142", +"s- c #D28766", +"t- c #C87657", +"u- c #C87355", +"v- c #C56F51", +"w- c #C46D4E", +"x- c #C36B4C", +"y- c #C26A4A", +"z- c #BD5240", +"A- c #8C6B27", +"B- c #BF6847", +"C- c #908933", +"D- c #BB5F41", +"E- c #BB5E40", +"F- c #BA5B3D", +"G- c #BA5B3E", +"H- c #BC5D40", +"I- c #BE6344", +"J- c #C16545", +"K- c #C56546", +"L- c #C76646", +"M- c #C46746", +"N- c #BB684C", +"O- c #AA6953", +"P- c #92695B", +"Q- c #7A6862", +"R- c #686667", +"S- c #606567", +"T- c #5D6465", +"U- c #5F6364", +"V- c #616262", +"W- c #616160", +"X- c #5F605F", +"Y- c #5B5C5B", +"Z- c #565657", +"`- c #555655", +" ; c #545554", +".; c #4D4E4D", +"+; c #4C4B4C", +"@; c #4E4D4D", +"#; c #B0B0B0", +"$; c #AB4125", +"%; c #C46F4F", +"&; c #CC7C5E", +"*; c #CF7F60", +"=; c #CF8261", +"-; c #D18564", +";; c #D38869", +">; c #CF8061", +",; c #CD7D5F", +"'; c #C87555", +"); c #C77252", +"!; c #C46C4E", +"~; c #C26B4C", +"{; c #C16B4B", +"]; c #BA4439", +"^; c #8E752C", +"/; c #C06748", +"(; c #918933", +"_; c #BE6144", +":; c #BC6042", +"<; c #BB5B3E", +"[; c #B95A3C", +"}; c #B65639", +"|; c #B65638", +"1; c #B8583A", +"2; c #BF6648", +"3; c #C3694B", +"4; c #C66B4C", +"5; c #CA6C4C", +"6; c #C56D4E", +"7; c #B66C53", +"8; c #9F6B58", +"9; c #85675C", +"0; c #6D6460", +"a; c #5E6161", +"b; c #5E5F60", +"c; c #5F5F5E", +"d; c #5E5E5D", +"e; c #585758", +"f; c #545555", +"g; c #525253", +"h; c #525152", +"i; c #515051", +"j; c #504F4F", +"k; c #4F4E4F", +"l; c #4D4D4E", +"m; c #494A4A", +"n; c #434343", +"o; c #404040", +"p; c #C1C1C1", +"q; c #B9B9B9", +"r; c #AC4225", +"s; c #C97757", +"t; c #CF8062", +"u; c #C77254", +"v; c #C77152", +"w; c #C16B4A", +"x; c #8C6726", +"y; c #BD5941", +"z; c #BF6547", +"A; c #BD6144", +"B; c #BB5E41", +"C; c #BB5C3E", +"D; c #B95A3E", +"E; c #B9593C", +"F; c #B9593B", +"G; c #B75739", +"H; c #B75538", +"I; c #B65437", +"J; c #B55235", +"K; c #B45133", +"L; c #B65235", +"M; c #C77051", +"N; c #CC7252", +"O; c #CE7351", +"P; c #BB7055", +"Q; c #555D61", +"R; c #575D5E", +"S; c #5A5D5D", +"T; c #5C5C5D", +"U; c #555656", +"V; c #555554", +"W; c #4C4D4D", +"X; c #4B4B4B", +"Y; c #B4B4B4", +"Z; c #AB4025", +"`; c #B24D30", +" > c #CD7C5D", +".> c #CC7D5E", +"+> c #C57052", +"@> c #8A6324", +"#> c #BF6447", +"$> c #BF6445", +"%> c #B85839", +"&> c #B85639", +"*> c #B65436", +"=> c #B55436", +"-> c #B45235", +";> c #B45135", +">> c #B34F33", +",> c #B14B2F", +"'> c #B14B2E", +")> c #B14C2F", +"!> c #BF6446", +"~> c #C57253", +"{> c #A76D58", +"]> c #8E685A", +"^> c #73625B", +"/> c #5E5C5C", +"(> c #54585B", +"_> c #525759", +":> c #545759", +"<> c #555454", +"[> c #535354", +"}> c #4D4C4D", +"|> c #414141", +"1> c #AC4226", +"2> c #AD4528", +"3> c #C97859", +"4> c #D18364", +"5> c #D08665", +"6> c #C87454", +"7> c #C36E4F", +"8> c #C36A4C", +"9> c #BF5C44", +"0> c #8A6624", +"a> c #C06848", +"b> c #BC5E41", +"c> c #BB5C3F", +"d> c #BA5A3D", +"e> c #B65538", +"f> c #B55335", +"g> c #B35032", +"h> c #B24C2F", +"i> c #B0492C", +"j> c #AE462A", +"k> c #AC4326", +"l> c #CE7858", +"m> c #D07958", +"n> c #D07857", +"o> c #B8745A", +"p> c #A16D5A", +"q> c #715F59", +"r> c #555657", +"s> c #555556", +"t> c #545455", +"u> c #4E4E4E", +"v> c #4B4C4B", +"w> c #494949", +"x> c #AD4226", +"y> c #CF8163", +"z> c #CB7959", +"A> c #CA7759", +"B> c #C97557", +"C> c #C67253", +"D> c #C46D4F", +"E> c #C26B4B", +"F> c #BB4C3C", +"G> c #8C6F28", +"H> c #C06948", +"I> c #BD5F41", +"J> c #BC5E40", +"K> c #B95B3E", +"L> c #B75638", +"M> c #B55336", +"N> c #B55134", +"O> c #B0482C", +"P> c #AE4529", +"Q> c #B14A2E", +"R> c #CE7D5D", +"S> c #D57D5C", +"T> c #9F6D5A", +"U> c #5B5858", +"V> c #525456", +"W> c #4B5154", +"X> c #505353", +"Y> c #535352", +"Z> c #504F50", +"`> c #4B4B4C", +" , c #B7B7B7", +"., c #AC4227", +"+, c #AA4024", +"@, c #C57152", +"#, c #CD7D5C", +"$, c #C67252", +"%, c #C67051", +"&, c #C26C4B", +"*, c #8A6C27", +"=, c #BB513E", +"-, c #BE6345", +";, c #8F8833", +">, c #BC5F43", +",, c #BA5B3C", +"', c #B85739", +"), c #B45034", +"!, c #B34D30", +"~, c #B14C30", +"{, c #AB3F24", +"], c #AA3F22", +"^, c #B0492B", +"/, c #D47F5E", +"(, c #D17E5C", +"_, c #C47A5D", +":, c #B2745D", +"<, c #5C5654", +"[, c #4F5152", +"}, c #4D4C4E", +"|, c #464646", +"1, c #AD4327", +"2, c #AE4629", +"3, c #CE7D5E", +"4, c #CA795B", +"5, c #C77454", +"6, c #C2694C", +"7, c #876323", +"8, c #BE5F44", +"9, c #BF6546", +"0, c #B8593B", +"a, c #B75438", +"b, c #B45032", +"c, c #B24D2F", +"d, c #AC4327", +"e, c #AA3F23", +"f, c #C36A4D", +"g, c #D08160", +"h, c #D38060", +"i, c #8B6758", +"j, c #675A54", +"k, c #525151", +"l, c #4F5050", +"m, c #4E4F4E", +"n, c #444444", +"o, c #CF8263", +"p, c #C66F51", +"q, c #C56E51", +"r, c #C16A4B", +"s, c #C06347", +"t, c #876321", +"u, c #BF6344", +"v, c #BC5F40", +"w, c #B65537", +"x, c #B34F32", +"y, c #B24D31", +"z, c #AF492C", +"A, c #AF482A", +"B, c #AF472A", +"C, c #AB4124", +"D, c #A73B1F", +"E, c #A73A1E", +"F, c #B14B2D", +"G, c #D98763", +"H, c #D88462", +"I, c #C77E61", +"J, c #444B4E", +"K, c #464B4C", +"L, c #494C4C", +"M, c #AF4528", +"N, c #AC4124", +"O, c #CE7D5F", +"P, c #D08061", +"Q, c #CC7B5D", +"R, c #C67154", +"S, c #C26B4A", +"T, c #BB5540", +"U, c #886925", +"V, c #C16948", +"W, c #8F8832", +"X, c #BC6041", +"Y, c #B75539", +"Z, c #B34F31", +"`, c #B24E31", +" ' c #AF482C", +".' c #AE472A", +"+' c #AD4427", +"@' c #AA3E22", +"#' c #A93E21", +"$' c #A93D22", +"%' c #B3775F", +"&' c #966C5A", +"*' c #6A5A52", +"=' c #4C4B4B", +"-' c #251D8A", +";' c #251C89", +">' c #251C88", +",' c #251B88", +"'' c #251D89", +")' c #251C8A", +"!' c #251E8B", +"~' c #251F8D", +"{' c #64315F", +"]' c #683159", +"^' c #73456D", +"/' c #754A72", +"(' c #764A72", +"_' c #764C74", +":' c #764D75", +"<' c #764E75", +"[' c #764E77", +"}' c #774F78", +"|' c #775078", +"1' c #775079", +"2' c #775179", +"3' c #77527B", +"4' c #78537C", +"5' c #78537D", +"6' c #78547D", +"7' c #78547E", +"8' c #78557E", +"9' c #78567F", +"0' c #785680", +"a' c #775680", +"b' c #785681", +"c' c #775681", +"d' c #775781", +"e' c #765781", +"f' c #765681", +"g' c #765582", +"h' c #755681", +"i' c #755582", +"j' c #745582", +"k' c #755581", +"l' c #745581", +"m' c #735581", +"n' c #735481", +"o' c #725380", +"p' c #725381", +"q' c #725481", +"r' c #715380", +"s' c #715281", +"t' c #715280", +"u' c #705381", +"v' c #715481", +"w' c #6A4178", +"x' c #52705B", +"y' c #6F5180", +"z' c #6E5180", +"A' c #547B60", +"B' c #6E5080", +"C' c #6D517F", +"D' c #6D5080", +"E' c #6C507F", +"F' c #6C4F7F", +"G' c #6C4F80", +"H' c #6B4F80", +"I' c #6B4E7F", +"J' c #6A4F7F", +"K' c #6A4E7F", +"L' c #694D7E", +"M' c #694C7E", +"N' c #684C7E", +"O' c #684C7D", +"P' c #674C7E", +"Q' c #674B7E", +"R' c #664B7E", +"S' c #674A7D", +"T' c #664A7E", +"U' c #654A7D", +"V' c #65497D", +"W' c #64497D", +"X' c #63487D", +"Y' c #63487C", +"Z' c #62477C", +"`' c #62467C", +" ) c #60457B", +".) c #5F4178", +"+) c #6A578C", +"@) c #776FA2", +"#) c #7970A3", +"$) c #7D72A3", +"%) c #63679E", +"&) c #325196", +"*) c #2F5095", +"=) c #305096", +"-) c #335296", +";) c #335397", +">) c #315196", +",) c #4060A5", +"') c #6186D3", +")) c #1B5EE8", +"!) c #1B5EE9", +"~) c #1A5FEA", +"{) c #1B5FEA", +"]) c #241D8A", +"^) c #251E8C", +"/) c #281F89", +"() c #69325B", +"_) c #754A71", +":) c #754B72", +"<) c #764B73", +"[) c #764C73", +"}) c #764C75", +"|) c #774D75", +"1) c #774E76", +"2) c #775077", +"3) c #78517A", +"4) c #77527C", +"5) c #78557F", +"6) c #765581", +"7) c #745481", +"8) c #725480", +"9) c #705280", +"0) c #705481", +"a) c #4F6957", +"b) c #6D4A7D", +"c) c #705281", +"d) c #6D4F7F", +"e) c #6C5080", +"f) c #6B4F7F", +"g) c #6A4D7F", +"h) c #694C7F", +"i) c #684B7E", +"j) c #674A7E", +"k) c #664A7D", +"l) c #64487D", +"m) c #63477C", +"n) c #61477C", +"o) c #60447A", +"p) c #62487E", +"q) c #644D83", +"r) c #746A9E", +"s) c #7A72A4", +"t) c #7870A3", +"u) c #746EA3", +"v) c #415899", +"w) c #2E5095", +"x) c #325397", +"y) c #2F4F94", +"z) c #4D6EB2", +"A) c #537ED7", +"B) c #251B87", +"C) c #241D8B", +"D) c #241E8C", +"E) c #3A257D", +"F) c #6A335B", +"G) c #69335C", +"H) c #703F67", +"I) c #754971", +"J) c #764D74", +"K) c #764E76", +"L) c #774F77", +"M) c #77517A", +"N) c #77537B", +"O) c #77537C", +"P) c #77557F", +"Q) c #775580", +"R) c #765580", +"S) c #715381", +"T) c #4E6655", +"U) c #6F507F", +"V) c #6E507F", +"W) c #6E517F", +"X) c #537B60", +"Y) c #6D507F", +"Z) c #6A4D7E", +"`) c #694D7F", +" ! c #674C7D", +".! c #674B7D", +"+! c #64487C", +"@! c #61467B", +"#! c #61467C", +"$! c #60457C", +"%! c #5F437A", +"&! c #6B5A8F", +"*! c #71679B", +"=! c #766FA2", +"-! c #7872A5", +";! c #6167A0", +">! c #4C5E9C", +",! c #345397", +"'! c #5A7BBF", +")! c #3E71DD", +"!! c #1B5DE8", +"~! c #6790E7", +"{! c #6691E7", +"]! c #6791E7", +"^! c #6690E7", +"/! c #6690E5", +"(! c #7D79AB", +"_! c #8A6A87", +":! c #8E728E", +"~ c #97819E", +",~ c #9984A0", +"'~ c #9885A1", +")~ c #96829D", +"!~ c #957F9A", +"~~ c #947E99", +"{~ c #937C98", +"]~ c #8F6D90", +"^~ c #6A8B6A", +"/~ c #937C97", +"(~ c #927895", +"_~ c #6E996F", +":~ c #8E7390", +"<~ c #8E728F", +"[~ c #8D708D", +"}~ c #8D6F8C", +"|~ c #8C6D8A", +"1~ c #8B6C8A", +"2~ c #8B6C89", +"3~ c #8A6B89", +"4~ c #8A6A88", +"5~ c #896A87", +"6~ c #8A6987", +"7~ c #876784", +"8~ c #876683", +"9~ c #876482", +"0~ c #856380", +"a~ c #85627F", +"b~ c #85617F", +"c~ c #84607E", +"d~ c #A091AA", +"e~ c #968AA6", +"f~ c #59719D", +"g~ c #8BA4D2", +"h~ c #8A6D8D", +"i~ c #8A6B88", +"j~ c #967F9C", +"k~ c #97809C", +"l~ c #96809D", +"m~ c #95809B", +"n~ c #967F9A", +"o~ c #957D9A", +"p~ c #937B98", +"q~ c #937B97", +"r~ c #6A8B69", +"s~ c #8F6E90", +"t~ c #937A96", +"u~ c #917895", +"v~ c #927894", +"w~ c #6E986E", +"x~ c #907793", +"y~ c #8F7591", +"z~ c #8D728E", +"A~ c #8E718E", +"B~ c #8E708D", +"C~ c #8D6F8B", +"D~ c #8B6D8A", +"E~ c #876481", +"F~ c #856280", +"G~ c #84617E", +"H~ c #84607D", +"I~ c #9B89A4", +"J~ c #9F8EA9", +"K~ c #998DA9", +"L~ c #9094BE", +"M~ c #6C8BD9", +"N~ c #95809C", +"O~ c #957F9B", +"P~ c #96809B", +"Q~ c #947B97", +"R~ c #688667", +"S~ c #937995", +"T~ c #907692", +"U~ c #8E738F", +"V~ c #8D6E8B", +"W~ c #8C6C89", +"X~ c #8B6C88", +"Y~ c #896A86", +"Z~ c #876682", +"`~ c #866482", +" { c #866280", +".{ c #85617E", +"+{ c #815B79", +"@{ c #9E8EAA", +"#{ c #9E8DA8", +"${ c #888FC1", +"%{ c #7681BE", +"&{ c #927A96", +"*{ c #97849F", +"={ c #98829E", +"-{ c #678566", +";{ c #917794", +">{ c #6D976E", +",{ c #8F7592", +"'{ c #907491", +"){ c #8C6E8A", +"!{ c #85607D", +"~{ c #835F7D", +"{{ c #835F7C", +"]{ c #805976", +"^{ c #9A88A3", +"/{ c #9E8EA9", +"({ c #7690D5", +"_{ c #8276A1", +":{ c #97829F", +"<{ c #947B98", +"[{ c #8F7192", +"}{ c #688867", +"|{ c #927B96", +"1{ c #8A6A86", +"2{ c #8A6986", +"3{ c #845F7D", +"4{ c #83607D", +"5{ c #845E7C", +"6{ c #9D8EA9", +"7{ c #887295", +"8{ c #957D99", +"9{ c #937A97", +"0{ c #6A8D6A", +"a{ c #8C698D", +"b{ c #907794", +"c{ c #6D976D", +"d{ c #907492", +"e{ c #8E718F", +"f{ c #8D6F8D", +"g{ c #8C6D8B", +"h{ c #8B6B89", +"i{ c #896785", +"j{ c #876583", +"k{ c #85637F", +"l{ c #825C7B", +"m{ c #A092AC", +"n{ c #988EAF", +"o{ c #8B6E8C", +"p{ c #947D9A", +"q{ c #927996", +"r{ c #678767", +"s{ c #8E7091", +"t{ c #917593", +"u{ c #907693", +"v{ c #6D966D", +"w{ c #8F7391", +"x{ c #8F7290", +"y{ c #8E708E", +"z{ c #8C6E8C", +"A{ c #825B79", +"B{ c #9F91AC", +"C{ c #8E8FBB", +"D{ c #7087CF", +"E{ c #8C6F8B", +"F{ c #967E9B", +"G{ c #947C99", +"H{ c #947A98", +"I{ c #937997", +"J{ c #937996", +"K{ c #927896", +"L{ c #000000", +"M{ c #907593", +"N{ c #6D956D", +"O{ c #907391", +"P{ c #8F7190", +"Q{ c #8E7190", +"R{ c #8D6E8C", +"S{ c #8C6C8A", +"T{ c #896985", +"U{ c #876783", +"V{ c #825A78", +"W{ c #8090CA", +"X{ c #807AA8", +"Y{ c #947B99", +"Z{ c #937A98", +"`{ c #668565", +" ] c #907392", +".] c #8E708F", +"+] c #8D708F", +"@] c #8D708E", +"#] c #8D6F8E", +"$] c #8D6E8D", +"%] c #8C6D8C", +"&] c #8C6C8B", +"*] c #866582", +"=] c #825D7B", +"-] c #9C8CA6", +";] c #6E91DE", +">] c #85769E", +",] c #927897", +"'] c #927796", +")] c #907493", +"!] c #6D946D", +"~] c #8D6E8E", +"{] c #8C6D8D", +"]] c #8C6C8C", +"^] c #8B6B8A", +"/] c #8B6A89", +"(] c #8B6A88", +"_] c #8A6988", +":] c #886785", +"<] c #85607E", +"[] c #9F91AB", +"}] c #9B8EAC", +"|] c #7285C8", +"1] c #8B718F", +"2] c #947A97", +"3] c #927795", +"4] c #917695", +"5] c #678867", +"6] c #917594", +"7] c #907393", +"8] c #907292", +"9] c #8F7292", +"0] c #8F7191", +"a] c #8F7090", +"b] c #8E7090", +"c] c #8E6F8E", +"d] c #8D6D8D", +"e] c #8B6C8B", +"f] c #8B6A8A", +"g] c #8A6A8A", +"h] c #896887", +"i] c #896786", +"j] c #886686", +"k] c #886685", +"l] c #825C7A", +"m] c #9F92AC", +"n] c #948FB4", +"o] c #947E9A", +"p] c #947C9A", +"q] c #947A99", +"r] c #937897", +"s] c #917796", +"t] c #927695", +"u] c #917595", +"v] c #648364", +"w] c #917493", +"x] c #6D936C", +"y] c #8E6F8F", +"z] c #8D6E8F", +"A] c #8C6C8D", +"B] c #8B6B8B", +"C] c #8B6989", +"D] c #8A6989", +"E] c #896888", +"F] c #886583", +"G] c #9F90AB", +"H] c #7385C7", +"I] c #957C99", +"J] c #907594", +"K] c #648164", +"L] c #907293", +"M] c #8F7091", +"N] c #6C936C", +"O] c #8D6F8F", +"P] c #8D6D8E", +"Q] c #8C6B8B", +"R] c #8B6A8B", +"S] c #8A6888", +"T] c #8A6887", +"U] c #8A6787", +"V] c #886584", +"W] c #876584", +"X] c #886483", +"Y] c #876483", +"Z] c #866382", +"`] c #825D7A", +" ^ c #7890D3", +".^ c #6F88D1", +"+^ c #897496", +"@^ c #8C708C", +"#^ c #947C97", +"$^ c #937B99", +"%^ c #927997", +"&^ c #937796", +"*^ c #927696", +"=^ c #917696", +"-^ c #927595", +";^ c #917494", +">^ c #907494", +",^ c #8C6C8F", +"'^ c #658464", +")^ c #6C926C", +"!^ c #8E6E8F", +"~^ c #8D6C8D", +"{^ c #8C6B8C", +"]^ c #8C6A8B", +"^^ c #8B698A", +"/^ c #8A698A", +"(^ c #8A6889", +"_^ c #896788", +":^ c #8A6788", +"<^ c #896787", +"[^ c #896687", +"}^ c #896686", +"|^ c #886585", +"1^ c #876384", +"2^ c #876382", +"3^ c #876381", +"4^ c #866281", +"5^ c #A092AD", +"6^ c #6890E6", +"7^ c #8578A0", +"8^ c #937998", +"9^ c #937797", +"0^ c #907394", +"a^ c #678968", +"b^ c #88628A", +"c^ c #8E6F90", +"d^ c #6C916B", +"e^ c #8A688A", +"f^ c #886587", +"g^ c #886586", +"h^ c #886485", +"i^ c #876484", +"j^ c #876383", +"k^ c #866282", +"l^ c #856180", +"m^ c #A091AC", +"n^ c #978EB0", +"o^ c #8E7391", +"p^ c #927797", +"q^ c #917495", +"r^ c #648365", +"s^ c #8B698E", +"t^ c #8E6F91", +"u^ c #8E6E90", +"v^ c #8E6D8F", +"w^ c #8D6C8E", +"x^ c #8C6B8D", +"y^ c #8B6A8C", +"z^ c #8B698B", +"A^ c #8A6789", +"B^ c #896586", +"C^ c #896485", +"D^ c #876485", +"E^ c #866181", +"F^ c #866180", +"G^ c #856080", +"H^ c #84607F", +"I^ c #8D8FBA", +"J^ c #688FE1", +"K^ c #89769B", +"L^ c #927697", +"M^ c #907192", +"N^ c #628063", +"O^ c #8D6D8F", +"P^ c #8C6B8E", +"Q^ c #8C6A8C", +"R^ c #8B698C", +"S^ c #8A688B", +"T^ c #8B688A", +"U^ c #8B678A", +"V^ c #896688", +"W^ c #886486", +"X^ c #886384", +"Y^ c #876283", +"Z^ c #876282", +"`^ c #856181", +" / c #85607F", +"./ c #845F7E", +"+/ c #845E7D", +"@/ c #835E7C", +"#/ c #815A79", +"$/ c #9F8FAA", +"%/ c #808FCB", +"&/ c #7587C9", +"*/ c #927596", +"=/ c #917394", +"-/ c #917293", +";/ c #8F7293", +">/ c #8F7092", +",/ c #8D6C90", +"'/ c #628163", +")/ c #8E6D90", +"!/ c #8D6C8F", +"~/ c #8C6A8D", +"{/ c #8B688B", +"]/ c #8A678A", +"^/ c #8A668A", +"// c #8A6689", +"(/ c #896689", +"_/ c #896587", +":/ c #886487", +"( c #9E8DA9", +",( c #888DC0", +"'( c #658FE7", +")( c #6E8CD8", +"!( c #907490", +"~( c #917795", +"{( c #8E6D91", +"]( c #8E6C8F", +"^( c #607D61", +"/( c #8D6A8E", +"(( c #8C698E", +"_( c #8C688C", +":( c #8A668B", +"<( c #896589", +"[( c #896489", +"}( c #896387", +"|( c #886287", +"1( c #886286", +"2( c #886285", +"3( c #876185", +"4( c #876084", +"5( c #866083", +"6( c #865F82", +"7( c #855E81", +"8( c #845D7F", +"9( c #825B7C", +"0( c #9A85A3", +"a( c #9D8DA9", +"b( c #8F8CB7", +"c( c #738DD7", +"d( c #668EE7", +"e( c #668EE6", +"f( c #668FE6", +"g( c #668FE5", +"h( c #7B83BC", +"i( c #927794", +"j( c #927694", +"k( c #907093", +"l( c #8F6D91", +"m( c #8A668C", +"n( c #8D6A8F", +"o( c #8C688D", +"p( c #8B668B", +"q( c #8A658A", +"r( c #896388", +"s( c #896288", +"t( c #886186", +"u( c #866084", +"v( c #876083", +"w( c #865E82", +"x( c #855E82", +"y( c #845D80", +"z( c #855D7F", +"A( c #845C7E", +"B( c #835B7D", +"C( c #835B7C", +"D( c #835B7B", +"E( c #9E8CA9", +"F( c #9C8BA8", +"G( c #658BE6", +"H( c #658DE7", +"I( c #668DE6", +"J( c #658DE6", +"K( c #877AA2", +"L( c #8F6E92", +"M( c #658566", +"N( c #835C87", +"O( c #8B698D", +"P( c #8B678C", +"Q( c #8B668A", +"R( c #8A6489", +"S( c #876186", +"T( c #876085", +"U( c #865F84", +"V( c #865E83", +"W( c #855D81", +"X( c #855D80", +"Y( c #845C7F", +"Z( c #835B7E", +"`( c #835A7C", +" _ c #815879", +"._ c #9F8EAC", +"+_ c #978BAF", +"@_ c #658BE7", +"#_ c #658CE6", +"$_ c #8D7898", +"%_ c #8E6C90", +"&_ c #8E6B90", +"*_ c #8D6B90", +"=_ c #87628A", +"-_ c #8B668C", +";_ c #8A658B", +">_ c #8A648A", +",_ c #896389", +"'_ c #886288", +")_ c #886187", +"!_ c #886086", +"~_ c #865D82", +"{_ c #845C81", +"]_ c #845C80", +"^_ c #845B7F", +"/_ c #825A7C", +"(_ c #81587A", +"__ c #9F8DAB", +":_ c #8D8ABA", +"<_ c #648AE6", +"[_ c #7785C3", +"}_ c #907092", +"|_ c #8C6B8F", +"1_ c #8D698F", +"2_ c #5F7B61", +"3_ c #8B678D", +"4_ c #8B688D", +"5_ c #89648A", +"6_ c #886087", +"7_ c #876086", +"8_ c #875F84", +"9_ c #875E84", +"0_ c #865D83", +"a_ c #855D82", +"b_ c #855C81", +"c_ c #855C80", +"d_ c #835B7F", +"e_ c #845A7E", +"f_ c #835A7D", +"g_ c #82597C", +"h_ c #805677", +"i_ c #9882A2", +"j_ c #9D8BA9", +"k_ c #9D8AA8", +"l_ c #7E89C9", +"m_ c #6489E6", +"n_ c #6589E6", +"o_ c #658CE7", +"p_ c #708BD6", +"q_ c #8F7492", +"r_ c #8F7392", +"s_ c #8E6C91", +"t_ c #8D698E", +"u_ c #8B658D", +"v_ c #5E7C61", +"w_ c #8D688D", +"x_ c #8B658C", +"y_ c #8A658C", +"z_ c #8A648B", +"A_ c #8A638A", +"B_ c #896289", +"C_ c #886188", +"D_ c #876087", +"E_ c #885F86", +"F_ c #875F85", +"G_ c #865E85", +"H_ c #865E84", +"I_ c #855E83", +"J_ c #855C82", +"K_ c #845B80", +"L_ c #83597E", +"M_ c #82597D", +"N_ c #83587C", +"O_ c #81587B", +"P_ c #9C88A7", +"Q_ c #9D89A8", +"R_ c #7687D1", +"S_ c #6687E3", +"T_ c #6489E5", +"U_ c #658AE6", +"V_ c #648AE7", +"W_ c #6D8CD8", +"X_ c #8B7B9D", +"Y_ c #8F7291", +"Z_ c #8C688E", +"`_ c #8D698D", +" : c #658667", +".: c #7F5584", +"+: c #8B668D", +"@: c #89638A", +"#: c #886189", +"$: c #896188", +"%: c #875F86", +"&: c #865D84", +"*: c #855D83", +"=: c #865C82", +"-: c #845B81", +";: c #845A7F", +">: c #83597D", +",: c #835A7E", +"': c #83597C", +"): c #82587C", +"!: c #82587B", +"~: c #805679", +"{: c #9D8BAB", +"]: c #9988AC", +"^: c #6486E6", +"/: c #6587E4", +"(: c #6488E6", +"_: c #668DE7", +":: c #658EE7", +"<: c #877DA8", +"[: c #8D6A90", +"}: c #8C678D", +"|: c #8C678E", +"1: c #618063", +"2: c #835B87", +"3: c #8A638B", +"4: c #89628A", +"5: c #886088", +"6: c #885F87", +"7: c #885E86", +"8: c #875E85", +"9: c #865D85", +"0: c #865C83", +"a: c #855B83", +"b: c #855B82", +"c: c #855B81", +"d: c #845A81", +"e: c #845A80", +"f: c #845980", +"g: c #835A7F", +"h: c #83587D", +"i: c #82577C", +"j: c #805578", +"k: c #927798", +"l: c #9E8BAB", +"m: c #9088B4", +"n: c #6486E5", +"o: c #6487E6", +"p: c #6488E5", +"q: c #847FAE", +"r: c #8E7290", +"s: c #8C668D", +"t: c #5E7B61", +"u: c #88618A", +"v: c #8B648B", +"w: c #896088", +"x: c #875E86", +"y: c #855C83", +"z: c #855A82", +"A: c #855B80", +"B: c #835980", +"C: c #84597F", +"D: c #83597F", +"E: c #83587E", +"F: c #82587D", +"G: c #82577B", +"H: c #81577B", +"I: c #7E5175", +"J: c #93789A", +"K: c #9B87A8", +"L: c #8486C2", +"M: c #6385E5", +"N: c #6386E5", +"O: c #6487E5", +"P: c #6588E6", +"Q: c #668CE6", +"R: c #678FE7", +"S: c #8F7899", +"T: c #917592", +"U: c #8D6F90", +"V: c #8C6A8F", +"W: c #5D7960", +"X: c #896189", +"Y: c #875F87", +"Z: c #875D85", +"`: c #865C84", +" < c #855B84", +".< c #83587F", +"+< c #84587E", +"@< c #83577E", +"#< c #83577D", +"$< c #82577D", +"%< c #81567B", +"&< c #815479", +"*< c #957A9D", +"=< c #9A85A6", +"-< c #9C87A8", +";< c #6C83DB", +">< c #6384E6", +",< c #6484E5", +"'< c #6485E6", +")< c #6387E5", +"!< c #6E89D7", +"~< c #8D6B8E", +"{< c #865F88", +"]< c #896089", +"^< c #886089", +"/< c #895F88", +"(< c #885F88", +"_< c #885E87", +":< c #885D87", +"<< c #875D86", +"[< c #865C85", +"}< c #855A83", +"|< c #845A82", +"1< c #845880", +"2< c #835880", +"3< c #84587F", +"4< c #82577E", +"5< c #81557A", +"6< c #9D89AA", +"7< c #9B86A8", +"8< c #9185B3", +"9< c #6382E5", +"0< c #6383E5", +"a< c #6484E6", +"b< c #6589E5", +"c< c #658EE6", +"d< c #6790E6", +"e< c #658DE4", +"f< c #817EB2", +"g< c #8A648C", +"h< c #8A638C", +"i< c #628164", +"j< c #7F5484", +"k< c #8A628A", +"l< c #895F89", +"m< c #875F88", +"n< c #875E87", +"o< c #875C85", +"p< c #865C86", +"q< c #865B85", +"r< c #865B84", +"s< c #855982", +"t< c #845982", +"u< c #845881", +"v< c #83577F", +"w< c #82567D", +"x< c #81567C", +"y< c #82567C", +"z< c #82557C", +"A< c #81557C", +"B< c #81547A", +"C< c #80557B", +"D< c #9E89AA", +"E< c #9285B1", +"F< c #6280E4", +"G< c #6382E3", +"H< c #6384E5", +"I< c #658AE7", +"J< c #668CE4", +"K< c #8D799E", +"L< c #8C6E8E", +"M< c #8B638B", +"N< c #845A86", +"O< c #8A618A", +"P< c #89608A", +"Q< c #885E88", +"R< c #875E88", +"S< c #875D87", +"T< c #875C86", +"U< c #855A84", +"V< c #865A83", +"W< c #845983", +"X< c #845882", +"Y< c #835881", +"Z< c #845780", +"`< c #83567F", +" [ c #83567E", +".[ c #82567E", +"+[ c #82557D", +"@[ c #81547B", +"#[ c #81557B", +"$[ c #7F5177", +"%[ c #927397", +"&[ c #9C87AA", +"*[ c #9C85A8", +"=[ c #8A83BB", +"-[ c #6380E5", +";[ c #6281E4", +">[ c #6381E5", +",[ c #6385E6", +"'[ c #7782C3", +")[ c #907797", +"![ c #8C678C", +"~[ c #89628B", +"{[ c #89618A", +"][ c #5B785F", +"^[ c #875E89", +"/[ c #885F89", +"([ c #875D88", +"_[ c #875B86", +":[ c #875B85", +"<[ c #855B85", +"[[ c #865A84", +"}[ c #855984", +"|[ c #855983", +"1[ c #835780", +"2[ c #84567F", +"3[ c #82567F", +"4[ c #82557E", +"5[ c #81557D", +"6[ c #81547C", +"7[ c #80547A", +"8[ c #7E4F76", +"9[ c #977CA0", +"0[ c #9B85A8", +"a[ c #8482BF", +"b[ c #6D80D8", +"c[ c #627FE4", +"d[ c #6280E5", +"e[ c #6281E5", +"f[ c #6483E5", +"g[ c #6386E6", +"h[ c #6485E5", +"i[ c #89638B", +"j[ c #885D88", +"k[ c #875C87", +"l[ c #865A85", +"m[ c #865983", +"n[ c #855883", +"o[ c #855882", +"p[ c #845782", +"q[ c #845781", +"r[ c #845680", +"s[ c #835680", +"t[ c #82557F", +"u[ c #82547C", +"v[ c #81537B", +"w[ c #9B84A8", +"x[ c #9B84A7", +"y[ c #627DE4", +"z[ c #627EE4", +"A[ c #6381E4", +"B[ c #6382E4", +"C[ c #668CE7", +"D[ c #6B86DA", +"E[ c #8C79A2", +"F[ c #917797", +"G[ c #8B6A8D", +"H[ c #8A678C", +"I[ c #638164", +"J[ c #7A4F81", +"K[ c #885E89", +"L[ c #865B86", +"M[ c #855A85", +"N[ c #865985", +"O[ c #855782", +"P[ c #835781", +"Q[ c #83557F", +"R[ c #82547E", +"S[ c #82547D", +"T[ c #81547D", +"U[ c #81537C", +"V[ c #80537B", +"W[ c #7F5078", +"X[ c #9E89AD", +"Y[ c #9B83A7", +"Z[ c #9883AB", +"`[ c #617DE4", +" } c #6986DD", +".} c #897AA8", +"+} c #8C698B", +"@} c #8B658B", +"#} c #8A6089", +"$} c #7F5583", +"%} c #875B87", +"&} c #865984", +"*} c #855783", +"=} c #845783", +"-} c #845682", +";} c #845681", +">} c #835581", +",} c #835580", +"'} c #83547E", +")} c #82547F", +"!} c #82537E", +"~} c #82537D", +"{} c #81537D", +"]} c #82537C", +"^} c #81527C", +"/} c #80527C", +"(} c #81527B", +"_} c #80527B", +":} c #7E4F77", +"<} c #94779C", +"[} c #9C85AA", +"}} c #8A81B8", +"|} c #617AE0", +"1} c #617CE4", +"2} c #627CE4", +"3} c #627EE5", +"4} c #627FE5", +"5} c #648BE7", +"6} c #6487E4", +"7} c #8879A7", +"8} c #937697", +"9} c #8C688B", +"0} c #648264", +"a} c #865A86", +"b} c #855884", +"c} c #855784", +"d} c #835681", +"e} c #845581", +"f} c #835480", +"g} c #82527C", +"h} c #81517B", +"i} c #80517A", +"j} c #7E4D77", +"k} c #96789E", +"l} c #9C85A9", +"m} c #9882A9", +"n} c #7C7DC8", +"o} c #617BE4", +"p} c #627BE2", +"q} c #617CE3", +"r} c #6282E4", +"s} c #8F789B", +"t} c #927698", +"u} c #937798", +"v} c #89648B", +"w} c #754A7E", +"x} c #678365", +"y} c #678364", +"z} c #668364", +"A} c #668264", +"B} c #865986", +"C} c #845884", +"D} c #845683", +"E} c #83547F", +"F} c #82537F", +"G} c #81527D", +"H} c #81517C", +"I} c #80517B", +"J} c #80507A", +"K} c #7E4E77", +"L} c #9980A5", +"M} c #9B82A7", +"N} c #6178E4", +"O} c #617AE4", +"P} c #617AE3", +"Q} c #6383E4", +"R} c #6691E6", +"S} c #6E81D3", +"T} c #7C7DBC", +"U} c #937698", +"V} c #89658B", +"W} c #89658A", +"X} c #835885", +"Y} c #764B7E", +"Z} c #885C87", +"`} c #658164", +" | c #668164", +".| c #658163", +"+| c #845784", +"@| c #845582", +"#| c #835582", +"$| c #835481", +"%| c #835380", +"&| c #83537F", +"*| c #82527E", +"=| c #81527E", +"-| c #82527D", +";| c #81517D", +">| c #81507B", +",| c #80507B", +"'| c #7F507A", +")| c #997FA5", +"!| c #9B82A8", +"~| c #9981A8", +"{| c #6078E3", +"]| c #6179E3", +"^| c #6179E4", +"/| c #617DE5", +"(| c #6482E2", +"_| c #8C77A2", +":| c #927597", +"<| c #7D5282", +"[| c #7A4F80", +"}| c #885B86", +"|| c #855985", +"1| c #865885", +"2| c #855885", +"3| c #658063", +"4| c #657F62", +"5| c #835482", +"6| c #845481", +"7| c #825380", +"8| c #82527F", +"9| c #80507C", +"0| c #804F7A", +"a| c #7F507B", +"b| c #7D4A76", +"c| c #8B648E", +"d| c #9C84AA", +"e| c #9B81A7", +"f| c #9680AC", +"g| c #817DC0", +"h| c #6077E3", +"i| c #6380E4", +"j| c #747EC9", +"k| c #927699", +"l| c #927598", +"m| c #774C7F", +"n| c #7F5383", +"o| c #875A86", +"p| c #855683", +"q| c #647F61", +"r| c #82517E", +"s| c #81507E", +"t| c #81507D", +"u| c #804F7B", +"v| c #7F4E7A", +"w| c #93739C", +"x| c #9B82A9", +"y| c #857CBC", +"z| c #6875D7", +"A| c #6075E3", +"B| c #6076E3", +"C| c #6078E4", +"D| c #6079E4", +"E| c #668BE6", +"F| c #6281E3", +"G| c #8977A8", +"H| c #93769A", +"I| c #907195", +"J| c #73487D", +"K| c #845684", +"L| c #865784", +"M| c #855684", +"N| c #855583", +"O| c #845583", +"P| c #845483", +"Q| c #845482", +"R| c #835381", +"S| c #835281", +"T| c #835280", +"U| c #83527F", +"V| c #82517F", +"W| c #82507E", +"X| c #814F7D", +"Y| c #804F7C", +"Z| c #804E7B", +"`| c #804E7A", +" 1 c #7F4E79", +".1 c #7C4974", +"+1 c #997EA6", +"@1 c #9A7FA7", +"#1 c #9A7FA6", +"$1 c #6D77D5", +"%1 c #5F73E3", +"&1 c #5F75E3", +"*1 c #6076E4", +"=1 c #607AE4", +"-1 c #6282E5", +";1 c #627EE2", +">1 c #92769C", +",1 c #94769A", +"'1 c #94779B", +")1 c #855A86", +"!1 c #845785", +"~1 c #73477C", +"{1 c #865884", +"]1 c #855785", +"^1 c #835583", +"/1 c #835382", +"(1 c #845381", +"_1 c #825280", +":1 c #835180", +"<1 c #7E4C79", +"[1 c #82517D", +"}1 c #916F99", +"|1 c #9B80A7", +"11 c #987EA8", +"21 c #5E72E2", +"31 c #5F72E2", +"41 c #6073E3", +"51 c #617EE4", +"61 c #7A79BF", +"71 c #8777AC", +"81 c #937599", +"91 c #937499", +"01 c #917297", +"a1 c #865D86", +"b1 c #805382", +"c1 c #76497D", +"d1 c #825180", +"e1 c #81507F", +"f1 c #814F7E", +"g1 c #824F7E", +"h1 c #814E7D", +"i1 c #804E7D", +"j1 c #804E7C", +"k1 c #7F4D7B", +"l1 c #7F4D7A", +"m1 c #804D79", +"n1 c #7E4C78", +"o1 c #7E4A76", +"p1 c #9C83AB", +"q1 c #977CA8", +"r1 c #8D7BB3", +"s1 c #5E72E3", +"t1 c #5F72E3", +"u1 c #5F74E2", +"v1 c #6074E3", +"w1 c #5F76E3", +"x1 c #6178E3", +"y1 c #637CE0", +"z1 c #90759D", +"A1 c #93759A", +"B1 c #7B4F80", +"C1 c #72477C", +"D1 c #7A4D80", +"E1 c #865684", +"F1 c #845382", +"G1 c #835282", +"H1 c #82507F", +"I1 c #814F7F", +"J1 c #804D7D", +"K1 c #804D7C", +"L1 c #814D7C", +"M1 c #804D7B", +"N1 c #804C7B", +"O1 c #7F4C7A", +"P1 c #7F4D79", +"Q1 c #804C79", +"R1 c #7D4976", +"S1 c #8F6A96", +"T1 c #997CA6", +"U1 c #9A7EA7", +"V1 c #8178BE", +"W1 c #5E70E2", +"X1 c #5F70E2", +"Y1 c #5F71E2", +"Z1 c #5F74E3", +"`1 c #627BE4", +" 2 c #607BE3", +".2 c #7A77BD", +"+2 c #94759B", +"@2 c #927399", +"#2 c #72477D", +"$2 c #794C7F", +"%2 c #825382", +"&2 c #855582", +"*2 c #825181", +"=2 c #825080", +"-2 c #824F80", +";2 c #824F7F", +">2 c #814E7F", +",2 c #814E7E", +"'2 c #814D7D", +")2 c #804C7C", +"!2 c #7F4C7B", +"~2 c #804B7A", +"{2 c #7E4B79", +"]2 c #7C4674", +"^2 c #987AA4", +"/2 c #997DA7", +"(2 c #8A79B5", +"_2 c #6C71D3", +":2 c #5E6FE2", +"<2 c #5E71E2", +"[2 c #5F73E2", +"}2 c #6079E3", +"|2 c #607AE3", +"12 c #617BE3", +"22 c #617EE5", +"32 c #617FE5", +"42 c #6179E2", +"52 c #8B76A7", +"62 c #94749B", +"72 c #94759C", +"82 c #94769C", +"92 c #8C678F", +"02 c #835683", +"a2 c #70457B", +"b2 c #835181", +"c2 c #804D7E", +"d2 c #814D7E", +"e2 c #7F4C7C", +"f2 c #7F4B7B", +"g2 c #7F4B7A", +"h2 c #7F4A79", +"i2 c #7E4A78", +"j2 c #906B98", +"k2 c #9B7FAA", +"l2 c #997BA6", +"m2 c #997CA7", +"n2 c #7271CC", +"o2 c #5E6DE2", +"p2 c #5E6EE2", +"q2 c #5E6EE1", +"r2 c #6074E2", +"s2 c #7276CA", +"t2 c #8575AF", +"u2 c #8D74A4", +"v2 c #93749B", +"w2 c #92729A", +"x2 c #8E6A92", +"y2 c #7F5181", +"z2 c #72467C", +"A2 c #855482", +"B2 c #824E7F", +"C2 c #814D7F", +"D2 c #804C7D", +"E2 c #7F4B7C", +"F2 c #7F4A7B", +"G2 c #7F4A7A", +"H2 c #7D4877", +"I2 c #7E4A79", +"J2 c #875A88", +"K2 c #9878A4", +"L2 c #9B7EA9", +"M2 c #987AA6", +"N2 c #8D77B2", +"O2 c #5D6BE2", +"P2 c #5D6CE2", +"Q2 c #5F6CE0", +"R2 c #5E6DE1", +"S2 c #5F6FE3", +"T2 c #6077E4", +"U2 c #627DE5", +"V2 c #648BE6", +"W2 c #6177E3", +"X2 c #92749E", +"Y2 c #94749C", +"Z2 c #95769E", +"`2 c #794C7E", +" 3 c #764A7D", +".3 c #855382", +"+3 c #825081", +"@3 c #804C7E", +"#3 c #804B7C", +"$3 c #7E4A7A", +"%3 c #7F497A", +"&3 c #7B4575", +"*3 c #916D9A", +"=3 c #997BA8", +"-3 c #997BA7", +";3 c #8F76AF", +">3 c #7670C8", +",3 c #5C69E1", +"'3 c #5D6AE1", +")3 c #5D6BE0", +"!3 c #5E6CE2", +"~3 c #5F71E3", +"{3 c #6283E5", +"]3 c #617FE4", +"^3 c #6074E1", +"/3 c #6E73CC", +"(3 c #8073B6", +"_3 c #94749D", +":3 c #93719A", +"<3 c #8F6C96", +"[3 c #8C648F", +"}3 c #855682", +"|3 c #7C4D7E", +"13 c #845281", +"23 c #835080", +"33 c #814C7E", +"43 c #804B7D", +"53 c #804A7C", +"63 c #7F497B", +"73 c #7E497A", +"83 c #7B4475", +"93 c #8C6291", +"03 c #9879A6", +"a3 c #9979A6", +"b3 c #6C6DD1", +"c3 c #5C68E1", +"d3 c #5D69E1", +"e3 c #5E6BE2", +"f3 c #5D6CE1", +"g3 c #5D6DE2", +"h3 c #6572DA", +"i3 c #8C73A5", +"j3 c #91739E", +"k3 c #94739C", +"l3 c #94749E", +"m3 c #93729C", +"n3 c #6F447A", +"o3 c #804F7F", +"p3 c #7F4A7D", +"q3 c #7F4A7C", +"r3 c #80497C", +"s3 c #7E497B", +"t3 c #7F487A", +"u3 c #7E4879", +"v3 c #7D4576", +"w3 c #7D4879", +"x3 c #9572A0", +"y3 c #9A7BA8", +"z3 c #9878A6", +"A3 c #9577A9", +"B3 c #5F67DB", +"C3 c #736EC9", +"D3 c #5D66E0", +"E3 c #5C67E1", +"F3 c #5D68E1", +"G3 c #5D6AE2", +"H3 c #5D6BE1", +"I3 c #5D6EE2", +"J3 c #5E6FE3", +"K3 c #616FDC", +"L3 c #8771AE", +"M3 c #95749F", +"N3 c #93729D", +"O3 c #916E99", +"P3 c #8D6692", +"Q3 c #895E8B", +"R3 c #805080", +"S3 c #6E427A", +"T3 c #824E80", +"U3 c #804B7E", +"V3 c #804A7D", +"W3 c #7F487B", +"X3 c #7E4779", +"Y3 c #7E487A", +"Z3 c #7C4476", +"`3 c #835182", +" 4 c #875989", +".4 c #8A5D8D", +"+4 c #9979A8", +"@4 c #9979A7", +"#4 c #9877A5", +"$4 c #9075AD", +"%4 c #5C64E1", +"&4 c #5B65E0", +"*4 c #5B66E1", +"=4 c #5D66DF", +"-4 c #5C66E1", +";4 c #5D67E1", +">4 c #5D69E2", +",4 c #5F6FE2", +"'4 c #5F77E3", +")4 c #706FCA", +"!4 c #8771AD", +"~4 c #8F71A3", +"{4 c #94729E", +"]4 c #94739E", +"^4 c #95739E", +"/4 c #9675A0", +"(4 c #8D6592", +"_4 c #824E7D", +":4 c #804E7F", +"<4 c #7E487B", +"[4 c #7C4578", +"}4 c #7C4376", +"|4 c #7D4477", +"14 c #8C6192", +"24 c #9572A2", +"34 c #9A7AA9", +"44 c #9877A6", +"54 c #8971B4", +"64 c #8170BB", +"74 c #7C6EC0", +"84 c #5B64E0", +"94 c #5C65E1", +"04 c #5E6BE1", +"a4 c #5D6DE1", +"b4 c #5E6CE1", +"c4 c #606ADD", +"d4 c #6F6CCB", +"e4 c #7D6EB9", +"f4 c #92719F", +"g4 c #926F9C", +"h4 c #8F6895", +"i4 c #895E8D", +"j4 c #855686", +"k4 c #80497D", +"l4 c #7F497C", +"m4 c #7F487C", +"n4 c #7E477A", +"o4 c #7F477B", +"p4 c #7D4578", +"q4 c #7E4579", +"r4 c #7E467A", +"s4 c #7C4378", +"t4 c #8E6595", +"u4 c #87588A", +"v4 c #9775A5", +"w4 c #9775A4", +"x4 c #8D71AF", +"y4 c #9675A6", +"z4 c #7068CB", +"A4 c #5B61DE", +"B4 c #5B62E0", +"C4 c #5C62E1", +"D4 c #5B63E1", +"E4 c #5B64E1", +"F4 c #5B65E1", +"G4 c #6075E2", +"H4 c #5E70E3", +"I4 c #8A70AA", +"J4 c #9271A0", +"K4 c #94719E", +"L4 c #9573A0", +"M4 c #9573A1", +"N4 c #94719F", +"O4 c #916B9A", +"P4 c #875889", +"Q4 c #835081", +"R4 c #7D4679", +"S4 c #865587", +"T4 c #855486", +"U4 c #7E4679", +"V4 c #814B7E", +"W4 c #7D4579", +"X4 c #7D4377", +"Y4 c #804B7F", +"Z4 c #7D4478", +"`4 c #824C7F", +" 5 c #8A5D8F", +".5 c #834F83", +"+5 c #835083", +"@5 c #9671A2", +"#5 c #9876A6", +"$5 c #9776A6", +"%5 c #9773A4", +"&5 c #9774A5", +"*5 c #7C6BBD", +"=5 c #5A5FE0", +"-5 c #5A5FDF", +";5 c #5A60E0", +">5 c #5B60E0", +",5 c #5B61E0", +"'5 c #5A61E0", +")5 c #5B63E0", +"!5 c #5C66E0", +"~5 c #6768D2", +"{5 c #786BBE", +"]5 c #866DAE", +"^5 c #9070A4", +"/5 c #9571A0", +"(5 c #9572A1", +"_5 c #9673A2", +":5 c #9671A1", +"<5 c #936E9E", +"[5 c #8E6696", +"}5 c #946F9F", +"|5 c #9673A3", +"15 c #9570A0", +"25 c #926B9C", +"35 c #8D6294", +"45 c #865588", +"55 c #916899", +"65 c #9571A1", +"75 c #91689A", +"85 c #8A5C8F", +"95 c #90679A", +"05 c #9774A6", +"a5 c #946E9F", +"b5 c #936C9E", +"c5 c #9875A7", +"d5 c #9673A4", +"e5 c #9070AA", +"f5 c #886DB2", +"g5 c #866DB4", +"h5 c #5A5CDF", +"i5 c #6962CF", +"j5 c #5A5EDF", +"k5 c #5A5EDE", +"l5 c #5A5EE0", +"m5 c #5B5FE0", +"n5 c #5C63E0", +"o5 c #5C64E0", +"p5 c #6587E6", +"q5 c #5F76E4", +"r5 c #5F70E3", +"s5 c #5C67E0", +"t5 c #5C63DD", +"u5 c #6F66C9", +"v5 c #806AB6", +"w5 c #8B6EAA", +"x5 c #936FA2", +"y5 c #9470A0", +"z5 c #9672A1", +"A5 c #8E6EA7", +"B5 c #946FA2", +"C5 c #9672A3", +"D5 c #9570A1", +"E5 c #9570A2", +"F5 c #9671A3", +"G5 c #9672A4", +"H5 c #9571A3", +"I5 c #9470A4", +"J5 c #8A6CAE", +"K5 c #8F6FAA", +"L5 c #816AB9", +"M5 c #625ED6", +"N5 c #595BDF", +"O5 c #595CDF", +"P5 c #5A5DE0", +"Q5 c #5A5DDF", +"R5 c #5C68E2", +"S5 c #5E71E3", +"T5 c #6588E5", +"U5 c #5B5FDF", +"V5 c #6462D4", +"W5 c #7767BF", +"X5 c #7E68B8", +"Y5 c #6A61CC", +"Z5 c #7C67BB", +"`5 c #8A6CAD", +" 6 c #906FA7", +".6 c #5A5ADD", +"+6 c #7162C6", +"@6 c #8169B6", +"#6 c #8D6DAB", +"$6 c #5959DF", +"%6 c #655ED3", +"&6 c #7865C0", +"*6 c #595ADF", +"=6 c #5959DE", +"-6 c #595ADE", +";6 c #5A5BDF", +">6 c #595DDF", +",6 c #595EE0", +"'6 c #5A60DF", +")6 c #5B60DF", +"!6 c #595DE0", +"~6 c #585ADF", +"{6 c #5859DF", +"]6 c #5858DE", +"^6 c #5858DF", +"/6 c #595CE0", +"(6 c #5C65E0", +"_6 c #5C6AE1", +":6 c #5958DF", +"<6 c #5857DF", +"[6 c #5857DE", +"}6 c #5C62E0", +"|6 c #5957DE", +"16 c #5957DF", +"26 c #5856DE", +"36 c #5856DF", +"46 c #5956DF", +"56 c #595BE0", +"66 c #5D6FE2", +"76 c #5958DE", +"86 c #5855DE", +"96 c #5755DE", +"06 c #5756DE", +"a6 c #5A5CE0", +"b6 c #5B62E1", +"c6 c #5859DE", +"d6 c #5854DE", +"e6 c #5854DF", +"f6 c #5855DF", +"g6 c #595EDF", +"h6 c #5853DE", +"i6 c #5753DE", +"j6 c #5754DE", +"k6 c #5755DF", +"l6 c #5756DF", +"m6 c #5752DE", +"n6 c #5753DD", +"o6 c #5C6AE2", +"p6 c #637FE4", +"q6 c #5752DD", +"r6 c #5751DE", +"s6 c #5754DD", +"t6 c #5A62E0", +"u6 c #5751DD", +"v6 c #5650DD", +"w6 c #5650DE", +"x6 c #5750DD", +"y6 c #6073E2", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" . ", +" + @ # $ % ", +" & * = - ; > , ", +" ' ) ! ~ = { ] ^ / ( ", +" _ _ : < [ } | = 1 2 3 4 ", +" 5 6 6 7 8 9 0 a ! b a c d ^ - e ", +" f g h @ i j k 5 l a ! m n o p / q r s ", +" p { * 5 + ) t u i v j w l x ! m y z A p - B + ", +" C D l E _ F G H ) _ I @ : j w J K [ ! L M { p 3 N B O P ", +" Q R S k ' T U e E , ' V W X u i j k Y l Z ` ...+.p @.#.$.p 5 ", +" %. &.*.=.-.;.>.,.O '.).!.~.& E , ' {.].^.u i /.* w 9 Z ! (.= M p p _.:.<.[.G }. ", +" |.1.@ 2.9 3.& 4.3.5.. 6.7.).!.U U E , ' + ) X I 8.7 9.5 0.l a.b.f c.{ p - d.e.B [., f. ", +" g.h.= > H i.j.k.l.4.m.n.o.s 5.. p.O q.T !.U r.# G s.) _ I @ 7 9.t.0.u.v.= = c.A p _.q > <.B w.x.y. ", +" z. A.B.p C.D.o.E.F.G.H.I.D.P J.K.L.M.N.O.. P.6.Q.T !.U & E , s.R.W S.T.7 j k J u.U.~ ] = { V._.; W.> X.Y.Q = Z. ", +" `. +.+K *.++@+#+$+%+&+*+=+-+G.;+>+,+P 4.K.L.'+)+% !+( ~+q.T !.{+& ]+G x.^+/+(+h 6 /.k _+b :+` <+= { p - d.q [+}+Y.|+1+2+ ", +" 3+h.4+5+6+7+8+g 9++ 0+i.a+b+0+c+d+e+f+*+g+h+@+G.i.l.,+P 4.i+j+'+o.s k+. ~+q.l+m+U n+E G 2++ o+S.@ : /.k k p+q+[ <+= { r+- d.q [+Q B ++s+t+L.;+ ", +" 3+u+v+w+V s.x+y+z+A+B+C+C+$+D+E+F+G+H+I+F.*+g+J+k.K+i.l.f.L+4.i+j+3.M+N.N+. p.O l+T U #+O+, ' P+_ ^.h : j k k Q+r+! m = c.p R+:.q > Q S+T+U+V+W+= X+ ", +" *.b+Y+Z+C+`+ @.@+@`+`+C+@@$+#@Z+E+y+$@Y+%@*+g+h+k.G.H.&@f.D.4.*@n.=@o.s -@!+p.;@q.m+U e n+, ' V >@^.u : /.k Y ,@~ ! ] M '@2 - d.q [+)@S+T+U+t+!@~@- 7. ", +" M {@H+y+E+D+]@$+^@/@(@(@_@C+:@D+E+d+<@Y+%@[@*+}@k.G.E.l.f.|@1@*@m.2@o.s 5.3@4@5@6@7@8@U n+, 9@+ R._ u @ 0@4 [ *.l ! ~ = '@2 - a@q [+)@T+++b@t+~@c@W+5 3. ", +" h.U E+$@d@e@D+f@g@(@h@i@h@(@C+j@ @k@d@%+l@m@[@*+}@=+G.i.;+f.D.P 4.n@2@o.s -@. 6.o@q.6@!.e E , ' + p@X q@@ : : 3 1+S ! ~ = M r+^ - r@> Q Y.s@t@t+1+c@C =.|.u@G+ ", +" v@l.$@%+y+E+D+f@C+_@w@h@x@y@@@z@A@k@d@%+Y+%@[@*+B@C@-+K+;+D@u@P 4.j+L.E@N.5.. p.O q.T 8@& F@G@' + ) H@h : j : I@J@l K@b L@M@N@d d.q W.Q B s@O@t+P@w.Q@D 9+R@Q +@ ", +" S@T@Y+H+y+E+D+ @$+C+U@V@_@C+W@ @D+E+d+$@X@v+Y@g+Z@`@ #.#l.f.+#P 4.n.L.M.N.O.@#p.O q.m+!.##$#%#' + ) X @ : j &#*#M Z r b M =#N@- d.-#> ;#>#++,#'#P@w.C D 9+W+9+u )+ ", +" ,#)#!#~#y+E+D+D+ @+@C+{#@@$+.@z+D+0+]#^#I+f+*+}@h+k.K+i.l./#D.P 4.n.(#j.s O.. p.O q.T _#& $#%#' 2+) _ @ : :#5 <#l a } ] = { p - d.q > )@Y.R t@[#~@c@C D 9+}#C.3+p $@+@ ", +" |#9.1#e+H+2#d+E+D+z+.@$+$+$+f@z+D+E+y+$@~#m@3#4#}@h+k.G.i.5#,+6#7#J.L.3.o.s 5.. 4@$ 8#!.8@##E , H + ) _ 9#0#6 a#b#k a c#~ M c.A - d#q > }+e#f#g#[#~@c@C D h#i#C.C.g.j#'.k# ", +" l#5.X@m@X@$@<@y+e@e@D+ @ @ @D+m#c+c+y+$@Y+m@[@*+}@h+n#o#p#5#,+D.q#K.L.3.r#s#5.p.>.Q.l+!.U n+t#, H u#_ I @ : @ 1+v#8 a r <+M '@r+^ d.q > Q Y.T+,#t+~@c@C w#x#y#z#A#B#|.C#D#^# ", +" E#k.4#3#e+Y+$@F#y+d+d+G#H#)#I#J#K#2#L#M#N#O#P#Q#h+R#S#E.H.D@T#+#7#K.U#3.s s V#( O W#T !.X#& E Y#Z#) _ I @ : @ `# $w ` ~ = .${ +$#.q+e.> Q B |+t@'#~@c@C D 9+y#@$A##$|.g.$$p.*+ ", +" W+Y+%$4#v+&$*$G+=$-$-$;$>$,$'$)$!$~${$]$^$/$($_$:$<$[$}$|$1$/#P 2$K.=@3$s 5.3@4$;@$ T !.X#& 5$Y#+ ^+) I @ : :#6$~ 7$8$~ f M { p - 9$> ;#B T+R U+0$a$b$c$D d$i#@$e$f$g$S@h$i$j$k$l$ ", +" ^ m$n$o$p$q$r$s$t$u$v$w$x$y$z$A$B$C$D$A$E$F$G$H$I$J$K$L$M$N$O$P$Q$R$S$M.s 5.. T$O U$T !.U V$, ' 2+^+o+I @ : ! W$* Z a ~ = M { @.#.d.W.;#B T+R t@t+X$c@Y$9+W+=.C.e$B#Z$%.g.h$`$3+_ ", +" %.%+%@%#%$%%%&%*%=%-%;%>%,%'%)%!%~%{%]%^%/%(%_%:%<%[%}%D$|%1%2%3%4%5%6%7%8%9%0%a%q.l+!.U & $#, ' b%) _ I @ I c%d%v x e%} = M { / #.9$W.Q B Q+R s+f%g%C h%9+W+=.C.i%j%|.`#k%3+l%m%c$,.k.h@ ", +" n%o%p%#%q%r%s%t%u%v%w%x%y%z%A%B%C%D%E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%U%V%W%X%Y%Z%`% &.&+&@&X#, Y#' P+W H@@ : _ g.#&j a $&| .$M A @.a@9$[.Q %&T+R t@&&,@*&D v#W+=.C.e$j%=&%.<#3+l%`$-&;&>&D.,& ", +" '&)&)%!&~&{&]&^&/&E%(&_&:&<&[&[&}&[&|&|&[&[&1&[&2&3&N%^&:&4&5&6&7&8&9&0&R%a&b&c&d&e&f&g&h&i&j&k&l&m&_ H@@ v 9#n&o&5 ` ! ~ p&{ p - a@q q&}+B T+R t@P@r&C D 9+W+=.C.s&B#t&u&h$3+l%v&w&6+x&y&W+B+ ", +" z&A&B&C&D&E&F&G&H&E%6&I&:&5&J&1&[&K&L&_&_&K&M&N&1&O&4&P&I&Q&R&S&T&]&U&H&V&W&X&Y&Z&`& *.*+*@*#*$*%*&*/+**=*-*8 ;*>*K ,*< f D#{ V.- 9$e.J@B >#|+t@t+~@c@C D u+'*=.C.e$B#S@)*h$3+l%!*w&~*{*-&]*I P ", +" ^*/*(*_*:*<*F&[*T&S&E%}*P&<&(&J&I%_&_&L&|*2&L&1*_&2*1&5&<&P&}*R&S&E&3*4*5*6*7*8*9*0*a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*c#= M { @.- ; e.J@B T+R t@t+g%C C v#s*y#t*e$B#|.S@u*h$v*w*x*y*z*{*A*|#>&S@A+B*C* ", +" ^*D*E*D&6*F*F&T&S&E%Q&G*P&(&1&[&_&2&2&D%H*D%D%2&L&|&[&}&4&P&}*6&/&T&G&4*<*9*I*J*B%B%K*K*K*L*M*N*O*P*Q*R*S*T*U*V*W*X*Y*Z*~ `* =.=@.;.$.> <.}+T+c%t@t+X$+=c$v#s*=.C.e$g$=&%.@=#=$=x*y*6+%=&=A**=|#==-=;=E ", +" >=,='=:*)=!=~=E&C&6&I&P&4&}&[&_&2&D%3&3&{=]=3&^=2&1*I%1&/=(=I&6&E%H&G&F&_=9*V&:=<=B%'=[=}=M*|=1=|=2=3=4=5=(*6=7=8=9=0=a=b=c=d=e=f=g=h=i=j=B T+R t@t+~@k=c$v#s*}#C.e$B#=&l=)*m=$=n=y*6+%=o=A*h.p=q=r=4+C s ' ", +" s=t=D&I*u=v=~=E&/&E%w=x=4&}&[&1*2&H*y=z=A=B=H%3&D%L&C=D=4&<&^&w=/&H&E&[*F*6*V&J*~&E=K*[=O%}=F=2=G=H=I=J=K=L=M=N=5=O=P=Q=9&R=S=T=U=V=W=X=Y=Q+Z=`= -.-w.C D 9+W+=.C.e$j%=&+-<#3+@-x*#-6+x&$-%-|#p=&-*-=---&.M C+;- ", +" >-L%F&I*F*4*~=T&]&/&6&:&:&1&[&,-2&'-)-A=!-A=~-H*{-L&K&J&4&:&^&6&C&H&G&~=D&6*I*]-~&B%K*^-[=/-|=(-G=3=I=J={&N*_-:-<-[-}-|-O*1-(*2-3-4-5-6-7-8-9-0-a-b-c-d-e-f-g-h-i-B#g$Z$+-<#3+l%x*y*6+%=l#j-*=p=k-l-=-m-4+n-q=o- ", +" p-q-r-_=9*F*4*[*T&_*/&}*P&<&5&1&K&s-D%3&B=A=A=H%)-D%_&I%1&4&<&^&6&/&T&G&_=D&I*I*~&t-B%u-A%O%v-|=1=w-H=x-y-K%w%z-A-B-C-5=|-O*D-E-3-F-c*G-H-X&I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-@=X-3+n=Y-6+z*$--&Z-`- ;q=r==-m-4+.;+;@;E i.#; ", +" $;,=%;:*9*<*F&[*&;]&*;6&=;P&1&-;C=s-L&;;)-~-~-]=H*{-_&C=J&5&:&I&>;/&,;G&4*F*6*I*~&t-';A%A%);/-W&2=!;I=~;J=N*{;];^;/;(;_;|-:;D-3-<;F-[;Q=B&};|;1;<;X&2;3;4;5;5;6;7;8;9;0;a;b;c;d;x*y*6+%=e;A*W$f;&-g;h;i;j;k;l;5+m;n;o;C p;q; ", +" $;r;s;0*V&9*_=[*&;H&/&w=P&:&5&N%[&K&L&D%D%3&H*|*|*L&_&N&1&4&:&t;E%]&T&G&F&F*6*I*0*t-B%A%u;v;a*|=2=w-H=x-8&N*w;x;y;z;C-A;X&O*B;3-C;D;E;F;1;G;H;I;J;K;K;L;1;D-/;!;M;N;O;N;P;Q;R;S;T;y*6+%=6$A*U;V;q=r==-m-4+`.W;--X;X;X;--x*K.Y; ", +" Z;`;G&0*F%6*F*[* >T&H&*;^&P&<&4&J&I%s-L&2&D%2&L&K&K&[&}&4&4&I&>;6&_*.>[*F&F*9*I*J*~&B%u-u;}=+>|=2=!;H=~;8&N*M=@>#>$>C-A;X&^%E-1-C;c*E;Q=%>&>H;*>=>->;>>>`;,>'>)>L%c*!>|=~>{>]>^>/>(>_>:>o=Z-*=<>[>r==-m-4+>&}>X;X;X;X;X;|>4. ", +" 1>2>{&7&3>5*F*4*[*.>]&E%>;I&^&<&4>J&[&C=_&L&1*K&K&5>N%5&<&^&>;6&C&H&G&~=_=9*:*F%~&B%';6>u;}=M*|=7>3=I=8>8&{&9>0>a>!>C-v%r-^%b>1-c>d>[;9&1;6=e>*>f>;>Q*g>R*`;h>'>i>j>k>3-J*l>m>n>J*o>p>q>r>W$s>t>q=g;=-m-u>u>>&v>X;X;X;X;w>C+ ", +" x>/*!>6*F%V&9*F*F&T&T&C&6&>;y>4&4&4>-;[&[&N&N&N&N%1&5&4&:&^&>;E%S&E&G&F&<*z>A>J*B>';'=A%C>}=F=W&D>3=~;y%8&E>F>G>H>!>C-_;P%I>J>1-(*K>E;9&P*G;L>I;M>N>Q*!%M%`;h>'>0&O>Z&P>Q>I;|-2=F%R>S>T>U>V>W>X>Y>r==-Z>u>u>5+`>X;X;X;w>6+ , ", +" .,+,@,~&J*I*9*D&F&#,T&]&E%>;>;^&<&4&4&1&1&1&J&J&1&4&<&<&^&w=6&E%H&T&~=v=<*I*F%~&E='=K*A%$,%,v-(-D>H=y%8&{&&,*,=,/;-,;,|->,^%J>1-(*,,E;9&1;',L>I;f>L%),g>R*!,~,'>e*O>/%j>P>k>{,],r;^,I*/,(,_,:,<,[,=-m-4+u>},--X;X;X;X;|,> C* ", +" 1,2,s;t-J*J*I*F*!=F&E&3,C&/&6&>;^&:&P&<&5&4&4&4&4&:&^&>;>;E%/&_*T& >F&F*4,:*7&~&~&'=5,[=$,%,|=2=w-I=x-6,w%w%7,8,9,-,;,X&O*J>1-2-K>c*E;0,',L>a,7=f>->Q*b,R*`;c,'>0&i>/%j>2,A&d,1>!&e,2-f,6*g,h,i,j,k,l,m,`.W;v>X;X;X;X;n,T ", +" 1>Q*A>E=~&0*3>5*F*F&~=.>H&H&E%6&>;^&I&P&:&<&o,P&=;I&>;6&R&]&H&T&[*F&!=<*:*I*0*t-B%6>A%[=}=p,q,(-w-H=x-r,w%s,t,b*<-u,;,P%:;v,1-2-F-c*E;9&&>H;w,*>J;K;>>x,R*y,~,Q>0&z,A,B,2,A&1,r;C,s=D,t$E,F,_&G,H,I,J,K,L,}>X;X;X;X;X;&.[@ ", +" M,N,E-~&'=t-~&0*I*6*F*!=~=E&H&O,C&E%w=>;}*P,^&I&I&6&>;E%/&S&S&H&[*Q,4*F*z>3>0*~&E='=A%R,O%%,|=|=2=3=f,y%w%S,T,U,V,$>5=W,P%X,J>3-(*G-[;E;9&&>Y,I;=>J;N>g>Z,`,`;)>0&i> '.'2,2>+'1>$;C,s=@'#'/*$'H;#>u=P&%'&'*'`>='X;X;X;X;4+A+ ", +"-';'>',''')'-'!'!'~'~'{']'^'/'('_'_':'<'['}'|'1'2'3'3'4'5'6'7'8'9'0'9'0'a'b'b'c'd'e'c'c'c'f'g'h'i'h'j'k'l'l'm'n'n'o'p'q'r's't'u'v'w'x'u'y'z'A'B'C'D'D'E'F'G'H'I'J'I'K'L'L'L'M'N'O'P'Q'R'S'T'U'V'V'V'W'X'Y'Y'Y'Y'Z'`' ).)+)@)#)$)%)&)*)=)-);)>),)')))!)~)~)~){)~)", +";'>'>'>'>';'-'])!'^)/)()()_)(':)<)[)})|)1)1)2)1'3)3)3'4)4'4'6'7'7'5)5)9'a'a'a'a'c'a'c'f'f'h'6)h'k'k'l'l'l'7)n'n'8)n'p'p'r'r't'9)0)a)b)c)y'z'A'D'D'D'd)E'e)f)I'f)I'K'g)g)L'L'h)N'P'i)P'j)k)k)k)U'V'V'W'l)Y'X'm)m)Z'`'`'n)o)p)q)r)s)t)u)v)w)x)y)z)A)))!){){){){)~)", +"'';'>'B)>'>';'-'C)D)E)F)G)H)I)/'<)<)J):'K)K)L)|'1'M)M)3'N)4'O)6'7'7'5)P)P)a'Q)Q)a'R)R)R)R)f'R)6)k'l'l'7)n'n'n'n'n'q'S)S)r't't'9)9)T)U)y'V)W)X)D'Y)Y)F'F'F'I'I'K'I'Z)Z)`)L'M'M'N'N' !.!j)k)k)k)U'U'V'V'l)+!Y'Z'm)Z'n)`'@!#!$!%!&!*!=!-!;!>!,!y)'!)!!!))~){)~){)~)", +"~!{!]!~!]!]!{!^!~!/!]!(!_!:!~{v!v!,{y~'{z!B!<~:!:!A~[~[~F!G!V~){){D~2~2~i~i~_!_!P!P!S!S!T!U!8~X!9~X!E~Z! {a~b~.{c~!{~{{{]{^{/{({{!^!{!{!]!{!~!{!", +"^!{!^!]!]!^!~!]!{!/!^!_{M!z!j~f!f!j~e!e!e!d!c!|!|!|!{w!w!y!y!z!A!:~<~:!D!B~E!}~}~C~H!){D~K!2~M!i~N!_!1{2{R!R!R!T!V!8~X!X!Y!Y!`!0~a~b~b~c~3{4{5{c~@~6{^!{!^!{!{!{!^!]!^!", +"{!{!{!{!^!]!{!^!{!{!]!7{2~q!O~!~O~f!f!f!}!}!l~d!d!c!~c!|!|!|!d!d!d!c!e!e![!e!m~m~O~O~h!o~j!l!l!<{p~9{9{q{q{9{r{s{(~m!t{u{w!v{d{'{w{A!x{C!A~A~B~y{f{}~z{H!g{|~D~K!2~X~N!_!_!1{P!Q!S!S!T!U!8~X!X!Y!Z!`!`!a~a~b~G~H~3{~{A{v!B{C{{!{!{!]!{!]!{!{!]!", +"{!]!{!{!{!{!{!]!{!^!D{E{G!&{j!o~h!h!n~F{O~O~j~e!}!e!}!d!d!c!c!d!c!c!c!d!c!d!}!}!d![![![!e!e!f!O~O~h!o~p{o~G{G{p~H{9{I{J{q{K{L{L{L{u!m!M{d{d{N{O{O{x{P{Q{e{y{y{f{f{z{R{H!g{g{S{1~h{h{i~_!_!5~2{P!T{S!T!T!U{8~X!9~E~Y!`!`!a~b~b~c~H~3{.~V{]E{'{8{k!j!i!~~h!h!!~f!O~f!O~f!j~j~e!e!e!e!e!e!e!e!e!e!P~P~f!O~g!g!h!o~p{p{G{G{<{H{H{Z{I{,]K{K{']']q{L{L{L{t{)] ] ]O{!]x{Q{P{.]y{#]#]~]$]{]%]]]&]S{^]^]/](]_]_]6~2{Q!Q!Q!:]T!U!U!j{X!X!*]Y!Z!0~0~a~b~.{<]H~.~+~Y![]}]]!{!]!{!]!]!~!{!{!^!", +"]!{!]!^!^!^!{!{!^!^!]!|]1]D~q!j!k!j!j!8{8{o~h!h!O~O~O~f!O~O~m~P~P~e!m~m~f!f!f!O~f!O~g!h!o~o~j!G{G{Y{p~Z{2]Z{I{I{,]']']3]4]3]5]L{6]7]7]8]9]0]!]a]b].].]c]#]~]$]d]%]]]&]e]^]^]f]g]_]_]h]h]h]i]i{j]k]U!U!j{X!X!X!E~Y!0~`!a~b~.{c~c~H~.~l]C~m]n]{!^!{!]!^!^!{!]!^!]!", +"]!^!{!{!^!{!^!{!~!{!{!]![~G!q~{~{~j!j!j!8{j!h!h!o]h!!~!~f!O~O~O~O~f!g!O~O~O~g!g!h!o~p{o~G{p]p]l!Y{H{q]9{I{,]r]']s]3]t]t]u]4]v]L{w] ]9]9]0]0]x].].]y]z]~]~]d]{]A]]]]]&]B]f]h{C]D]_]_]E]h]i]i]:]k]U!U!F]j{j{`~`~Y!`!`!F~a~b~.{<]H~~{{{]{q~G]${^!~!{!^!{!{!{!^!^!{!", +"{!^!~!~!{!^!{!{!{!^!^!H][~A~{~q~Q~l!l!k!j!j!~~o~o]p{h!h!!~!~!~h!g!!~!~!~h!h!o~j!p{p]I]G{G{Y{q]H{Z{I{I{I{I{K{']']t]t]u]u]J]7]K]L{L]9]9]0]M]a]N]y]O]#]P]P]d]A]{]]]Q]Q]R]f]f]D]D]S]S]T]U]i]i]j]k]k]V]W]X]Y]9~Z]Z]Z!`!F~F~b~b~.{H~H~.~`]E!^{@~ ^{!~!{!]!{!]!~!{!{!^!", +"{!{!^!]!]!]!{!{!]!]!~!.^+^@^'{p~q~#^l!{~l!j!j!j!8{j!~~h!o]8{h!h!h!h!o]h!h!p{p]p]G{Y{<{$^Y{Z{Z{Z{I{%^,]r]&^*^4]=^-^-^;^>^;^,^'^L{9][{[{a]M].])^!^z]~]P]{]~^A]{^{^]^R]f]^^/^(^S]_^:^<^[^}^j]k]|^|^W]Y]1^2^Z]3^4^4^ {F~F~b~.{<]H~3{{{G~5^/{6{6^]!]!{!^!{!{!~!^!]!]!", +"^!]!]!]!]!~!]!{!~!{!{!~!7^[~t!q~q~q~q~p~{~{~{~l!k!j!j!j!j!j!j!8{~~j!8{I]G{G{p~Y{<{H{Z{Z{Z{8^I{,],],]9^']=^=^u]u];^;^0^7]>^a^b^L{[{M]s{b]c^c^d^!^P]P]~^A]{^{^{^R]R]/^^^e^(^S]:^:^[^[^f^g^|^|^h^i^Y]j^2^k^k^4^4^ {l^b~b~b~G~c~H~3{=]_!m^n^{!{!]!^!{!{!{!^!^!{!~!]!", +"{!^!^!]!]!^!{!~!{!{!]!{!o^D!u~&{t~q~q~q~Q~{~p~l!l!l!l!l!l!G{j!G{l!G{G{G{G{p~p~H{Z{Z{8^I{I{r]p^']p^*^=^4]u]q^q^>^;^)]L]L]>^r^s^L{s{c^t^u^z]v^d^w^w^~^x^x^{^y^]^z^/^^^e^(^:^A^<^[^[^B^g^g^C^D^X]1^j^j^k^k^4^E^F^l^G^G^H^c~c~c~3{5{A{T~B{I^{!]!]!{!]!{!]!{!]!]!{!{!", +"]!{!{!{!{!{!{!]!{!{!]!J^K^:!:!q{&{t~|{t~q~q~q~p~q~q~{~{~{~<{l!<{<{<{H{<{Z{H{9{8^I{I{r],],]p^L^*^*^4]u]u]6]q^;^0^7]L]L]M^M^N^c^L{t^u^!^z]O^w^L{w^P^x^{^Q^y^R^z^S^T^U^A^A^_^V^[^[^B^B^W^h^D^X^1^j^Y^Z^k^k^E^`^G^ /G^ /<]././3{+/@/#//,/'/>/L{u^)/O^O^!/w^L{x^~/~/Q^z^z^{/T^]/]/^///V^(/_/:/B^g^W^h^^a/b/b/-/;/c/[{>/>/M^d/e/>/L{)/f/!/!/g/L{L{L{~/h/R^{/S^{/]/^/////i/j/_/_/k/W^W^/>/z/z/>/A/b^s~L{,/!/B/P^L{L{L{L{L{h/C/{/D/E/]///i/j/j/j/k/:/F/F/F/[/l/}/G/m/m/n/n/n/q/q/r/r/1/H/H/3/I/J/5/K/6/L/M/N/O/^!P/^!]!{!{!{!{!]!{!^!^!~!", +"]!~!~!]!{!{!^!~!{!{!{!~!]!Q/A!R/r!v~v~S/q!q!q!q!q!q!q{q{(~K{']K{K{3]']*^t]=^=^*^*/u]q^;^;^=/T/b/L]L]x/c/>/>/>/U/V/W/X/z/Y/s^)/L{B/Z/P^Z/~/a{L{C/C/D/D/D/^/^///i/j/j/`/:/:/ (F/.(l/l/+(G/@(m/n/#($($(r/q/%(H/&(H/3/*(*(*(5/=(-(Z{;(>(,(P/'(P/^!]!{!{!^!{!{!{!{!{!", +"^!{!{!{!{!]!{!{!^!{!{!{!)(!(y~T~t!r!r!v~r!r!v~u~(~(~(~~(3]']3]t]t]t]4]4]m!u]q^q^q^a/=/0^0^T/b/b/x/c/c/>/W/U/U/X/u^{({(](^(!/](L{/(Z/((a{a{_(L{C/D/D/:(^///i/<([(`/`/}( (|(1(2(.(3(G/+(4(5(5(6(n/6(q/7(%(8(&(8(I/I/K/K/K/9(9(L/0(a(b(c(d(e(f(P/^!^!{!{!]!~!]!^!^!", +"^!~!]!{!{!]!]!{!{!{!]!g({!h('{y~T~t!t!;{r!r!r!i(;{~(3]~(m!j(m!4]6]6]6];^6];^0^;^=/L]L]b/L]L]c/y/k(>/U/U/t^X/X/{(l(,/)/m(Y/,/n(L{((Z/o(o(C/C/L{D/p(:(q(i/i/[(r(r( (s(1(F/1(t(3(3(4(u(4(#(v(#(w(x(7(7(7(y(y(z(I/A(B(K/C(=(C(D(J/E(F(G(H(I(J(e(d(P/^!^!{!~!{!^!]!{!", +"{!]!]!^!^!{!~!]!{!]!{!{!u/{!K(y~T~t!t!t!t!t!;{m!u!m!m!m!6]6]6]6];^)];^;^7]7]b/0^L]L]x/x/x/y/>/U/U/W/X/L(X/)/)/f/,/,/)/M(N(!/((L{O(o(o(P(P(P(L{:(Q(q(q([(R([(r(r(|(|(1(t(S(T(3(4(4(U(#(V(V(w(w(W(W(X(y(Y(Y(I/A(A(Z(B(`(C(D( _j]._+_G(@_#_I(J(e(P/P/^!~!]!{!{!{!{!", +"{!{!{!{!]!{!{!]!{!{!]!]!{!{!$_w!v!T~v!u{u{u!M{u!t{t{M{M{6])])])]7]7]7]7]7]L]x/L]x/M^y/>/>/>/U/t^U/L({({(%_%_&_*_B/B/%_Y/=_/(o(L{_(C/P(-_-_p(L{;_>_R([(,_r(s('_'_|()_S(!_3(T(U(u(#(#(V(w(x(~_W(W({_]_]_^_Y(Z(Z(B(B(C(/_/_(_I/7]__:_<_G(#_#_#_I(e(P/f(^!^!]!{!]!{!", +"{!^!{!{!{!{!^!~!]!{!{!]!{!^![_u{T~w!w!w!w!M{)]w!)]d{)]d{)] ])]7]7]L]L]8]c/[{[{}_>/>/>/U/U/L(X/l(X/{()/&_,/](B/|_1_n(n(2_3_o(4_L{P(-_-_p(;_q(L{>_5_r(,_r(s('_)_)_6_7_7_T(T(8_U(9_V(V(0_0_a_b_b_c_]_]_d_^_d_e_Z(f_f_/_g_g_h_i_j_k_l_m_n_<_G(G(o_H(d(e(P/^!{!{!]!{!", +"^!{!{!~!{!]!{!^!]!]!~!~!]!{!p_u!T~'{y~d{w!q_q_'{d{ ] ]r_8]9]r_8]8]x/[{[{>/>/>/>/z/t^X/X/{({({(s_%_s_&_*_B/n(n(t_((((u_v_w_3_3_L{-_x_y_;_z_>_L{A_,_'_B_s(C_)_6_D_E_F_F_F_G_H_V(I_V(0_0_a_J_b_]_]_K_^_^_e_Z(L_M_f_M_g_N_O_O_P_Q_R_S_n_T_U_V_G(#_H(H(d(P/P/P/^!{!]!", +"~!{!{!{!^!{!{!{!{!{!{!{!{!{!W_X_u!w!y!w{w{ ]w{w{ ]w{9]Y_[{Y_Y_M]>/M]M]>/s{z/t^t^X/{(X/{()/s_%_&_*_B/n(n(1_((((Z_Z_`_ :.:o(+:-_L{z_;_z_z_>_@:L{,_s(#:C_$:6_6_%:F_E_%:9_9_&:V(0_0_*:=:J_-:-:K_K_;:;:;:e_>:,:>:>:':):g_!:~:z({:]:^:/:(:(:n_T_<_G(#_J(_:::'(P/t/]!~!", +"{!]!]!]!{!{!{!^!^!]!^!{!{!]!^!<:t!x!x{w{w{x{x{Y_Y_Y_0]0]0]0]0]z/M]z/z/z/X/u^s~s~)/)/](%_%_*_B/n([:1_t_((((Z_Z_}:|:a{1:2:P(;_;_L{z_>_3:A_4:B_L{C_#:C_5:6_6:6:7:8:G_9:9:H_&:0_0:a:J_b:c:-:d:K_e:f:g:,:L_>:>:):h:):i:):j:F/k:l:m:n:n:o:p:m_m_U_U_G(#_o_J(d(P/P/P/{!", +"]!^!^!{!{!]!{!{!]!]!{!{!]!{!^!q:;{u!x{r:Q{P{P{P{Q{b]M]a]b]z/c^c^c^c^u^u^u^)/)/%_%_B/B/B/n(n(n(n(1_((((Z_Z_|:3_s:s:}:t:u:x_v:z_L{A_@:4:4:B_#:L{w:5:5:6:6:6:x:x:8:9:&:&:&:y:=:a:b:z:c:A:d:e:B:C:C:D:E:L_F:F:):):G:H:G:I:J:l:K:L:M:N:O:o:o:P:m_<_U_U_#_Q:Q:I('(f(R:", +"^!~!]!{!{!]!^!]!{!~!]!{!^!~!^!P/S:m!T:e{e{Q{.].]c^b]b]c^U:c^c^u^u^u^)/)/)/!/](!/*_B/B/n(V:1_((Z_Z_|:|:}:+:3_+:x_y_z_W:z_3:3:A_L{4:B_X:X:w:5:L{6:6:Y:x:x:x:Z:G_9:`:`:`: <,<'[9<0<0<,<,['<^:^:o:(:P:n_U_G(#_#_I(", +"]!^!]!^!]!{!~!{!^!^!{!^!'(f(e(o_#_#_'[)[']!^~^~^d]~^~[e[0<0[9<9},},}Q[Q['})}R[R[!}~}{}]}^}/}(}_}_}:}>_<}[}}}|}1}2}`[3}4}4}c[d[>[9<9<0_@:@:A_4:4:X:#:]<^<^}f},}f}E}F}F}!}!}!}G}G}G}^}H}h}I}I}i}J}i}K}L}M}N}N}O}P}o}2}1}y[`[3}c[-[F_@:A_A_4:B_B_X:#:^<^},}$|f}%|&|&|!}*|*|=|-|;|;|H}H}H}H}>|,|,|'|I}t<)|!|~|{|{|]|^|O}O}1}1}y[/|z[c[d[d[A[9<0[9<9<01,1'1P(!_)_C_C_5:6_6:6:Y:6:S<<[>[9<0[-[F[-10<,<,2f1,2h1,2'2J1J1K1K1)2!2!2!2~2O1O1{2]2B}^2/2/2(2_2:2W1X1<221%1[2Z1Z1w1B|h|h|D|}2|2121}1}`[223}4}F<,[h[", +"^!^!^!^!d(I(I(#_G(U_m_(:p:O:'2,2,2c2d2J1J1)2K1)2e2e2!2!2f2g2g2h2i2g2j2k2l2m2n2o2p2q2:2:2X1Y1Y1t141r2Z1A|B|h|{|x1O}O}o}1}1}z[51c[d[d[>[0<02>2C2d2J1'2D2J1)2)2E2f2)2f2f2F2G2G2G2H2I2J2K2L2M2N2O2P2Q2R2R2p2:2S2W1Y131[241u1&1A|h|T2{|D|]|o}o}1}y[U24}4}d[>[B[0<02B2>2,2C2,2d2D2D2@3#3#3#3E2F2F2F2F2F2$3%3G2&3S|*3=3-3;3>3,3'3)3!3P2R2o2p2p2X1W1~33131%1A|A|w1T2{|N}]||212o}1}z[514}d[e[e[0<0[e[4}]3z[1}1}o}O}^|{|{|h|*1A|^3/3(3Y2_3:3<3[3=}p[}3-}-}@|Q|6|5|5|A2~1|313b2d123=2=2I1>2>2>2C2C2d2c233D2D24343#353E2F2F2F263%3%3%37373839303a303a3b3c3d3d3'3'3e3f3!3g3p2:2W1W1<231%1v1&1A|w1h|T2]|^|=1O}2}y[`[c[d[F<>[-10[e[d[c[z[y[2}q}|2^|}2{|h|B|B|Z1%1%1h3i3j3k3l3m3_[}3f}%|%|5|$|R|G1R|R|n3o3:1=2-2;2-2;2>2,2,2c2333333D243#343p3#3q3r3q36363s363t3u3v3w3D2x3y3z3A3B3C3D3E3F3,3d3G3H3P2g3o2I3q2:2J3Y1Y1[2%1Z1v1w1B|T2C|D|=1=1o}1}`[3}z[F[i|4}z[`[1}1}o}P}D|x1h|T2B|&1Z1%12121<2X1K3L3l3M3N3O3P3Q3p|R|_1S|T|R3S3:1-2;2T3>2>2>2c2c2@333U343434343V3q3q363W363W3s3t3X3Y3Z3`3 4.4+4@4#4$4%4&4*4=4-4;4c3,3>4'3H3H3P2o2p2:2,4W1Y1~3%1Z1v1&1B|'4T2{|^|O}o}o}`[`[3}d[F2B2>2d2d2d23333434343p353q3536363W3W3Y3Y3<4[4}4C2|414243444#454647484%49494*4E3E3E3F3>4G3O204f3a4q2p2:2W1~331[241&1B|B|h|C|C|P}O}o}2}/|z[]3i|;[-10<", +"t/P/e(H(#_V2U_m_m_p:^:^:'[F<4}3}z[`[1}o}O}^|^|h|h|A|Z1Z1[2[2~3X1W1p2p2o2b4H3c4d4e4f4{4g4h4i4j4H1J1)2D2d2d2@343q3U3U3V3V3r3k4l4l4m4n4W3o4p4q4r4s4t4u4v4w4w4v4x4y4z4A4B4B4C4D4%4E4F494E3E3c3F3'3G3O2e3!3g3I3:2:2Y1Y1[2[2%1G4B|B|T2x1]|O}o}o}1}y[z[F[", +"^!::I(J(#_V2<_m_(:O:n:M:,[d[c[z[`[`[o}o}|2C|C|T2B|&1v1Z1%1Y1H4W1:2p2p2g3P204O2'3F3I4J4K4x3L4M4N4O493P4Q443R4S4T433W3U4U4V4m4W4X4Y4U3Z4`4 5.5+5@5#5$5%5&5&5*5=5-5;5>5,5'5B4B4)5849494-4!5F3c3d3'3'3H3f3o2p2p2:2X1X121t1%1Z1A|A|h|h|]|=1P}121}y[3}4}F5'5,5B4D4n5o584F4-4-4c3F3,3'3H3O2f3o2p2:2X1X1<231[2Z1G4w1B|h|C||2|2o}2}1}`[z[c[d[A[", +"f(c<_:Q:G(U_n_n_p5O:g[,[0<0[", +"::d(J(o_U_U_n_T5o:^:h[a[i|c[z[`[1}o}=1^|C|T2B|&1Z1%1%131~3H4W1p2o2b4f3O2O2d3c3c3E3-49494E4)5)5B4,5;5U5-5V5W5X5h5h5Y5Z5`5 6.6+6@6#6$6%6&6$6*6=6*6-6*6N5;6N5;6h5h5>6,6l5=5'6)6,5B4B4D4)5E4!5-4s5c3R5'3'3H3P2f3p2:2W1X1Y1t1t1u1Z1&1B|h|]|^|O}`11}y[U2c[4}A[", +"d(H(J(C[G(n_(:P:o:M:h[><0<95=5=5j5,6Q5!6O5;6N5N5*6*6~6$6{6{6]6^6^6=6{6^6$6{6$6{6*6*6N5N5N5/6!6l5j5-5=5>5,5B4)5)584(6(6-4E3F3,3'3G3e3!3o2I3,4W1Y1t1s1[2Z1&1B|h|C|{|P}O}o}1}`[51F6P5!6l5-5)6'5,5B4}6)5%4F4-4E3F3F3d3'304P2f3p2:2,4X1S531[2u1Z1&1h|h|{|]|O}12`[/|z[c[d[", +"_:J(#_G(U_n_p:O:O:h[,<0<9<-1e[i|z[51`[1}o}|2]|{|h|T2&1v1%1[231r5W1:2p2R2P2P2O2>4,3c3E3-4F4(6D4D4B4'5)6-5=5l5l5P5h5;6;6N5*6=6]6^6:6|616<6|626263626364616^6<6|6^6$6{6*6N5N556O5/6P5l5=5;5'5'5B4)5%4%4-4!5E3c3,3'3'3O2g3o2p2:2W1<2t1[2[2Z1B|B|h|}2]|}2o}`1y[z[z[4}", +"I(H(G(@_<_m_p:O:^:h[H6/6;6N5*6*6=676^6:6|6<63636868686962686062636|6<6<6]6]6:6{6*6N5O5a6Q5l5j5=5=5>5B4B4D484E4!5-4E3d3>4'3H3f3g3o2p2:2W13131[2u1A|w1h|{|C|O}P}1}y[`[c[c[", +"H(#_o_G(n_T5(:o:'[d[c[z[y[2}o}P}D|C|{|B|B|A|Z1[231Y1W1:2p2o2f3H3H3'3d3F3E3*4(6E4)5b6B4'5;5m5j5l5h5h5N5*6*6{6c6]676[6362636869686d6d6e68686d69626f626[6[6^6]6{6{6*6*6O5O5Q5g6j5=5>5'5b6)5D4E494-4E3E3c3'3O2H3f3o2p2:2X1S531[2%1A|B|B|T2]|^|O}o}1}y[z[c[", +"c<#_#_G(<_(:p:o:N:H4F3c3E3-484E4b6B4'5'5U5-5l5Q5O556*6*6~6:676<6[636962696d6d6d6h6i6h6j6i6h6j6d696k68626<676^676$6*6N5O5O5P5l5=5-5;5,5B4D4)5o594!5E3c3>4G3O2f3g3o2p2:2Y121t1%1v1B|B|h|C|D|=1o}2}y[z[c[", +"d(#_G(U_b6j5-5>5'5'5B4E4o594-4E3c3d3o6H3H3g3I3:2W1Y1Y131%1Z1&1A|h|{|]|O}P}1}2}y[c[", +"_:o_G(U_m_(:O:n:'5=5-5l5a6h5N5*6$6$6:6<6[62696j6d6i6h6m6q6r6r6m6m6m6r6r6m6m6i6s6d686963626<676c6$6N5N5h5>6j5=5=5;5'5B4)5o5F4-4E3F3F3d3'3H3f3o2p2:2W1W131%1v1v1B|B|h|D|^|O}1}y[z[32", +"J(Q:G(U_b<(:O:^:M:H<0<95;5B4)5o5%4!5E3E3,3d3G3O2!3a4p2:2H4Y131%1y6&1B|h|h|x1}2P}o}y[`[z["}; diff --git a/src/Mod/Ship/Icons/Ico.png b/src/Mod/Ship/Icons/Ico.png new file mode 100644 index 0000000000000000000000000000000000000000..5e9792b6f667295499e0c47f5614fadcffd90d9e GIT binary patch literal 8552 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 Hn1}rznO$G( literal 0 HcmV?d00001 diff --git a/src/Mod/Ship/Icons/Ico.xcf b/src/Mod/Ship/Icons/Ico.xcf new file mode 100644 index 0000000000000000000000000000000000000000..b8e869347518a45d49a74a4adeb72dfef5e59044 GIT binary patch literal 22326 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 literal 0 HcmV?d00001 diff --git a/src/Mod/Ship/Icons/Ico.xpm b/src/Mod/Ship/Icons/Ico.xpm new file mode 100644 index 0000000000..a4a1ce53f7 --- /dev/null +++ b/src/Mod/Ship/Icons/Ico.xpm @@ -0,0 +1,1281 @@ +/* XPM */ +static char * Ico_xpm[] = { +"128 128 1150 2", +" c None", +". c #000000", +"+ c #050505", +"@ c #060606", +"# c #585858", +"$ c #646464", +"% c #818181", +"& c #454545", +"* c #0C0C0C", +"= c #222222", +"- c #848484", +"; c #4C4C4C", +"> c #D3D3D3", +", c #D1D1D0", +"' c #CCCBCB", +") c #9E9E9E", +"! c #636363", +"~ c #2C2C2C", +"{ c #020202", +"] c #161616", +"^ c #1F1F1F", +"/ c #B2B3B3", +"( c #CCCDCD", +"_ c #CACACA", +": c #C8C8C7", +"< c #C6C6C5", +"[ c #C3C3C3", +"} c #B3B3B3", +"| c #7F8080", +"1 c #494949", +"2 c #151515", +"3 c #464646", +"4 c #6A6A6A", +"5 c #999899", +"6 c #969696", +"7 c #9A9A9A", +"8 c #959595", +"9 c #8F8F90", +"0 c #797879", +"a c #5F5E5F", +"b c #414141", +"c c #181818", +"d c #1E1E1E", +"e c #101010", +"f c #040404", +"g c #7D7C7C", +"h c #C6C6C6", +"i c #C3C3C4", +"j c #C1C1C2", +"k c #BFBFBF", +"l c #BDBDBD", +"m c #BABBBA", +"n c #B8B8B8", +"o c #B6B6B6", +"p c #979796", +"q c #323232", +"r c #353535", +"s c #828282", +"t c #BEBDBD", +"u c #D1D2D1", +"v c #D1D1D1", +"w c #D1D0D1", +"x c #D0D0D0", +"y c #CFCFD0", +"z c #D0D0CF", +"A c #CFCFCF", +"B c #CECECE", +"C c #CECECD", +"D c #CDCDCD", +"E c #BEBEBE", +"F c #8B8B8B", +"G c #535353", +"H c #B9B9B9", +"I c #282828", +"J c #7F7F7F", +"K c #C0C0BF", +"L c #BBBBBB", +"M c #B9B8B9", +"N c #B4B4B4", +"O c #B2B2B2", +"P c #AFAFAF", +"Q c #ADADAD", +"R c #ABABAB", +"S c #A2A2A2", +"T c #7B7B7B", +"U c #4B4B4B", +"V c #1D1D1D", +"W c #444444", +"X c #AEAEAE", +"Y c #D0CFD0", +"Z c #CECFCE", +"` c #CECDCD", +" . c #CCCCCD", +".. c #CCCCCC", +"+. c #CCCCCB", +"@. c #CBCCCB", +"#. c #CBCBCB", +"$. c #CACBCB", +"%. c #CBCACA", +"&. c #A6A5A6", +"*. c #5B5B5B", +"=. c #090909", +"-. c #0F0F0F", +";. c #B0B0B0", +">. c #C5C5C5", +",. c #595959", +"'. c #B7B7B7", +"). c #B4B5B5", +"!. c #6767D0", +"~. c #7171C9", +"{. c #9898B3", +"]. c #A9A9A9", +"^. c #A6A7A7", +"/. c #A4A4A5", +"(. c #A2A2A1", +"_. c #9FA0A0", +":. c #9D9D9D", +"<. c #8C8C8C", +"[. c #606060", +"}. c #080808", +"|. c #989999", +"1. c #CDCDCE", +"2. c #CDCCCC", +"3. c #CCCBCC", +"4. c #CBCBCA", +"5. c #CACBCA", +"6. c #C9CAC9", +"7. c #CAC9C9", +"8. c #C9C8C9", +"9. c #C9C8C8", +"0. c #C8C9C8", +"a. c #C8C8C8", +"b. c #C7C7C7", +"c. c #727272", +"d. c #3A3A3B", +"e. c #C1C0C1", +"f. c #595859", +"g. c #B5B5B5", +"h. c #B3B3B2", +"i. c #B1B1B0", +"j. c #ACACAE", +"k. c #0B0BF9", +"l. c #0000FF", +"m. c #1313F4", +"n. c #3838DF", +"o. c #5B5BC8", +"p. c #7F7FB1", +"q. c #99999C", +"r. c #9A999A", +"s. c #979797", +"t. c #949595", +"u. c #929292", +"v. c #212121", +"w. c #BCBCBD", +"x. c #CBCCCC", +"y. c #CACAC9", +"z. c #C9CACA", +"A. c #C9C9C9", +"B. c #C8C9C9", +"C. c #C7C8C8", +"D. c #C8C7C7", +"E. c #C6C6C7", +"F. c #C7C7C6", +"G. c #C4C5C5", +"H. c #333333", +"I. c #888787", +"J. c #797979", +"K. c #1A1A1A", +"L. c #BABABA", +"M. c #898989", +"N. c #AFAEAE", +"O. c #ACACAC", +"P. c #A4A4AC", +"Q. c #5656D1", +"R. c #3030E4", +"S. c #0A0AF9", +"T. c #0707F9", +"U. c #2727E3", +"V. c #4747C9", +"W. c #6667AF", +"X. c #8E8E8E", +"Y. c #171717", +"Z. c #949494", +"`. c #C9C9CA", +" + c #C7C6C7", +".+ c #C5C4C4", +"++ c #C5C5C4", +"@+ c #C4C5C4", +"#+ c #C4C4C4", +"$+ c #C3C4C3", +"%+ c #C4C3C3", +"&+ c #C3C3C2", +"*+ c #C2C3C3", +"=+ c #141414", +"-+ c #A5A6A5", +";+ c #C1C1C1", +">+ c #808081", +",+ c #422626", +"'+ c #955454", +")+ c #542E2E", +"!+ c #2D2D2D", +"~+ c #B8B9B9", +"{+ c #878787", +"]+ c #A8A8A8", +"^+ c #A5A6A6", +"/+ c #A4A3A4", +"(+ c #A1A1A1", +"_+ c #9E9E9F", +":+ c #8181AD", +"<+ c #5C5CC2", +"[+ c #3838D8", +"}+ c #1616EF", +"|+ c #0E0EF2", +"1+ c #807F7F", +"2+ c #070707", +"3+ c #C6C5C5", +"4+ c #C4C4C3", +"5+ c #C2C2C2", +"6+ c #C1C2C1", +"7+ c #C1C2C2", +"8+ c #C2C1C1", +"9+ c #C0C1C0", +"0+ c #090808", +"a+ c #BFBEBE", +"b+ c #BEBEBD", +"c+ c #646565", +"d+ c #301A1A", +"e+ c #AA5B5B", +"f+ c #A45555", +"g+ c #0D0707", +"h+ c #767675", +"i+ c #B5B4B4", +"j+ c #AFB0B0", +"k+ c #434343", +"l+ c #595958", +"m+ c #A4A4A4", +"n+ c #9E9D9D", +"o+ c #9B9B9B", +"p+ c #989998", +"q+ c #929192", +"r+ c #828299", +"s+ c #6060B1", +"t+ c #3E3ECA", +"u+ c #4142C5", +"v+ c #5A5A5A", +"w+ c #C3C4C4", +"x+ c #C3C2C3", +"y+ c #C0C0C1", +"z+ c #C1C0C0", +"A+ c #C0C0C0", +"B+ c #BEBFBE", +"C+ c #BFBEBF", +"D+ c #818282", +"E+ c #303030", +"F+ c #BCBDBD", +"G+ c #BDBCBC", +"H+ c #BCBCBC", +"I+ c #BCBBBC", +"J+ c #292929", +"K+ c #522A2A", +"L+ c #A65252", +"M+ c #723737", +"N+ c #131313", +"O+ c #B2B3B2", +"P+ c #ABACAC", +"Q+ c #6B6B6C", +"R+ c #343535", +"S+ c #A0A0A0", +"T+ c #999999", +"U+ c #929293", +"V+ c #908F90", +"W+ c #8D8D8D", +"X+ c #868787", +"Y+ c #858584", +"Z+ c #383838", +"`+ c #616162", +" @ c #C3C2C2", +".@ c #C2C1C2", +"+@ c #C0C1C1", +"@@ c #C0BFBF", +"#@ c #BEBFBF", +"$@ c #BFBFBE", +"%@ c #BEBDBE", +"&@ c #BDBCBD", +"*@ c #BCBCBB", +"=@ c #BBBCBC", +"-@ c #4F4F4F", +";@ c #5D5D5C", +">@ c #BBBABB", +",@ c #B9B9BA", +"'@ c #B9B9B8", +")@ c #969797", +"!@ c #632F2F", +"~@ c #A24A49", +"{@ c #492020", +"]@ c #515151", +"^@ c #AAAAAA", +"/@ c #A8A7A8", +"(@ c #878686", +"_@ c #9C9C9C", +":@ c #9A9A99", +"<@ c #929392", +"[@ c #909090", +"}@ c #8B8C8C", +"|@ c #858585", +"1@ c #919090", +"2@ c #C1C1C0", +"3@ c #C0BFC0", +"4@ c #BBBCBB", +"5@ c #BBBBBA", +"6@ c #BAB9BA", +"7@ c #B7B8B8", +"8@ c #B8B7B7", +"9@ c #B7B6B6", +"0@ c #B6B7B6", +"a@ c #373737", +"b@ c #733131", +"c@ c #9D4141", +"d@ c #2C1111", +"e@ c #737372", +"f@ c #A8A9A8", +"g@ c #A6A6A6", +"h@ c #A3A3A3", +"i@ c #030303", +"j@ c #989898", +"k@ c #969695", +"l@ c #939393", +"m@ c #919091", +"n@ c #8E8F8E", +"o@ c #89898A", +"p@ c #878788", +"q@ c #838383", +"r@ c #808180", +"s@ c #808080", +"t@ c #777777", +"u@ c #010101", +"v@ c #BDBEBE", +"w@ c #BDBEBD", +"x@ c #BCBBBB", +"y@ c #BBBBBC", +"z@ c #BAB9B9", +"A@ c #B9BABA", +"B@ c #B9B8B8", +"C@ c #B7B7B8", +"D@ c #0A0A0A", +"E@ c #B6B6B5", +"F@ c #B6B5B5", +"G@ c #B5B5B4", +"H@ c #B4B5B4", +"I@ c #B3B4B4", +"J@ c #8D8D8E", +"K@ c #813132", +"L@ c #983839", +"M@ c #1A0909", +"N@ c #A7A7A7", +"O@ c #9F9FA0", +"P@ c #0B0B0B", +"Q@ c #949394", +"R@ c #8F8F8F", +"S@ c #8D8D8C", +"T@ c #8A8A8A", +"U@ c #888988", +"V@ c #868586", +"W@ c #848383", +"X@ c #818281", +"Y@ c #7C7C7C", +"Z@ c #BCBDBC", +"`@ c #BABAB9", +" # c #B6B7B7", +".# c #B7B7B6", +"+# c #B5B6B5", +"@# c #6A696A", +"## c #3C3C3C", +"$# c #B4B4B3", +"%# c #B3B4B3", +"&# c #B4B3B3", +"*# c #B3B2B3", +"=# c #B2B2B3", +"-# c #B3B2B2", +";# c #B1B2B1", +"># c #B1B1B1", +",# c #202020", +"'# c #903131", +")# c #94302F", +"!# c #0C0303", +"~# c #A09FA0", +"{# c #9E9D9E", +"]# c #908F8F", +"^# c #8E8D8E", +"/# c #898988", +"(# c #848485", +"_# c #707070", +":# c #3D3D3D", +"<# c #BABABB", +"[# c #B4B4B5", +"}# c #2E2E2E", +"|# c #6F6F6F", +"1# c #B1B1B2", +"2# c #B0B1B0", +"3# c #B1B0B1", +"4# c #B0AFB0", +"5# c #B0AFAF", +"6# c #5F605F", +"7# c #0A0303", +"8# c #912A2B", +"9# c #8F2827", +"0# c #020000", +"a# c #9C9C9D", +"b# c #9B9C9C", +"c# c #979798", +"d# c #959594", +"e# c #1F1E1F", +"f# c #6D6D6D", +"g# c #848584", +"h# c #828382", +"i# c #7E7E7E", +"j# c #262626", +"k# c #2F2F2F", +"l# c #505050", +"m# c #8F8E8F", +"n# c #B8B8B7", +"o# c #B6B6B7", +"p# c #B5B4B5", +"q# c #B3B3B4", +"r# c #B2B2B1", +"s# c #B1B2B2", +"t# c #B0B1B1", +"u# c #AEAFAE", +"v# c #ADAEAD", +"w# c #ADADAE", +"x# c #ACACAD", +"y# c #1A0606", +"z# c #8D2121", +"A# c #871D1D", +"B# c #9D9C9C", +"C# c #919191", +"D# c #252525", +"E# c #656565", +"F# c #808181", +"G# c #737373", +"H# c #424242", +"I# c #404040", +"J# c #B5B6B6", +"K# c #B6B5B6", +"L# c #B0B0AF", +"M# c #AFAFB0", +"N# c #ACADAD", +"O# c #ADACAC", +"P# c #ACABAB", +"Q# c #AAABAB", +"R# c #290808", +"S# c #881918", +"T# c #7E1414", +"U# c #939494", +"V# c #929291", +"W# c #8C8D8C", +"X# c #5D5E5D", +"Y# c #838483", +"Z# c #5F5F5F", +"`# c #2B2B2B", +" $ c #626162", +".$ c #A7A6A6", +"+$ c #B2B1B2", +"@$ c #B1B0B0", +"#$ c #AFAFAE", +"$$ c #AEAFAF", +"%$ c #ADACAD", +"&$ c #ABAAAB", +"*$ c #AAAAAB", +"=$ c #ABAAAA", +"-$ c #A9A8A9", +";$ c #A8A8A9", +">$ c #A7A8A7", +",$ c #360708", +"'$ c #851313", +")$ c #771111", +"!$ c #090101", +"~$ c #919292", +"{$ c #90908F", +"]$ c #898888", +"^$ c #474747", +"/$ c #393939", +"($ c #AFAEAF", +"_$ c #AEAEAF", +":$ c #AEADAE", +"<$ c #ACADAC", +"[$ c #A3A2A3", +"}$ c #A8A7A7", +"|$ c #A7A6A7", +"1$ c #9D9E9E", +"2$ c #450909", +"3$ c #711010", +"4$ c #1C0404", +"5$ c #2A2A2A", +"6$ c #656665", +"7$ c #9F9F9F", +"8$ c #B2B1B1", +"9$ c #ADADAC", +"0$ c #ACACAB", +"a$ c #A6A6A5", +"b$ c #A5A5A6", +"c$ c #A5A5A5", +"d$ c #A5A4A4", +"e$ c #4E4F4E", +"f$ c #4C4D4D", +"g$ c #313131", +"h$ c #AFB0AF", +"i$ c #ADAEAE", +"j$ c #AAAAA9", +"k$ c #AAA9A9", +"l$ c #A9A9A8", +"m$ c #A9A8A8", +"n$ c #A8A8A7", +"o$ c #A7A7A6", +"p$ c #A6A5A5", +"q$ c #0E0E0E", +"r$ c #7D7D7D", +"s$ c #A2A1A1", +"t$ c #6E6D6D", +"u$ c #787878", +"v$ c #AEAEAD", +"w$ c #ABABAC", +"x$ c #A8A9A9", +"y$ c #A7A8A8", +"z$ c #A5A5A4", +"A$ c #A3A3A4", +"B$ c #6E6D6E", +"C$ c #A1A2A1", +"D$ c #A1A0A1", +"E$ c #444545", +"F$ c #706F70", +"G$ c #ACABAC", +"H$ c #ABABAA", +"I$ c #A9AAA9", +"J$ c #A6A6A7", +"K$ c #A1A1A2", +"L$ c #A1A1A0", +"M$ c #1B1B1B", +"N$ c #3A3A3A", +"O$ c #4A4A4A", +"P$ c #A4A3A3", +"Q$ c #A3A2A2", +"R$ c #A0A1A0", +"S$ c #A9AAAA", +"T$ c #A3A3A2", +"U$ c #A0A1A1", +"V$ c #A0A0A1", +"W$ c #A9A9AA", +"X$ c #A3A4A3", +"Y$ c #A2A3A2", +"Z$ c #6E6E6E", +"`$ c #5C5C5C", +" % c #525252", +".% c #484848", +"+% c #6C6C6C", +"@% c #5D5D5D", +"#% c #A6A7A6", +"$% c #A5A4A5", +"%% c #3E2D2D", +"&% c #543D3D", +"*% c #634646", +"=% c #6F4D4D", +"-% c #775252", +";% c #77504F", +">% c #724B4B", +",% c #684443", +"'% c #543535", +")% c #3C2525", +"!% c #616161", +"~% c #A1A0A0", +"{% c #555555", +"]% c #191919", +"^% c #4B3A3A", +"/% c #725657", +"(% c #997373", +"_% c #BC8A89", +":% c #D19797", +"<% c #CF9393", +"[% c #CD8F8F", +"}% c #CB8B8B", +"|% c #CA8888", +"1% c #C88383", +"2% c #C68080", +"3% c #C57C7C", +"4% c #C37878", +"5% c #C27474", +"6% c #BF7170", +"7% c #BE6D6D", +"8% c #BC6969", +"9% c #AC5D5D", +"0% c #763E3E", +"a% c #351B1B", +"b% c #7A7A7A", +"c% c #767676", +"d% c #A2A3A3", +"e% c #A1A2A2", +"f% c #626262", +"g% c #5B4747", +"h% c #927171", +"i% c #C39494", +"j% c #D49F9E", +"k% c #D29B9A", +"l% c #D19696", +"m% c #CE9393", +"n% c #CE8F8E", +"o% c #CC8B8B", +"p% c #CA8787", +"q% c #C88384", +"r% c #C57B7C", +"s% c #C07070", +"t% c #BE6C6C", +"u% c #BD6969", +"v% c #BA6565", +"w% c #B96161", +"x% c #B75E5D", +"y% c #B65A59", +"z% c #B35556", +"A% c #5E2A2B", +"B% c #737374", +"C% c #242424", +"D% c #493A3A", +"E% c #866969", +"F% c #C19594", +"G% c #D6A2A1", +"H% c #D49D9E", +"I% c #D29A9A", +"J% c #D19796", +"K% c #CF9293", +"L% c #CD8E8F", +"M% c #C6807F", +"N% c #C37877", +"O% c #C17474", +"P% c #BF7070", +"Q% c #BA6564", +"R% c #B96160", +"S% c #B75D5D", +"T% c #B55A59", +"U% c #B35656", +"V% c #B25252", +"W% c #B04D4D", +"X% c #A64646", +"Y% c #0D0505", +"Z% c #3E3E3E", +"`% c #575757", +" & c #564444", +".& c #9C7A7A", +"+& c #D2A1A1", +"@& c #D5A2A2", +"#& c #D49E9D", +"$& c #D2999A", +"%& c #CF9292", +"&& c #CB8B8A", +"*& c #C98787", +"=& c #C67F80", +"-& c #C47C7B", +";& c #C17473", +">& c #BD6C6C", +",& c #BC6868", +"'& c #BA6464", +")& c #B96060", +"!& c #B75C5D", +"~& c #B55959", +"{& c #B45555", +"]& c #B25152", +"^& c #AE4A49", +"/& c #AC4546", +"(& c #AB4242", +"_& c #592020", +":& c #281010", +"<& c #A34141", +"[& c #686868", +"}& c #544242", +"|& c #9F7B7C", +"1& c #D4A3A3", +"2& c #D6A1A1", +"3& c #D09696", +"4& c #CD8E8E", +"5& c #CB8A8A", +"6& c #C98686", +"7& c #C67F7F", +"8& c #C37777", +"9& c #C17373", +"0& c #BE6B6C", +"a& c #B75D5C", +"b& c #B25251", +"c& c #AE4949", +"d& c #AD4546", +"e& c #A93E3E", +"f& c #A83A3A", +"g& c #9C3333", +"h& c #7B2B2B", +"i& c #A73B3A", +"j& c #5B1F1F", +"k& c #947373", +"l& c #D1A0A0", +"m& c #D39D9D", +"n& c #D29A99", +"o& c #CF9192", +"p& c #CA8786", +"q& c #C88283", +"r& c #C67E7E", +"s& c #C47B7B", +"t& c #C27777", +"u& c #C06F6F", +"v& c #BE6B6B", +"w& c #BB6464", +"x& c #B75C5C", +"y& c #B55858", +"z& c #B35554", +"A& c #B25151", +"B& c #B04E4D", +"C& c #AC4645", +"D& c #A73A3A", +"E& c #A63636", +"F& c #A43232", +"G& c #A22E2F", +"H& c #4E1414", +"I& c #270C0B", +"J& c #A33131", +"K& c #A22F30", +"L& c #962A2B", +"M& c #775C5C", +"N& c #C39696", +"O& c #D5A0A1", +"P& c #D29999", +"Q& c #D09596", +"R& c #CE9291", +"S& c #CD8E8D", +"T& c #CB898A", +"U& c #C67F7E", +"V& c #C47A7B", +"W& c #C37677", +"X& c #BF6F6F", +"Y& c #BC6768", +"Z& c #BA6363", +"`& c #B86060", +" * c #B65C5C", +".* c #B35455", +"+* c #B04C4C", +"@* c #AD4646", +"#* c #AB4141", +"$* c #A93E3D", +"%* c #A8393A", +"&* c #A32E2F", +"** c #A12B2B", +"=* c #9F2727", +"-* c #8C1F1F", +";* c #7B1E1F", +">* c #9E2626", +",* c #9F2525", +"'* c #9E2424", +")* c #170505", +"!* c #363636", +"~* c #A17B7A", +"{* c #D4A0A0", +"]* c #D49D9D", +"^* c #D09595", +"/* c #CE9192", +"(* c #CC8E8D", +"_* c #CA8989", +":* c #C78282", +"<* c #C57E7F", +"[* c #C47A7A", +"}* c #BD6C6B", +"|* c #BC6767", +"1* c #B85F5F", +"2* c #B45554", +"3* c #B15151", +"4* c #AF4D4C", +"5* c #AE4948", +"6* c #AC4445", +"7* c #A93D3D", +"8* c #A53636", +"9* c #A32E2E", +"0* c #A12B2A", +"a* c #9F2626", +"b* c #9D2323", +"c* c #9B1E1F", +"d* c #9A1B1B", +"e* c #350808", +"f* c #330A0A", +"g* c #9B1C1D", +"h* c #991A1A", +"i* c #5E0F0F", +"j* c #9D7676", +"k* c #CF9595", +"l* c #CE9191", +"m* c #CC8D8D", +"n* c #C78181", +"o* c #C27776", +"p* c #C17273", +"q* c #BD6B6B", +"r* c #BC6867", +"s* c #B45858", +"t* c #B35454", +"u* c #B15051", +"v* c #B04D4C", +"w* c #AD4445", +"x* c #AA4141", +"y* c #A83939", +"z* c #A63536", +"A* c #A22E2D", +"B* c #A02A2A", +"C* c #9D2222", +"D* c #9C1F1F", +"E* c #981717", +"F* c #961314", +"G* c #700B0B", +"H* c #050000", +"I* c #851010", +"J* c #951212", +"K* c #951111", +"L* c #4A0708", +"M* c #BBFFFB", +"N* c #BAFEFA", +"O* c #1E1515", +"P* c #C58B8B", +"Q* c #CD8D8D", +"R* c #CA898A", +"S* c #C98586", +"T* c #C88282", +"U* c #C27677", +"V* c #C07272", +"W* c #BF6E6F", +"X* c #B96363", +"Y* c #B65C5B", +"Z* c #B45758", +"`* c #B35353", +" = c #B15050", +".= c #AE4849", +"+= c #AC4544", +"@= c #A73939", +"#= c #A63535", +"$= c #A43131", +"%= c #A22E2E", +"&= c #A12A29", +"*= c #9B1E1E", +"== c #961313", +"-= c #950F0F", +";= c #930B0B", +">= c #8E0607", +",= c #190000", +"'= c #470404", +")= c #910808", +"!= c #8C0606", +"~= c #320202", +"{= c #020302", +"]= c #6E9794", +"^= c #9DD7FB", +"/= c #658AFC", +"(= c #3F56FD", +"_= c #212EFE", +":= c #1219FE", +"<= c #0C11FE", +"[= c #1017FE", +"}= c #1E29FE", +"|= c #3447FD", +"1= c #4F6DFD", +"2= c #729CFC", +"3= c #9ED8FB", +"4= c #B4F6FB", +"5= c #9CD5FB", +"6= c #84B5FC", +"7= c #739DFC", +"8= c #6489FC", +"9= c #5D80FC", +"0= c #5777FD", +"a= c #5F82FC", +"b= c #6B93FC", +"c= c #77A3FC", +"d= c #8EC2FB", +"e= c #ABEAFB", +"f= c #B5F7F3", +"g= c #131B1A", +"h= c #644242", +"i= c #C78182", +"j= c #C57D7D", +"k= c #C27576", +"l= c #BF6F6E", +"m= c #BD6A6B", +"n= c #BB6767", +"o= c #B65B5B", +"p= c #B55757", +"q= c #B2504F", +"r= c #AF4C4C", +"s= c #AD4544", +"t= c #AB4041", +"u= c #A83C3C", +"v= c #A73839", +"w= c #A53535", +"x= c #9C1E1E", +"y= c #9A1A1A", +"z= c #981616", +"A= c #961213", +"B= c #940F0F", +"C= c #910807", +"D= c #8F0304", +"E= c #8E0001", +"F= c #4A0000", +"G= c #130000", +"H= c #890000", +"I= c #790000", +"J= c #090D0C", +"K= c #6E96BD", +"L= c #4A65FD", +"M= c #3E55FD", +"N= c #4761FD", +"O= c #506EFD", +"P= c #6E97FC", +"Q= c #81B1FC", +"R= c #96CDFB", +"S= c #AEEEFB", +"T= c #92C8FB", +"U= c #2C3DFE", +"V= c #161FFE", +"W= c #597AFD", +"X= c #9BD4FB", +"Y= c #88BAFC", +"Z= c #5E81FC", +"`= c #374BFD", +" - c #151DFE", +".- c #1118FE", +"+- c #364AFD", +"@- c #4D69DD", +"#- c #000026", +"$- c #080B0A", +"%- c #B26C6C", +"&- c #C17272", +"*- c #BE6E6E", +"=- c #BD6A6A", +"-- c #BA6362", +";- c #B75F5F", +">- c #B45757", +",- c #B1504F", +"'- c #AE4848", +")- c #AA4140", +"!- c #A93D3C", +"~- c #A22D2D", +"{- c #971616", +"]- c #951213", +"^- c #950F0E", +"/- c #920A0B", +"(- c #910707", +"_- c #900403", +":- c #8E0100", +"<- c #8E0101", +"[- c #740000", +"}- c #680000", +"|- c #5B0000", +"1- c #070000", +"2- c #9AD3CF", +"3- c #97CFFB", +"4- c #0D12FE", +"5- c #2837FE", +"6- c #4863FD", +"7- c #6B92FC", +"8- c #8FC3FB", +"9- c #B2F4FB", +"0- c #6C94FC", +"a- c #0204FE", +"b- c #3D54FD", +"c- c #719BFC", +"d- c #A5E2FB", +"e- c #ADEDFB", +"f- c #A8E6FB", +"g- c #98D0FB", +"h- c #83B3FC", +"i- c #6286FC", +"j- c #3B51FD", +"k- c #080CFE", +"l- c #0001FE", +"m- c #1B26FE", +"n- c #3042FD", +"o- c #516FFD", +"p- c #5B7DFD", +"q- c #6388FC", +"r- c #6084FC", +"s- c #4F6CFD", +"t- c #3C53FD", +"u- c #2432FE", +"v- c #0A0EFE", +"w- c #0000CB", +"x- c #3549C0", +"y- c #9FD9FB", +"z- c #B96263", +"A- c #B35354", +"B- c #B04F4F", +"C- c #AF4B4B", +"D- c #AC4344", +"E- c #AA4040", +"F- c #A83C3D", +"G- c #A53434", +"H- c #A33031", +"I- c #A02A29", +"J- c #9E2526", +"K- c #9D2122", +"L- c #9A191A", +"M- c #961212", +"N- c #940E0E", +"O- c #930B0A", +"P- c #910607", +"Q- c #8F0303", +"R- c #1A0000", +"S- c #3F5654", +"T- c #B0F1ED", +"U- c #B5F8FB", +"V- c #6990FC", +"W- c #79A5FC", +"X- c #688EFC", +"Y- c #5C7EFD", +"Z- c #1F2BFE", +"`- c #0305FE", +" ; c #2939FE", +".; c #5A7BFD", +"+; c #94CBFB", +"@; c #6E96FC", +"#; c #B0F1FB", +"$; c #B9FDFB", +"%; c #7EADFC", +"&; c #0102FE", +"*; c #5270FD", +"=; c #7AA7FC", +"-; c #A0DBFB", +";; c #BAFEFB", +">; c #A2DDFB", +",; c #080BFA", +"'; c #1720FE", +"); c #7BA9FC", +"!; c #A7E5FB", +"~; c #AD4747", +"{; c #A93C3C", +"]; c #A63938", +"^; c #A12C2C", +"/; c #A02929", +"(; c #9E2525", +"_; c #9D2121", +":; c #9B1E1D", +"<; c #920B0A", +"[; c #910606", +"}; c #8F0202", +"|; c #8E0000", +"1; c #340000", +"2; c #0E1417", +"3; c #050822", +"4; c #000037", +"5; c #060957", +"6; c #4761BE", +"7; c #7099FC", +"8; c #7CAAFC", +"9; c #8CC0FB", +"0; c #9CD6FB", +"a; c #B2F3FB", +"b; c #A9E7FB", +"c; c #8ABDFC", +"d; c #4762FD", +"e; c #202CFE", +"f; c #0203FE", +"g; c #1822FE", +"h; c #89BBFC", +"i; c #7BA8FC", +"j; c #B5F7FB", +"k; c #435CFD", +"l; c #0E14FE", +"m; c #161EFE", +"n; c #80AFFC", +"o; c #9C272C", +"p; c #9D2221", +"q; c #9A1E1D", +"r; c #991919", +"s; c #930A0A", +"t; c #8E0303", +"u; c #890008", +"v; c #93C9FB", +"w; c #2C3CA4", +"x; c #0000A1", +"y; c #0000D4", +"z; c #0000F9", +"A; c #1016FE", +"B; c #2E40FD", +"C; c #76A2FC", +"D; c #A2DEFB", +"E; c #A1DCFB", +"F; c #678DFC", +"G; c #2F41FD", +"H; c #0B0FFE", +"I; c #0D13FE", +"J; c #2E3FFE", +"K; c #3448FD", +"L; c #B0F0FB", +"M; c #94CAFB", +"N; c #1821FE", +"O; c #2D3EFE", +"P; c #425BFD", +"Q; c #5271FD", +"R; c #6185FC", +"S; c #6F98FC", +"T; c #7DABFC", +"U; c #81B0FC", +"V; c #79A6FC", +"W; c #6387FC", +"X; c #425AFD", +"Y; c #141CFE", +"Z; c #0C11F7", +"`; c #3245FD", +" > c #445EFD", +".> c #445DFD", +"+> c #4A66FD", +"@> c #384DFD", +"#> c #1C27FE", +"$> c #1A24FE", +"%> c #2330FE", +"&> c #2C3CFE", +"*> c #3144FD", +"=> c #2634FE", +"-> c #0609FE", +";> c #090DFE", +">> c #95CCFB", +",> c #5D7FFD", +"'> c #B7FAFB", +")> c #76A1FC", +"!> c #5372FD", +"~> c #1E2AFE", +"{> c #2A3AD9", +"]> c #1D2890", +"^> c #729CCF", +"/> c #B3F5FB", +"(> c #A4E0FB", +"_> c #84B4FC", +":> c #3549FD", +"<> c #080BFE", +"[> c #394FFD", +"}> c #B6F9FB", +"|> c #82B2FC", +"1> c #5575FD", +"2> c #B8FCFB", +"3> c #AAE8FB", +"4> c #3F57FD", +"5> c #6083FC", +"6> c #89BCFC", +"7> c #91C6FB", +"8> c #5676FD", +"9> c #1B25FE", +"0> c #5473FD", +"a> c #0406FE", +"b> c #2635FE", +"c> c #8FC4FB", +"d> c #4E6BFD", +"e> c #97CEFB", +"f> c #4C68FD", +"g> c #3143FD", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" . . . . . ", +" . . + @ . . . . . . ", +" . . # . $ % & * . . . . . . . . . . . . . . . . ", +" . = - . ; > , ' ) ! ~ { . . . . . . . . . . . . . . . . . . . . . . . . ", +" . ] ) . ^ / ( _ : < [ } | 1 2 . . . . . . . . . . . ^ 3 4 % 5 6 7 8 9 0 a b c . . . . . . . ", +" . . ^ d e f g h i j k l m n o p ! q @ . . . . . . . . . r s t u v w x x y z A A A B C D E F G c . . . . . . . ", +" . . f H I . . J K t L M o N O P Q R S T U V . . . . . . . . W X Y y A A Z Z B C ` D ( ...+.+.@.#.$.%._ &.*.=.. . . . . . ", +" . . -.;.>.,.. -.;.H '.).O !.~.{.].^./.(._.:.<.[.r }.. . c |.B B 1.D 2.( ..3.3.#.4.#.5._ 6.7.7.8.9.0.a.: b.b.; . c.Q d.. . . ", +" . . . . U e.E I . f.g.h.i.j.k.l.l.m.n.o.p.q.r.s.t.u.v.. c w...x.+.#.#.%.5.y.7.z.A.A.B.a.a.C.D.E.F.E.h >.>.G.>.H.. I.[ [ J.. . . ", +" . . . . . . K.l L.M.. 2 ;.N.O.P.Q.R.S.l.l.l.l.T.U.V.W.X.Y.. Z._ y.`.A.9.0.a.a.: b. +F.h h h >.>..+++@+#+$+%+[ &+*+=+. -+;+;+;+>+. . . ", +" . . ,+'+)+. !+~+o } e . {+R ]+^+/+(+_+:+<+[+}+l.l.l.|+1+. 2+[ : C.b.b.h h h 3+>.>.@+#+4+4+%+[ *+[ 5+6+7+8+;+;+9+P . 0+l k a+E b+c+. . ", +" . d+e+f+g+. h+i+O j+k+. l+^.m+(._.n+o+p+6 Z.q+r+s+t+u+v+. H.h >.>.++#+#+#+w+%+[ x+5+5+7+;+;+y+z+A+A+k k B+C+E E D+. E+F+G+G+H+I+L.J+. . ", +" . . K+L+M+. N+O+;.X P+Q+. R+S S+) o+T+s.t.U+V+W+F M.X+Y+Z+. `+$+[ [ &+ @5+.@;++@9+z+A+@@k k #@$@E t %@l l &@H+*@=@-@. ;@>@L.L.L.,@'@)@. . ", +" . . !@~@{@. ]@X O.^@/@(@. Y.) _@:@s.8 <@[@X.}@M.{+|@s >+c . 1@2@e.9+A+3@k k C+$@B+E l l l G+F+H+I+H+4@L 5@m 6@,@H V . F n 7@'.8@'.9@0@a@. . ", +" . . b@c@d@. e@^@f@g@h@o+. i@T+j@k@l@m@n@<.o@p@|@q@r@s@t@u@f n $@#@E v@b+w@l H+H+x@4@y@L 5@m L.z@A@z@H M B@7@C@'.(+. D@O E@F@g.g.G@H@I@J@. . ", +" . . K@L@M@. {+N@m+S O@:.P@. {+Q@u.R@S@T@U@V@W@X@s@s@Y@# . ~ Z@&@H+H+4@L L L.L.`@A@z@H ~+M n n 8@8@ #.#0@+#F@F@g.@#. ##$#%#&#*#=#-#O ;#>#,#. . ", +" . . '#)#!#. k@S ~#{#o+T+] . 0 ]#^#F /#(@(#s s@s@_#:#* = . # <#L.A@,@H H n B@7@8@'..#9@ #o +#+#g.).[#[#$#} &#} O+}#. |#1#>#2#3#;.;.4#5#P 6#. . ", +" . 7#8#9#0#. a#) b#7 c#d#e#. f#F M.{+g#h#s@i#v+j#u@. . k#l#m#n 7@n#'. #9@o#o E@g.g.p#N N q#q#} *#h.O r#s#>#t#3#S i@i@S P P u#X v#w#v#Q x#7 u@. ", +" . y#z#A#. i@B#7 j@8 l@C#D#. E#p@|@q@F#G#H#-.. . f I#F 9@9@J#K#+#g.).g.N %#I@} } / O O 1#>#>#>#t#;.j+L#M#P P u#E#. q Q N#O#O.P#P#P#R Q#^@^@Y.. ", +" . R#S#T#. =.j@6 U#V#n@W#I . X#Y#s@Z#`#{ . . c $.$g.[#N N %#%#} *#} O +$s#>#t#>#@$;.P P P #$$$X X Q Q %$N#O.O.D#. |#&$*$=$^@].].].-$;$>$t@. . ", +" . ,$'$)$!$f {+~${$J@F ]$E+. v+^$N+. . { /$s O &#} h.O+O O ;#>#>#3#;.j+P P ($_$_$:$Q Q Q <$O.O.O.R R R &$*$^@X.. =.[$].]+}$/@}$N@|$.$&.1$=+. . ", +" . . 2$3$4$. . 5$W+F M.{+(#6$. . . . N+,.7$8$O >#>#2#2#;.P 5#P ($($X X X Q 9$O.O.0$P#R R &$=$^@^@^@].-$]+]+]+}$-@. H#g@a$g@b$c$c$d$m+m+m+b . . ", +" . . . . . D@D@. e$p@i#f$c . . u@g$0 w#;.4#h$P $$u#_$i$:$Q N#O#O.O.R 0$R R ^@^@^@j$k$l$].m$n$/@N@N@o$.$g@g@p$S q$. r$m+h@h@h@h@[$S S s$t$. . ", +" . . . q N@u$. i@~ 2+. . -.l#s.N._$X v$v#Q <$x#<$P#P+w$R R ^@^@].k$].x$;$f@y$n$N@N@.$.$g@a$p$c$z$m+m+m+A$h@B$. K.S C$s$(+D$(+S+S+S+M.}.. . ", +" . . H#X j+P E$. . . 5$F$]+Q 9$<$O.P#G$R &$H$^@j$].I$].x$]+n$/@}$N@|$J$g@g@^+c$c$m+m+m+A$h@h@h@S S S K$(+L$j#. v+S+S+S+S+S+S+S+S+s.M$. . ", +" . . a@9$i$:$Q &.N$O$X.w$R R =$^@^@].].].f@]+;$N@/@N@N@N@g@&.&.p$c$/.d$m+m+P$h@h@Q$S S S s$(+D$R$S+S+S+S+S+% . 2+8 S+S+S+S+S+S+S+7$E+. . ", +" . . =+m+0$w$R R H$^@S$k$].-$m$]+}$/@N@N@g@g@g@a$a$c$c$c$m+m+h@A$h@T$S S S C$(+(+U$V$S+S+S+S+S+S+S+S+S+S+S+S+:#. W S+S+S+S+S+S+S+S+U . . ", +" . . u$I$W$x$x$m$]+n$>$N@J$g@g@^+^+b$c$c$m+m+m+X$h@T$Y$S (.(.(+D$D$V$S+S+S+6 % Z$`$ %.%I#I#k+O$,.+%q@:.S+S+u.+ u@M.S+S+S+S+S+S+S+@%. . ", +" . D@n$>$N@o$#%p$&.-+c$$%m+m+/+m+h@[$Q$S S (.(+(+(+L$V$S+S+S+S+) s ! 3 5$-.2+V %%&%*%=%-%;%>%,%'%)%c 2+k#!%O$. g$S+S+S+S+S+S+S+4 u@. . ", +" . . I#p$c$c$/.m+/+h@h@[$Y$Y$K$S s$(+U$~%S+S+S+S+S+S+S+S+) s@{%!+}.]%^%/%(%_%:%<%[%}%|%1%2%3%4%5%6%7%8%9%0%a%. . b%S+S+S+S+S+S+c%i@. . ", +" . . a@d%Y$[$e%S (+(+V$S+S+S+S+S+S+S+S+S+S+S+S+S+S+C#f%r P@]%g%h%i%j%k%l%m%n%o%p%q%2%r%4%5%s%t%u%v%w%x%y%z%A%. D@T+S+S+S+S+S+r$2+. . ", +" . . B%S+S+S+S+S+S+S+S+S+S+S+S+S+S+S+S+S+S+F # C%D@D%E%F%G%H%I%J%K%L%}%p%1%M%3%N%O%P%t%8%Q%R%S%T%U%V%W%X%Y%. J+Z%S+S+S+S+s@2+. . ", +" . . . 3 T+S+S+S+S+S+S+S+S+S+S+S+S+S+X.`%v.P@ &.&+&@&#&$&l%%&[%&&*&1%=&-&4%;&s%>&,&'&)&!&~&{&]&W%^&/&(&_&. :&<&-.% S+S+s@D@. . ", +" . . . -.[&S+S+S+S+S+S+S+S+S+j@! I P@}&|&1&2&#&$&3&%&4&5&6&1%7&-&8&9&s%0&,&'&)&a&~&{&b&W%c&d&(&e&f&g&7#. h&i&j&Z+S+J D@. . ", +" . . . g$u.S+S+S+S+S+b%##D@g$k&l&2&m&n&3&o&4&5&p&q&r&s&t&9&u&v&,&w&)&x&y&z&A&B&c&C&(&e&D&E&F&G&H&. I&J&K&L&+ t@}.. . ", +" . . . -.r$S+s.`$K.c M&N&O&m&P&Q&R&S&T&6&q&U&V&W&9&X&0&Y&Z&`& *y&.*A&+*c&@*#*$*%*E&F&&***=*-*0#. ;*>*,*'*)*. . . ", +" . . @ -@P@!*~*{*]*P&^*/*(*_*6&:*<*[*8&9&X&}*|*Z&1* *y&2*3*4*5*6*#*7*f&8*F&9*0*a*b*c*d*e*. f*g*d*h*i*0#. . ", +" . . . j*]*P&k*l*m*T&6&n*r&[*o*p*X&q*r*Z&`& *s*t*u*v*c&w*x*7*y*z*F&A*B*a*C*D*d*E*F*G*. H*I*J*K*L*. . . ", +" M*M*M*M*M*M*M*M*M*M*M*M*M*M*M* M*M*M*M*M*M*M*M*M*M*M*M*M*M*M*N*. . O*P*Q*R*S*T*r&[*U*V*W*q*|*X*`&Y*Z*`* =+*.=+=#*7*@=#=$=%=&=a*C**=h*E*==-=;=>=,=. '=)=!=~=. {=]=M*M*M*M*M*M*M*M*M*M*M* ", +"M*M*M*^=/=(=_=:=<=<=[=}=|=1=2=3=M*M*M*M*M*M*M*4=5=6=7=8=9=0=0=0=a=b=c=d=e=M*f=g=. h=i=j=[*k=V*l=m=n=Z&1*o=p=t*q=r=.=s=t=u=v=w=J&%=B*,*C*x=y=z=A=B=;=C=D=E=F=. G=H=I=,=. J=K=L=M=M=M=N=O=9=P=Q=R=S=M*M*M*M*M*M*M* ", +"M*T=U=l.l.l.l.l.l.l.l.l.l.l.l.l.V=W=X=Y=Z=`= -l.l.l.l.l.l.l.l.l.l.l.l.l.l..-+-@-#-$-%-&-*-=-n=--;-o=>-t*,-r='-6*)-!-@=w=$=~-B*>*C**=h*{-]-^-/-(-_-:-<-:-[-0#. }-|-1-. . 2-3-l.l.l.l.l.l.l.l.l.l.l.4-5-6-7-8-9-M*M*M*M* ", +"M*0-l.a-b-c-T=d-S=e-f-g-h-i-j-k-l.l.l.l.l.l.l.l-m-n-N=o-p-q-Z=r-p-s-t-u-v-l.l.l.l.w-x-y-z-;-o=p=A-B-C-'-D-E-F-v=G-H-~-I-J-K-*=L-z=M-N-O-P-Q-:-E=<-<-<-H=R-. . . . . S-T-M*U-V-W-W-W-c-X-Y-L=+-Z-k-l.l.l.l.l.`- ;.;+;M*M*M*M*M*M*M*M*M* ", +"M*M*@;#;M*M*M*M*M*M*M*M*$;%;n-l-l.l.&;u-*;=;-;$;M*M*M*M*M*M*M*M*M*M*M*M*;;>;c=(=,;l.l.l.';L=);!;~;D-E-{;];G-H-^;/;(;_;:;L-{-M-N-<;[;};|;<-:-E=<-<-<-<-1;. 2;3;4;5;6;7;7;7;7;8;9;0;a;M*M*M*M*M*M*M*b;c;b=d;e;f;l.l.l.g;r-h;h;h;9;X=a;M*M*M*M*M*M* ", +" M*M*M*M* M*M*;;=;}=l.l.&;M=i;S=M*M*M*M*M*M* M*M*M*M*M*j;%;k;l;l.l.l.l.m;j-i-n;y-o;(;p;q;r;{-J*N-s;[;t;<-E=E=E=|;:-|;|;u;v;w;x;y;z;l.l.l.l.l.l.l.l.l.l.l.l.A;B;*;C;D;M*M*M*M*M*M*E;F;G;H;l.l.l.l.l.l.l.l.l.I;J;.;h;j;M*M*M* ", +" M*;;K;l.l.V=X-L;M*M*M*M* M*M*M*M*$;M;r-|=H;l.l.l.l.l.`-N;O;P;Q;R;S;c=8;T;U;W-V;7;W;.;X;J;Y;l-l.l.l.l.l.Z;u-`; >.>+>+>d;@>U=#>&;l.l.l.l.l.$>s-h;9-c- ;l.l.l.l.l.4-%>&>*>*>=>g;->l.l.l.l.;>6->>M*M*M* ", +" M*M*,>->P='>M*M*M* M*M*M*M*M*;;0;)>!>|=N;&;l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.`-~>{>]>^>/>M*M*M*M*M*M*M*M*M*M*M*M*(>_>r-:><>l.l.l.`-l.l.a-[>P=R=}>M*M*M*M*M*M*M*M*!;|>1>~>l.l.l.J;>>M*M* ", +" M*2>3>M*M*M* M*M*M*M*M*M*M*U-^=Y=C;F;0=+>P;M=b-[>M=4>+>Q;5>2=6>-;'>M*M* M*M*M* M*M*M*M*M*2>7>8>9>l.l.l-t-5=M*M*M*M* M*M*M*M*M*3=0>a>l.b>;;M* ", +" M*M*M*M* M*M*M*M*M*M*M*M*M*M*M*M*M*M*M*M*M*M*M*M*M*M* M*M*M*M*M*c>k;l-l.a-d>L;M*M* M*M*M*L;O=e>M*M* ", +" M*M*M*d-f>l-l.m;>;M* M*M*M*M*M* ", +" M*M*M*e>e;g>2>M* ", +" M*M*'>S=M*M* ", +" M*M*M*M* ", +" ", +" ", +" ", +" ", +" ", +" ", +" . . ", +" . . . . . . . ", +" . . . . . . . ", +" . . . . ", +" . . . . . . . ", +" . . . . . . . . ", +" . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . . . . . ", +" . . . . . . . . . . . . . . ", +" . . . ", +" . . . ", +" ", +" ", +" "}; diff --git a/src/Mod/Ship/Icons/OutlineDrawIco.png b/src/Mod/Ship/Icons/OutlineDrawIco.png new file mode 100644 index 0000000000000000000000000000000000000000..4aa5378d433e0ca1fed513b5dbf2bd7edb7546a3 GIT binary patch literal 10468 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 literal 0 HcmV?d00001 diff --git a/src/Mod/Ship/Icons/OutlineDrawIco.xcf b/src/Mod/Ship/Icons/OutlineDrawIco.xcf new file mode 100644 index 0000000000000000000000000000000000000000..13783d1ed844a481a9369721797b22419c932448 GIT binary patch literal 64037 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

m2d*Q_by);sV16Jsv%l2|c7E$6}`9Z3#rgG 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 literal 0 HcmV?d00001 diff --git a/src/Mod/Ship/Icons/OutlineDrawIco.xpm b/src/Mod/Ship/Icons/OutlineDrawIco.xpm new file mode 100644 index 0000000000..7f80d7367c --- /dev/null +++ b/src/Mod/Ship/Icons/OutlineDrawIco.xpm @@ -0,0 +1,1824 @@ +/* XPM */ +static char * OutlineDrawIco_xpm[] = { +"128 128 1693 2", +" c None", +". c #E8D384", +"+ c #E7D484", +"@ c #E8D485", +"# c #E8D486", +"$ c #E8D585", +"% c #E9D686", +"& c #E8D686", +"* c #E9D687", +"= c #E9D788", +"- c #EAD889", +"; c #EAD88A", +"> c #EAD98A", +", c #EBDA8A", +"' c #EBDA8B", +") c #ECDB8C", +"! c #ECDC8C", +"~ c #EBDC8C", +"{ c #ECDD8D", +"] c #ECDC8D", +"^ c #ECDD8E", +"/ c #EDDE8E", +"( c #EDDE8F", +"_ c #B87124", +": c #B87125", +"< c #E6D082", +"[ c #E7D182", +"} c #E6D182", +"| c #E7D283", +"1 c #E8D284", +"2 c #E7D384", +"3 c #E7D385", +"4 c #E8D586", +"5 c #E9D586", +"6 c #E9D787", +"7 c #EAD787", +"8 c #E9D888", +"9 c #EAD888", +"0 c #EAD989", +"a c #EBD98A", +"b c #EBDB8B", +"c c #EBDB8C", +"d c #EBDC8D", +"e c #EDDD8E", +"f c #EDDF8F", +"g c #EDDF90", +"h c #BB7526", +"i c #E6D181", +"j c #E7D282", +"k c #E7D383", +"l c #E8D385", +"m c #E9D585", +"n c #E8D587", +"o c #EADA8A", +"p c #ECDF8E", +"q c #BB7426", +"r c #BF7726", +"s c #E5D081", +"t c #E6D081", +"u c #E7D183", +"v c #E8D383", +"w c #E8D484", +"x c #EADA8B", +"y c #ECDE8E", +"z c #EDDE90", +"A c #BA7426", +"B c #C27B27", +"C c #E2C97A", +"D c #E5CF80", +"E c #E6D080", +"F c #E7D181", +"G c #E7D485", +"H c #E9D486", +"I c #E8D687", +"J c #EAD788", +"K c #EBDC8B", +"L c #BB7425", +"M c #BE7726", +"N c #C27A27", +"O c #C47D28", +"P c #C88128", +"Q c #E5CF7F", +"R c #E6CE80", +"S c #E6CF80", +"T c #E7D081", +"U c #E7D284", +"V c #EAD789", +"W c #E9D989", +"X c #EAD98B", +"Y c #ECDE8D", +"Z c #ECDE8F", +"` c #C17A27", +" . c #C78128", +".. c #C98228", +"+. c #E5CD7E", +"@. c #E5CE7F", +"#. c #EBD989", +"$. c #EBDB8A", +"%. c #ECDA8B", +"&. c #BA7325", +"*. c #BD7626", +"=. c #C07927", +"-. c #C78028", +";. c #CB8429", +">. c #E2C87A", +",. c #E4CD7E", +"'. c #E5CD7F", +"). c #ECDB8D", +"!. c #C10606", +"~. c #BB0605", +"{. c #B10605", +"]. c #AA0505", +"^. c #A10505", +"/. c #980405", +"(. c #BA7226", +"_. c #BD7526", +":. c #C17926", +"<. c #C47D27", +"[. c #C77F28", +"}. c #CB8329", +"|. c #CE872A", +"1. c #E3C97A", +"2. c #E4CC7E", +"3. c #E4CC7D", +"4. c #E5CE7E", +"5. c #E5D080", +"6. c #D6C67D", +"7. c #B1A367", +"8. c #ECDB8B", +"9. c #C90706", +"0. c #B70606", +"a. c #AF0505", +"b. c #A60505", +"c. c #9E0505", +"d. c #950405", +"e. c #8D0404", +"f. c #850404", +"g. c #7C0404", +"h. c #B97225", +"i. c #BF7927", +"j. c #C37C28", +"k. c #C68028", +"l. c #CA8229", +"m. c #CD8629", +"n. c #D1892A", +"o. c #E4CB7C", +"p. c #E6CF81", +"q. c #E6D283", +"r. c #CCBC76", +"s. c #7A7147", +"t. c #EBDA8C", +"u. c #EDDD8D", +"v. c #C80000", +"w. c #BE0505", +"x. c #B40606", +"y. c #AC0505", +"z. c #A40605", +"A. c #9C0505", +"B. c #930504", +"C. c #8B0504", +"D. c #820404", +"E. c #790304", +"F. c #BC7526", +"G. c #BF7827", +"H. c #C67F28", +"I. c #CC8529", +"J. c #D0892A", +"K. c #D48C2B", +"L. c #E3CA7B", +"M. c #E4CA7B", +"N. c #E3CB7C", +"O. c #E3CC7D", +"P. c #E6CF7F", +"Q. c #D2C179", +"R. c #746B43", +"S. c #B47C7C", +"T. c #BA3D3D", +"U. c #BA0C0C", +"V. c #B40000", +"W. c #AB0000", +"X. c #A20304", +"Y. c #910404", +"Z. c #880405", +"`. c #7F0404", +" + c #770404", +".+ c #6E0303", +"++ c #660303", +"@+ c #BF7826", +"#+ c #C37B27", +"$+ c #C67E28", +"%+ c #C98229", +"&+ c #CD852A", +"*+ c #D38C2B", +"=+ c #D78F2C", +"-+ c #E3C97B", +";+ c #E2CA7B", +">+ c #E3CA7C", +",+ c #E4CC7C", +"'+ c #E5CC7D", +")+ c #D6C67C", +"!+ c #6E6540", +"~+ c #EBDB8D", +"{+ c #AAB2B2", +"]+ c #A2B0B0", +"^+ c #9D9E9F", +"/+ c #9C7273", +"(+ c #9E3A3A", +"_+ c #9D0E0D", +":+ c #970000", +"<+ c #8F0000", +"[+ c #850403", +"}+ c #7D0504", +"|+ c #740403", +"1+ c #6C0303", +"2+ c #620403", +"3+ c #BE7727", +"4+ c #C98129", +"5+ c #D0882A", +"6+ c #D38B2B", +"7+ c #D68F2B", +"8+ c #D9922D", +"9+ c #E3C87A", +"0+ c #E2C97B", +"a+ c #C9B36D", +"b+ c #918250", +"c+ c #E5CE80", +"d+ c #DDCB7F", +"e+ c #675E3A", +"f+ c #A8ACB3", +"g+ c #A1A3A5", +"h+ c #9B9B9B", +"i+ c #929999", +"j+ c #8A9696", +"k+ c #858887", +"l+ c #836564", +"m+ c #823534", +"n+ c #810E0E", +"o+ c #7B0000", +"p+ c #720000", +"q+ c #6A0102", +"r+ c #600203", +"s+ c #DDC071", +"t+ c #DEC273", +"u+ c #DEC071", +"v+ c #D28B2A", +"w+ c #D68E2B", +"x+ c #DA912C", +"y+ c #DFC476", +"z+ c #E1C879", +"A+ c #D8BF73", +"B+ c #C6B06B", +"C+ c #A29057", +"D+ c #9B8A54", +"E+ c #C3AE6A", +"F+ c #7B6D43", +"G+ c #E5CD7D", +"H+ c #E3D082", +"I+ c #605837", +"J+ c #E9D688", +"K+ c #C38B3A", +"L+ c #B69464", +"M+ c #A4998A", +"N+ c #97999C", +"O+ c #8F9399", +"P+ c #898B8D", +"Q+ c #838383", +"R+ c #7B7F7F", +"S+ c #727D7C", +"T+ c #6C7171", +"U+ c #685554", +"V+ c #672E2D", +"W+ c #640D0D", +"X+ c #5E0000", +"Y+ c #DFC172", +"Z+ c #DFC173", +"`+ c #DFC273", +" @ c #E0C273", +".@ c #E0C374", +"+@ c #DFC375", +"@@ c #E0C475", +"#@ c #E1C475", +"$@ c #DDBF71", +"%@ c #D28B2B", +"&@ c #D58E2B", +"*@ c #D9922C", +"=@ c #DB932D", +"-@ c #E2C677", +";@ c #E1C778", +">@ c #BBA464", +",@ c #817245", +"'@ c #E2C979", +")@ c #A7945A", +"!@ c #958451", +"~@ c #C4AF6B", +"{@ c #796C42", +"]@ c #E4CE7E", +"^@ c #605836", +"/@ c #E4D082", +"(@ c #C58529", +"_@ c #C17F22", +":@ c #B97A21", +"<@ c #AE7B31", +"[@ c #9F7F51", +"}@ c #8D8272", +"|@ c #808183", +"1@ c #787A80", +"2@ c #717275", +"3@ c #6B6B6A", +"4@ c #636666", +"5@ c #5B6363", +"6@ c #545959", +"7@ c #514644", +"8@ c #DEC072", +"9@ c #DFC374", +"0@ c #DFC475", +"a@ c #E0C476", +"b@ c #D3973D", +"c@ c #E1C577", +"d@ c #E2C678", +"e@ c #B49E5F", +"f@ c #877748", +"g@ c #E2C879", +"h@ c #E2C779", +"i@ c #AD9A5D", +"j@ c #8F7E4D", +"k@ c #C7B06C", +"l@ c #766940", +"m@ c #E3CB7B", +"n@ c #E4CD7F", +"o@ c #E6D282", +"p@ c #675E3B", +"q@ c #DCC87D", +"r@ c #C3842B", +"s@ c #BC7F29", +"t@ c #B57C28", +"u@ c #AF7625", +"v@ c #AA701F", +"w@ c #A36C1D", +"x@ c #986A28", +"y@ c #886B41", +"z@ c #776B5B", +"A@ c #686969", +"B@ c #5F6267", +"C@ c #595B5C", +"D@ c #525253", +"E@ c #DDBF70", +"F@ c #DEBF70", +"G@ c #DFC071", +"H@ c #E0C274", +"I@ c #E0C375", +"J@ c #DB932C", +"K@ c #E1C576", +"L@ c #AF9A5C", +"M@ c #8C7A4A", +"N@ c #E2C778", +"O@ c #B39F60", +"P@ c #887849", +"Q@ c #E3C879", +"R@ c #CAB26C", +"S@ c #73663E", +"T@ c #E4CB7D", +"U@ c #6E643E", +"V@ c #D4C179", +"W@ c #E9D889", +"X@ c #C6862B", +"Y@ c #C2832B", +"Z@ c #BA7E29", +"`@ c #B37A27", +" # c #AC7526", +".# c #A67024", +"+# c #9F6C23", +"@# c #986721", +"## c #93611B", +"$# c #8C5D19", +"%# c #825A1F", +"&# c #735832", +"*# c #615646", +"=# c #515150", +"-# c #DDBE6F", +";# c #DDBE70", +"># c #DEBF71", +",# c #DFC274", +"'# c #E0C576", +")# c #AA955A", +"!# c #907E4B", +"~# c #E1C677", +"{# c #E1C678", +"]# c #B8A362", +"^# c #827245", +"/# c #CBB46D", +"(# c #70633C", +"_# c #766B42", +":# c #CCBA74", +"<# c #BF822A", +"[# c #B87D28", +"}# c #B17826", +"|# c #AA7425", +"1# c #A46F24", +"2# c #9D6B22", +"3# c #966622", +"4# c #906120", +"5# c #895C1E", +"6# c #81571C", +"7# c #7C5317", +"8# c #764E15", +"9# c #6E4B19", +"0# c #DDBD6F", +"a# c #DEC172", +"b# c #DFC072", +"c# c #DFC174", +"d# c #DFC474", +"e# c #A59156", +"f# c #94814D", +"g# c #BDA664", +"h# c #7C6D42", +"i# c #CFB66F", +"j# c #6D603A", +"k# c #E4CD7D", +"l# c #7E7247", +"m# c #C3B16E", +"n# c #E9D587", +"o# c #C5862C", +"p# c #BC8029", +"q# c #B67B28", +"r# c #AF7626", +"s# c #A87225", +"t# c #A26D24", +"u# c #9A6922", +"v# c #946421", +"w# c #8D5F1F", +"x# c #865B1D", +"y# c #7F571C", +"z# c #78511A", +"A# c #714C19", +"B# c #DDBC6E", +"C# c #DEBD6F", +"D# c #DEBE6F", +"E# c #A18D54", +"F# c #97844E", +"G# c #E0C575", +"H# c #E1C476", +"I# c #C2AA66", +"J# c #77683F", +"K# c #D2B970", +"L# c #695C38", +"M# c #E1C779", +"N# c #E5CF81", +"O# c #86794B", +"P# c #BBA969", +"Q# c #E8D283", +"R# c #C5862B", +"S# c #C2832A", +"T# c #B37928", +"U# c #AD7526", +"V# c #A67025", +"W# c #916320", +"X# c #8A5E1F", +"Y# c #84591D", +"Z# c #7D541C", +"`# c #76501A", +" $ c #6F4B19", +".$ c #DCBC6D", +"+$ c #DCBD6E", +"@$ c #9E8952", +"#$ c #99854F", +"$$ c #C7AE68", +"%$ c #71633B", +"&$ c #E0C676", +"*$ c #D5BB70", +"=$ c #655936", +"-$ c #E4CA7C", +";$ c #E5CC7E", +">$ c #8E804F", +",$ c #B3A163", +"'$ c #C5852B", +")$ c #B87C28", +"!$ c #B17827", +"~$ c #AB7426", +"{$ c #9D6A22", +"]$ c #966620", +"^$ c #8F611F", +"/$ c #885C1E", +"($ c #82581C", +"_$ c #7B531B", +":$ c #734F1A", +"<$ c #6E4B18", +"[$ c #DBBB6C", +"}$ c #DCBB6D", +"|$ c #DCBC6E", +"1$ c #DDBD6E", +"2$ c #DEC173", +"3$ c #9B8750", +"4$ c #9C8750", +"5$ c #CCB36A", +"6$ c #6C5F38", +"7$ c #E1C575", +"8$ c #E0C577", +"9$ c #D9BE72", +"0$ c #615533", +"a$ c #E3CA7A", +"b$ c #958753", +"c$ c #A9995E", +"d$ c #C4852B", +"e$ c #BD8129", +"f$ c #AE7626", +"g$ c #A87125", +"h$ c #A16D24", +"i$ c #9B6922", +"j$ c #946420", +"k$ c #8E601F", +"l$ c #79521B", +"m$ c #714D19", +"n$ c #DBBA6B", +"o$ c #DBBA6C", +"p$ c #DCBB6C", +"q$ c #DEBE70", +"r$ c #DEC171", +"s$ c #9A854F", +"t$ c #9D8851", +"u$ c #D1B56C", +"v$ c #675A35", +"w$ c #DCC073", +"x$ c #5D5131", +"y$ c #E4CB7B", +"z$ c #9F8F58", +"A$ c #A09058", +"B$ c #B47A28", +"C$ c #AD7626", +"D$ c #A67125", +"E$ c #9F6C24", +"F$ c #996722", +"G$ c #926320", +"H$ c #8C5F1E", +"I$ c #7D551C", +"J$ c #77501A", +"K$ c #704C18", +"L$ c #DAB96A", +"M$ c #DBB96B", +"N$ c #99844E", +"O$ c #D5B96E", +"P$ c #615532", +"Q$ c #5B4F2F", +"R$ c #DEC375", +"S$ c #E1C676", +"T$ c #E2CA7A", +"U$ c #E3CB7D", +"V$ c #A8965C", +"W$ c #968753", +"X$ c #B87D29", +"Y$ c #B17927", +"Z$ c #9D6A23", +"`$ c #976620", +" % c #906220", +".% c #895D1E", +"+% c #82581D", +"@% c #7B541C", +"#% c #754F1A", +"$% c #DAB869", +"%% c #DAB86A", +"&% c #DBB96A", +"*% c #DBBA6D", +"=% c #DBBC6D", +"-% c #DDBC6D", +";% c #98834D", +">% c #9E8951", +",% c #DABD6F", +"'% c #5D5030", +")% c #5F5332", +"!% c #D9BD71", +"~% c #E1C777", +"{% c #B19F60", +"]% c #8D7F4D", +"^% c #BD802A", +"/% c #B67C28", +"(% c #AF7727", +"_% c #A97225", +":% c #A26E24", +"<% c #946520", +"[% c #865C1E", +"}% c #80561C", +"|% c #79521A", +"1% c #724D19", +"2% c #6F4C19", +"3% c #D9B768", +"4% c #DAB769", +"5% c #DDBD6D", +"6% c #98834C", +"7% c #9E8950", +"8% c #5A4D2E", +"9% c #655734", +"0% c #D3B86F", +"a% c #BAA665", +"b% c #827548", +"c% c #BB7F29", +"d% c #B47B27", +"e% c #A57125", +"f% c #996821", +"g% c #8B5F1F", +"h% c #855A1D", +"i% c #7E551B", +"j% c #77511A", +"k% c #704C19", +"l% c #DAB668", +"m% c #DAB669", +"n% c #DAB768", +"o% c #DBB86A", +"p% c #DCBA6C", +"q% c #98824C", +"r% c #9D874F", +"s% c #5C4F2E", +"t% c #DABC70", +"u% c #6A5C37", +"v% c #CDB269", +"w% c #C4AF6A", +"x% c #C0822B", +"y% c #B97D29", +"z% c #B27927", +"A% c #AB7425", +"B% c #976721", +"C% c #8F621F", +"D% c #83581C", +"E% c #7B541B", +"F% c #6F4B18", +"G% c #D9B668", +"H% c #9C864E", +"I% c #5F5230", +"J% c #D7B96D", +"K% c #6F6039", +"L% c #C8AE67", +"M% c #E1C375", +"N% c #E2C878", +"O% c #CEB66F", +"P% c #6F633C", +"Q% c #BE802A", +"R% c #A87325", +"S% c #956520", +"T% c #875B1E", +"U% c #80571C", +"V% c #724E1A", +"W% c #D9B467", +"X% c #D9B567", +"Y% c #DAB96B", +"Z% c #DCBB6E", +"`% c #97814B", +" & c #625532", +".& c #D2B56A", +"+& c #76663C", +"@& c #C1A762", +"#& c #E0C376", +"$& c #D8C074", +"%& c #645936", +"&& c #A77125", +"*& c #A06C23", +"=& c #986822", +"-& c #936320", +";& c #845A1D", +">& c #D8B466", +",& c #D9B466", +"'& c #D9B667", +")& c #DBB869", +"!& c #DAB86B", +"~& c #DBBB6D", +"{& c #99834C", +"]& c #9A834C", +"^& c #DCBD6F", +"/& c #675834", +"(& c #CEB267", +"_& c #7C6B3F", +":& c #BAA15E", +"<& c #E0C677", +"[& c #5D5232", +"}& c #C0822A", +"|& c #B97E28", +"1& c #B27828", +"2& c #A47024", +"3& c #9E6B23", +"4& c #966621", +"5& c #8A5D1E", +"6& c #7C541B", +"7& c #754F19", +"8& c #D8B365", +"9& c #D8B567", +"0& c #D9B566", +"a& c #DCBA6B", +"b& c #9A844C", +"c& c #98824B", +"d& c #695A34", +"e& c #CBAF66", +"f& c #837143", +"g& c #B2995A", +"h& c #DFC171", +"i& c #655A36", +"j& c #D5BD72", +"k& c #C4862C", +"l& c #B07727", +"m& c #A97325", +"n& c #A26E23", +"o& c #9C6A22", +"p& c #946521", +"q& c #8D611F", +"r& c #875C1E", +"s& c #714E19", +"t& c #D7B364", +"u& c #D8B366", +"v& c #DAB667", +"w& c #D9B769", +"x& c #DBB96C", +"y& c #9C844D", +"z& c #957E49", +"A& c #6C5C35", +"B& c #C8AB64", +"C& c #8C7746", +"D& c #A99255", +"E& c #DFC272", +"F& c #70633B", +"G& c #CAB26B", +"H& c #C3852B", +"I& c #A77124", +"J& c #996822", +"K& c #926420", +"L& c #8B5F1E", +"M& c #855B1D", +"N& c #7E551C", +"O& c #6F4C18", +"P& c #D7B263", +"Q& c #D7B264", +"R& c #D8B364", +"S& c #D8B465", +"T& c #D9B568", +"U& c #9F864E", +"V& c #927B48", +"W& c #6F5F37", +"X& c #C4A861", +"Y& c #957F4A", +"Z& c #A08950", +"`& c #7B6C41", +" * c #BFA864", +".* c #C6872B", +"+* c #C1822A", +"@* c #B27926", +"#* c #A57024", +"$* c #976621", +"%* c #91621F", +"&* c #83591D", +"** c #7C531B", +"=* c #75501A", +"-* c #D7B163", +";* c #D8B163", +">* c #D7B265", +",* c #D8B467", +"'* c #A3894E", +")* c #8E7946", +"!* c #716037", +"~* c #C2A560", +"{* c #877747", +"]* c #B39D5E", +"^* c #E3C87B", +"/* c #BE812A", +"(* c #B77C28", +"_* c #B07826", +":* c #A36E23", +"<* c #9B6A22", +"[* c #956521", +"}* c #8E611F", +"|* c #875C1D", +"1* c #79531A", +"2* c #724E19", +"3* c #D6B063", +"4* c #D8B264", +"5* c #A58B50", +"6* c #8B7543", +"7* c #736138", +"8* c #C0A25E", +"9* c #A58D52", +"0* c #8D7846", +"a* c #93814D", +"b* c #A69157", +"c* c #C4842B", +"d* c #9F6D23", +"e* c #9A6822", +"f* c #8B5E1E", +"g* c #D6AF61", +"h* c #D6AF62", +"i* c #D6B062", +"j* c #D7B063", +"k* c #D9B465", +"l* c #D9B365", +"m* c #A98E51", +"n* c #877241", +"o* c #746238", +"p* c #BDA15C", +"q* c #B09557", +"r* c #836F40", +"s* c #DDBC6F", +"t* c #9F8B53", +"u* c #998650", +"v* c #E3C979", +"w* c #C5872B", +"x* c #C1832B", +"y* c #B97E29", +"z* c #AC7425", +"A* c #A56F24", +"B* c #9E6C23", +"C* c #895E1E", +"D* c #7C541C", +"E* c #D6AF60", +"F* c #D7B061", +"G* c #D7B162", +"H* c #D6B163", +"I* c #D8B263", +"J* c #D7B365", +"K* c #D8B566", +"L* c #D9B666", +"M* c #AD9152", +"N* c #836D3E", +"O* c #756339", +"P* c #BB9E5B", +"Q* c #DABA6B", +"R* c #BCA05C", +"S* c #75633A", +"T* c #DDBE6E", +"U* c #DFC373", +"V* c #AD9659", +"W* c #8C7A49", +"X* c #E1C878", +"Y* c #B77B28", +"Z* c #B07827", +"`* c #AA7325", +" = c #A36E24", +".= c #9B6A23", +"+= c #8E6120", +"@= c #81571D", +"#= c #7A531B", +"$= c #D5AE5F", +"%= c #D5AF61", +"&= c #B19454", +"*= c #7E693C", +"== c #766339", +"-= c #BA9D5A", +";= c #DBB86B", +">= c #C9AA62", +",= c #685833", +"'= c #B8A05F", +")= c #806F41", +"!= c #E0C474", +"~= c #B57A28", +"{= c #AE7527", +"]= c #8C5F1F", +"^= c #7E561B", +"/= c #714C18", +"(= c #D5AD60", +"_= c #D5AE60", +":= c #D6AE60", +"<= c #D7B062", +"[= c #D8B265", +"}= c #B69755", +"|= c #786439", +"1= c #776339", +"2= c #B99B59", +"3= c #D6B568", +"4= c #5B4D2C", +"5= c #D9B86A", +"6= c #C5AB65", +"7= c #72633B", +"8= c #C7862B", +"9= c #AC7426", +"0= c #8A5E1E", +"a= c #D4AC5E", +"b= c #D5AD5E", +"c= c #D5AD5F", +"d= c #D6AE61", +"e= c #BC9C58", +"f= c #725F36", +"g= c #B99B58", +"h= c #655531", +"i= c #CAAB62", +"j= c #D3B76C", +"k= c #645733", +"l= c #B77D28", +"m= c #A36F24", +"n= c #7A531A", +"o= c #734E19", +"p= c #D4AB5E", +"q= c #D7B164", +"r= c #C1A05A", +"s= c #6B5932", +"t= c #776438", +"u= c #B89A57", +"v= c #79663A", +"w= c #B69A58", +"x= c #5D502F", +"y= c #DABD70", +"z= c #C4862B", +"A= c #BC802A", +"B= c #B57B28", +"C= c #AE7627", +"D= c #A06D24", +"E= c #946320", +"F= c #7F551C", +"G= c #D4AA5C", +"H= c #D4AB5D", +"I= c #D5AC5E", +"J= c #D5AF60", +"K= c #C8A65D", +"L= c #64532F", +"M= c #7D683A", +"N= c #B19453", +"O= c #917945", +"P= c #9D844B", +"Q= c #6A5B36", +"R= c #CCB068", +"S= c #B37927", +"T= c #A57025", +"U= c #916220", +"V= c #7C551C", +"W= c #755019", +"X= c #D3AA5C", +"Y= c #D4AB5C", +"Z= c #D5AB5E", +"`= c #D4AD5E", +" - c #D6B162", +".- c #CEAB5F", +"+- c #5E4E2B", +"@- c #856F3E", +"#- c #A88C4F", +"$- c #AF9353", +"%- c #796539", +"&- c #DAB76A", +"*- c #DBBB6B", +"=- c #79683D", +"-- c #BDA360", +";- c #956621", +">- c #8F601F", +",- c #81581D", +"'- c #6E4C18", +")- c #D4A95B", +"!- c #D4AA5D", +"~- c #D3AB5D", +"{- c #D5AF62", +"]- c #574828", +"^- c #957B45", +"/- c #977D46", +"(- c #D4B164", +"_- c #655430", +":- c #BE9F5B", +"<- c #DCBE6F", +"[- c #867344", +"}- c #AF9758", +"|- c #AE7727", +"1- c #A16D23", +"2- c #936420", +"3- c #865A1D", +"4- c #7F561B", +"5- c #78521A", +"6- c #D2A85B", +"7- c #D3A85B", +"8- c #D3AA5B", +"9- c #D4AA5B", +"0- c #D5AC5F", +"a- c #D5AE61", +"b- c #5D4D2A", +"c- c #CDAA5F", +"d- c #AB8D50", +"e- c #7F683A", +"f- c #A4884D", +"g- c #7A663A", +"h- c #95804A", +"i- c #9F8850", +"j- c #C1832A", +"k- c #9E6C22", +"l- c #8B5D1E", +"m- c #835A1D", +"n- c #7D551B", +"o- c #D3A85A", +"p- c #D2A85A", +"q- c #D3A95A", +"r- c #D3A95C", +"s- c #D4A95C", +"t- c #D4AC5F", +"u- c #66542E", +"v- c #C3A059", +"w- c #CCA85E", +"x- c #5E4D2B", +"y- c #D3AF62", +"z- c #6C5A33", +"A- c #AA8D50", +"B- c #A48C51", +"C- c #8F7B47", +"D- c #C6862C", +"E- c #BF8229", +"F- c #AA7426", +"G- c #8F6020", +"H- c #81581C", +"I- c #744F1A", +"J- c #D2A759", +"K- c #D3A75A", +"L- c #D3A95B", +"M- c #715C33", +"N- c #B99754", +"O- c #7E683A", +"P- c #A2854A", +"Q- c #BC9C57", +"R- c #62512D", +"S- c #CAA95F", +"T- c #B49A5A", +"U- c #7E6C3E", +"V- c #DEBF6F", +"W- c #C4852C", +"X- c #B67A28", +"Y- c #8C601F", +"Z- c #865B1E", +"`- c #7F561C", +" ; c #D2A659", +".; c #D2A95B", +"+; c #7B6437", +"@; c #AE8D4F", +"#; c #D6B061", +"$; c #BB9956", +"%; c #63522D", +"&; c #CEAA5F", +"*; c #987F47", +"=; c #725F35", +"-; c #D5B164", +";; c #C3A660", +">; c #6E5D36", +",; c #BB7E29", +"'; c #AD7525", +"); c #A67124", +"!; c #926220", +"~; c #8B5E1F", +"{; c #D1A658", +"]; c #D2A658", +"^; c #D4AC5D", +"/; c #866D3C", +"(; c #A28449", +"_; c #907642", +":; c #7B6438", +"<; c #D6B264", +"[; c #846E3E", +"}; c #D3AE62", +"|; c #D4B567", +"1; c #5D4F2E", +"2; c #BF822B", +"3; c #8F6120", +"4; c #7B531A", +"5; c #744F19", +"6; c #D1A457", +"7; c #D1A557", +"8; c #D2A758", +"9; c #D2A859", +"0; c #937740", +"a; c #967A43", +"b; c #D4AD60", +"c; c #796437", +"d; c #8D7440", +"e; c #D5B063", +"f; c #8A7240", +"g; c #6E5B33", +"h; c #C1A15A", +"i; c #61522F", +"j; c #D0B166", +"k; c #A26D23", +"l; c #936421", +"m; c #8D601F", +"n; c #D1A556", +"o; c #D1A558", +"p; c #D2A75A", +"q; c #A18247", +"r; c #886D3C", +"s; c #D6AD5F", +"t; c #D0AA5E", +"u; c #6D5931", +"v; c #977C44", +"w; c #A5884C", +"x; c #604F2C", +"y; c #8E7642", +"z; c #CAA75F", +"A; c #BDA05C", +"B; c #C6882C", +"C; c #C2842B", +"D; c #BA7F29", +"E; c #B37A28", +"F; c #986722", +"G; c #916221", +"H; c #7D541B", +"I; c #D0A356", +"J; c #D0A355", +"K; c #D0A456", +"L; c #D1A657", +"M; c #D1A759", +"N; c #AF8D4C", +"O; c #796235", +"P; c #CBA55B", +"Q; c #69562F", +"R; c #9D8147", +"S; c #C9A65D", +"T; c #917843", +"U; c #60502D", +"V; c #7B6639", +"W; c #A0844A", +"X; c #C1A059", +"Y; c #D4B064", +"Z; c #846F40", +"`; c #AB9053", +" > c #C08229", +".> c #B97D28", +"+> c #B27827", +"@> c #885D1E", +"#> c #CFA255", +"$> c #D0A255", +"%> c #D1A356", +"&> c #D1A456", +"*> c #D3A859", +"=> c #BE9953", +"-> c #67532D", +";> c #D5AC5D", +">> c #D6AD60", +",> c #C6A159", +"'> c #67542E", +")> c #957A43", +"!> c #D7AF62", +"~> c #D1AB60", +"{> c #AE8F50", +"]> c #897140", +"^> c #6D5A33", +"/> c #594A29", +"(> c #5F4F2D", +"_> c #725E35", +":> c #856E3F", +"<> c #937A45", +"[> c #A68B4F", +"}> c #B29554", +"|> c #C2A35D", +"1> c #D4B165", +"2> c #967E48", +"3> c #998149", +"4> c #DCBA6D", +"5> c #AF7726", +"6> c #6E4A19", +"7> c #D0A455", +"8> c #D1A659", +"9> c #D3A759", +"0> c #CEA559", +"a> c #584726", +"b> c #D2A95C", +"c> c #D4AD5F", +"d> c #CAA55B", +"e> c #725D34", +"f> c #80693A", +"g> c #CCA95E", +"h> c #BA9A58", +"i> c #A68B4E", +"j> c #9C824A", +"k> c #8C7542", +"l> c #7B663A", +"m> c #5A4B2B", +"n> c #5C4D2C", +"o> c #645430", +"p> c #7C683B", +"q> c #CFA153", +"r> c #D0A154", +"s> c #D0A354", +"t> c #D0A557", +"u> c #D2A557", +"v> c #65512B", +"w> c #C09B54", +"x> c #D3AA5D", +"y> c #D5AB5D", +"z> c #D0A95E", +"A> c #846C3B", +"B> c #6A5730", +"C> c #C19E57", +"D> c #D2B063", +"E> c #AB8F51", +"F> c #715E36", +"G> c #C0832B", +"H> c #A46F25", +"I> c #CFA152", +"J> c #CFA253", +"K> c #D0A153", +"L> c #D1A355", +"M> c #7B6235", +"N> c #AA8848", +"O> c #A28348", +"P> c #604E2A", +"Q> c #A38549", +"R> c #D0AD62", +"S> c #BD8029", +"T> c #956420", +"U> c #CEA052", +"V> c #CFA052", +"W> c #CFA053", +"X> c #CFA154", +"Y> c #CFA254", +"Z> c #CFA355", +"`> c #93753E", +" , c #90733E", +"., c #C09C55", +"+, c #6C5830", +"@, c #7C6537", +"#, c #C6A25A", +"$, c #62522E", +"%, c #CCAB61", +"&, c #B47A27", +"*, c #CE9F51", +"=, c #CEA152", +"-, c #B18D4B", +";, c #705930", +">, c #D2A95A", +",, c #D0A95C", +"', c #937741", +"), c #5E4C2A", +"!, c #9A7E45", +"~, c #D2AC5E", +"{, c #776238", +"], c #B89956", +"^, c #9D6B23", +"/, c #895D1F", +"(, c #CD9E50", +"_, c #CE9E51", +":, c #CF9F52", +"<, c #CE9F52", +"[, c #CEA053", +"}, c #D0A254", +"|, c #CEA357", +"1, c #5C4A26", +"2, c #C69D54", +"3, c #C19D56", +"4, c #796236", +"5, c #6A562F", +"6, c #AF8E4E", +"7, c #8A7340", +"8, c #A1864B", +"9, c #BD812A", +"0, c #B07726", +"a, c #9C6922", +"b, c #CD9D4F", +"c, c #CE9E50", +"d, c #876A38", +"e, c #8E713B", +"f, c #B08F4D", +"g, c #6F5A32", +"h, c #AE8E4D", +"i, c #8C7441", +"j, c #BB8029", +"k, c #B47B28", +"l, c #AD7527", +"m, c #A06D23", +"n, c #85591D", +"o, c #CD9C4F", +"p, c #CE9D50", +"q, c #CD9E51", +"r, c #CF9F51", +"s, c #C49B51", +"t, c #5F4B27", +"u, c #B48F4B", +"v, c #D3AC5D", +"w, c #A8894B", +"x, c #6F5A31", +"y, c #9C7F46", +"z, c #CBA65B", +"A, c #756136", +"B, c #D9B669", +"C, c #9E6B22", +"D, c #CD9B4F", +"E, c #CC9C4F", +"F, c #CE9D4F", +"G, c #D1A455", +"H, c #D0A457", +"I, c #A88445", +"J, c #6B542C", +"K, c #B59350", +"L, c #836B3A", +"M, c #5D4C2A", +"N, c #705B32", +"O, c #957A44", +"P, c #AE8E4F", +"Q, c #B99854", +"R, c #CDA95E", +"S, c #CBA85D", +"T, c #7A521B", +"U, c #734D19", +"V, c #CD9B4D", +"W, c #CC9B4E", +"X, c #CC9C4E", +"Y, c #CD9C4E", +"Z, c #765D30", +"`, c #9C7B41", +" ' c #CEA658", +".' c #B4904D", +"+' c #B18E4D", +"@' c #BC9752", +"#' c #D0A75B", +"$' c #D0A85D", +"%' c #B18F4E", +"&' c #947942", +"*' c #7C6437", +"=' c #705C33", +"-' c #64522D", +";' c #594929", +">' c #5D4D2B", +",' c #574727", +"'' c #7A6438", +")' c #926421", +"!' c #8C5E1E", +"~' c #775119", +"{' c #CC9B4D", +"]' c #CD9B4E", +"^' c #CD9D50", +"/' c #BE954E", +"(' c #5E4926", +"_' c #C59A52", +":' c #BB9651", +"<' c #5F4C29", +"[' c #6F5930", +"}' c #755E32", +"|' c #68532D", +"1' c #5B4A28", +"2' c #7A6335", +"3' c #AC8A4A", +"4' c #CCA75C", +"5' c #745F34", +"6' c #9C8047", +"7' c #D8B164", +"8' c #D8B565", +"9' c #C6872C", +"0' c #C1842B", +"a' c #74501A", +"b' c #CB9A4C", +"c' c #CC9A4C", +"d' c #8E6F3A", +"e' c #7F6334", +"f' c #775E33", +"g' c #9F7F44", +"h' c #CDA458", +"i' c #A78648", +"j' c #6C572F", +"k' c #C59F56", +"l' c #937842", +"m' c #8E6020", +"n' c #79531B", +"o' c #CB994B", +"p' c #CB994C", +"q' c #CC9A4D", +"r' c #CB9F53", +"s' c #644E29", +"t' c #A58144", +"u' c #D2A558", +"v' c #594726", +"w' c #CAA055", +"x' c #D0A759", +"y' c #92763F", +"z' c #624F2A", +"A' c #AD8D4E", +"B' c #A77225", +"C' c #7E561C", +"D' c #CB984B", +"E' c #CC994B", +"F' c #CC994C", +"G' c #B9904A", +"H' c #B58E4A", +"I' c #C89E54", +"J' c #5B4826", +"K' c #C39C54", +"L' c #C8A259", +"M' c #604E2B", +"N' c #B27928", +"O' c #7C531C", +"P' c #CB974A", +"Q' c #CB984A", +"R' c #CB9A4D", +"S' c #AB8445", +"T' c #AC8645", +"U' c #B58E4B", +"V' c #6D552D", +"W' c #A18045", +"X' c #66522C", +"Y' c #CAA258", +"Z' c #63502C", +"`' c #C4A058", +" ) c #D7AF61", +".) c #C5852C", +"+) c #BE8129", +"@) c #734E1A", +"#) c #CA974A", +"$) c #CB9749", +"%) c #CA984A", +"&) c #B08A47", +"*) c #604B27", +"=) c #775D31", +"-) c #A37F43", +";) c #B48D49", +">) c #B18C49", +",) c #745A2F", +"') c #94743D", +")) c #8B703C", +"!) c #776033", +"~) c #7E6638", +"{) c #A78749", +"]) c #BC7F2A", +"^) c #CA9648", +"/) c #CB9649", +"() c #CA9749", +"_) c #CB984C", +":) c #CA9D51", +"<) c #9D7B3F", +"[) c #7F6333", +"}) c #6D552C", +"|) c #6F572D", +"1) c #92723B", +"2) c #CDA053", +"3) c #D0A659", +"4) c #705A30", +"5) c #9B7B42", +"6) c #9C7E44", +"7) c #886E3C", +"8) c #CB953E", +"9) c #BA7E28", +"0) c #B37827", +"a) c #9F6B23", +"b) c #CA9649", +"c) c #CC9B4C", +"d) c #D2A657", +"e) c #BF9952", +"f) c #5F4B28", +"g) c #B38E4C", +"h) c #69552E", +"i) c #D6AE5F", +"j) c #C4872D", +"k) c #C0812A", +"l) c #966521", +"m) c #744E19", +"n) c #C99447", +"o) c #CA9548", +"p) c #5F4C28", +"q) c #B38F4C", +"r) c #5D4B28", +"s) c #C7A057", +"t) c #D2A554", +"u) c #B18C4A", +"v) c #614D29", +"w) c #A48345", +"x) c #7D6436", +"y) c #A58447", +"z) c #CB953F", +"A) c #976722", +"B) c #704B18", +"C) c #CA9447", +"D) c #CC984B", +"E) c #D0A155", +"F) c #D0A556", +"G) c #BF9751", +"H) c #66512B", +"I) c #806637", +"J) c #C49B53", +"K) c #A28145", +"L) c #C7882E", +"M) c #C99345", +"N) c #C99446", +"O) c #C99548", +"P) c #C99547", +"Q) c #CDA256", +"R) c #8F713C", +"S) c #5C4926", +"T) c #8F723C", +"U) c #C89F55", +"V) c #C79F55", +"W) c #5C4927", +"X) c #CFA659", +"Y) c #D2A454", +"Z) c #9B6822", +"`) c #C89245", +" ! c #C89446", +".! c #C99346", +"+! c #C49A53", +"@! c #836837", +"#! c #8A6E3B", +"$! c #64502B", +"%! c #AC8949", +"&! c #CC9641", +"*! c #C79244", +"=! c #C89345", +"-! c #C89346", +";! c #CA9549", +">! c #CE9E52", +",! c #C59C53", +"'! c #92733D", +")! c #5D4A27", +"!! c #7C6235", +"~! c #C78A30", +"{! c #AA7326", +"]! c #9C6A23", +"^! c #C79044", +"/! c #C79144", +"(! c #C89246", +"_! c #CCA255", +":! c #9E7D43", +"~ c #C48A3E", +",~ c #C48B3E", +"'~ c #C68C40", +")~ c #EFBB67", +"!~ c #EBB761", +"~~ c #DDA751", +"{~ c #D49D44", +"]~ c #E6AF4F", +"^~ c #E1AA46", +"/~ c #D09A39", +"(~ c #865C1D", +"_~ c #8A601C", +":~ c #714D1A", +"<~ c #C48A3C", +"[~ c #C48A3D", +"}~ c #EFBA65", +"|~ c #EAB55E", +"1~ c #E9B35A", +"2~ c #E4AE50", +"3~ c #E1A949", +"4~ c #DDA642", +"5~ c #E1A83D", +"6~ c #A27227", +"7~ c #A97823", +"8~ c #C38C23", +"9~ c #DB9D1F", +"0~ c #996A19", +"a~ c #624119", +"b~ c #C4893C", +"c~ c #C58B3D", +"d~ c #ECB864", +"e~ c #E9B45C", +"f~ c #E5B055", +"g~ c #E2AC4D", +"h~ c #E0A846", +"i~ c #DCA43F", +"j~ c #D9A138", +"k~ c #D79E32", +"l~ c #D3992A", +"m~ c #D09523", +"n~ c #CB901C", +"o~ c #BE8615", +"p~ c #C3893C", +"q~ c #EBB760", +"r~ c #E8B35A", +"s~ c #E4AF52", +"t~ c #E0AB4B", +"u~ c #DEA744", +"v~ c #DBA33D", +"w~ c #D8A036", +"x~ c #D49B2F", +"y~ c #D19727", +"z~ c #CE9420", +"A~ c #CB901A", +"B~ c #C98E13", +"C~ c #C4883C", +"D~ c #C48B3D", +"E~ c #EAB45D", +"F~ c #E7B158", +"G~ c #E3AE51", +"H~ c #E0AA49", +"I~ c #DDA641", +"J~ c #DAA23B", +"K~ c #D69E34", +"L~ c #D39A2C", +"M~ c #D09625", +"N~ c #CD921E", +"O~ c #CB9018", +"P~ c #C3883B", +"Q~ c #E6B055", +"R~ c #E2AD4E", +"S~ c #DFA946", +"T~ c #DCA540", +"U~ c #D8A039", +"V~ c #D59C32", +"W~ c #D2992A", +"X~ c #CF9523", +"Y~ c #CC921C", +"Z~ c #E7B259", +"`~ c #E6B054", +" { c #E2AB4C", +".{ c #DEA844", +"+{ c #DBA33E", +"@{ c #D79F37", +"#{ c #D59B2F", +"${ c #D19728", +"%{ c #CE9422", +"&{ c #E6B157", +"*{ c #E1AA4A", +"={ c #DDA643", +"-{ c #D79E34", +";{ c #D49B2C", +">{ c #D19726", +",{ c #E3AD4E", +"'{ c #DFA947", +"){ c #DCA440", +"!{ c #D69D32", +"~{ c #E2AC4C", +"{{ c #DFA744", +"]{ c #DBA43D", +"^{ c #D89F36", +"/{ c #D59C30", +"({ c #D19828", +"_{ c #E8B04C", +":{ c #E1A944", +"<{ c #DBA33B", +"[{ c #D69C30", +"}{ c #8E6C2D", +"|{ c #C7943A", +"1{ c #E4A93B", +"2{ c #D89F33", +"3{ c #070503", +"4{ c #000000", +"5{ c #413011", +"6{ c #120D05", +"7{ c #1C1507", +"8{ c #281D0B", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" . + @ # $ % & * = = = - - ; > , ' ' ' ) ! ~ { ] ^ / / ( ( ", +" _ : < [ } | | 1 2 . 3 @ 4 5 5 * 6 = 7 8 9 - 0 , a , b c c ~ d ] ] e e / f f f f ( f f f ( f g ", +" _ : : h i } } j | k 2 . . l @ m 4 n * * = = 9 9 - - o > ' b b c ] ! { ] ^ ( p f f f f f g f f f ( f ( g f f ", +" : _ : q r s t i } } u | v k 2 w @ @ 4 5 % & * = = 8 - 0 ; o ' x b b ) ~ ] ] ^ / y ( f ( f ( f f f f f z f ( ( ", +" : : _ A r B C D E t t F } } | | k 2 @ G $ H 4 I * * = J 9 - 0 > a o ' b b K ] ! ] { / / / ( f f f f ( f f z f ", +" : _ : L M N O P Q R S E t T < } } | k U 2 w @ @ # 4 % * 6 7 9 V W ; a > X ' b c ) ! { ] ^ Y ( Z f f f f f f g ( ", +" : : : A M ` O ...+.@.@.R S S t i t } j | | k w w + @ @ 5 * % 6 7 = = 9 > #., o $.%.c c ] ~ ^ e y ( Z f f ( ( f f ", +" : : _ &.*.=.O -.;.>.,.@.'.@.@.S t s t t < } | | k U 2 . @ $ $ n * * = = J - - - > a o ' ' b ~ ).! ] ^ e ( ( f f ( g !.~.{.].^./. ", +" _ _ : (._.:.<.[.}.|.1.2.3.2.@.4.@.@.D S 5.t F } [ [ | | 2 2 @ @ # m * & * = = = 6.7.0 a > a ' 8.8.~ ! ] ^ ^ / y ( f ( 9.!.0.a.b.c.d.e.f.g. ", +" : : _ h._.i.j.k.l.m.n.o.o.o.3.3.+.,.+.@.Q S S p.t < [ u q.| k 2 2 w @ @ 4 5 % * * r.s.9 - 0 0 a ' ' t.c ! ] d u.e / ( / v.w.x.y.z.A.B.C.D.E. ", +" : : _ h.F.G.B H.l.I.J.K.L.M.N.o.O.3.2.,.'.4.@.R P.p.t t t i | q.k U . 2 w $ $ 4 4 I Q.R.J 9 - W ; > > ' o c ) c ).! ] { S.T.U.V.W.X./.Y.Z.`. +.+++ ", +" _ : : h.F.@+#+$+%+&+J.*+=+-+;+L.>+o.3.,+2.'++.,.@.@.Q D S p.t i [ [ j | 2 2 @ @ @ # 4 )+!+* = J 9 9 0 > > > ' ' t.c ~+~ ] {+]+^+/+(+_+:+<+[+}+|+1+2+ ", +" : : _ : L 3+B $+4+&+5+6+7+8+9+0+0+L.L.N.o.3.3.a+b+,.4.4.c+P.D E p.t } [ j j | k k 2 @ @ d+e+& * 6 = = 9 9 0 0 > o ' ' ' c ~ f+g+h+i+j+k+l+m+n+o+p+q+r+ ", +" : : s+t+u+B $+P I.5+v+w+x+y+z+A+B+C -+C+D+L.N.E+F+G+G+,.4.4.P.D D s t < i [ j | k k . + H+I+4 5 5 * J+J+= 8 - 0 > > o ' b c K+L+M+N+O+P+Q+R+S+T+U+V+W+X+ ", +" Y+Z+`+ @.@+@.@@@#@$@%@&@*@=@-@;@>@,@'@>.)@!@L.L.~@{@N.o.3.2.,.]@@.Q Q D S t i F } j | v k . ^@/@4 # 4 n * * 6 = 9 9 0 0 a ' $. (@_@:@<@[@}@|@1@2@3@4@5@6@7@ ", +" u+8@8@Z+Z+`+`+9@9@0@@@a@b@=@=@c@d@e@f@g@h@i@j@1.1.k@l@m@N.o.3.3.,.'.n@@.@.D S p.t i } } j o@| p@q@. @ 4 4 % * I 6 6 = J - 0 0 > r@s@t@u@v@w@x@y@z@A@B@C@D@ ", +" E@F@u+G@Y+Y+t+`+`+H@+@I@I@9@J@K@c@L@M@;@N@O@P@Q@'@R@S@L.L.L.o.T@3.,.G+,.@.@.Q S D S t t } [ | U@V@v + @ w 4 m 4 % I 7 J = W@9 - X@Y@Z@`@ #.#+#@###$#%#&#*#=# ", +" -#;#F@F@>#>#8@Y+Y+`+,#H@H@.@.@@@@@'#)#!#~#{#]#^#N@h@/#(#C L.L.N.m@o.,+T@2.+.,.'.@.@.S p.p.t } < _#:#| k 2 2 G @ $ $ 5 5 * = = = W@ X@<#[#}#|#1#2#3#4#5#6#7#8#9# ", +" 0#-#;#E@F@$@>#>#a#b#Z+`+c#.@H@.@d#@@e#f#K@c@g#h#N@;@i#j#>.C -+L.L.m@o.,+o.3.k#2.4.@.@.@.S S s t l#m#[ u | | k w @ $ $ m 4 n#* = 6 o#p#q#r#s#t#u#v#w#x#y#z#A# ", +" B#B#0#0#C#D#F@>#u+u+u+a#Y+Y+`+`+.@.@E#F#G#H#I#J#~#~#K#L#M#g@>.C 1.L.>+m@m@N.,+3.k#,.'.'.@.S D N#O#P#i [ } j | Q#U . @ $ $ 4 I * * R#S#Z@T#U#V#+#@#W#X#Y#Z#`# $ ", +" .$.$.$+$0#0#-#E@;#F@u+>#a#8@Z+Z+`+9@@$#$@@@@$$%$K@&$*$=${#N@h@g@g@>.-+L.L.m@-$3.T@3.,.;$+.'.@.Q >$,$E t < [ } u | v 2 l @ $ @ 4 4 '$<#)$!$~$1#{$]$^$/$($_$:$<$ ", +" [$}$.$.$|$1$0#0#-#;#;#>#>#u+a#Y+2$`+3$4$.@+@5$6$7$8$9$0${#~#;@;@g@g@g@1.a$L.L.>+N.N.3.3.,.,.+.@.b$c$S D N#t } } j q.| k . @ w @ $ d$e$q#f$g$h$i$j$k$x#y#l$m$ ", +" n$n$o$p$p$.$|$B#B#-#0#-#q$F@$@>#8@r$a#s$t$`+H@u$v$@@a@w$x$c@~#;@{#d@N@N@>.'@1.1.-+y$>+o.N.3.3.k#,.z$A$@.c+D S t } i } j j | k k + Y@Z@B$C$D$E$F$G$H$Y#I$J$K$ ", +" L$M$M$o$o$p$}$}$.$.$+$0#-#;#;#>#>#>#8@N$t$`+Z+O$P$9@@@@@Q$R$K@S$~#{#;@;@g@h@>.g@1.T$L.L.N.U$o.,+3.V$W$'.@.S Q S E t t } [ u | | | R#<#X$Y$~$1#Z$`$ %.%+%@%#%9# ", +" $%%%&%M$M$o$o$*%=%}$-%|$B#1$0#;#E@F@>#;%>%8@Y+,%'%`+,#.@)%!%#@@@K@K@~#~%N@N@N@g@>.'@-+L.L.>+M.o.,+{%]%k#,.'.@.@.Q D E s t i } u | '$^%/%(%_%:%i$<%k$[%}%|%1%2% ", +" 3%4%%%L$&%M$n$o$o$[$.$.$|$5%1$0#0#;#q$6%7%>#u+s+8%8@`+ @9%0%+@I@@@'#c@~#~#{#N@M#h@g@g@Q@C C L.L.m@a%b%3.2.k#+.'.@.c+R E D t } } } Y@c%d%C$e%+#f%G$g%h%i%j%k% ", +" l%m%n%$%%%o%&%M$n$p%o$o$p$}$|$+$0#0#;#q%r%F@F@u+s%t%a#Z+u%v%H@.@I@@@H#K@'#c@~#-@;@h@h@h@g@C -+1.L.w%{@N.3.3.3.,.@.4.@.Q R t 5.t t o#x%y%z%A%1#2#B%C%.%D%E%#%F% ", +" G%l%n%4%n%4%$%%%%%M$M$o$p%p$}$.$.$+$1$q%H%-#F@E@I%J%u+8@K%L%`+ @.@.@@@M%H#'#c@~#~#~#d@;@N%g@g@C C O%P%L.>+N.3.3.'+,.,.'.@.D @.S E '$Q%q#r#R%:%i$S%k$T%U%|%V%9# ", +" W%X%X%l%l%n%4%$%o%M$Y%n$n$p%p$[$p$Z%|$`%H%0#-#-# &.&s+u++&@&2$Z+`+,#.@.@@@#&'#H#K@K@~#~#-@;@N%>.g@$&%&-+L.o.N.,+3.3.2.2.+.@.c+c+Q r@c%B$U#&&*&=&-&g%;&i%j%k% ", +" >&,&X%'&'&l%n%m%$%%%)&!&M$n$n$o$p$~&}${&]&|$^&0#/&(&q$$@_&:&u+Y+Z+Z+`+`+.@.@@@@@#@'#c@<&~#{#;@N@g@;@[&{#-+L.L.-$o.T@3.3.3.+.'.4.@. '$}&|&1&~$2&3&4& %5&($6&7&F% ", +" 8&>&>&9&0&'&G%l%m%n%4%)&%%&%&%M$a&o$[$b&c&}$|$|$d&e&;#q$f&g&>#8@h&Y+a#Z+,#`+9@.@@@I@'#'#c@~#~#{#;@g@i&j&g@C C ;+L.-$N.T@O.3.G+,.,. k&e$/%l&m&n&o&p&q&r&U%l$s&<$ ", +" t&t&>&u&,&,&X%X%v&G%3%w&$%$%%%&%L$n$x&y&z&}$}$}$A&B&0#0#C&D&;#F@u+8@8@Y+Z+E&`+`+9@.@@@@@a@K@K@~#-@;@F&G&g@g@C C 1.L.M.m@N.T@,+3.k# H&c%B$f$I&*&J&K&L&M&N&j%O& ", +" P&Q&R&8&8&S&>&9&X%X%T&3%l%4%4%%%%%%%L$U&V&o$p$}$W&X&|$0#Y&Z&-#;#q$E@>#u+Y+Y+Z+`+,#9@,#+@I@@@K@a@c@~#`& *;@N@g@>.>.C -+;+L.N.N.,+U$ .*+*|&@*A%#*3&$*%*5&&***=*F% ", +" -*;*P&Q&>*8&u&>&>&,*X%'&'&n%l%4%$%%%%%'*)*M$n$[$!*~*}$.$H%q%1$-#-#E@E@F@>#u+a#Y+Z+Z+`+,#,#I@@@a@@@'#{*]*~#N@;@h@N%g@>.^*a$a$L.L.o. R#/*(*_*_%:*<*[*}*|*U%1*2*F% ", +" 3*-*-*-*4*4*8&8&8&,&,&0&0&'&G%l%m%4%$%5*6*&%M$M$7*8*}$}$9*0*|$B#0#0#-#;#$@u+u+8@8@Y+Z+`+`+.@.@+@@@G#a*b*c@~#{#;@;@g@g@g@9+1.-+-+>+ c*c%B$f$&&d*e*G$f*M&N&z#K$ ", +" g*h*i*j*-*-*P&Q&R&8&k*l*,&0&9&X%G%G%m%m*n*%%%%&%o*p*n$[$q*r*}$.$B#s*-#-#-#;#F@E@u+u+Y+2$t+`+,#9@.@I@t*u*K@'#S$c@{#N@N@h@g@g@v*C a$ w*x*y*z%z*A*B*B% %C*&*D*=*9# ", +" E*g*F*i*G*H*-*-*I*J*Q&R&k*S&K*X%L*X%G%M*N*4%$%o%O*P*Q*n$R*S*}$}$Z%.$B#+$T*-#q$F@q$>#u+u+8@a#`+`+U*H@V*W*@@a@a@'#c@~#~#d@N@X*g@g@1. R#/*Y*Z*`* =.=[*+=/$@=#=2*<$ ", +" $=%=E*g*i*i*i*H*-*-*4*>*t&8&8&S&>&0&0&&=*=l%n%4%==-=L$;=>=,=o$o$o$}$.$|$+$0#0#-#-#q$$@u+u+8@Y+Z+Y+`+'=)=.@!=@@@@a@c@c@~#-@;@h@h@g@ c*c%~={=I&h$e*-&]=h%^=z#/= ", +" (=_=_=:=g*g*g*i*<=G*-*-*Q&[=R&8&S&,&9&}=|=G%G%l%1=2=$%%%3=4=5=x&o$p%p$.$.$.$1$0#T*-#D#E@F@>#u+8@a#Y+6=7= @ @.@+@@@K@K@~#c@~#{#;@;@ 8=x*y*z%9=#*3&B%W#0=&*6&`#<$ ", +" a=b=c=(=(=d=g*g*i*i*j*-*-*Q&Q&Q&8&8&>&e=f=9&X%T&1=g=4%4%%%h=i=Y%Y%n$n$}$}$}$.$-%B#0#0#-#-#E@F@>#8@r$j=k=Y+`+9@9@9@@@#@H#K@c@c@c@~# k&/*l=Z*`*m=o&[*^$r&6#n=o=<$ ", +" p=a=a=c=_=$=_=%=%=g*F*<=<=j*P&q=4*R&8&r=s=,&K*0&t=u=l%m%4%v=w=%%&%&%n$o$n$o$p$.$.$|$|$^&-#C#;#;#E@u+$@x=y=Y+Z+`+9@9@.@!=I@H#H#'#~# z=A=B=C=s#D=e*E=w#M&F=j%A# ", +" G=H=p=I=I=c=c=(=_=J=d=g*i*<=-*G*P&Q&Q&K=L=8&8&,&M=N=X%v&l%O=P=4%%%%%%%Y%n$o$o$[$}$.$.$|$+$1$-#D#;#F@E@Q=R=8@b#E&Z+`+,#H@I@I@a@@@'# R#x*Z@S= #T=B*B%U=5&&*V=W=O& ", +" X=Y=H=H=Z=a=`=c=_=:=:=E*g*g*i*<= --*P&.-+-Q&[=8&@-#-9&X%'&$-%-m%3%4%&-&%&%&%M$o$*-p$p$}$.$+$+$+$-#-#E@=---u+u+8@Z+2$Z+`+.@9@I@@@a@ R#/*(*Z*`*m=Z$;->-/$,-#=o='- ", +" )-X=X=!-~-p=Z=I=I=c=c=_=_=E*%=h*F*i*<={-]--*4*8&^-/->&>&9&(-_-:-3%3%4%$%)&$%Y%M$M$x&p%p$p$}$-%+$B#<--#[-}-E@E@u+u+8@a#2$`+ @.@H@.@ z=A=B=|-s#1-e*2-H$3-4-5-m$ ", +" 6-7-8-9-G=X=!-H=a=I=0-c=c=$=a-:=g*h*i*<=b-c--*P&d-e-R&>&>&,&f-g-'&X%3%4%4%4%&-%%M$Y%n$o$p%[$}$}$-%|$1$h-i-D#q$F@>#u+u+Y+Y+`+`+`+ @ X@j-Z@`@ ##*k-B%U=l-m-n-`#F% ", +" o-p-q-7-r-s-X=H=!-p=Z=t-b=c=(=:=_=g*g*g*u-v-G*-*w-x-y-8&8&l*H*z-A-X%'&G%l%3%4%&-$%L$M$M$n$p%p%}$~&|$|$B-C-^&-#-#q$q$>#>#u+a#Y+Y+`+ D-E-)$!$F-m=o&S%G-/$H-_$I-F% ", +" J-K-K-o-L-L-s-8-X=H=H=H=p=a=b=c=$=_=:=a-M-N-<= -j*O-P-4*t&[=8&Q-R-S-W%X%T&l%G%n%n%4%%%&%L$L$M$p%o$}$~&T-U-1$^&0#0#D#V-F@>#>#Y+a#Z+ W-A=X-(%s#1-u#2-Y-Z-`-|%m$ ", +" ; ;J-K-o-p-.;L-)-G=X=X=H=H=p=I=c=c=c=$=+;@;g*#;i*$;%;&;q=Q&R&R&*;=;-;0&X%X%'&'&3%w&4%%%%%o%&%n$o$a&p%;;>;.$.$B#+$^&;#;#q$F@u+u+G@ o#S#,;`@';);+#@#!;~;Y#n-`#F% ", +" {;];{; ;J-p-p-L-L-)-L-r-G=!-H=a=^;a=b=(=/;(;E*E*g*h*_;:;#;-*Q&P&<;[;%-};,&K*X%X%X%l%4%4%4%%%$%&%&%Y%o$|;1;}$}$.$B#|$1$0#;#;#F@F@u+u+ o#2;)$}#A%m={$4&3;/$H-4;5;F% ", +" 6;7;7;{;8; ;J-9;o-o-7-L-r-X=X=Y=H=H=I=I=0;a;(=:=:=g*b;c;d;G*j*-*-*e;f;g;h;8&,&X%X%X%'&G%n%n%4%o%%%M$&%n$i;j;o$[$}$}$+$0#1$0#-#-#E@F@ d$^%/%(%s#k;u#l;m;Z-`-l$1% ", +" 6;n;7;7;o;];];8;J-p;o-6-7-L-r-G=~-H=H=a=q;r;c=s;(=_=_=t;u;v;i*i*-*-*P&w;x;y;z;,&>&K*X%X%G%G%n%4%4%)&%%&%7*A;M$o$[$~&.$|$|$B#+$0#-#q$ B;C;D;E;U#);*&F;G;L&h%H;J$K$ ", +" I;J;K;6;6;7;L;{; ;M;J-o-o-7-6-L-r-X=X=G=N;O;I=I=0-$=:=_=P;Q;R;g*i*j*-*-*S;T;U;V;W;X;Y;,&W%X%'&3%G%w&$%%%Z;`;M$n$M$p%p$~&}$|$|$|$0#-# R# >.>+>F-1#{$4&^$@>($E%I-F% ", +" #>$>%>I;K;&>7;o;{;];]; ;p;*>o-.;L-L-r-G==>->;>^;a=I=0-s;>>,>'>)>%=!><=G*H*-*~>{>]>^>/>(>_>:><>[>}>|>1>4%2>3>L$&%M$n$n$p$4>}$}$|$+$B# d$p#/%5>_%:%i$j$w#Z-U%|%1%6> ", +" #>J;J;7>K;&>K;7;o;L;];8> ;9>o-o-7-7-L-0>a>b>H=p=a=I=c>b=c=d>e>f>t;g*#;<=j*-*-*P&4*R&g>h>i>j>k>l>z-m>n>o>p>&-$%&%Y%M$n$n$n$4>[$.$B# C;D;B$C$D$+#@#W#f*Y#n-j%F% ", +" q>r>$>s>J;J;&>&>t>6;u>u>{;8;J-K-p;o-6-L-v>w>x>!-H=I=y>I=c=c=z>A>B>C>g*g*#;<=i*-*P&4*4*4*8&S&8&>&0&0&D>E>F>4%4%$%$%%%o%M$M$n$p%}$~& X@G>y%+>~$H>3&4&3;.%+%E%I- $ ", +" I>q>J>K>$>$>J;L>I;6;6;7;7;{;];{;J-p;o-6-M>N>8-L-!-!-H=H=p=a=I=c=O>P>Q>g*g*g*g*i*-*-*-*P&Q&4*8&8&,&>&W%R>(>G%G%4%4%$%$%%%&%n$p%n$o$ R#S>/%r#_%:%<*T>m;T%U%l$1%<$ ", +" U>V>W>q>X>Y>r>Z>J;L>&>6;7;6;7;];];];J-9>`> ,q-L-L-G=G=G=H=;>a=I=a=.,+,@,#,g*g*#;i*i*i*H*;*4*4*R&8&8&>&>&$,%,'&'&G%w&4%$%)&o%o%M$n$ r@Z@&,C$&&E$J&-&f*Y#I$j%k% ", +" *,*,U>V>=,K>K>Y>Y>J;J;J;I;&>6;o;7;];8>8;-,;,9;7->,L-X=X=X=H=H=H=a=0-,,',),!,~,%=g*h*i*<=H*-*P&Q&4*J*8&8&{,],X%X%'&G%m%m%$%$%)&%%M$ X@}&y%z%A%1#^,$* %/,($_$#%<$ ", +" (,_,*,:,<,[,q>W>J>},Y>s>L>I;K;6;7;7;o;o;|,1,2,p;p-o-L-L-r-G=!-H=H=^;I=0-3,4,5,6,:=d=#;g*i*<=-*-*P&Q&[=R&7,8,k*K*0&'&T&l%3%4%4%%%%% '$9,(*0,R%n&a,p&q&r&U%|%1%F% ", +" b,(,c,_,*,U>W>[,q>q>q>X>J;J;J;7>%>6;7;7;o;d,e,8>J-9;p;p-L-r-8-X=!-H=p=a=^;I=f,+,g,h,b;g*h*F*F*<=<=-*I*4*W;i,8&u&S&0&X%X%'&3%l%n%4% r@j,k,l,&&m,J&G$g%n,i%j%k% ", +" o,b,p,q,_,*,<,r,:,I>q>X>q>},},J;I;I;K;n;7;s,t,u,];8;J-9>o-o-7-L-8-G=Y=!-H=a=I=v,w,x,5,y,z,g*g*h*i*G*-*-*}=A,8&R&8&S&0&0&X%X%G%G%B, R#x*y*z%A%2&C,$*U=.%+%D*#%<$ ", +" D,E,b,b,F,(,_,*,<,V>W>V>q>X>Y>Y>Y>$>G,I;K;H,I,J,H,{;];J-9>9;p-o-L-L-L-G=X=!-;>^;I=~-K,L,M,N,O,P,Q,#,R,G*S,x-H*Q&[=[=8&S&,&,&X%X%X% '$S>Y*_*m&:%a,<%k$r&U%T,U,F% ", +" V,W,X,Y,b,F,(,(,_,r,<,*,V>W>q>X>r>},Y>s>I;I;&>Z,`,7;o;{;M;J-J-9;o-o-q- '.'+'@'#'H=Z=0-I=$'%'&'*'='-'M,;'>','''-*Q&Q&J*8&S&S&,&0&X%X% H&c%&,f$&&m,e*)'!'h%^=~'A# ", +" {']'X,]'Y,b,^'^'c,q,_,*,:,<,W>q>K>Y>},$>J;J;/'('_'7;u>];];{;J-p;p-:'<'['}'|'1'2'3'^;p=I=b=c=(=c=_=d=t;4'5'6'j*-*;*7'4*t&R&8&S&8'9& 9'0'y%+>z*#*^,$*U=0=&*6&a'F% ", +" b'c'V,W,X,Y,E,b,F,^'(,_,*,*,U>U>W>W>X>X>Y>$>J;d'e'K;&>7;7;];];J-J-f'g'p-p-L-h'i'j'2'k'H=H=I=c=c=(=_=_=g*l')><=i*3*-*q=P&Q&t&8&S&S& '$/*(*l&m&:%a,[*m'r&U%n'o=<$ ", +" o'p'q'q'{'V,X,E,Y,^'F,c,c,_,*,:,:,V>V>W>q>},Y>r's't'I;&>&>7;o;u'8>v'w'9;9;p-.;L-x'y'z'=>H=p=a=0-c=c=c=:=A'+;J=g*<=G*G*-*7'Q&8&R&8& d$j,B={=B'h$e*G$]=h%C'z#k% ", +" D'p'E'F'q'{'V,W,W,o,o,^'b,(,c,*,*,:,:,W>W>q>X>Y>G'('H'I;K;&>&>6;I'J' ;J-9>9;*>p-7-L-i'z'K'H=H=y>Z=I=c=c=L'M':=g*g*g*<=3*H*-*P&4*4* D-x*y*N'~$T=B*B%W#/,&*O'`# $ ", +" P'Q'o'o'E'R'R'q'{'W,W,Y,o,o,F,c,_,_,r,:,V>V>W>q>r>S'('T'I;I;K;6;U'V'o;];]; ;J-p;p;7-7-W'X'Y'x>G=H=y>p=0-0-Z'`'$=a-:=g* )h*<=G*-*-*I* .)+)(*Z*`* =o&;-}*r&6#T,@)9# ", +" #)$)P'%)D'p'p'c'c'q'{'V,X,]'o,b,(,c,_,_,r,:,V>[,W>q>&)*)=)-);)>),)')&>7;o;{;];J-J-p;p-p-))!)L-s-!-H=H=p=I=~){)c=_=:=:=g*g*F*#;i*3*-* r@])~=f$B'D=u#G$w#x#F=z#k% ", +" ^)/)()P'Q'D'_)p'F'q'{'{'W,Y,o,b,b,F,(,(,*,*,*,U>V>V>:)<)[)})|)1)2)&>n;7;7;7;{;8;J-J-p;3)4)5))-8-r-G=H=p=6)7)t-0-c=$=:=_=E*g*#;<=G*8)S#9)0)9=#*a)F;U=~;&*D*`#F% ", +" ^)b)b)()%)P'D'D'E'F'c'R'c){'X,]'Y,o,b,p,^'c,*,*,<,:,U>q>X>},},},$>J;%>K;H,&>7;d)]; ;8;J-e)f)g)q-L-L-r-G=:'h)^;a=c=b=c=i)_=:=g*h*F*j)k)l=}#m&m={$l)^$@>H-#=m)F% ", +" n)o)b)b)b)#)P'#)D'D'_)o'c'q'q'{']'Y,o,o,^'p,c,_,_,r,:,U>W>W>q>Y>Y>},J;J;7>%>6;6;7;{;{;{;J-g)p)q)q-q-L-r-L-r)s)H=a=I=a=c=c=(=_=E*t)r@])~=|-B'1-u#j$Y-M&^=z#m$ ", +" n)n)o)o)^)b)()()$)%)D'p'o'E'c'q'q'W,X,E,Y,o,b,(,p,_,_,r,:,:,[,q>K>Y>},$>$>I;I;&>K;6;7;u' ;J-u)v)w)p-6-q-)-x)y)H=!-H=p=I=I=0->>(=z)Y@Z@`@ #.#+#A)U=0=&*n-=*B) ", +" n)n)n)C)o)b)()b)()Q'Q'D'D)E'b'b'c){'V,W,Y,Y,o,F,F,c,_,*,<,:,V>[,K>K>Y>E)$>J;L>I;&>F)6;7;];];G)H)I)J)6-7-K)I)G=!-x>H=H=a=I=0-c=L)<#(*}#|#1#o&;-^$@>H-#=o=<$ ", +" M)N)N)N)O)P)^)^)b)b)P'%)Q'D'o'o'F'q'q'q'W,X,X,o,b,F,p,(,*,_,*,V>:,q>q>J>r>},$>J;J;%>H,6;7;o;{;Q)R)S)T)U)V)W)X)L-G=X=!-H=p=a=Y)c*p#B=r#s#1-Z)2-m;x#`-5-m$ ", +" `)M)M) !.!n)P)o)O)O)b)()()Q'Q'o'D'o'p'q'q'{'V,]'Y,o,b,b,(,_,_,_,U>V>V>W>q>q>r>},$>$>7>&>&>7;7;o;u'+!@!W)#!$!%!7-L-L-s-G=G=H=&!S#9)`@ #D$+#F;U=0=;&H;`#'- ", +" *!`)=!-!-!n)n)n)P);!^)()#)#)P'%)Q'_)F'c'R'q']'W,]'E,o,b,b,(,(,_,>!<,:,V>q>q>X>Y>},J;J;J;I;&>7;7;L;u',!'!)!!!9;o-q-L-r-G=G=~!<#)$!${!m=]!l)^$/$H-_$m)F% ", +" ^!/!*!`)-!(!.!N)n)n)o)o)b)()()#)P'D'o'E'p'b'q'q'W,V,W,Y,o,F,p,p,_,_,>!:,<,W>q>q>J>Y>$>J;L>L>K;6;t>7;{;{;_!:!B'1-u#2-m;x#F=}!m$ ", +" |!1!2!`)`)=!-!.!n)C)3!O)4!o)b)b)P'#)D'D'o'p'b'q'q'{'W,X,E,5!b,(,p,q,_,*,r,:,W>W>q>Y>X>Y>$>J;I;K;6;7;o;u'u'];];J-p;p-o-&!Y@Z@E;U#D$+#J&U=6!Y#I$`#k% ", +" 7!1!|!/!/!`)`)(!N).!N)n)n)O)o)4!b)b)%)#)D'D'o'b'b'c'{'{'{'Y,Y,o,b,8!^'c,_,*,<,:,V>q>9!Y>},J;J;J;%>&>H,6;7;];]; ;8;J-*>0!}&X$Y$~$1#2#a!C%.%($E%5;b! ", +" c!7!d!e!e!f!f!`)`)g!-!n).!n)P)o)4!^)b)#)#)h!Q'D'D'b'b'c'q'{'i!]'o,b,b,^'c,_,*,<,<,U>j!V>q>r>},$>$>J;J;K;K;7;u>u'];];k!d$l!/%5>s#m!<*<%m;Z-`-|%m$ ", +" n!c!o!e!p!e!/!`)`)`)=!.!q!n)n)3!P)o)b)b)#)%)Q'Q'o'o'o'b'c'{'r!]']'o,b,b,^'c,s!*,*,U><,W>W>q>r>},J;$>J;%>&> C;D;B$t!.#+#F;G$f*;&I$`#B) ", +" u!n!n!o!7!e!p!^!f!f!2!(!.!-! !n)O)P)o)b)^)b)b)#)v!D'p'F'p'b'q'q'W,W,D,b,b,b,p,c,_,*,<,<,U> X@<#w!Y$A%1#Z$4&x!.%($E%I- $ ", +" y!u!u!u!7!7!z!e!^!f!/!*!`)(!.!N)N)n)n)A!o)b)b)#)()P'%)Q'_)p'o'q'q'q'{'W,E,Y,b,^' '$S>/%B!_%:%i$<%C!D!U%l$1%F% ", +" E!F!E!u!G!H!c!d!e!I!1!/!J!`)`)-!.!n)N)n)o)o)K!4!/)#)Q'Q'o'o'p'p'c'q'q' S#D;&,U#D$*&f%G$L&Y#N&J$k% ", +" L!M!N!F!O!u!G!P!7!o!e!e!/!J!f!`)`).!.!q!n)Q!n)K!b)b)#)P'P'Q'D'D' R!S!l=z%A%2&^,a!x!.%+%T!#% $ ", +" U!N!L!E!y!V!u!c!7!c!e!e!e!1!f!W!`)X!=!.!n)n)P)O)K!b)b) Y!Z!`!5>B'C, ~<%}*r&U%l$1%F% ", +" .~+~U!N!@~E!u!O!G!c!c!#~7!e!1!^!f!`)`)X!.!-!N)n) $~%~&~U#*~=~-~W#f*h%D*;~O& ", +" >~.~,~.~L!'~'~F!u!n!G!H!#~o!e!1!|!f!`)`) )~!~~~{~]~^~/~C%x#(~_~:~ $ ", +" <~[~[~.~.~L!L!L!E!V!y!u!P!7!o!e!e! }~|~1~2~3~4~5~6~7~8~9~0~a~ ", +" b~[~[~c~,~+~U!L!F!F!F!u!n! d~e~f~g~h~i~j~k~l~m~n~o~ ", +" p~p~[~>~c~.~.~L!L!M! q~r~s~t~u~v~w~x~y~z~A~B~ ", +" C~b~b~[~>~D~ E~F~G~H~I~J~K~L~M~N~O~ ", +" P~b~ e~Q~R~S~T~U~V~W~X~Y~ ", +" Z~`~ {.{+{@{#{${%{ ", +" &{2~*{={J~-{;{>{ ", +" ,{'{){j~!{W~ ", +" ~{{{]{^{/{({ ", +" _{:{<{-{[{ ", +" }{|{1{2{ ", +" 3{4{5{ ", +" 6{7{ ", +" 8{ ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" "}; diff --git a/src/Mod/Ship/Icons/ReparametrizeIco.png b/src/Mod/Ship/Icons/ReparametrizeIco.png new file mode 100644 index 0000000000000000000000000000000000000000..0e75e41cca14b4175ae520ee07bdf812b3d665dc GIT binary patch literal 12178 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 UjA>5j!2kdN07*qoM6N<$f)8U!VgLXD literal 0 HcmV?d00001 diff --git a/src/Mod/Ship/Icons/ReparametrizeIco.xcf b/src/Mod/Ship/Icons/ReparametrizeIco.xcf new file mode 100644 index 0000000000000000000000000000000000000000..b370b06b0024d464ab3e0f6fa99ac62b467b4b05 GIT binary patch literal 53229 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%0AN73Rty3 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 literal 0 HcmV?d00001 diff --git a/src/Mod/Ship/Icons/ReparametrizeIco.xpm b/src/Mod/Ship/Icons/ReparametrizeIco.xpm new file mode 100644 index 0000000000..690b938941 --- /dev/null +++ b/src/Mod/Ship/Icons/ReparametrizeIco.xpm @@ -0,0 +1,1737 @@ +/* XPM */ +static char * ReparametrizeIco_xpm[] = { +"128 128 1606 2", +" c None", +". c #000000", +"+ c #B50000", +"@ c #6C0000", +"# c #640000", +"$ c #FF0000", +"% c #8E0000", +"& c #8C0000", +"* c #630000", +"= c #CE0000", +"- c #DD0000", +"; c #A20000", +"> c #6A0000", +", c #7C0000", +"' c #860000", +") c #AA0000", +"! c #D50000", +"~ c #000001", +"{ c #00000B", +"] c #00000A", +"^ c #C80033", +"/ c #B5003A", +"( c #09009C", +"_ c #090099", +": c #090097", +"< c #090098", +"[ c #070085", +"} c #04004F", +"| c #040054", +"1 c #03000E", +"2 c #020000", +"3 c #0B0028", +"4 c #090027", +"5 c #14005B", +"6 c #1900B0", +"7 c #1500B2", +"8 c #1000B7", +"9 c #0C00BE", +"0 c #0800AC", +"a c #0700B9", +"b c #0600D5", +"c c #0400E0", +"d c #0200E9", +"e c #0100F2", +"f c #0000FB", +"g c #0000FD", +"h c #0000FE", +"i c #0000FC", +"j c #0000F8", +"k c #0000F3", +"l c #0100EC", +"m c #0100E5", +"n c #0200DF", +"o c #0300D9", +"p c #0400D6", +"q c #0400D3", +"r c #0500D3", +"s c #0400D4", +"t c #0400D9", +"u c #0400E2", +"v c #0400E7", +"w c #0300EB", +"x c #0300ED", +"y c #0300E7", +"z c #0300E2", +"A c #0300DC", +"B c #0300D5", +"C c #0300CF", +"D c #0200C7", +"E c #0200B1", +"F c #0200AE", +"G c #0100C3", +"H c #0200BC", +"I c #0400AD", +"J c #07009B", +"K c #0C008D", +"L c #BA0018", +"M c #E50010", +"N c #450044", +"O c #9E004F", +"P c #3E0070", +"Q c #0800B3", +"R c #0500C3", +"S c #0300D0", +"T c #0100DD", +"U c #0000EA", +"V c #0000F6", +"W c #0000FF", +"X c #0000F7", +"Y c #0000F5", +"Z c #0000F2", +"` c #0000EE", +" . c #0000E6", +".. c #0000E1", +"+. c #0000DE", +"@. c #0000DA", +"#. c #0000D6", +"$. c #0800CE", +"%. c #3700C6", +"&. c #2300BC", +"*. c #0000BB", +"=. c #0100B6", +"-. c #0200AF", +";. c #0300AD", +">. c #0300AE", +",. c #0300AF", +"'. c #0300A9", +"). c #0300A4", +"!. c #0300AC", +"~. c #0300B2", +"{. c #0400B0", +"]. c #0400AA", +"^. c #0400A5", +"/. c #0400A8", +"(. c #0400B3", +"_. c #0400BC", +":. c #0400C5", +"<. c #0300D1", +"[. c #0200E5", +"}. c #0200FB", +"|. c #0100FD", +"1. c #0000F4", +"2. c #0100E7", +"3. c #0100E3", +"4. c #0200DD", +"5. c #3300C8", +"6. c #4D00A4", +"7. c #0A00A6", +"8. c #0C00D8", +"9. c #0600E0", +"0. c #0100E1", +"a. c #0000E5", +"b. c #0000EC", +"c. c #0600EF", +"d. c #0700F7", +"e. c #0000FA", +"f. c #0000E9", +"g. c #0200DC", +"h. c #0500CD", +"i. c #0700BA", +"j. c #0800A7", +"k. c #0A0094", +"l. c #0C0085", +"m. c #0E0076", +"n. c #0F0069", +"o. c #10005C", +"p. c #0F004C", +"q. c #0B002F", +"r. c #120035", +"s. c #600000", +"t. c #800000", +"u. c #06001F", +"v. c #040014", +"w. c #08001E", +"x. c #04004B", +"y. c #020042", +"z. c #01005D", +"A. c #000086", +"B. c #010088", +"C. c #03008E", +"D. c #040097", +"E. c #0500A5", +"F. c #0700B5", +"G. c #0A00C4", +"H. c #2800D0", +"I. c #1100E4", +"J. c #0200E4", +"K. c #070084", +"L. c #0700C3", +"M. c #0100E4", +"N. c #0100FE", +"O. c #0100E2", +"P. c #0400C1", +"Q. c #3600A0", +"R. c #6B0083", +"S. c #190072", +"T. c #070068", +"U. c #06005A", +"V. c #05004D", +"W. c #000003", +"X. c #740000", +"Y. c #700000", +"Z. c #3F0039", +"`. c #C50033", +" + c #59005A", +".+ c #070081", +"++ c #0700B3", +"@+ c #0300D2", +"#+ c #0200E7", +"$+ c #0100F3", +"%+ c #0100EE", +"&+ c #0400CF", +"*+ c #0600AC", +"=+ c #090088", +"-+ c #090067", +";+ c #090051", +">+ c #070046", +",+ c #05003D", +"'+ c #040034", +")+ c #C40010", +"!+ c #F2000A", +"~+ c #620000", +"{+ c #7D0006", +"]+ c #0100E8", +"^+ c #0400D5", +"/+ c #0800B2", +"(+ c #09008A", +"_+ c #070072", +":+ c #06005E", +"<+ c #06004F", +"[+ c #FD0000", +"}+ c #EF0000", +"|+ c #9B0000", +"1+ c #080098", +"2+ c #0700BB", +"3+ c #06008F", +"4+ c #050065", +"5+ c #BD0000", +"6+ c #570000", +"7+ c #9A0000", +"8+ c #D70000", +"9+ c #820000", +"0+ c #010000", +"a+ c #F90000", +"b+ c #FB0000", +"c+ c #B30000", +"d+ c #090000", +"e+ c #DC0000", +"f+ c #0C0000", +"g+ c #7E0000", +"h+ c #470000", +"i+ c #BF0000", +"j+ c #900000", +"k+ c #2B0000", +"l+ c #A80000", +"m+ c #B20000", +"n+ c #2C0000", +"o+ c #950000", +"p+ c #5F0000", +"q+ c #890000", +"r+ c #670000", +"s+ c #6E0000", +"t+ c #780000", +"u+ c #690000", +"v+ c #6F0000", +"w+ c #3F0000", +"x+ c #550000", +"y+ c #350000", +"z+ c #4B0000", +"A+ c #990000", +"B+ c #7F0000", +"C+ c #540000", +"D+ c #4A0000", +"E+ c #A60000", +"F+ c #5C0000", +"G+ c #C80000", +"H+ c #5D0000", +"I+ c #D10000", +"J+ c #DB0000", +"K+ c #E40000", +"L+ c #04000C", +"M+ c #03000F", +"N+ c #000002", +"O+ c #BF0030", +"P+ c #C40037", +"Q+ c #0B00AC", +"R+ c #0B00A7", +"S+ c #0A00A7", +"T+ c #0A00A8", +"U+ c #0900A9", +"V+ c #070086", +"W+ c #06008D", +"X+ c #0600AF", +"Y+ c #0600B1", +"Z+ c #0500B3", +"`+ c #0400B5", +" @ c #0400B6", +".@ c #0300B8", +"+@ c #0300BA", +"@@ c #0300BD", +"#@ c #0100C0", +"$@ c #000091", +"%@ c #000092", +"&@ c #0000C5", +"*@ c #0000C1", +"=@ c #0200B3", +"-@ c #0500A8", +";@ c #06009C", +">@ c #080091", +",@ c #0B008A", +"'@ c #980041", +")@ c #C10032", +"!@ c #0B005F", +"~@ c #0B0071", +"{@ c #0E00B0", +"]@ c #0900C8", +"^@ c #0700D3", +"/@ c #0500DE", +"(@ c #0200EA", +"_@ c #0100FC", +":@ c #0100F8", +"<@ c #0200F2", +"[@ c #0200EB", +"}@ c #0300E4", +"|@ c #0300DE", +"1@ c #0300DA", +"2@ c #0300D7", +"3@ c #0300D6", +"4@ c #0300D8", +"5@ c #0200DB", +"6@ c #0200E0", +"7@ c #0100E6", +"8@ c #1900DE", +"9@ c #1F00DC", +"0@ c #0100DC", +"a@ c #0200CC", +"b@ c #0400BD", +"c@ c #0B00AE", +"d@ c #0E00A5", +"e@ c #0E008C", +"f@ c #080040", +"g@ c #08005C", +"h@ c #0A00A2", +"i@ c #0800B7", +"j@ c #0500C8", +"k@ c #0200D9", +"l@ c #0000F1", +"m@ c #0000ED", +"n@ c #0000E8", +"o@ c #0000E4", +"p@ c #0000DB", +"q@ c #0100D2", +"r@ c #3400CA", +"s@ c #3A00C1", +"t@ c #0000BC", +"u@ c #0000B7", +"v@ c #0100B2", +"w@ c #0100AD", +"x@ c #0300A5", +"y@ c #04009C", +"z@ c #050096", +"A@ c #06008E", +"B@ c #070088", +"C@ c #060061", +"D@ c #06005F", +"E@ c #090081", +"F@ c #0A007F", +"G@ c #09007E", +"H@ c #08007E", +"I@ c #07007E", +"J@ c #06007D", +"K@ c #04007D", +"L@ c #04007E", +"M@ c #020065", +"N@ c #010068", +"O@ c #000088", +"P@ c #010089", +"Q@ c #01008D", +"R@ c #030092", +"S@ c #030097", +"T@ c #04009E", +"U@ c #4C00A1", +"V@ c #4400AF", +"W@ c #0800BD", +"X@ c #0800C1", +"Y@ c #0600C7", +"Z@ c #0500CA", +"`@ c #0000EB", +" # c #C10009", +".# c #C4002C", +"+# c #17008D", +"@# c #0800BF", +"## c #0200D8", +"$# c #0000DF", +"%# c #0400CD", +"&# c #0600B9", +"*# c #0700A5", +"=# c #090091", +"-# c #0A0076", +";# c #0C0060", +"># c #0F0060", +",# c #110052", +"'# c #120044", +")# c #140037", +"!# c #ED0000", +"~# c #DC0019", +"{# c #DC001E", +"]# c #070075", +"^# c #090079", +"/# c #0B007C", +"(# c #0C0084", +"_# c #09009E", +":# c #0400B4", +"<# c #0E00CB", +"[# c #0500DD", +"}# c #2C00C8", +"|# c #1A00E2", +"1# c #0000F0", +"2# c #060098", +"3# c #070079", +"4# c #080071", +"5# c #080060", +"6# c #070053", +"7# c #1000CF", +"8# c #0500D1", +"9# c #0700F4", +"0# c #3A00BA", +"a# c #09008C", +"b# c #05004A", +"c# c #01002F", +"d# c #000006", +"e# c #E20000", +"f# c #0C0081", +"g# c #0600B4", +"h# c #080053", +"i# c #BF002F", +"j# c #DD001D", +"k# c #E00000", +"l# c #080079", +"m# c #080064", +"n# c #060048", +"o# c #DF0000", +"p# c #E60000", +"q# c #F70000", +"r# c #E50000", +"s# c #040000", +"t# c #F50000", +"u# c #030000", +"v# c #EB0000", +"w# c #050000", +"x# c #D20000", +"y# c #C30000", +"z# c #9D0000", +"A# c #760000", +"B# c #8A0000", +"C# c #500000", +"D# c #4D0000", +"E# c #5E0000", +"F# c #400000", +"G# c #3D0000", +"H# c #720000", +"I# c #520000", +"J# c #4F0000", +"K# c #510000", +"L# c #980000", +"M# c #750000", +"N# c #8D0000", +"O# c #B00000", +"P# c #610000", +"Q# c #850000", +"R# c #6D0000", +"S# c #D90000", +"T# c #580000", +"U# c #5B0000", +"V# c #F30000", +"W# c #680000", +"X# c #050010", +"Y# c #03000D", +"Z# c #000004", +"`# c #620038", +" $ c #C20039", +".$ c #45004F", +"+$ c #0A00AE", +"@$ c #0A00AA", +"#$ c #0A00A9", +"$$ c #0900AA", +"%$ c #0800A9", +"&$ c #070095", +"*$ c #050086", +"=$ c #0600AD", +"-$ c #0500AE", +";$ c #0400B1", +">$ c #0300B3", +",$ c #0300B6", +"'$ c #0200BE", +")$ c #0100C4", +"!$ c #00009B", +"~$ c #000089", +"{$ c #0100A1", +"]$ c #0300B1", +"^$ c #0500A3", +"/$ c #080095", +"($ c #0C007F", +"_$ c #A50024", +":$ c #DF0019", +"<$ c #010005", +"[$ c #0D0071", +"}$ c #0B0078", +"|$ c #0D00AA", +"1$ c #0B00C0", +"2$ c #0900CA", +"3$ c #0700D5", +"4$ c #0500E0", +"5$ c #0100F5", +"6$ c #0200FC", +"7$ c #0200EF", +"8$ c #0200E1", +"9$ c #0100E9", +"0$ c #0100EA", +"a$ c #1800D5", +"b$ c #2A00D2", +"c$ c #0800D7", +"d$ c #0200D0", +"e$ c #0300BF", +"f$ c #0F00A4", +"g$ c #120099", +"h$ c #08005D", +"i$ c #070074", +"j$ c #0700AF", +"k$ c #0500C6", +"l$ c #0000EF", +"m$ c #0000D9", +"n$ c #0000D1", +"o$ c #0800CA", +"p$ c #3D00C1", +"q$ c #2700BC", +"r$ c #0000B3", +"s$ c #0100AC", +"t$ c #0200A5", +"u$ c #03009D", +"v$ c #050097", +"w$ c #060091", +"x$ c #060064", +"y$ c #070087", +"z$ c #060086", +"A$ c #050084", +"B$ c #040084", +"C$ c #040085", +"D$ c #030087", +"E$ c #020083", +"F$ c #010070", +"G$ c #010078", +"H$ c #030090", +"I$ c #04009D", +"J$ c #0600AE", +"K$ c #0600B8", +"L$ c #1A00C1", +"M$ c #2900CF", +"N$ c #0F00D3", +"O$ c #0500D2", +"P$ c #0100DF", +"Q$ c #0200D1", +"R$ c #B8002E", +"S$ c #970057", +"T$ c #0900BD", +"U$ c #0000F9", +"V$ c #0200D4", +"W$ c #0400C2", +"X$ c #08009C", +"Y$ c #0C0073", +"Z$ c #0D0059", +"`$ c #0E004E", +" % c #11004D", +".% c #130041", +"+% c #130035", +"@% c #50002F", +"#% c #D40028", +"$% c #64002F", +"%% c #07007D", +"&% c #07007F", +"*% c #090083", +"=% c #0B0085", +"-% c #0B0093", +";% c #0700B1", +">% c #080096", +",% c #0F00D4", +"'% c #0600DD", +")% c #0100E0", +"!% c #1700DE", +"~% c #0900F5", +"{% c #0400C4", +"]% c #0600A4", +"^% c #070080", +"/% c #07005E", +"(% c #060055", +"_% c #070054", +":% c #A30000", +"<% c #090065", +"[% c #0500D0", +"}% c #0100EB", +"|% c #2600B6", +"1% c #6B0085", +"2% c #1F005F", +"3% c #050047", +"4% c #02002E", +"5% c #000007", +"6% c #0600B2", +"7% c #09007C", +"8% c #090055", +"9% c #060043", +"0% c #650022", +"a% c #E90010", +"b% c #5A000A", +"c% c #08007A", +"d% c #090080", +"e% c #070062", +"f% c #D99214", +"g% c #D99215", +"h% c #DD9516", +"i% c #DC9416", +"j% c #DC9315", +"k% c #D89014", +"l% c #D79014", +"m% c #DD9415", +"n% c #DE9516", +"o% c #E59A16", +"p% c #D18C12", +"q% c #DB9315", +"r% c #D68F13", +"s% c #D68F14", +"t% c #DA9115", +"u% c #DC9314", +"v% c #D89114", +"w% c #B87B12", +"x% c #A46C0C", +"y% c #B37407", +"z% c #312001", +"A% c #744A00", +"B% c #B47506", +"C% c #DB9215", +"D% c #DD9416", +"E% c #D89013", +"F% c #D78F13", +"G% c #D48D13", +"H% c #D18B13", +"I% c #D38C12", +"J% c #C58411", +"K% c #B0750F", +"L% c #B4760B", +"M% c #593A05", +"N% c #9E6603", +"O% c #593800", +"P% c #251700", +"Q% c #B37202", +"R% c #563701", +"S% c #6E4701", +"T% c #AC6F04", +"U% c #D78F12", +"V% c #D58E13", +"W% c #D79013", +"X% c #D18B11", +"Y% c #BF7F0F", +"Z% c #B2760D", +"`% c #BB7B0B", +" & c #624107", +".& c #B67507", +"+& c #6C4602", +"@& c #1B1100", +"#& c #B17102", +"$& c #352100", +"%& c #7C5002", +"&& c #9B6403", +"*& c #714902", +"=& c #A86B03", +"-& c #A76C03", +";& c #A66A02", +">& c #9C6301", +",& c #D18B12", +"'& c #CF8910", +")& c #CF8911", +"!& c #D38D11", +"~& c #E19612", +"{& c #CE8A12", +"]& c #C18110", +"^& c #C0800E", +"/& c #BE7D0C", +"(& c #573B07", +"_& c #BF7D09", +":& c #7B5005", +"<& c #3B2701", +"[& c #B27304", +"}& c #271901", +"|& c #9C6403", +"1& c #6C4502", +"2& c #B37304", +"3& c #4B3102", +"4& c #674202", +"5& c #A76B03", +"6& c #AD7003", +"7& c #A36803", +"8& c #A26803", +"9& c #A26802", +"0& c #9D6400", +"a& c #C6830E", +"b& c #DC9415", +"c& c #C78410", +"d& c #CB8610", +"e& c #CE8910", +"f& c #D88F12", +"g& c #CE8911", +"h& c #D38C11", +"i& c #C1800E", +"j& c #5C3D07", +"k& c #C37F09", +"l& c #6D4706", +"m& c #6B4604", +"n& c #BB7906", +"o& c #A96D05", +"p& c #9C6504", +"q& c #704903", +"r& c #AE7105", +"s& c #9D6505", +"t& c #A76B05", +"u& c #A86C05", +"v& c #AB6E04", +"w& c #AF7004", +"x& c #5E3C02", +"y& c #412A01", +"z& c #A36904", +"A& c #A56A03", +"B& c #A86C03", +"C& c #A46A02", +"D& c #966001", +"E& c #AA7009", +"F& c #DF9617", +"G& c #DC9216", +"H& c #C8830F", +"I& c #C9850E", +"J& c #C9860F", +"K& c #C98610", +"L& c #DC9211", +"M& c #CC880F", +"N& c #C2810F", +"O& c #92610B", +"P& c #C7830B", +"Q& c #422B03", +"R& c #845505", +"S& c #BC7907", +"T& c #AE7107", +"U& c #734B04", +"V& c #4C3103", +"W& c #AE7106", +"X& c #A26906", +"Y& c #AB6F05", +"Z& c #AA6E05", +"`& c #A86D05", +" * c #A86B04", +".* c #AB6F04", +"+* c #9B6303", +"@* c #905C03", +"#* c #A46903", +"$* c #9D6503", +"%* c #905D03", +"&* c #835503", +"** c #764B01", +"=* c #815304", +"-* c #DF9616", +";* c #C5830E", +">* c #C6820E", +",* c #C6830F", +"'* c #CD890F", +")* c #C7840F", +"!* c #C4830F", +"~* c #BC7D0D", +"{* c #CD870D", +"]* c #412B05", +"^* c #996307", +"/* c #B17306", +"(* c #100A00", +"_* c #B27307", +":* c #5B3B04", +"<* c #6D4705", +"[* c #B97707", +"}* c #8E5C05", +"|* c #8A5A05", +"1* c #3D2802", +"2* c #A16905", +"3* c #AD7106", +"4* c #AC6F06", +"5* c #AB6E05", +"6* c #AA6F05", +"7* c #AA6E04", +"8* c #A66C05", +"9* c #9D6604", +"0* c #915D03", +"a* c #865703", +"b* c #7B4E03", +"c* c #774D03", +"d* c #784D02", +"e* c #794E02", +"f* c #7A4E02", +"g* c #724800", +"h* c #D58E14", +"i* c #C5820D", +"j* c #C3810D", +"k* c #C2800E", +"l* c #BA7C0D", +"m* c #CB860E", +"n* c #704A07", +"o* c #9D6709", +"p* c #986407", +"q* c #2F1E02", +"r* c #BA7808", +"s* c #452C03", +"t* c #6E4705", +"u* c #C17D09", +"v* c #774D05", +"w* c #A46A07", +"x* c #B87808", +"y* c #BA7908", +"z* c #B47507", +"A* c #A16906", +"B* c #382502", +"C* c #956005", +"D* c #AF7106", +"E* c #AB6F06", +"F* c #A96E05", +"G* c #A46A05", +"H* c #9B6505", +"I* c #905D04", +"J* c #855603", +"K* c #7C4F03", +"L* c #784D03", +"M* c #794E03", +"N* c #7A4F03", +"O* c #7B4F02", +"P* c #7B4F03", +"Q* c #7A4F02", +"R* c #6E4600", +"S* c #DF9615", +"T* c #C3800C", +"U* c #C17F0C", +"V* c #C9840D", +"W* c #BC7C0D", +"X* c #B4760C", +"Y* c #C6830D", +"Z* c #905E0A", +"`* c #A56D0A", +" = c #8C5C08", +".= c #412B03", +"+= c #C7830A", +"@= c #452D03", +"#= c #644105", +"$= c #B77809", +"%= c #3F2903", +"&= c #956107", +"*= c #B37508", +"== c #B27408", +"-= c #B17308", +";= c #BC7B08", +">= c #B67608", +",= c #B07307", +"'= c #B07207", +")= c #B17307", +"!= c #AF7206", +"~= c #8B5B05", +"{= c #A06705", +"]= c #996305", +"^= c #8E5C04", +"/= c #855604", +"(= c #7E5103", +"_= c #7C5103", +":= c #7D5003", +"<= c #7C5003", +"[= c #714900", +"}= c #A16A09", +"|= c #E39817", +"1= c #BD7C0C", +"2= c #C07E0B", +"3= c #C9840C", +"4= c #BF7D0C", +"5= c #BF7E0C", +"6= c #8F5E09", +"7= c #AE720B", +"8= c #946109", +"9= c #3D2803", +"0= c #D18A0B", +"a= c #533604", +"b= c #5B3C05", +"c= c #B3750A", +"d= c #6E4806", +"e= c #B87809", +"f= c #A76D08", +"g= c #A66C08", +"h= c #4B3104", +"i= c #794F06", +"j= c #B47609", +"k= c #B37408", +"l= c #B47608", +"m= c #B57608", +"n= c #B57607", +"o= c #B17407", +"p= c #AC6F07", +"q= c #A36A06", +"r= c #9B6406", +"s= c #936006", +"t= c #936005", +"u= c #895805", +"v= c #805204", +"w= c #7D5103", +"x= c #7E5104", +"y= c #805203", +"z= c #7F5203", +"A= c #7C4F02", +"B= c #774D02", +"C= c #B9780B", +"D= c #C17F0B", +"E= c #B97A0B", +"F= c #C4810B", +"G= c #B9790B", +"H= c #915E09", +"I= c #9D670A", +"J= c #362303", +"K= c #D28A0C", +"L= c #563905", +"M= c #794F07", +"N= c #B3760A", +"O= c #4C3204", +"P= c #C2800A", +"Q= c #AB700A", +"R= c #A76E09", +"S= c #BB7B0A", +"T= c #B97909", +"U= c #B7780A", +"V= c #B9780A", +"W= c #BB7A09", +"X= c #BD7C09", +"Y= c #624105", +"Z= c #6B4605", +"`= c #B97808", +" - c #AD7008", +".- c #A16907", +"+- c #966206", +"@- c #8E5C06", +"#- c #855605", +"$- c #825405", +"%- c #815405", +"&- c #815404", +"*- c #805304", +"=- c #754B01", +"-- c #D99114", +";- c #B77909", +">- c #B8790A", +",- c #B9790A", +"'- c #C07E0A", +")- c #C27F0A", +"!- c #A76D0A", +"~- c #C4820C", +"{- c #9E690A", +"]- c #452D04", +"^- c #D38A0D", +"/- c #362403", +"(- c #9C660A", +"_- c #BA7B0C", +":- c #160F01", +"<- c #CF870D", +"[- c #6F4906", +"}- c #5C3C06", +"|- c #BE7D0B", +"1- c #BC7B0B", +"2- c #BB7A0A", +"3- c #B8780A", +"4- c #BA7B09", +"5- c #BB7B09", +"6- c #B47509", +"7- c #AE7208", +"8- c #A16807", +"9- c #8A5906", +"0- c #865706", +"a- c #855606", +"b- c #855706", +"c- c #855705", +"d- c #835605", +"e- c #845605", +"f- c #835505", +"g- c #825505", +"h- c #835404", +"i- c #825404", +"j- c #714901", +"k- c #C38111", +"l- c #E09716", +"m- c #B67709", +"n- c #B57709", +"o- c #BC7B09", +"p- c #BB7A0B", +"q- c #986409", +"r- c #7D5208", +"s- c #D48C0E", +"t- c #130D01", +"u- c #B7780C", +"v- c #1A1102", +"w- c #D1890E", +"x- c #8B5C09", +"y- c #A86F0B", +"z- c #CA860D", +"A- c #875808", +"B- c #BC7C0B", +"C- c #AF7309", +"D- c #A06808", +"E- c #915F08", +"F- c #895906", +"G- c #875806", +"H- c #865806", +"I- c #865606", +"J- c #845506", +"K- c #835504", +"L- c #835405", +"M- c #805303", +"N- c #744B01", +"O- c #A66D0A", +"P- c #E49917", +"Q- c #B27308", +"R- c #B57609", +"S- c #B57708", +"T- c #B37509", +"U- c #986308", +"V- c #A46B0A", +"W- c #D28A0F", +"X- c #010100", +"Y- c #C5830F", +"Z- c #99650B", +"`- c #3B2704", +" ; c #D68C0E", +".; c #553806", +"+; c #AC710C", +"@; c #C8830D", +"#; c #BF7F0D", +"$; c #C17F0D", +"%; c #C4810C", +"&; c #BD7D0C", +"*; c #A26B0A", +"=; c #503405", +"-; c #AD720A", +";; c #BD7D0B", +">; c #B5770A", +",; c #AD7109", +"'; c #9F6808", +"); c #926007", +"!; c #895A07", +"~; c #855807", +"{; c #875906", +"]; c #885806", +"^; c #855506", +"/; c #774C02", +"(; c #895B05", +"_; c #DA9215", +":; c #B97907", +"<; c #AF7207", +"[; c #B07208", +"}; c #976307", +"|; c #A76E0A", +"1; c #C9850D", +"2; c #352303", +"3; c #704B09", +"4; c #5D3E07", +"5; c #DC9111", +"6; c #462E05", +"7; c #AD720D", +"8; c #D78E0F", +"9; c #CA840E", +"0; c #C4810D", +"a; c #C27F0D", +"b; c #C2800D", +"c; c #C2800C", +"d; c #BC7C0C", +"e; c #B97A0C", +"f; c #B8790C", +"g; c #AA700A", +"h; c #9E6809", +"i; c #926009", +"j; c #8A5A07", +"k; c #875807", +"l; c #895907", +"m; c #8B5B07", +"n; c #8A5A06", +"o; c #895A06", +"p; c #885906", +"q; c #825504", +"r; c #805404", +"s; c #815203", +"t; c #7B5003", +"u; c #845604", +"v; c #8E5D06", +"w; c #DA9314", +"x; c #AE7206", +"y; c #B27306", +"z; c #B67607", +"A; c #B67708", +"B; c #946006", +"C; c #A56C09", +"D; c #BC7B0C", +"E; c #644106", +"F; c #C8840F", +"G; c #583A07", +"H; c #604008", +"I; c #E39712", +"J; c #503606", +"K; c #A9700E", +"L; c #B87B0E", +"M; c #A36C0C", +"N; c #C7830E", +"O; c #CB860F", +"P; c #CC870F", +"Q; c #BD7C0D", +"R; c #422B05", +"S; c #8D5D0A", +"T; c #C4810E", +"U; c #B4770C", +"V; c #AC720B", +"W; c #A36B0A", +"X; c #9B660A", +"Y; c #936109", +"Z; c #8D5D09", +"`; c #8A5A09", +" > c #8A5B08", +".> c #8C5C07", +"+> c #8C5B08", +"@> c #8C5B07", +"#> c #8A5B07", +"$> c #845606", +"%> c #764C02", +"&> c #7F5204", +"*> c #8B5B06", +"=> c #9B6508", +"-> c #A86E0B", +";> c #B7790E", +">> c #C98611", +",> c #DA9214", +"'> c #AC6F05", +")> c #B17304", +"!> c #B67506", +"~> c #AA6E06", +"{> c #AC7109", +"]> c #AA710B", +"^> c #674406", +"/> c #D28B10", +"(> c #614007", +"_> c #4D3406", +":> c #DF9412", +"<> c #452E06", +"[> c #9A670C", +"}> c #B6790F", +"|> c #A76F0D", +"1> c #C1810F", +"2> c #C78310", +"3> c #C8850E", +"4> c #8D5E0A", +"5> c #A36C0B", +"6> c #C8850F", +"7> c #BD7D0D", +"8> c #B2760C", +"9> c #A66D0B", +"0> c #9E680A", +"a> c #98640A", +"b> c #905E09", +"c> c #8D5C09", +"d> c #8C5C09", +"e> c #8E5D09", +"f> c #8E5E09", +"g> c #8E5D08", +"h> c #8C5D08", +"i> c #815403", +"j> c #794D02", +"k> c #825403", +"l> c #936007", +"m> c #A76E0B", +"n> c #B87A0E", +"o> c #C58310", +"p> c #CE8913", +"q> c #B07105", +"r> c #A36903", +"s> c #AF7105", +"t> c #684406", +"u> c #E09512", +"v> c #734D09", +"w> c #4F3507", +"x> c #D58F12", +"y> c #3A2705", +"z> c #B67910", +"A> c #B2770F", +"B> c #93620D", +"C> c #D48D11", +"D> c #6B4709", +"E> c #704A09", +"F> c #D68F11", +"G> c #CD880F", +"H> c #CA8710", +"I> c #CB870F", +"J> c #CA860F", +"K> c #C9850F", +"L> c #BE7E0D", +"M> c #B0740C", +"N> c #A26B0B", +"O> c #98650A", +"P> c #946209", +"Q> c #926109", +"R> c #92600A", +"S> c #915F09", +"T> c #905F09", +"U> c #8F5F09", +"V> c #8F5D08", +"W> c #8E5E08", +"X> c #8D5C08", +"Y> c #8B5B08", +"Z> c #895806", +"`> c #865705", +" , c #7D5104", +"., c #7A4E03", +"+, c #986408", +"@, c #C38110", +"#, c #D48E13", +"$, c #A76A04", +"%, c #A76C04", +"&, c #A86C04", +"*, c #A66A03", +"=, c #AE7004", +"-, c #A56B06", +";, c #794E05", +">, c #D78F10", +",, c #724B0A", +"', c #704B0B", +"), c #110B02", +"!, c #B4770F", +"~, c #644208", +"{, c #DB9213", +"], c #D08B12", +"^, c #D08B11", +"/, c #CF8A11", +"(, c #D48D12", +"_, c #D28B11", +":, c #84580B", +"<, c #563A07", +"[, c #D08A10", +"}, c #CB8710", +"|, c #CD8810", +"1, c #CE890F", +"2, c #BF7F0E", +"3, c #AF750D", +"4, c #A06B0C", +"5, c #96630A", +"6, c #935F0A", +"7, c #93610A", +"8, c #8F5E08", +"9, c #8D5D08", +"0, c #8B5A07", +"a, c #895905", +"b, c #B5770C", +"c, c #C98510", +"d, c #D38E12", +"e, c #D28D12", +"f, c #D28C13", +"g, c #A46904", +"h, c #A96E04", +"i, c #925D04", +"j, c #634106", +"k, c #A16B0F", +"l, c #D79015", +"m, c #EB9D16", +"n, c #98660E", +"o, c #4A3106", +"p, c #E29614", +"q, c #B47910", +"r, c #CF8A13", +"s, c #E49813", +"t, c #CF8B12", +"u, c #D08A12", +"v, c #D08A11", +"w, c #CE8A11", +"x, c #D28C11", +"y, c #B3770E", +"z, c #885B0B", +"A, c #BE7E0F", +"B, c #AF750E", +"C, c #A06A0C", +"D, c #95630B", +"E, c #91610B", +"F, c #94630B", +"G, c #95620B", +"H, c #95620A", +"I, c #94620A", +"J, c #94610A", +"K, c #92610A", +"L, c #916009", +"M, c #8F5D09", +"N, c #8D5B08", +"O, c #855505", +"P, c #905E08", +"Q, c #A26A09", +"R, c #B8790E", +"S, c #CA8711", +"T, c #D58E12", +"U, c #D18A12", +"V, c #935E04", +"W, c #BE7D0A", +"X, c #5B3B03", +"Y, c #BE7F0F", +"Z, c #D59014", +"`, c #F2A319", +" ' c #81560D", +".' c #8F5F0D", +"+' c #E49814", +"@' c #7C530B", +"#' c #B27710", +"$' c #402B06", +"%' c #CB8812", +"&' c #DD9314", +"*' c #D28C12", +"=' c #D38D12", +"-' c #CE8811", +";' c #C28211", +">' c #BE7F10", +",' c #BB7C0F", +"'' c #A26C0D", +")' c #97640C", +"!' c #93600C", +"~' c #93610C", +"{' c #96630B", +"]' c #98640C", +"^' c #98640B", +"/' c #96640B", +"(' c #95630A", +"_' c #94620B", +":' c #885A07", +"<' c #865707", +"[' c #9A6508", +"}' c #A86F0A", +"|' c #BA7B0E", +"1' c #CD8911", +"2' c #A16703", +"3' c #9F6601", +"4' c #C7830F", +"5' c #BD8015", +"6' c #63543B", +"7' c #F5AD32", +"8' c #533809", +"9' c #A97211", +"0' c #714C0B", +"a' c #E79A15", +"b' c #C48312", +"c' c #462F06", +"d' c #B07610", +"e' c #CF8912", +"f' c #C68411", +"g' c #BC7E10", +"h' c #B4780E", +"i' c #AA720E", +"j' c #A06B0D", +"k' c #99660C", +"l' c #96640C", +"m' c #95630C", +"n' c #98650C", +"o' c #99650C", +"p' c #97640B", +"q' c #925F09", +"r' c #885907", +"s' c #875907", +"t' c #926008", +"u' c #9C6609", +"v' c #B1740B", +"w' c #D08911", +"x' c #CC8710", +"y' c #9B6400", +"z' c #E0A640", +"A' c #B0A99B", +"B' c #CFA050", +"C' c #CD8A16", +"D' c #D18C14", +"E' c #E39816", +"F' c #D99013", +"G' c #DB9214", +"H' c #B17710", +"I' c #C28111", +"J' c #B77A0F", +"K' c #AE7310", +"L' c #A76F0E", +"M' c #A16A0D", +"N' c #9C680D", +"O' c #9A660C", +"P' c #99650D", +"Q' c #9B670C", +"R' c #8A5A08", +"S' c #865907", +"T' c #A46C0A", +"U' c #AF730B", +"V' c #B87A0D", +"W' c #BF7E0E", +"X' c #C5820E", +"Y' c #BA7A0A", +"Z' c #E9B04E", +"`' c #A18E6F", +" ) c #996F25", +".) c #EA9D18", +"+) c #DE9515", +"@) c #DE9514", +"#) c #D08B13", +"$) c #C18111", +"%) c #B37710", +"&) c #AB710F", +"*) c #A46D0F", +"=) c #A06A0E", +"-) c #9D6A0E", +";) c #9D690E", +">) c #9D680D", +",) c #9D680E", +"') c #9C670D", +")) c #895A08", +"!) c #895A09", +"~) c #AA6F0B", +"{) c #C4820D", +"]) c #C6840E", +"^) c #C7840E", +"/) c #A16702", +"() c #E69D1E", +"_) c #865E1B", +":) c #64430A", +"<) c #E89B16", +"[) c #DF9516", +"}) c #E09615", +"|) c #D08B14", +"1) c #BF8112", +"2) c #AF7510", +"3) c #9E6A0F", +"4) c #9F6B0F", +"5) c #A16B0E", +"6) c #9F6A0E", +"7) c #9E6A0D", +"8) c #9E690E", +"9) c #8C5D09", +"0) c #936009", +"a) c #9F680A", +"b) c #AE730B", +"c) c #BB7B0C", +"d) c #C27F0C", +"e) c #C3800D", +"f) c #C4800D", +"g) c #C3810E", +"h) c #A06702", +"i) c #A16602", +"j) c #D28E15", +"k) c #C08216", +"l) c #B07918", +"m) c #A67319", +"n) c #A97A2A", +"o) c #B0863D", +"p) c #B3883E", +"q) c #AB7B28", +"r) c #A26D11", +"s) c #A16C0F", +"t) c #A06B0E", +"u) c #9F6A0F", +"v) c #9E6A0E", +"w) c #9E690D", +"x) c #9B670D", +"y) c #9C670C", +"z) c #9B660C", +"A) c #976409", +"B) c #C27F0B", +"C) c #C3810C", +"D) c #C07F0C", +"E) c #C07E0D", +"F) c #9E6501", +"G) c #B87B0F", +"H) c #B17712", +"I) c #A66F10", +"J) c #A57621", +"K) c #CCB180", +"L) c #DBC7A4", +"M) c #E1CFAF", +"N) c #D9C39D", +"O) c #CCAE7A", +"P) c #BB934F", +"Q) c #AA7923", +"R) c #A26C0F", +"S) c #9D670D", +"T) c #A56D09", +"U) c #B0730A", +"V) c #BF7D0B", +"W) c #C17E0B", +"X) c #C07E0C", +"Y) c #BE7C0B", +"Z) c #A16701", +"`) c #A06909", +" ! c #A56F11", +".! c #B28332", +"+! c #D5BB8F", +"@! c #F9F5EF", +"#! c #F2EBDF", +"$! c #E7D8BF", +"%! c #D8C098", +"&! c #BC934F", +"*! c #A67218", +"=! c #A26D0F", +"-! c #9D690D", +";! c #9D680C", +">! c #96630C", +",! c #9A660B", +"'! c #A96F0A", +")! c #B1740A", +"!! c #BC7B0A", +"~! c #BE7C0A", +"{! c #BD7C0A", +"]! c #BC7C0A", +"^! c #AF7D25", +"/! c #DAC39B", +"(! c #F5EFE5", +"_! c #F9F6F0", +":! c #F6F0E7", +"~ c #AA6D04", +",~ c #A06601", +"'~ c #A16704", +")~ c #A87316", +"!~ c #AA761B", +"~~ c #A77011", +"{~ c #A77111", +"]~ c #A67111", +"^~ c #A67011", +"/~ c #A46D0D", +"(~ c #A46D0A", +"_~ c #A56B08", +":~ c #A56C07", +"<~ c #A56B05", +"[~ c #A66B04", +"}~ c #A06703", +"|~ c #A66E0D", +"1~ c #A87213", +"2~ c #A66E0C", +"3~ c #A46C09", +"4~ c #A46B07", +"5~ c #A36A04", +"6~ c #A56903", +"7~ c #A66B03", +"8~ c #A26804", +"9~ c #A26904", +"0~ c #A26702", +"a~ c #A36902", +"b~ c #A46A03", +"c~ c #A26902", +" ", +" ", +" ", +" . ", +" + @ . . . ", +" # $ % . . . . ", +" . & $ * . . . . + @ ", +" . . = $ . . . . # $ % ", +" . . . $ - . . . . & $ * ", +" . . . . $ ; . . . . = $ ", +" + @ . . . . > $ , . . . . $ - ", +" # $ % . . . . ' $ * . . . . $ ; ", +" & $ * . . . . ) $ . . . . > $ , ", +" = $ . . . . ! $ ~ . . . ' $ * ", +" $ - . . { ] ^ / ( _ : < < [ } | 1 2 ) $ ", +" $ ; 3 4 5 6 7 8 9 0 a b c d e f g g g g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M ", +" N O P Q R S T U V g h W W W h g f X Y Z ` U ...+.@.#.$.%.&.*.=.E F -.;.>.,.'.).!.~.{.].^./.I (._.:.<.[.}.|.|.1.2.3.4.o 5.6.7. ", +" 8.9.0.a.b.c.d.i i e.1.f.g.h.i.j.k.l.m.n.o.p.q.3 r. s.$ t. u.v.w. x.y.z.A.B.C.D.E.F.G.H.I.J.K. ", +" L.<.M.1.N.W h O.P.Q.R.S.T.U.V. ] W. . . X.$ Y. . . . . Z.`. +.+ ", +" ++@+#+$+%+&+*+=+-+;+>+,+'+)+!+ . . . . ' $ ~+ . . . . # $ {+ ", +" a d ]+^+/+(+_+:+<+ [+}+ . . . . |+$ . . . . X.$ Y. ", +" 1+2+3+4+ $ 5+ . . . . + $ . . . . ' $ ~+ ", +" 6+$ 7+ . . . . 8+$ . . . . |+$ ", +" # $ 9+ . . . . . . . . . . . . 0+a+b+2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . c+$ ", +" X.$ @ . . . . . . . . . . . . . . . . . . . . d+$ e+. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ! $ f+. . . ", +" g+$ h+. . . . . . . . . . . . . . . . . $ i+ . . . . a+b+2 . . . . ", +" . . . . j+$ k+. . . . . . . . . $ l+ . . . . $ - . ", +" . . . . . . . . m+$ n+ . . . . 6+$ o+ . . . . $ i+ ", +" . . . . . . . 8+$ . . . . p+$ q+ . . . . $ l+ ", +" . . . . a+b+ . . . . r+$ g+ . . . . 6+$ o+ ", +" $ - . . . . s+$ X. . . . . p+$ q+ ", +" $ i+ . . . . t+$ u+ . . . . . . r+$ g+ ", +" $ l+ . . . . . . . . . . . . v+$ w+. . . . . . . . . . . . . . . . . . . . . . . . . . . . . x+$ s.. ", +" 6+$ o+ . . . . . . . . . . . . . . . . . . . . g+$ y+. . . . . . . . . . . . . . . . . . . . . . . . . . . . . s.$ z+. . . . . . . ", +" 6+$ 9+ . . . . . . . . . . . . . . . . . A+$ . . . . B+$ C+ . . . . . . . ", +" . D+$ r+. . . . . . . . . . E+$ . . . . % $ F+ ", +" . . . . . C+$ s.. . . . . m+$ . . . . 7+$ ", +" . . . . . . . Y.$ > . . . . 5+$ . . . . E+$ ", +" . . . 9+$ * . . . . G+$ . . . . m+$ ", +" % $ H+ . . . . I+$ . . . . 5+$ ", +" 7+$ . . . . J+$ . . . . G+$ ", +" E+$ . . . . K+$ L+M+ 0+. I+$ ", +" m+$ . . N+W. O+P+ Q+R+S+T+U+V+W+X+Y+Z+Z+`+ @.@+@@@#@$@%@&@*@=@-@;@>@,@'@)@ ", +" 5+$ . W. !@~@{@9 ]@^@/@(@V |.h h W W W W h h |._@}.:@<@[@}@|@1@2@3@4@5@6@2.k _@W h h |.j %+7@0.8@9@o 5@0@a@b@++c@d@e@ ", +" G+$ f@g@h@i@j@k@f.1.h W h f j Y l@m@n@o@p@q@r@s@t@u@v@w@x@y@z@A@B@C@D@E@F@G@H@H@I@J@J@K@L@M@N@O@P@Q@R@S@T@E.U@V@W@X@Y@Z@2@`@N.e.Z +._. ", +" #.#+#@###` Y X f g V b.$#%#&#*#=#-#;#>#,#'#)# $ !# . . . . ~#{# ]#^#/#(#_#:.:# ", +" <#[#}#|#V W W h 1#:.2#3#4#5#6# . . $ K+ . . . . $ a+ ", +" 7#8#m e.W 9#0#a#T.b#c# d#W. . . $ e# . . . . $ !# ", +" f#j i g#G@h#i#j# . . . . $ k# . . . . $ K+ ", +" l#m#n# b+$ . . . . $ o# . . . . $ e# ", +" $ a+ . . . . $ o# . . . . $ k# ", +" $ !# . . . . $ p# . . . . $ o# ", +" $ K+ . . . . $ }+ . . . . $ o# ", +" $ e# . . . . $ q# . . . . . . . . . . . . . $ r# ", +" $ k# . . . . . . . . . . [+$ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . s#$ }+. . . . . . . . ", +" $ o# . . . . . . . . . . . . . . . . . t#$ 2 . . . . . . . . . . . . . . . . . . . . u#$ q#. . . . . . . . . . . . . ", +" $ o# . . . . . . . . . . . . . . . . v#$ . . . . [+$ . . . . . . ", +" $ r#. . . . . . . . . . . . . o#$ . . . . t#$ ", +" w#$ }+. . . . . . . . . x#$ . . . . v#$ ", +" . . . 2 $ q#. . . . . y#$ . . . . o#$ ", +" . . . [+$ . . . . + $ . . . . x#$ ", +" t#$ . . . . ) $ . . . . y#$ ", +" v#$ . . . . z#$ . . . . + $ ", +" o#$ . . . . j+$ F+ . . . . ) $ ", +" x#$ . . . . 9+$ * . . . . z#$ ", +" y#$ . . . . A#$ > . . . . . . . . . . . . B#$ C# ", +" + $ . . . . . . . . . . . D#$ E#. . . . . . . . . . . . . . . . . . . . . . . . . . . . . s+$ F#. . . . . . ", +" ) $ . . . . . . . . . . . . . . . . . . G#$ H#. . . . . . . . . . . . . . . . . . . . . . . # $ I#. . . . . . . . . . . ", +" z#$ J# . . . . . . . . . . . . . . . . . K#$ L# . . . . r+$ M# . . . . . . ", +" N#$ F#. . . . . . . . . . . . $ O# . . . . P#$ Q# ", +" . . R#$ w+. . . . . . . . $ S# . . . . T#$ L# ", +" . . . . p+$ U# . . . . V#[+ . . . . $ O# ", +" . . . W#$ t+ . . . . G+$ . . . . $ S# ", +" P#$ Q# . . . . ; $ X#Y# . . V#[+ ", +" T#$ L# . . W.Z# `# $.$ +$@$#$$$%$&$*$z@=$-$-$;$>$,$+@'$)$!$~${$]$^$/$=+($ _$:$ ", +" $ O# N+<$ [$}$|$1$2$3$4$[@5$_@h W W W W W W h |._@6$:@7$#+8$A 1@1@1@4.8$9$Y g h W h _@5$0$3.n 4.a$b$c$d$e$X+7.f$g$ ", +" $ S# h$i$j$k$2@ .k W W W g e.X k l$`@ ...m$n$o$p$q$*.r$s$t$u$v$w$A@V+4+x$V+V+y$z$*$A$B$C$D$E$F$G$H$S@I$E.J$K$L$M$N$O$s P$k j Y o@Q$( ", +" R$S$T$5@` Y X f i U$l@o@V$W$X+X$,@Y$Z$`$ %.%+% $ k# . . . . @%#%$% %%&%*%=%-%;%B >% ", +" ,%'%)%!%~%W W W l@{%]%^%/%(%_% . . = $ . . . . $ :% <% ", +" 7#[%2.f W }%|%1%2%3%4% 5%N+~ . . & $ * . . . . $ k# ", +" Z+5$2.6%7%8%9%0%a%b% . . . . # $ & . . . . = $ ", +" c%d%e%n# W#$ B+ . . . . $ k# . . . . & $ * ", +" $ :% . . . . :%9+ . . # $ & ", +" $ k# . . . . $ k# ", +" = $ . . . . :%9+ f%g%h%i%j% ", +" & $ * . . k%l%m%h%n%o%p%p%q% ", +" # $ & . . r%r%s%t%u%v%w%x%y%z%A%B%C%D% ", +" $ k# E%F%G%H%I%J%K%L%M%N%O%P%Q%R%S%T%l%j% ", +" :%9+ U%V%V%W%X%Y%Z%`% &.&+&@&#&$&%&&&*&=&-&;&>&,&m% ", +" '&)&!&~&{&]&^&/&(&_&:&<&[&}&&&|&1&2&3&4&5&6&7&8&9&0&a&b& ", +" c&d&e&f&g&h&'&i&j&k&l&m&n&. o&p&q&r&s&t&u&v&w&x&y&z&A&B&-&C&D&E&F&G& ", +" H&I&J&K&L&M&N&O&P&Q&R&S&. T&U&V&W&X&r&o&Y&o&Z&`&u& *.*+*@*#*$*%*&*%&**=*-*j% ", +" ;*>*,*'*)*!*~*{*]*^*/*(*_*:*<*[*}*_*|*1*2*3*4*5*Z&Z&Z&6*7*8*9*0*a*b*c*d*e*f*e*g*h*q% ", +" i*j*>*i*k*l*m*n*o*p*q*r*s*t*u*v*w*x*y*T&z*/*A*B*C*D*4*E*F*G*H*I*J*K*L*M*N*K*O*P*Q*Q*f*R*Y%S* ", +" T*U*V*i*W*X*Y*Z*`* =.=+=@=#=$=%=&=*===-=;=>=,='=)=_*)=!=~=H*{=]=^=/=(=P*P*_=(=:=:=<=K*O*O*O*O*Q*[=}=|= ", +" 1=2=3=4=U*1=5=6=7=8=9=0=a=b=c=d=e=f=g=$=h=i=y*j=k=l=m=n=o=p=q=r=s=t=u=v=(=w=x=v=y=z=z=(=w=w=<=<=K*A=P*P*O*B=a*|=C% ", +" C=`%D=E=F=3=G=H=5=I=J=K=L=M=N=O=P=Q=R=S=T=U=V=W=X=Y=Z=y*`=m= -.-+-@-u=#-$-%-%-%-$-&-&-*-*-y=y=z=z=(=w=:=<=K*A=K*O*O*f*=---q% ", +" ;->-,-'-)-,-!-~-{-]-^-/-(-_-:-<-[-}-5=|-1-2-`%,->-3->-4-5-6-7-8-s=9-0-a-b-c-d-e-R&f-f-g-h-i-i-*-y=v=y=z=z=z=(=w=_=<=%&K* O*j-k-l- ", +" m-n-V=m-$=o-p-q-r-s-t-1=u-v-w-x-y-/&z-~-A-h=>-B-p-2-p-S=2-3-C-D-E-F-a-a-0-G-H-H-0-I-a-J-e-f-f-K-L-i-=*=*M-y=y=y=z=z=(=w=:=K*K* N-O-P- ", +" Q-m=R-S-T-e=U-V-W-X-Y-Z-`- ;.;+;@;#;$;@;%;5=&;T**;=;-;;;`%>;,;';);!;~;0-{;F-F-];G-G-H-H-0-#-#-^;R&f-f-K-$-i-%-&-*-v=y=v=z=z=z=w=w=:=<=:= /;(;P-_; ", +" T&:;==<;[;T=};|;1;2;N&3;4;5;6;+;Z%]*7;8;9;$;0;a;b;b;c;5=d;e;f;g;h;i;j;k;k;l;m;j;n;!;o;F-p;];G-G-H-H-b-a-#-e-R&K-f-f-f-q;&-r;s;y=y=z=z=z=(=(=w=t;d* :=u;v;m%w; ", +" x;y;W&!=z;A;B;C;D;E;F;G;H;I;J;K;L;M;N;O;P;Q;R;S;I&T;N;>*j*1=U;V;W;X;Y;Z;`; > >.>+>@>m;#>#>!;!;F-!;F-];G-G-H-0-0-0-#-$>e-R&f-K-K-i-i-&-r;M-v=v=z=(=e*%>d*&>*>=>->;>>>s%,>g% ", +" Y&'>7*)>!>~>q={>]>^>/>(>_>:><>[>}>|>e&1>2>d&'&)*)*a&3>4>5>6>7>8>9>0>a>Y;b>c>d>e>e>f>g>g>h> =+>+>@>m;m;#>o;!;F-F-];G-G-H-0-0-0-b-#-f-f-f-K-K-K-i-i>z=b*/;j>k>l>m>n>o>p>h*_;j%j% ", +" u&`&5*q>r>s>n=D-t>u>v>w>x>y>z>A>B>C>D>E>F>G>H>I>J>K>J>P;P;I&L>M>N>O>P>Q>R>S>S>S>T>U>U>6=6=V>W>Z;g>X> =.>m;Y>m;#>j;F-F-l;Z>];G-H-0-0-0-`>a-R&f-f-K-$- ,.,P*#-+,M>@,g&I%#,V%r%k% ", +" $,%,&,*,=,v&-,;,>,,,',h*),W%!,~,{,],^,/,(,_,:,<,[,d&},|,1,J>2,3,4,5,R>6,8=8=7,Q>Q>i;Q>S>S>T>T>6=8,6=W>Z;9,X>.>.>+>m;m;0,#>o;o;F-F-];G-G-0-0-0-I-#-$>=*x=*-a,o*b,c,(,x>d,e,f,G% ", +" 7&A&g,A&g,h,i,%;j,k,l,X-m,n,o,p,q,r,d,s,t,u,/,v,w,x,y,z,K>c,A,B,C,D,E,O&F,G,H,G,I,J,7,K,7,Q>i;L,S>T>b>6=6=6=M,g>9,9,N, =@>+>m;m;j;!;!;F-p;];G-0-H-0-b-O,];P,Q,R,S,T,r%I%U,v,U, ", +" 9&8&r>g,V,W,X,Y,Z,~ `, '.'+'@'l%#'$'%'&'*'*',&='*',&-'>>;'>',''')'!'~'{']'^'/'/'D,('G,_'J,7,Y;Q>Q>i;i;S>T>T>b>6=6=8,g>e>e>h>.>@>m;m;m;#>#>:'k;<'G-F-m;E-['}'|'c,,&(,*'[,1' ", +" 2'3'4'5'6'7'8'9'o%0'k%h*f,V%a'--b'c'd'u%U%G%e'f'g'h'i'j'k'l'm'n'o'k'n'n']']'p'/'{'('G,H,I,7,Y;Y;Q>i;R>q'T>T>6=6=6=6=8,g>g>9,9, = =j;r'G-s'm;t'u'O-v'~*)*e&w'/,|,x' ", +" 9&y',&z'A'B'C'D'_;E',>--f%l%F'G'v%H'I'b'J'K'L'M'N'O'P'k'Q'Q'[>[>O'n'o'n']']'p'p'{'/'D,H,H,I,I,7,7,K,R>i;i;S>T>U>6=6=6=8,f>d>R'S'k;g>+,T'U'V'W'X'K>P;x'I> ", +" 0&Y'Z'`' ).)j%_;_;j%+)@),>#)$)%)&)*)=)-);)>),)>)N'N'')Q'Q'Q'[>k'k'k'o'n'^')')'l'p'D,('G,H,I,J,7,Y;Q>K,q'S>S>S>6=f>d>))!)b>(-~)u-4=b;{)X'])^) ", +" /)h,()_):)<)[)})q%|)1)2)*)3)4)=)5)=)6)6)7)8)7)>)>)N'N'')Q'Q'Q'[>O'k'o'n']')'p'p'/'D,H,H,H,J,J,7,K,i;i;i;q'M,c>9)0)a)b)c)d)e)f)a;e)g) ", +" h)i)l-h%j)|)k)l)m)n)o)p)q)r)s)5)5)t)u)u)v)v)v)w)w)N'')x)y)x)Q'z)O'k'o'n'^']'p'p'p'/'D,('G,J,J,Y;7,K,L,Y;A)Q,U'`%B)C)d)D)E)U* ", +" /)F)G)H)I)J)K)L)M)N)O)P)Q)R)s)s)s)5)u)=)6)7)8)w)w)>)S)y)y)Q'Q'Q'O'O'k'o'n']'^'p'p'{'H,I,I,H,5,a>I=T)U)G=V)W)X)/&Y)/& ", +" Z)`) !.!+!@!#!$!%!&!*!=!=!s)R)k,5)=)6)6)6)v)w)w)-!;!N'y)Q'Q'Q'O'O'k'k'n')'>!>!D,p',!{-W;'!)!>-!!~!{!]!`% ", +" /)X&^!/!(!_!:!)N'x)Q'x)Q'O'n')'l'n'2!3!'!-;4!5!>-6!2-2- ", +" i)7!8!9!0!a!b!c!d!*)|!|!|!=!R)s)k,k,e!t)6)v)v)v)w)f!-!g!')h!i!k'Q'j!O-k!l!k=j=>=m!e= ", +" i)/)n!o!p!q!r!s!s!t!u!*)|!|!R)=!k,5)v!t)6)=)w!v)w)-!x!y!;!z!|;A!)=B!==k=*=m= ", +" C!D!E!F!G!H!I!s!u!u!|!*)|!=!R)s)k,5)J!=)6)v)v)w!3!K!L!M!N!M!O!O!== ", +" P!Q!R!S!T!I!U!s!V!*)|!*)|!=!R)s)W!5)X!Y!Z!f=~>`! ~.~!=T&T& ", +" C!X&+~@~#~$~U!s!s!%~%~&~|!*~M;=~-~;~`&>~v&5*'>'> ", +" ,~'~)~!~~~{~]~^~s!/~(~_~:~<~[~%,B&>~o& ", +" }~|~1~$~2~3~4~G*5~6~A&7~5& ", +" C!8~9~/)/)0~9&a~b~ ", +" i),~h)/)c~ ", +" ", +" ", +" ", +" "}; diff --git a/src/Mod/Ship/Icons/Ship.xcf b/src/Mod/Ship/Icons/Ship.xcf new file mode 100644 index 0000000000000000000000000000000000000000..9775afde24d8d92e642cbe261c269146c3a87483 GIT binary patch literal 6365 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 XYjD1@s>KGlBz&{#z<=z79%1_rBCT>X literal 0 HcmV?d00001 diff --git a/src/Mod/Ship/Icons/Ship.xpm b/src/Mod/Ship/Icons/Ship.xpm new file mode 100644 index 0000000000..7297f4ca6f --- /dev/null +++ b/src/Mod/Ship/Icons/Ship.xpm @@ -0,0 +1,431 @@ +/* XPM */ +static char * Ship_xpm[] = { +"32 32 396 2", +" c None", +". c #2C2C2C", +"+ c #3A3A3A", +"@ c #585857", +"# c #161616", +"$ c #000000", +"% c #363636", +"& c #333333", +"* c #B3B3B3", +"= c #B4B4B4", +"- c #949494", +"; c #565653", +"> c #141414", +", c #080807", +"' c #585858", +") c #878787", +"! c #9F9E9F", +"~ c #9F9F9E", +"{ c #8F8F90", +"] c #6B6B6B", +"^ c #101010", +"/ c #737373", +"( c #4C4C4C", +"_ c #B1B1B7", +": c #9090C0", +"< c #A7A7B2", +"[ c #87878E", +"} c #4F4F52", +"| c #191919", +"1 c #656565", +"2 c #D1D1D2", +"3 c #D1D1D1", +"4 c #CECECE", +"5 c #CDCCCC", +"6 c #CCCCCC", +"7 c #CCCCCB", +"8 c #CDCECD", +"9 c #BDBDBD", +"0 c #424242", +"a c #373737", +"b c #0A0A0A", +"c c #241414", +"d c #0E0C0C", +"e c #929393", +"f c #383738", +"g c #9B9B9A", +"h c #A0A0AF", +"i c #2929E4", +"j c #2525E5", +"k c #3F3FD7", +"l c #5B5BC8", +"m c #535368", +"n c #686866", +"o c #C8C8C8", +"p c #C8C8C7", +"q c #C7C6C7", +"r c #C6C6C6", +"s c #C5C5C5", +"t c #C4C5C5", +"u c #C3C4C3", +"v c #C3C3C2", +"w c #BCBCBC", +"x c #595959", +"y c #A6A6A6", +"z c #969696", +"A c #0B0B0B", +"B c #0D0707", +"C c #894646", +"D c #1C1A1A", +"E c #525252", +"F c #6C6D6C", +"G c #A3A3A2", +"H c #A3A296", +"I c #8E8F98", +"J c #6F6EA5", +"K c #5354AF", +"L c #373753", +"M c #8D8D8B", +"N c #C5C5C4", +"O c #C2C2C2", +"P c #C1C1C1", +"Q c #C0C0C0", +"R c #C0BFBF", +"S c #BFBFBF", +"T c #BEBEBE", +"U c #B1B2B2", +"V c #404040", +"W c #ABAAAA", +"X c #797979", +"Y c #2A1212", +"Z c #662828", +"` c #3D403F", +" . c #B5B5B5", +".. c #6B6A6B", +"+. c #4A4A4A", +"@. c #9A9A9A", +"#. c #909090", +"$. c #8B8B8A", +"%. c #898A86", +"&. c #84837F", +"*. c #3D3D3C", +"=. c #9E9E9E", +"-. c #BFBFBE", +";. c #BDBEBD", +">. c #BBBBBB", +",. c #BABABA", +"'. c #B9B9B9", +"). c #B8B8B8", +"!. c #999999", +"~. c #BABAB9", +"{. c #ABABAB", +"]. c #292929", +"^. c #381212", +"/. c #4C1514", +"(. c #535656", +"_. c #717171", +":. c #919090", +"<. c #818181", +"[. c #4E4E4E", +"}. c #4B4B4B", +"|. c #B1B1B1", +"1. c #B8B7B8", +"2. c #B6B6B6", +"3. c #B6B5B5", +"4. c #B4B5B4", +"5. c #B2B3B2", +"6. c #5C5D5C", +"7. c #AFAFAF", +"8. c #ADACAC", +"9. c #5B5B5B", +"0. c #410C0C", +"a. c #3E0707", +"b. c #525555", +"c. c #9C9C9C", +"d. c #2D2D2D", +"e. c #757575", +"f. c #474747", +"g. c #484848", +"h. c #9F9F9F", +"i. c #B3B3B4", +"j. c #B2B2B2", +"k. c #B0B0B0", +"l. c #ADAEAD", +"m. c #ADADAD", +"n. c #B0B1B0", +"o. c #1E1E1E", +"p. c #ACABAC", +"q. c #AAA9A9", +"r. c #A8A8A8", +"s. c #5D5D5D", +"t. c #290202", +"u. c #281010", +"v. c #272828", +"w. c #767777", +"x. c #505050", +"y. c #1F1F1F", +"z. c #5E5E5D", +"A. c #A4A5A5", +"B. c #B1B2B1", +"C. c #AEAEAE", +"D. c #AEADAD", +"E. c #ABACAC", +"F. c #AAAAAA", +"G. c #A9A8A8", +"H. c #ABABAC", +"I. c #7B7B7B", +"J. c #2B2B2B", +"K. c #A4A4A4", +"L. c #A6A5A6", +"M. c #888888", +"N. c #0E0E0E", +"O. c #101312", +"P. c #7E8080", +"Q. c #5E5E5E", +"R. c #242424", +"S. c #555555", +"T. c #7F7F7F", +"U. c #A4A3A4", +"V. c #B3B3B2", +"W. c #ACACAC", +"X. c #A9A9A9", +"Y. c #A8A7A7", +"Z. c #A7A6A7", +"`. c #A7A7A7", +" + c #A8A8A7", +".+ c #A5A5A5", +"++ c #A2A2A2", +"@+ c #222122", +"#+ c #7E7E7E", +"$+ c #A3A3A3", +"%+ c #9B9B9B", +"&+ c #050505", +"*+ c #6E6E6E", +"=+ c #A7A7A6", +"-+ c #989898", +";+ c #A5A4A4", +">+ c #A7A7A8", +",+ c #A5A6A7", +"'+ c #979A99", +")+ c #818383", +"!+ c #757878", +"~+ c #757979", +"{+ c #878A8A", +"]+ c #A3A5A5", +"^+ c #828282", +"/+ c #A0A0A0", +"(+ c #232323", +"_+ c #939393", +":+ c #A5A6A5", +"<+ c #A2A3A2", +"[+ c #A2A1A1", +"}+ c #A1A0A1", +"|+ c #939292", +"1+ c #636262", +"2+ c #554D4D", +"3+ c #634C4C", +"4+ c #755555", +"5+ c #936464", +"6+ c #9F6868", +"7+ c #9B6060", +"8+ c #804A4A", +"9+ c #5C3737", +"0+ c #1D1616", +"a+ c #A1A1A1", +"b+ c #010101", +"c+ c #151516", +"d+ c #707070", +"e+ c #9D9E9E", +"f+ c #8C8D8D", +"g+ c #8B8888", +"h+ c #726A6A", +"i+ c #6D5959", +"j+ c #866261", +"k+ c #C18B8B", +"l+ c #D79696", +"m+ c #D18C8C", +"n+ c #CB8180", +"o+ c #C57575", +"p+ c #BF6B6A", +"q+ c #BB6161", +"r+ c #B95958", +"s+ c #9C4544", +"t+ c #2E1212", +"u+ c #6F6C6C", +"v+ c #A0A1A1", +"w+ c #575757", +"x+ c #0C0C0C", +"y+ c #9C9D9D", +"z+ c #7A7272", +"A+ c #876F6F", +"B+ c #977070", +"C+ c #C28C8C", +"D+ c #D59595", +"E+ c #D08A8A", +"F+ c #C67D7D", +"G+ c #C07272", +"H+ c #BC6969", +"I+ c #B85F5F", +"J+ c #B35656", +"K+ c #B04C4C", +"L+ c #AB4243", +"M+ c #A63939", +"N+ c #591B1B", +"O+ c #6A2121", +"P+ c #542323", +"Q+ c #585A5A", +"R+ c #191515", +"S+ c #706262", +"T+ c #A58080", +"U+ c #B58383", +"V+ c #CE8F8F", +"W+ c #CD8989", +"X+ c #C17372", +"Y+ c #B45656", +"Z+ c #AF4C4C", +"`+ c #AB4242", +" @ c #A73A39", +".@ c #A3302F", +"+@ c #9F2626", +"@@ c #8E1A1A", +"#@ c #2C0808", +"$@ c #91191A", +"%@ c #2F0200", +"&@ c #90C6FB", +"*@ c #8BBFFB", +"=@ c #94CBFC", +"-@ c #AFEFFB", +";@ c #7DABA0", +">@ c #3C2521", +",@ c #C88484", +"'@ c #C57C7D", +")@ c #C17273", +"!@ c #B86060", +"~@ c #AB4343", +"{@ c #A73939", +"]@ c #A32F2F", +"^@ c #9B1C1D", +"/@ c #961313", +"(@ c #96090A", +"_@ c #3C0202", +":@ c #4E0202", +"<@ c #300000", +"[@ c #3E5378", +"}@ c #7EABF9", +"|@ c #84B5FC", +"1@ c #96CDFB", +"2@ c #B2F2FA", +"3@ c #C4FFFA", +"4@ c #2E3FFD", +"5@ c #3346FD", +"6@ c #2A3AFD", +"7@ c #161EFE", +"8@ c #1B25FD", +"9@ c #1F25B4", +"0@ c #7C6196", +"a@ c #AA6075", +"b@ c #AC5763", +"c@ c #AD5155", +"d@ c #AD4645", +"e@ c #A83938", +"f@ c #A3302E", +"g@ c #A02624", +"h@ c #9B1C1B", +"i@ c #971311", +"j@ c #930A09", +"k@ c #900300", +"l@ c #900505", +"m@ c #660007", +"n@ c #00000D", +"o@ c #200112", +"p@ c #597F88", +"q@ c #6E97FD", +"r@ c #384CFD", +"s@ c #394EFD", +"t@ c #2D3EFD", +"u@ c #151DFE", +"v@ c #1821FE", +"w@ c #3C52FD", +"x@ c #6388FC", +"y@ c #9CD6FB", +"z@ c #D0FFFA", +"A@ c #AEEEFB", +"B@ c #749FFF", +"C@ c #3F5DFF", +"D@ c #4165FF", +"E@ c #525AE3", +"F@ c #6153C4", +"G@ c #672D8D", +"H@ c #6C1B6A", +"I@ c #722164", +"J@ c #75225E", +"K@ c #731D57", +"L@ c #701653", +"M@ c #690E52", +"N@ c #5F0050", +"O@ c #562086", +"P@ c #11108D", +"Q@ c #2330BE", +"R@ c #344AE1", +"S@ c #4E6BFF", +"T@ c #4E6BFD", +"U@ c #597AFC", +"V@ c #6184FC", +"W@ c #7099FC", +"X@ c #8BBEFB", +"Y@ c #95CCFB", +"Z@ c #5B7CFC", +"`@ c #1C26FD", +" # c #121AFE", +".# c #9ED7FB", +"+# c #81B4FF", +"@# c #6893FF", +"## c #6997FF", +"$# c #6695FF", +"%# c #6390FF", +"&# c #618DFF", +"*# c #608DFF", +"=# c #618EFF", +"-# c #6391FF", +";# c #6898FF", +"># c #6B9AFF", +",# c #5171ED", +"'# c #90C4FF", +")# c #7EABFC", +"!# c #729CFC", +"~# c #6287FC", +"{# c #4761FD", +"]# c #070AFE", +"^# c #6084FC", +"/# c #9AD2FB", +"(# c #A2DDFB", +"_# c #8ABDFB", +":# c #2B3AFD", +"<# c #A9E8FB", +"[# c #B9FCFA", +"}# c #BAFEFA", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" . + @ # $ $ $ $ $ ", +" % & * = - ; > $ $ , ' ) ! ~ { ] & $ $ $ ", +" ^ / ( = _ : < [ } | $ 1 2 3 4 5 6 7 6 8 9 0 a b ", +" c d e f g h i j k l m n 4 o p q r s t u v w x y z A ", +" B C D * E F G H I J K L M N O O P Q R S T 9 U V W O X $ ", +" Y Z ` ...+.@.#.$.%.&.*.=.-.;.w >.>.,.'.).).!.+ ~. .{.]. ", +" ^./.(.y _.f :.) <.[.^ }.|.).1.2.3. .4.* 5. .6.1 4.7.8.9. ", +" 0.a.b.c./ d.e.f.| g.h.9 i.* j.|.k.7.7.l.m.n.o.@.p.q.r.s. ", +" t.u.v.w.x.y.% z.A.).B.C.D.m.E.{.F.F.G.r.H.I.J.k.K.L.M.N. ", +" O.P.Q.R.S.T.U.V.W.q.X.r.Y.Z.`.Y. +`..+++{.@+#+$+++%+y. ", +" &+*+W.=+-+;+X.>+y .+K.K.y y ,+'+)+!+~+{+]+^+].$+/+$+J. ", +" (+_+:+U.$+<+[+}+/+h.=.|+1+2+3+4+5+6+7+8+9+0+_.a+/+0 b+ ", +" c+d+h.a+/+++e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+$ ", +" x+f.- y+w.z+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+$ ", +" R+S+T+U+V+W+F+X+H+I+Y+Z+`+ @.@+@@@#@$@%@$ ", +"&@*@=@-@;@>@,@'@)@H+!@Y+K+~@{@]@+@^@/@(@_@:@<@[@}@|@1@2@3@ ", +"4@5@6@7@8@9@0@a@b@c@d@e@f@g@h@i@j@k@l@m@n@o@p@q@r@s@t@u@v@w@x@y@", +" z@A@B@C@D@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S@T@U@V@W@X@Y@Z@`@ #", +" .#+#@###$#%#&#*#=#-#;#>#,#'# )#!#~#{#]#^#/#", +" (#_#:#<#", +" [#}#", +" ", +" ", +" ", +" "}; diff --git a/src/Mod/Ship/InitGui.py b/src/Mod/Ship/InitGui.py new file mode 100644 index 0000000000..b85eca16f0 --- /dev/null +++ b/src/Mod/Ship/InitGui.py @@ -0,0 +1,39 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +class ShipWorkbench ( Workbench ): + """ @brief Workbench of Ship design module. Here toolbars & icons are append. """ + from shipUtils import Paths, Translator + import ShipGui + + Icon = Paths.iconsPath() + "/Ico.png" + MenuText = str(Translator.translate("Ship design")) + ToolTip = str(Translator.translate("Ship design")) + + def Initialize(self): + # ToolBar + list = ["Ship_CreateShip", "Ship_OutlineDraw"] + self.appendToolbar("Ship design",list) + + # Menu + list = ["Ship_CreateShip", "Ship_OutlineDraw"] + self.appendMenu("Ship design",list) + +Gui.addWorkbench(ShipWorkbench()) diff --git a/src/Mod/Ship/Instance.py b/src/Mod/Ship/Instance.py new file mode 100644 index 0000000000..1e024023ee --- /dev/null +++ b/src/Mod/Ship/Instance.py @@ -0,0 +1,609 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +import time + +# COIN +from pivy.coin import * +from pivy import coin + +# FreeCAD +import FreeCAD,FreeCADGui +from FreeCAD import Part, Base, Vector + +# Ship design module +from shipUtils import Paths, Translator, Math + +class Ship: + def __init__(self, obj, faces): + """ Creates a new ship on active document. + @param faces Ship faces (Part::Shape entities). + """ + self.faces = faces + # Add uniqueness property to identify Ship instances + obj.addProperty("App::PropertyBool","IsShip","Ship", str(Translator.translate("True if is a valid ship instance"))).IsShip=True + # Add main dimensions + obj.addProperty("App::PropertyLength","Length","Ship", str(Translator.translate("Ship length (Lpp) [m]"))).Length=0.0 + obj.addProperty("App::PropertyLength","Beam","Ship", str(Translator.translate("Ship beam (B) [m]"))).Beam=0.0 + obj.addProperty("App::PropertyLength","Draft","Ship", str(Translator.translate("Ship draft (T) [m]"))).Draft=0.0 + # Add shapes + obj.addProperty("Part::PropertyPartShape","Shape","Ship", str(Translator.translate("Ship surfaces"))).Shape = Part.makeShell(self.faces) + obj.Proxy = self + self.obj = obj + + def execute(self, obj): + pass + + def discretize(self, nS, nP): + """ Discretize the surface. + @param nS Number of sections + @param nP Number of points per section + """ + self.obj.addProperty("App::PropertyInteger","nSections","Ship", str(Translator.translate("Number of sections"))).nSections=nS + self.obj.addProperty("App::PropertyIntegerList","nPoints","Ship", str(Translator.translate("List of number of points per sections (accumulated histogram)"))).nPoints=[0] + self.obj.addProperty("App::PropertyFloatList","xSection","Ship", str(Translator.translate("List of sections x coordinate"))).xSection=[] + self.obj.addProperty("App::PropertyVectorList","mSections","Ship", str(Translator.translate("List of sections points"))).mSections=[] + # Get bounds + shape = self.obj.Shape + bbox = shape.BoundBox + x0 = bbox.XMin + x1 = bbox.XMax + y0 = bbox.YMin + y1 = bbox.YMax + z0 = bbox.ZMin + z1 = bbox.ZMax + # Create a set of planes to perfom edges sections + planes = [] + dz = (z1 - z0) / (nP - 1) + for j in range(0,nP): + z = z0 + j*dz + rX = x1 - x0 + rY = y1 - y0 + planes.append(Part.makePlane(4*rX,4*rY,Base.Vector(-2*rX,-2*rY,z),Base.Vector(0,0,1))) + # Division are performed at x axis + dx = (x1 - x0) / (nS - 1.0) + for i in range(0,nS): + section = [] + x = x0 + i*dx + self.obj.xSection.append(x) + percen = i*100 / (nS-1) + FreeCAD.Console.PrintMessage('%d%%\n' % (percen)); + # Slice the surface to get curves + wires = shape.slice(Vector(1.0,0.0,0.0), x) + if not wires: + if (i != 0) or (i != nS-1): + msg = 'Found empty section at x=%g\n' + msg = Translator.translate(msg) + FreeCAD.Console.PrintWarning(msg) + FreeCAD.Console.PrintWarning('\tThis may happens if a bad defined (or really complex) surface has been provided.\n') + FreeCAD.Console.PrintWarning('\tPlease, ensure that this section is correct, or fix surfaces and create a new ship.\n') + self.obj.nPoints.append(0) + # Desarrollate wires into edges list + edges = [] + for j in range(0,len(wires)): + wire = wires[j].Edges + for k in range(0,len(wire)): + edges.append(wire[k]) + # Slice curves to get points (Length based) + points = [] + for j in range(0,len(edges)): + for k in range(0,nP): + aux = self.lineFaceSection(edges[j], planes[k]) + if not aux: + points.append(Vector(x,0,z0 + k*dz)) + for l in range(0,len(aux)): + points.append(Vector(aux[l].X, aux[l].Y, aux[l].Z)) + # Sort section points at Y direction + aux = [] + for j in range(0,len(points)): + aux.append(points[j].y) + aux.sort() + for j in range(0,len(points)): + section.append(Vector(points[j].x, aux[j], points[j].z)) + # Store points + self.obj.nPoints.append(len(points)) + for j in range(0,len(points)): + self.obj.mSections.append(points[j]) + + def lineFaceSection(self,line,surface): + """ Returns the point of section of a line with a face + @param line Line object, that can be a curve. + @param surface Surface object (must be a Part::Shape) + @return Section points array, [] if line don't cut surface + """ + # Get initial data + result = [] + vertexes = line.Vertexes + nVertex = len(vertexes) + # Perform the cut + section = line.cut(surface) + # Filter all old points + points = section.Vertexes + nPoint = len(points) + if nPoint <= nVertex: + # Any valid point + result + for i in range(0,nPoint): + disp = len(result) + flag = 0 + if not Math.isAprox(points[i].X,vertexes[i-disp].X,0.0001): + flag = flag+1 + if not Math.isAprox(points[i].Y,vertexes[i-disp].Y,0.0001): + flag = flag+1 + if not Math.isAprox(points[i].Z,vertexes[i-disp].Z,0.0001): + flag = flag+1 + if flag > 0: + result.append(points[i]) + return result + +class ViewProviderShip: + def __init__(self, obj): + "Set this object to the proxy object of the actual view provider" + obj.Proxy = self + + def getIcon(self): + return """ + /* XPM */ + static char * Ship_xpm[] = { + "32 32 396 2", + " c None", + ". c #2C2C2C", + "+ c #3A3A3A", + "@ c #585857", + "# c #161616", + "$ c #000000", + "% c #363636", + "& c #333333", + "* c #B3B3B3", + "= c #B4B4B4", + "- c #949494", + "; c #565653", + "> c #141414", + ", c #080807", + "' c #585858", + ") c #878787", + "! c #9F9E9F", + "~ c #9F9F9E", + "{ c #8F8F90", + "] c #6B6B6B", + "^ c #101010", + "/ c #737373", + "( c #4C4C4C", + "_ c #B1B1B7", + ": c #9090C0", + "< c #A7A7B2", + "[ c #87878E", + "} c #4F4F52", + "| c #191919", + "1 c #656565", + "2 c #D1D1D2", + "3 c #D1D1D1", + "4 c #CECECE", + "5 c #CDCCCC", + "6 c #CCCCCC", + "7 c #CCCCCB", + "8 c #CDCECD", + "9 c #BDBDBD", + "0 c #424242", + "a c #373737", + "b c #0A0A0A", + "c c #241414", + "d c #0E0C0C", + "e c #929393", + "f c #383738", + "g c #9B9B9A", + "h c #A0A0AF", + "i c #2929E4", + "j c #2525E5", + "k c #3F3FD7", + "l c #5B5BC8", + "m c #535368", + "n c #686866", + "o c #C8C8C8", + "p c #C8C8C7", + "q c #C7C6C7", + "r c #C6C6C6", + "s c #C5C5C5", + "t c #C4C5C5", + "u c #C3C4C3", + "v c #C3C3C2", + "w c #BCBCBC", + "x c #595959", + "y c #A6A6A6", + "z c #969696", + "A c #0B0B0B", + "B c #0D0707", + "C c #894646", + "D c #1C1A1A", + "E c #525252", + "F c #6C6D6C", + "G c #A3A3A2", + "H c #A3A296", + "I c #8E8F98", + "J c #6F6EA5", + "K c #5354AF", + "L c #373753", + "M c #8D8D8B", + "N c #C5C5C4", + "O c #C2C2C2", + "P c #C1C1C1", + "Q c #C0C0C0", + "R c #C0BFBF", + "S c #BFBFBF", + "T c #BEBEBE", + "U c #B1B2B2", + "V c #404040", + "W c #ABAAAA", + "X c #797979", + "Y c #2A1212", + "Z c #662828", + "` c #3D403F", + " . c #B5B5B5", + ".. c #6B6A6B", + "+. c #4A4A4A", + "@. c #9A9A9A", + "#. c #909090", + "$. c #8B8B8A", + "%. c #898A86", + "&. c #84837F", + "*. c #3D3D3C", + "=. c #9E9E9E", + "-. c #BFBFBE", + ";. c #BDBEBD", + ">. c #BBBBBB", + ",. c #BABABA", + "'. c #B9B9B9", + "). c #B8B8B8", + "!. c #999999", + "~. c #BABAB9", + "{. c #ABABAB", + "]. c #292929", + "^. c #381212", + "/. c #4C1514", + "(. c #535656", + "_. c #717171", + ":. c #919090", + "<. c #818181", + "[. c #4E4E4E", + "}. c #4B4B4B", + "|. c #B1B1B1", + "1. c #B8B7B8", + "2. c #B6B6B6", + "3. c #B6B5B5", + "4. c #B4B5B4", + "5. c #B2B3B2", + "6. c #5C5D5C", + "7. c #AFAFAF", + "8. c #ADACAC", + "9. c #5B5B5B", + "0. c #410C0C", + "a. c #3E0707", + "b. c #525555", + "c. c #9C9C9C", + "d. c #2D2D2D", + "e. c #757575", + "f. c #474747", + "g. c #484848", + "h. c #9F9F9F", + "i. c #B3B3B4", + "j. c #B2B2B2", + "k. c #B0B0B0", + "l. c #ADAEAD", + "m. c #ADADAD", + "n. c #B0B1B0", + "o. c #1E1E1E", + "p. c #ACABAC", + "q. c #AAA9A9", + "r. c #A8A8A8", + "s. c #5D5D5D", + "t. c #290202", + "u. c #281010", + "v. c #272828", + "w. c #767777", + "x. c #505050", + "y. c #1F1F1F", + "z. c #5E5E5D", + "A. c #A4A5A5", + "B. c #B1B2B1", + "C. c #AEAEAE", + "D. c #AEADAD", + "E. c #ABACAC", + "F. c #AAAAAA", + "G. c #A9A8A8", + "H. c #ABABAC", + "I. c #7B7B7B", + "J. c #2B2B2B", + "K. c #A4A4A4", + "L. c #A6A5A6", + "M. c #888888", + "N. c #0E0E0E", + "O. c #101312", + "P. c #7E8080", + "Q. c #5E5E5E", + "R. c #242424", + "S. c #555555", + "T. c #7F7F7F", + "U. c #A4A3A4", + "V. c #B3B3B2", + "W. c #ACACAC", + "X. c #A9A9A9", + "Y. c #A8A7A7", + "Z. c #A7A6A7", + "`. c #A7A7A7", + " + c #A8A8A7", + ".+ c #A5A5A5", + "++ c #A2A2A2", + "@+ c #222122", + "#+ c #7E7E7E", + "$+ c #A3A3A3", + "%+ c #9B9B9B", + "&+ c #050505", + "*+ c #6E6E6E", + "=+ c #A7A7A6", + "-+ c #989898", + ";+ c #A5A4A4", + ">+ c #A7A7A8", + ",+ c #A5A6A7", + "'+ c #979A99", + ")+ c #818383", + "!+ c #757878", + "~+ c #757979", + "{+ c #878A8A", + "]+ c #A3A5A5", + "^+ c #828282", + "/+ c #A0A0A0", + "(+ c #232323", + "_+ c #939393", + ":+ c #A5A6A5", + "<+ c #A2A3A2", + "[+ c #A2A1A1", + "}+ c #A1A0A1", + "|+ c #939292", + "1+ c #636262", + "2+ c #554D4D", + "3+ c #634C4C", + "4+ c #755555", + "5+ c #936464", + "6+ c #9F6868", + "7+ c #9B6060", + "8+ c #804A4A", + "9+ c #5C3737", + "0+ c #1D1616", + "a+ c #A1A1A1", + "b+ c #010101", + "c+ c #151516", + "d+ c #707070", + "e+ c #9D9E9E", + "f+ c #8C8D8D", + "g+ c #8B8888", + "h+ c #726A6A", + "i+ c #6D5959", + "j+ c #866261", + "k+ c #C18B8B", + "l+ c #D79696", + "m+ c #D18C8C", + "n+ c #CB8180", + "o+ c #C57575", + "p+ c #BF6B6A", + "q+ c #BB6161", + "r+ c #B95958", + "s+ c #9C4544", + "t+ c #2E1212", + "u+ c #6F6C6C", + "v+ c #A0A1A1", + "w+ c #575757", + "x+ c #0C0C0C", + "y+ c #9C9D9D", + "z+ c #7A7272", + "A+ c #876F6F", + "B+ c #977070", + "C+ c #C28C8C", + "D+ c #D59595", + "E+ c #D08A8A", + "F+ c #C67D7D", + "G+ c #C07272", + "H+ c #BC6969", + "I+ c #B85F5F", + "J+ c #B35656", + "K+ c #B04C4C", + "L+ c #AB4243", + "M+ c #A63939", + "N+ c #591B1B", + "O+ c #6A2121", + "P+ c #542323", + "Q+ c #585A5A", + "R+ c #191515", + "S+ c #706262", + "T+ c #A58080", + "U+ c #B58383", + "V+ c #CE8F8F", + "W+ c #CD8989", + "X+ c #C17372", + "Y+ c #B45656", + "Z+ c #AF4C4C", + "`+ c #AB4242", + " @ c #A73A39", + ".@ c #A3302F", + "+@ c #9F2626", + "@@ c #8E1A1A", + "#@ c #2C0808", + "$@ c #91191A", + "%@ c #2F0200", + "&@ c #90C6FB", + "*@ c #8BBFFB", + "=@ c #94CBFC", + "-@ c #AFEFFB", + ";@ c #7DABA0", + ">@ c #3C2521", + ",@ c #C88484", + "'@ c #C57C7D", + ")@ c #C17273", + "!@ c #B86060", + "~@ c #AB4343", + "{@ c #A73939", + "]@ c #A32F2F", + "^@ c #9B1C1D", + "/@ c #961313", + "(@ c #96090A", + "_@ c #3C0202", + ":@ c #4E0202", + "<@ c #300000", + "[@ c #3E5378", + "}@ c #7EABF9", + "|@ c #84B5FC", + "1@ c #96CDFB", + "2@ c #B2F2FA", + "3@ c #C4FFFA", + "4@ c #2E3FFD", + "5@ c #3346FD", + "6@ c #2A3AFD", + "7@ c #161EFE", + "8@ c #1B25FD", + "9@ c #1F25B4", + "0@ c #7C6196", + "a@ c #AA6075", + "b@ c #AC5763", + "c@ c #AD5155", + "d@ c #AD4645", + "e@ c #A83938", + "f@ c #A3302E", + "g@ c #A02624", + "h@ c #9B1C1B", + "i@ c #971311", + "j@ c #930A09", + "k@ c #900300", + "l@ c #900505", + "m@ c #660007", + "n@ c #00000D", + "o@ c #200112", + "p@ c #597F88", + "q@ c #6E97FD", + "r@ c #384CFD", + "s@ c #394EFD", + "t@ c #2D3EFD", + "u@ c #151DFE", + "v@ c #1821FE", + "w@ c #3C52FD", + "x@ c #6388FC", + "y@ c #9CD6FB", + "z@ c #D0FFFA", + "A@ c #AEEEFB", + "B@ c #749FFF", + "C@ c #3F5DFF", + "D@ c #4165FF", + "E@ c #525AE3", + "F@ c #6153C4", + "G@ c #672D8D", + "H@ c #6C1B6A", + "I@ c #722164", + "J@ c #75225E", + "K@ c #731D57", + "L@ c #701653", + "M@ c #690E52", + "N@ c #5F0050", + "O@ c #562086", + "P@ c #11108D", + "Q@ c #2330BE", + "R@ c #344AE1", + "S@ c #4E6BFF", + "T@ c #4E6BFD", + "U@ c #597AFC", + "V@ c #6184FC", + "W@ c #7099FC", + "X@ c #8BBEFB", + "Y@ c #95CCFB", + "Z@ c #5B7CFC", + "`@ c #1C26FD", + " # c #121AFE", + ".# c #9ED7FB", + "+# c #81B4FF", + "@# c #6893FF", + "## c #6997FF", + "$# c #6695FF", + "%# c #6390FF", + "&# c #618DFF", + "*# c #608DFF", + "=# c #618EFF", + "-# c #6391FF", + ";# c #6898FF", + "># c #6B9AFF", + ",# c #5171ED", + "'# c #90C4FF", + ")# c #7EABFC", + "!# c #729CFC", + "~# c #6287FC", + "{# c #4761FD", + "]# c #070AFE", + "^# c #6084FC", + "/# c #9AD2FB", + "(# c #A2DDFB", + "_# c #8ABDFB", + ":# c #2B3AFD", + "<# c #A9E8FB", + "[# c #B9FCFA", + "}# c #BAFEFA", + " ", + " ", + " ", + " ", + " ", + " ", + " ", + " . + @ # $ $ $ $ $ ", + " % & * = - ; > $ $ , ' ) ! ~ { ] & $ $ $ ", + " ^ / ( = _ : < [ } | $ 1 2 3 4 5 6 7 6 8 9 0 a b ", + " c d e f g h i j k l m n 4 o p q r s t u v w x y z A ", + " B C D * E F G H I J K L M N O O P Q R S T 9 U V W O X $ ", + " Y Z ` ...+.@.#.$.%.&.*.=.-.;.w >.>.,.'.).).!.+ ~. .{.]. ", + " ^./.(.y _.f :.) <.[.^ }.|.).1.2.3. .4.* 5. .6.1 4.7.8.9. ", + " 0.a.b.c./ d.e.f.| g.h.9 i.* j.|.k.7.7.l.m.n.o.@.p.q.r.s. ", + " t.u.v.w.x.y.% z.A.).B.C.D.m.E.{.F.F.G.r.H.I.J.k.K.L.M.N. ", + " O.P.Q.R.S.T.U.V.W.q.X.r.Y.Z.`.Y. +`..+++{.@+#+$+++%+y. ", + " &+*+W.=+-+;+X.>+y .+K.K.y y ,+'+)+!+~+{+]+^+].$+/+$+J. ", + " (+_+:+U.$+<+[+}+/+h.=.|+1+2+3+4+5+6+7+8+9+0+_.a+/+0 b+ ", + " c+d+h.a+/+++e+f+g+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+$ ", + " x+f.- y+w.z+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+$ ", + " R+S+T+U+V+W+F+X+H+I+Y+Z+`+ @.@+@@@#@$@%@$ ", + "&@*@=@-@;@>@,@'@)@H+!@Y+K+~@{@]@+@^@/@(@_@:@<@[@}@|@1@2@3@ ", + "4@5@6@7@8@9@0@a@b@c@d@e@f@g@h@i@j@k@l@m@n@o@p@q@r@s@t@u@v@w@x@y@", + " z@A@B@C@D@E@F@G@H@I@J@K@L@M@N@O@P@Q@R@S@T@U@V@W@X@Y@Z@`@ #", + " .#+#@###$#%#&#*#=#-#;#>#,#'# )#!#~#{#]#^#/#", + " (#_#:#<#", + " [#}#", + " ", + " ", + " ", + " "}; + """ + +def sections(obj): + """ Returns the discretization points of sections, with the advantage + that is a list of nSections lists, with the points. + @param Ship object + @return Sections points + """ + histogram = obj.nPoints[:] + points = obj.mSections[:] + sections = [] + for i in range(0, len(histogram) - 1): + sections.append([]) + for j in range(histogram[i],histogram[i+1]): + sections[i].append(points[j]) + return sections diff --git a/src/Mod/Ship/ShipGui.py b/src/Mod/Ship/ShipGui.py new file mode 100644 index 0000000000..adef90e26d --- /dev/null +++ b/src/Mod/Ship/ShipGui.py @@ -0,0 +1,49 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +from PyQt4 import QtCore, QtGui +import FreeCAD, FreeCADGui, os + +class CreateShip: + def Activated(self): + import shipCreateShip + shipCreateShip.load() + + def GetResources(self): + from shipUtils import Paths, Translator + IconPath = Paths.iconsPath() + "/Ico.png" + MenuText = str(Translator.translate('Create a new ship')) + ToolTip = str(Translator.translate('Create a new ship in order to work with them')) + return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} + +class OutlineDraw: + def Activated(self): + import shipOutlineDraw + shipOutlineDraw.load() + + def GetResources(self): + from shipUtils import Paths, Translator + IconPath = Paths.iconsPath() + "/OutlineDrawIco.png" + MenuText = str(Translator.translate('Outline draw')) + ToolTip = str(Translator.translate('Plot ship outline draw')) + return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} + +FreeCADGui.addCommand('Ship_CreateShip', CreateShip()) +FreeCADGui.addCommand('Ship_OutlineDraw', OutlineDraw()) diff --git a/src/Mod/Ship/shipCreateShip/Preview.py b/src/Mod/Ship/shipCreateShip/Preview.py new file mode 100644 index 0000000000..defe489443 --- /dev/null +++ b/src/Mod/Ship/shipCreateShip/Preview.py @@ -0,0 +1,127 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD,FreeCADGui +from FreeCAD import Base +from FreeCAD import Part +# FreeCADShip modules +from shipUtils import Paths, Translator + +class Preview(object): + def __init__(self): + """ Constructor. + """ + self.baseLine = None + self.baseLineLabel = None + self.reinit() + + def reinit(self): + """ Reinitializate drawer. + """ + self.clean() + + def update(self, L, B, T): + """ Update the 3D view printing annotations. + @param L Ship length. + @param B Ship beam. + @param T Ship draft. + """ + # Destroy all previous entities + self.clean() + # Draw base line + xStart = -0.6*L; + xEnd = 0.6*L; + baseLine = Part.makeLine((xStart,0,0),(xEnd,0,0)) + Part.show(baseLine) + objs = FreeCAD.ActiveDocument.Objects + self.baseLine = objs[len(objs)-1] + self.baseLine.Label = 'BaseLine' + self.baseLineLabel = DrawText('BaseLineText', str(Translator.translate('Base line')), Base.Vector(xEnd,0,0)) + # Draw free surface + fsLine = Part.makeLine((xStart,0,T),(xEnd,0,T)) + Part.show(fsLine) + objs = FreeCAD.ActiveDocument.Objects + self.fsLine = objs[len(objs)-1] + self.fsLine.Label = 'FreeSurface' + self.fsLineLabel = DrawText('FSText', str(Translator.translate('Free surface')), Base.Vector(xEnd,0,T)) + # Draw forward perpendicular + zStart = -0.1*T + zEnd = 1.1*T + fpLine = Part.makeLine((0.5*L,0,zStart),(0.5*L,0,zEnd)) + Part.show(fpLine) + objs = FreeCAD.ActiveDocument.Objects + self.fpLine = objs[len(objs)-1] + self.fpLine.Label = 'ForwardPerpendicular' + self.fpLineLabel = DrawText('FPText', str(Translator.translate('Forward perpendicular')), Base.Vector(0.5*L,0,zEnd)) + # Draw after perpendicular + apLine = Part.makeLine((-0.5*L,0,zStart),(-0.5*L,0,zEnd)) + Part.show(apLine) + objs = FreeCAD.ActiveDocument.Objects + self.apLine = objs[len(objs)-1] + self.apLine.Label = 'AfterPerpendicular' + self.apLineLabel = DrawText('APText', str(Translator.translate('After perpendicular')), Base.Vector(-0.5*L,0,zEnd)) + # Draw amin frame + amLine = Part.makeLine((0,-0.5*B,zStart),(0,-0.5*B,zEnd)) + Part.show(amLine) + objs = FreeCAD.ActiveDocument.Objects + self.amLine = objs[len(objs)-1] + self.amLine.Label = 'AminFrame' + self.amLineLabel = DrawText('AMText', str(Translator.translate('Amin frame')), Base.Vector(0,-0.5*B,zEnd)) + + def clean(self): + """ Erase all annotations from screen. + """ + if not self.baseLine: + return + FreeCAD.ActiveDocument.removeObject(self.baseLine.Name) + FreeCAD.ActiveDocument.removeObject(self.baseLineLabel.Name) + FreeCAD.ActiveDocument.removeObject(self.fsLine.Name) + FreeCAD.ActiveDocument.removeObject(self.fsLineLabel.Name) + FreeCAD.ActiveDocument.removeObject(self.fpLine.Name) + FreeCAD.ActiveDocument.removeObject(self.fpLineLabel.Name) + FreeCAD.ActiveDocument.removeObject(self.apLine.Name) + FreeCAD.ActiveDocument.removeObject(self.apLineLabel.Name) + FreeCAD.ActiveDocument.removeObject(self.amLine.Name) + FreeCAD.ActiveDocument.removeObject(self.amLineLabel.Name) + +def DrawText(name, string, position, displayMode="Screen", angle=0.0, justification="Left", colour=(0.00,0.00,0.00), size=12): + """ Draws a text in a desired position. + @param name Name of the object + @param string Text to draw (recommended format u'') + @param position Point to draw the text + @param angle Counter clockwise rotation of text + @param justification Alignement of the text ("Left", "Right" or "Center") + @param colour Colour of the text + @param size Font size + @return FreeCAD annotation object + """ + # Create the object + text = FreeCAD.ActiveDocument.addObject("App::Annotation",name) + # Set the text + text.LabelText = [string, u''] + # Set the options + text.Position = position + FreeCADGui.ActiveDocument.getObject(text.Name).Rotation = angle + FreeCADGui.ActiveDocument.getObject(text.Name).Justification = justification + FreeCADGui.ActiveDocument.getObject(text.Name).FontSize = size + FreeCADGui.ActiveDocument.getObject(text.Name).TextColor = colour + FreeCADGui.ActiveDocument.getObject(text.Name).DisplayMode = displayMode + return FreeCAD.ActiveDocument.getObject(text.Name) diff --git a/src/Mod/Ship/shipCreateShip/TaskPanel.py b/src/Mod/Ship/shipCreateShip/TaskPanel.py new file mode 100644 index 0000000000..7cb6c0eda8 --- /dev/null +++ b/src/Mod/Ship/shipCreateShip/TaskPanel.py @@ -0,0 +1,196 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui +# Qt library +from PyQt4 import QtGui,QtCore +# Module +import Preview +import Instance +from shipUtils import Paths, Translator +from surfUtils import Geometry + +class TaskPanel: + def __init__(self): + self.ui = Paths.modulePath() + "/shipCreateShip/TaskPanel.ui" + self.preview = Preview.Preview() + + def accept(self): + self.preview.clean() + # Create new ship instance + obj = App.ActiveDocument.addObject("App::FeaturePython","Ship") + ship = Instance.Ship(obj, self.faces) + Instance.ViewProviderShip(obj.ViewObject) + # Set main dimensions + obj.Length = self.form.length.value() + obj.Beam = self.form.beam.value() + obj.Draft = self.form.draft.value() + # Discretize it + ship.discretize(self.form.nSections.value(), self.form.nPoints.value()) + return True + + def reject(self): + self.preview.clean() + self.close() + return True + + def clicked(self, index): + pass + + def open(self): + pass + + def needsFullSpace(self): + return True + + def isAllowedAlterSelection(self): + return False + + def isAllowedAlterView(self): + return True + + def isAllowedAlterDocument(self): + return False + + def helpRequested(self): + pass + + def setupUi(self): + mw = self.getMainWindow() + form = mw.findChild(QtGui.QWidget, "TaskPanel") + form.length = form.findChild(QtGui.QDoubleSpinBox, "Length") + form.beam = form.findChild(QtGui.QDoubleSpinBox, "Beam") + form.draft = form.findChild(QtGui.QDoubleSpinBox, "Draft") + form.nSections = form.findChild(QtGui.QSpinBox, "NSections") + form.nPoints = form.findChild(QtGui.QSpinBox, "NPoints") + form.mainLogo = form.findChild(QtGui.QLabel, "MainLogo") + iconPath = Paths.iconsPath() + "/Ico.xpm" + form.mainLogo.setPixmap(QtGui.QPixmap(iconPath)) + self.form = form + # Initial values + if self.initValues(): + return True + self.retranslateUi() + self.preview.update(self.L, self.B, self.T) + # Connect Signals and Slots + QtCore.QObject.connect(form.length, QtCore.SIGNAL("valueChanged(double)"), self.onData) + QtCore.QObject.connect(form.beam, QtCore.SIGNAL("valueChanged(double)"), self.onData) + QtCore.QObject.connect(form.draft, QtCore.SIGNAL("valueChanged(double)"), self.onData) + QtCore.QObject.connect(form.nSections, QtCore.SIGNAL("valueChanged(int)"), self.onDiscretization) + QtCore.QObject.connect(form.nPoints, QtCore.SIGNAL("valueChanged(int)"), self.onDiscretization) + + def getMainWindow(self): + "returns the main window" + # using QtGui.qApp.activeWindow() isn't very reliable because if another + # widget than the mainwindow is active (e.g. a dialog) the wrong widget is + # returned + toplevel = QtGui.qApp.topLevelWidgets() + for i in toplevel: + if i.metaObject().className() == "Gui::MainWindow": + return i + raise Exception("No main window found") + + def initValues(self): + """ Set initial values for fields + """ + # Get objects + self.faces = None + selObjs = Geometry.getSelectedObjs() + if not selObjs: + msg = Translator.translate("All ship surfaces must be selected (Any object has been selected)\n") + App.Console.PrintError(msg) + return True + self.faces = [] + for i in range(0, len(selObjs)): + faces = Geometry.getFaces(selObjs[i]) + for j in range(0, len(faces)): + self.faces.append(faces[j]) + if not self.faces: + msg = Translator.translate("All ship surfaces must be selected (Any face found into selected objects)\n") + App.Console.PrintError(msg) + return True + # Get bounds + bounds = [0.0, 0.0, 0.0] + bbox = self.faces[0].BoundBox + bounds[0] = bbox.XLength + bounds[1] = bbox.YLength + bounds[2] = bbox.ZLength + for i in range(1,len(self.faces)): + bbox = self.faces[i].BoundBox + if bounds[0] < bbox.XLength: + bounds[0] = bbox.XLength + if bounds[1] < bbox.YLength: + bounds[1] = bbox.YLength + if bounds[2] < bbox.ZLength: + bounds[2] = bbox.ZLength + # Set UI fields + self.form.length.setMaximum(bounds[0]) + self.form.length.setValue(bounds[0]) + self.L = bounds[0] + self.form.beam.setMaximum(2.0*bounds[1]) + self.form.beam.setValue(2.0*bounds[1]) + self.B = 2.0*bounds[1] + self.form.draft.setMaximum(bounds[2]) + self.form.draft.setValue(0.5*bounds[2]) + self.T = 0.5*bounds[2] + msg = Translator.translate("Ready to work\n") + App.Console.PrintMessage(msg) + return False + + def retranslateUi(self): + """ Set user interface locale strings. + """ + self.form.setWindowTitle(Translator.translate("Create a new ship")) + self.form.findChild(QtGui.QLabel, "LengthLabel").setText(Translator.translate("Length")) + self.form.findChild(QtGui.QLabel, "BeamLabel").setText(Translator.translate("Beam")) + self.form.findChild(QtGui.QLabel, "DraftLabel").setText(Translator.translate("Draft")) + self.form.findChild(QtGui.QLabel, "NSectionsLabel").setText(Translator.translate("Number of sections")) + self.form.findChild(QtGui.QLabel, "NPointsLabel").setText(Translator.translate("Points per section")) + + def onData(self, value): + """ Method called when ship data is changed. + Annotations must be showed. + @param value Changed value. + """ + self.L = self.form.length.value() + self.B = self.form.beam.value() + self.T = self.form.draft.value() + self.preview.update(self.L, self.B, self.T) + + def onDiscretization(self, value): + """ Method called when discretization data is changed. + Annotations must be showed. + @param value Changed value. + """ + pass + + def close(self): + """ Destroy all dependant objects + """ + +def createTask(): + panel = TaskPanel() + Gui.Control.showDialog(panel) + if panel.setupUi(): + Gui.Control.closeDialog(panel) + return None + return panel diff --git a/src/Mod/Ship/shipCreateShip/TaskPanel.ui b/src/Mod/Ship/shipCreateShip/TaskPanel.ui new file mode 100644 index 0000000000..9642e1bd22 --- /dev/null +++ b/src/Mod/Ship/shipCreateShip/TaskPanel.ui @@ -0,0 +1,299 @@ + + + TaskPanel + + + + 0 + 0 + 260 + 514 + + + + Create new ship + + + + + + + + + + + 128 + 128 + + + + + 128 + 128 + + + + + + + ../Icons/Ico.xpm + + + true + + + Qt::AlignHCenter|Qt::AlignTop + + + + + + + + + + 240 + 160 + + + + Ship data + + + false + + + + + 0 + 20 + 241 + 141 + + + + + 6 + + + QLayout::SetDefaultConstraint + + + + + QLayout::SetDefaultConstraint + + + 10 + + + 0 + + + 10 + + + 0 + + + + + Length + + + + + + + 3 + + + 0.010000000000000 + + + + + + + + + 10 + + + 0 + + + 10 + + + 0 + + + + + Beam + + + + + + + 3 + + + 0.010000000000000 + + + + + + + + + 10 + + + 0 + + + 10 + + + 0 + + + + + Draft + + + + + + + 3 + + + 0.010000000000000 + + + + + + + + + + + + + + 240 + 160 + + + + Qt::LeftToRight + + + Discretization + + + + + 0 + 20 + 241 + 101 + + + + + + + 10 + + + 0 + + + 10 + + + 0 + + + + + Number of sections + + + + + + + 50 + + + 500 + + + 50 + + + 50 + + + + + + + + + 10 + + + 0 + + + 10 + + + 0 + + + + + Points per section + + + + + + + 10 + + + 500 + + + 10 + + + 10 + + + + + + + + + + + + + + + + diff --git a/src/Mod/Ship/shipCreateShip/__init__.py b/src/Mod/Ship/shipCreateShip/__init__.py new file mode 100644 index 0000000000..e7b35d03e8 --- /dev/null +++ b/src/Mod/Ship/shipCreateShip/__init__.py @@ -0,0 +1,33 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD +import FreeCADGui + +# Qt libraries +from PyQt4 import QtGui,QtCore + +# Main object +import TaskPanel + +def load(): + """ Loads the tool """ + TaskPanel.createTask() diff --git a/src/Mod/Ship/shipOutlineDraw/Plot.py b/src/Mod/Ship/shipOutlineDraw/Plot.py new file mode 100644 index 0000000000..db3714193d --- /dev/null +++ b/src/Mod/Ship/shipOutlineDraw/Plot.py @@ -0,0 +1,92 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD,FreeCADGui +from FreeCAD import Base, Part, Vector +# FreeCADShip modules +from shipUtils import Paths, Translator +from surfUtils import Geometry + +def Plot(scale, sections, shape): + """ Creates the outline draw. + @param scale Plane scale (format 1:scale) + @param sections Sections computed. + @param shape Ship surfaces shell + @return plotted object (DocumentObject) + """ + msg = Translator.translate('Performing plot (Scale 1:%d)...\n' % (scale)) + FreeCAD.Console.PrintMessage(msg) + scale = 1000.0 / scale + # Take positions + bounds = [0.0, 0.0, 0.0] + bbox = shape.BoundBox + bounds[0] = bbox.XLength + bounds[1] = bbox.YLength + bounds[2] = bbox.ZLength + xTot = scale*bounds[1] + 32.0 + scale*bounds[0] + yTot = scale*bounds[2] + 32.0 + scale*bounds[1] + xMid = 210.0 + yMid = 185.0 + x0 = xMid - 0.5*xTot + y0 = 297.0 - yMid - 0.5*yTot # 297 = A3_width + # Get border + edges = Geometry.getEdges([shape]) + border = edges[0] + for i in range(0,len(edges)): + border = border.oldFuse(edges[i]) # Only group objects, don't try to build more complex entities + border = border.oldFuse(edges[i].mirror(Vector(0.0, 0.0, 0.0),Vector(0.0, 1.0, 0.0))) + # Fuse sections & borders + obj = sections.oldFuse(border) + # Send to 3D view + Part.show(obj) + objs = FreeCAD.ActiveDocument.Objects + obj = objs[len(objs)-1] + # Create a new plane + FreeCAD.ActiveDocument.addObject('Drawing::FeaturePage','OutlineDrawPlot') + FreeCAD.ActiveDocument.OutlineDrawPlot.Template = FreeCAD.getResourceDir()+'Mod/Drawing/Templates/A3_Landscape.svg' + # Side view + FreeCAD.ActiveDocument.addObject('Drawing::FeatureViewPart','OutlineDrawSideView') + FreeCAD.ActiveDocument.OutlineDrawSideView.Source = obj + FreeCAD.ActiveDocument.OutlineDrawSideView.Direction = (1.0,0.0,0.0) + FreeCAD.ActiveDocument.OutlineDrawSideView.Rotation = -90.0 + FreeCAD.ActiveDocument.OutlineDrawSideView.Scale = scale + FreeCAD.ActiveDocument.OutlineDrawSideView.X = 420.0 - x0 - 0.5*scale*bounds[1] # 420 = A3_height + FreeCAD.ActiveDocument.OutlineDrawSideView.Y = y0 + 0.5*scale*bounds[2] + FreeCAD.ActiveDocument.OutlineDrawPlot.addObject(FreeCAD.ActiveDocument.OutlineDrawSideView) + # Front view + FreeCAD.ActiveDocument.addObject('Drawing::FeatureViewPart','OutlineDrawFrontView') + FreeCAD.ActiveDocument.OutlineDrawFrontView.Source = obj + FreeCAD.ActiveDocument.OutlineDrawFrontView.Direction = (0.0,1.0,0.0) + FreeCAD.ActiveDocument.OutlineDrawFrontView.Rotation = -90.0 + FreeCAD.ActiveDocument.OutlineDrawFrontView.Scale = scale + FreeCAD.ActiveDocument.OutlineDrawFrontView.X = 420.0 - x0 - scale*bounds[1] - 32 - 0.5*scale*bounds[0] + FreeCAD.ActiveDocument.OutlineDrawFrontView.Y = y0 + 0.5*scale*bounds[2] + FreeCAD.ActiveDocument.OutlineDrawPlot.addObject(FreeCAD.ActiveDocument.OutlineDrawFrontView) + # Up view + FreeCAD.ActiveDocument.addObject('Drawing::FeatureViewPart','OutlineDrawUpView') + FreeCAD.ActiveDocument.OutlineDrawUpView.Source = obj + FreeCAD.ActiveDocument.OutlineDrawUpView.Direction = (0.0,0.0,1.0) + FreeCAD.ActiveDocument.OutlineDrawUpView.Scale = scale + FreeCAD.ActiveDocument.OutlineDrawUpView.X = 420.0 - x0 - scale*bounds[1] - 32 - 0.5*scale*bounds[0] + FreeCAD.ActiveDocument.OutlineDrawUpView.Y = y0 + scale*bounds[2] + 32 + FreeCAD.ActiveDocument.OutlineDrawPlot.addObject(FreeCAD.ActiveDocument.OutlineDrawUpView) + FreeCAD.ActiveDocument.recompute() + return obj diff --git a/src/Mod/Ship/shipOutlineDraw/Preview.py b/src/Mod/Ship/shipOutlineDraw/Preview.py new file mode 100644 index 0000000000..316cf8da29 --- /dev/null +++ b/src/Mod/Ship/shipOutlineDraw/Preview.py @@ -0,0 +1,123 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD,FreeCADGui +from FreeCAD import Base, Part, Vector +# FreeCADShip modules +from shipUtils import Paths, Translator + +class Preview(object): + def __init__(self): + """ Constructor. + """ + self.obj = None + self.reinit() + + def reinit(self): + """ Reinitializate drawer. + """ + self.clean() + + def update(self, L, B, T, sectionsL, sectionsB, sectionsT, shape): + """ Update the 3D view printing annotations. + @param L Ship Lpp. + @param B Ship beam. + @param T Ship draft. + @param sectionsL Transversal sections. + @param sectionsB Longitudinal sections. + @param sectionsT Water lines. + @param shape Ship surfaces shell + @return Sections object. None if errors happens. + """ + FreeCAD.Console.PrintMessage(Translator.translate('Computing sections...\n')) + # Destroy all previous entities + self.clean() + # Receive data + nL = len(sectionsL) + nB = len(sectionsB) + nT = len(sectionsT) + if not (nL or nB or nT): + return None + # Found sections + sections = [] + for i in range(0,nL): + pos = sectionsL[i] + section = shape.slice(Vector(1.0,0.0,0.0), pos) + for j in range(0,len(section)): + edges = section[j].Edges + if pos == 0.0: + section[j] = section[j].mirror(Vector(0.0, 0.0, 0.0),Vector(0.0, 1.0, 0.0)) + edges2 = section[j].Edges + for k in range(0,len(edges2)): + edges.append(edges2[k]) + elif pos < 0: + section[j] = section[j].mirror(Vector(0.0, 0.0, 0.0),Vector(0.0, 1.0, 0.0)) + edges = section[j].Edges + for k in range(0,len(edges)): + sections.append(edges[k]) + for i in range(0,nB): + pos = sectionsB[i] + section = shape.slice(Vector(0.0,1.0,0.0), pos) + for j in range(0,len(section)): + edges = section[j].Edges + section[j] = section[j].mirror(Vector(0.0, 0.0, 0.0),Vector(0.0, 1.0, 0.0)) + edges2 = section[j].Edges + for k in range(0,len(edges2)): + edges.append(edges2[k]) + for k in range(0,len(edges)): + sections.append(edges[k]) + for i in range(0,nT): + pos = sectionsT[i] + section = shape.slice(Vector(0.0,0.0,1.0), pos) + for j in range(0,len(section)): + edges = section[j].Edges + if pos == T: + section[j] = section[j].mirror(Vector(0.0, 0.0, 0.0),Vector(0.0, 1.0, 0.0)) + edges2 = section[j].Edges + for k in range(0,len(edges2)): + edges.append(edges2[k]) + elif pos > T: + section[j] = section[j].mirror(Vector(0.0, 0.0, 0.0),Vector(0.0, 1.0, 0.0)) + edges = section[j].Edges + for k in range(0,len(edges)): + sections.append(edges[k]) + # Convert all BSplines into a shape + if not sections: + msg = Translator.translate('Any valid ship section found\n') + FreeCAD.Console.PrintWarning(msg) + return + obj = sections[0] + for i in range(1,len(sections)): + obj = obj.oldFuse(sections[i]) # Only group the edges, don't try to build more complex entities + # Create the representable object + Part.show(obj) + objs = FreeCAD.ActiveDocument.Objects + self.obj = objs[len(objs)-1] + self.obj.Label = 'OutlineDraw' + return self.obj + + def clean(self): + """ Erase all annotations from screen. + """ + if not self.obj: + return + FreeCAD.ActiveDocument.removeObject(self.obj.Name) + self.obj = None diff --git a/src/Mod/Ship/shipOutlineDraw/TaskPanel.py b/src/Mod/Ship/shipOutlineDraw/TaskPanel.py new file mode 100644 index 0000000000..3861027e36 --- /dev/null +++ b/src/Mod/Ship/shipOutlineDraw/TaskPanel.py @@ -0,0 +1,332 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui +# Qt library +from PyQt4 import QtGui,QtCore +# Module +import Preview, Plot +import Instance +from shipUtils import Paths, Translator +from surfUtils import Geometry + +class TaskPanel: + def __init__(self): + self.ui = Paths.modulePath() + "/shipOutlineDraw/TaskPanel.ui" + self.ship = None + self.skip = False + self.LSections = [] + self.BSections = [] + self.TSections = [] + self.obj = None + self.preview = Preview.Preview() + + def accept(self): + self.saveSections() + self.obj = Plot.Plot(self.form.scale.value(), self.obj.Shape, self.ship.Shape) + self.preview.clean() + self.obj.Label = 'OutlineDraw' + return True + + def reject(self): + self.preview.clean() + return True + + def clicked(self, index): + pass + + def open(self): + pass + + def needsFullSpace(self): + return True + + def isAllowedAlterSelection(self): + return False + + def isAllowedAlterView(self): + return True + + def isAllowedAlterDocument(self): + return False + + def helpRequested(self): + pass + + def setupUi(self): + mw = self.getMainWindow() + form = mw.findChild(QtGui.QWidget, "TaskPanel") + form.sections = form.findChild(QtGui.QTableWidget, "Sections") + form.sections.setInputMethodHints(QtCore.Qt.ImhFormattedNumbersOnly) + form.sectionType = form.findChild(QtGui.QComboBox, "SectionType") + form.deleteButton = form.findChild(QtGui.QPushButton, "DeleteButton") + form.nSections = form.findChild(QtGui.QSpinBox, "NSections") + form.createButton = form.findChild(QtGui.QPushButton, "CreateButton") + form.scale = form.findChild(QtGui.QSpinBox, "Scale") + self.form = form + # Initial values + if self.initValues(): + return True + self.retranslateUi() + self.obj = self.preview.update(self.ship.Length, self.ship.Beam, self.ship.Draft, self.LSections,self.BSections,self.TSections, self.ship.Shape) + # Connect Signals and Slots + QtCore.QObject.connect(form.sectionType,QtCore.SIGNAL("activated(QString)"),self.onSectionType) + QtCore.QObject.connect(form.sections,QtCore.SIGNAL("cellChanged(int,int)"),self.onTableItem); + QtCore.QObject.connect(form.deleteButton,QtCore.SIGNAL("pressed()"),self.onDeleteButton) + QtCore.QObject.connect(form.createButton,QtCore.SIGNAL("pressed()"),self.onCreateButton) + + def getMainWindow(self): + "returns the main window" + # using QtGui.qApp.activeWindow() isn't very reliable because if another + # widget than the mainwindow is active (e.g. a dialog) the wrong widget is + # returned + toplevel = QtGui.qApp.topLevelWidgets() + for i in toplevel: + if i.metaObject().className() == "Gui::MainWindow": + return i + raise Exception("No main window found") + + def initValues(self): + """ Set initial values for fields + """ + # Get selected objects + selObjs = Geometry.getSelectedObjs() + if not selObjs: + msg = Translator.translate("Ship instance must be selected (any object selected)\n") + App.Console.PrintError(msg) + return True + for i in range(0,len(selObjs)): + obj = selObjs[i] + # Test if is a ship instance + props = obj.PropertiesList + try: + props.index("IsShip") + except ValueError: + continue + if obj.IsShip: + # Test if another ship already selected + if self.ship: + msg = Translator.translate("More than one ship selected (extra ship will be neglected)\n") + App.Console.PrintWarning(msg) + break + self.ship = obj + # Test if any valid ship was selected + if not self.ship: + msg = Translator.translate("Ship instance must be selected (any valid ship found at selected objects)\n") + App.Console.PrintError(msg) + return True + # Load sections (if exist) + self.loadSections() + msg = Translator.translate("Ready to work\n") + App.Console.PrintMessage(msg) + return False + + def retranslateUi(self): + """ Set user interface locale strings. + """ + self.form.setWindowTitle(Translator.translate("Outline draw")) + self.form.findChild(QtGui.QGroupBox, "AutoCreateBox").setTitle(Translator.translate("Auto create")) + self.form.findChild(QtGui.QGroupBox, "ScaleBox").setTitle(Translator.translate("Scale")) + self.form.findChild(QtGui.QPushButton, "DeleteButton").setText(Translator.translate("Delete all sections")) + self.form.findChild(QtGui.QPushButton, "CreateButton").setText(Translator.translate("Create sections")) + self.form.findChild(QtGui.QComboBox, "SectionType").setItemText(0, Translator.translate("Transversal")) + self.form.findChild(QtGui.QComboBox, "SectionType").setItemText(1, Translator.translate("Longitudinal")) + self.form.findChild(QtGui.QComboBox, "SectionType").setItemText(2, Translator.translate("Water lines")) + + def onSectionType(self): + """ Function called when the section type is changed. + """ + # Search section type + ID = self.form.sectionType.currentIndex() + self.setSectionType(ID) + + def setSectionType(self, ID): + """ Function that set the type section related table. + @param ID Id of the section to set: \n + 0 = Transversal sections \n + 1 = Longitudinal sections \n + 2 = Water lines + """ + SectionList = [] + if ID == 0: + SectionList = self.LSections[:] + elif ID == 1: + SectionList = self.BSections[:] + elif ID == 2: + SectionList = self.TSections[:] + nRow = len(SectionList) + self.form.sections.clearContents() + self.form.sections.setRowCount(nRow+1) + if not nRow: + self.obj = self.preview.update(self.ship.Length, self.ship.Beam, self.ship.Draft, self.LSections,self.BSections,self.TSections, self.ship.Shape) + return + self.skip = True # Avoid recursive call to OnItem + for i in range(0,nRow): + if i == nRow-1: + self.skip = False + string = '%f' % (SectionList[i]) + item = QtGui.QTableWidgetItem(string) + self.form.sections.setItem(i,0,item) + + def onTableItem(self, row, column): + """ Function called when an item of table is changed. + @param row Changed item row + @param column Changed item column + """ + if self.skip: + return + # Ensure that exist one empty item at least + nRow = self.form.sections.rowCount() + item = self.form.sections.item(nRow-1,0) + if item : + if(item.text() != ''): + self.form.sections.setRowCount(nRow+1) + # Ensure that new item is a number + item = self.form.sections.item(row,column) + (number,flag) = item.text().toFloat() + if not flag: + number = 0.0 + string = '%f' % (number) + item.setText(string) + # Regenerate the list + SectionList = [] + for i in range(0,nRow): + item = self.form.sections.item(i,0) + if item: + (number,flag) = item.text().toFloat() + SectionList.append(number) + # Paste it into the class list + ID = self.form.sectionType.currentIndex() + if ID == 0: + self.LSections = SectionList[:] + elif ID == 1: + self.BSections = SectionList[:] + elif ID == 2: + self.TSections = SectionList[:] + self.obj = self.preview.update(self.ship.Length, self.ship.Beam, self.ship.Draft, self.LSections,self.BSections,self.TSections, self.ship.Shape) + + def onDeleteButton(self): + """ Function called when the delete button is pressed. + All sections mustt be erased + """ + self.form.sections.clearContents() + self.form.sections.setRowCount(1) + # Clear active list + ID = self.form.sectionType.currentIndex() + if ID == 0: + self.LSections = [] + elif ID == 1: + self.BSections = [] + elif ID == 2: + self.TSections = [] + self.setSectionType(ID) + + def onCreateButton(self): + """ Function called when create button is pressed. + Several sections must be added to list + """ + # Recolect data + nSections = self.form.nSections.value() + SectionList = [] + L = 0.0 + ID = self.form.sectionType.currentIndex() + if ID == 0: + L = self.ship.Length + d = L / (nSections-1) # Distance between sections + start = - L/2.0 # Ship must have 0.0 at coordinates origin + elif ID == 1: + L = -0.5*self.ship.Beam # Ship must be in y<0.0 + d = L / (nSections+1.0) # Distance between sections + start = d + elif ID == 2: + L = self.ship.Draft + d = L / (nSections) # Distance between sections + start = d + # Calculate sections + for i in range(0,nSections): + sec = i*d + start + SectionList.append(sec) + # Paste into class table + if ID == 0: + self.LSections = SectionList[:] + elif ID == 1: + self.BSections = SectionList[:] + elif ID == 2: + self.TSections = SectionList[:] + # Print the table + self.setSectionType(ID) + + def loadSections(self): + """ Loads from ship object previously selected sections. + """ + # Load sections + props = self.ship.PropertiesList + flag=True + try: + props.index("LSections") + except ValueError: + flag=False + if flag: + self.LSections = self.ship.LSections[:] + self.BSections = self.ship.BSections[:] + self.TSections = self.ship.TSections[:] + # Load scale too + flag=True + try: + props.index("PlotScale") + except ValueError: + flag=False + if flag: + self.form.scale.setValue(self.ship.PlotScale) + # Set UI + self.setSectionType(self.form.sectionType.currentIndex()) + + def saveSections(self): + """ Save selected sections into ship object. + """ + # Test if previous section have been created + props = self.ship.PropertiesList + try: + props.index("LSections") + except ValueError: + # Create new sections list + self.ship.addProperty("App::PropertyFloatList","LSections","Ship", str(Translator.translate("Transversal sections position [m]"))).LSections=[] + self.ship.addProperty("App::PropertyFloatList","BSections","Ship", str(Translator.translate("Longitudinal sections position [m]"))).BSections=[] + self.ship.addProperty("App::PropertyFloatList","TSections","Ship", str(Translator.translate("Water lines position [m]"))).TSections=[] + # Save sections + self.ship.LSections = self.LSections[:] + self.ship.BSections = self.BSections[:] + self.ship.TSections = self.TSections[:] + # Save also scale + try: + props.index("PlotScale") + except ValueError: + self.ship.addProperty("App::PropertyInteger","PlotScale","Ship", str(Translator.translate("Plot scale (1:scale format)"))).PlotScale=250 + self.ship.PlotScale = self.form.scale.value() + +def createTask(): + panel = TaskPanel() + Gui.Control.showDialog(panel) + if panel.setupUi(): + Gui.Control.closeDialog(panel) + return None + return panel diff --git a/src/Mod/Ship/shipOutlineDraw/TaskPanel.ui b/src/Mod/Ship/shipOutlineDraw/TaskPanel.ui new file mode 100644 index 0000000000..0d41cbda2e --- /dev/null +++ b/src/Mod/Ship/shipOutlineDraw/TaskPanel.ui @@ -0,0 +1,277 @@ + + + TaskPanel + + + + 0 + 0 + 298 + 402 + + + + Outline draw + + + + + + 0 + + + QLayout::SetMinimumSize + + + + + + 142 + 24 + + + + + 160 + 32 + + + + 0 + + + 0 + + + + Transversal + + + + + Longitudinal + + + + + Water lines + + + + + + + + + 142 + 24 + + + + + 160 + 32 + + + + Delete all sections + + + + + + + + 142 + 256 + + + + + 160 + 350 + + + + Auto create + + + + + 0 + 30 + 142 + 27 + + + + + 142 + 24 + + + + + 160 + 32 + + + + + + + 0 + 70 + 142 + 27 + + + + + 142 + 24 + + + + + 160 + 32 + + + + Create sections + + + + + + + + + + 0 + + + QLayout::SetDefaultConstraint + + + + + + 128 + 256 + + + + + 128 + 16777215 + + + + true + + + true + + + 1 + + + 1 + + + false + + + true + + + true + + + + + + + + + + + + 128 + 72 + + + + + 256 + 96 + + + + Plane scale + + + + + 0 + 30 + 251 + 41 + + + + + + + + 16 + 16 + + + + + 32 + 16777215 + + + + 1: + + + Qt::AlignCenter + + + + + + + + 0 + 16 + + + + 1 + + + 1000000 + + + 50 + + + 250 + + + + + + + + + + + + diff --git a/src/Mod/Ship/shipOutlineDraw/__init__.py b/src/Mod/Ship/shipOutlineDraw/__init__.py new file mode 100644 index 0000000000..e7b35d03e8 --- /dev/null +++ b/src/Mod/Ship/shipOutlineDraw/__init__.py @@ -0,0 +1,33 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# FreeCAD modules +import FreeCAD +import FreeCADGui + +# Qt libraries +from PyQt4 import QtGui,QtCore + +# Main object +import TaskPanel + +def load(): + """ Loads the tool """ + TaskPanel.createTask() diff --git a/src/Mod/Ship/shipUtils/Math.py b/src/Mod/Ship/shipUtils/Math.py new file mode 100644 index 0000000000..9063c9560e --- /dev/null +++ b/src/Mod/Ship/shipUtils/Math.py @@ -0,0 +1,54 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +def isAprox(a,b,tol=0.0001): + """returns if a value is into (b-tol,b+tol) + @param a Value to compare. + @param b Center of valid interval + @param tol Radius of valid interval + @return True if a is into (b-tol,b+tol), False otherwise + """ + if (a < b+abs(tol)) and (a > b-abs(tol)): + return True + return False + +def isSamePoint(a,b,tol=0.0001): + """returns if two points are the same with a provided tolerance + @param a Point to compare. + @param b Reference point. + @param tol Radius of valid interval + @return True if twice point are the same, False otherwise + @note FreeCAD::Base::Vector types must be provided + """ + if isAprox(a.x,b.x,tol) and isAprox(a.y,b.y,tol) and isAprox(a.z,b.z,tol): + return True + return False + +def isSameVertex(a,b,tol=0.0001): + """returns if two points are the same with a provided tolerance + @param a Point to compare. + @param b Reference point. + @param tol Radius of valid interval + @return True if twice point are the same, False otherwise + @note FreeCAD::Part::Vertex types must be provided + """ + if isAprox(a.X,b.X,tol) and isAprox(a.Y,b.Y,tol) and isAprox(a.Z,b.Z,tol): + return True + return False diff --git a/src/Mod/Ship/shipUtils/Paths.py b/src/Mod/Ship/shipUtils/Paths.py new file mode 100644 index 0000000000..a08c75a422 --- /dev/null +++ b/src/Mod/Ship/shipUtils/Paths.py @@ -0,0 +1,52 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +import FreeCAD, FreeCADGui, os + +def modulePath(): + """returns the current Ship design module path + @return Module path""" + path1 = FreeCAD.ConfigGet("AppHomePath") + "Mod/Ship" + path2 = FreeCAD.ConfigGet("UserAppData") + "Mod/Ship" + if os.path.exists(path2): + return path2 + else: + return path1 + +def iconsPath(): + """returns the current Ship design module icons path + @return Icons path""" + path = modulePath() + "/Icons" + return path + +def getPathFromFile(fileName): + """ Gets the directory path from a file name + @param fileName Name of the file + @return Directory path. + """ + if not fileName: + return '' + i = 1 + try: + while 1: + i = fileName.index("/", i+1) + except ValueError: + pass + return fileName[0:i+1] diff --git a/src/Mod/Ship/shipUtils/Translator.py b/src/Mod/Ship/shipUtils/Translator.py new file mode 100644 index 0000000000..dac26928c8 --- /dev/null +++ b/src/Mod/Ship/shipUtils/Translator.py @@ -0,0 +1,27 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +import FreeCAD, FreeCADGui, os +from PyQt4 import QtCore,QtGui + +def translate(text,context="ship"): + "convenience function for Qt translator" + return QtGui.QApplication.translate(context, text, None, + QtGui.QApplication.UnicodeUTF8) diff --git a/src/Mod/Ship/shipUtils/__init__.py b/src/Mod/Ship/shipUtils/__init__.py new file mode 100644 index 0000000000..e82fff67ce --- /dev/null +++ b/src/Mod/Ship/shipUtils/__init__.py @@ -0,0 +1,22 @@ +# ##### BEGIN GPL LICENSE BLOCK ##### +# +# Author: Jose Luis Cercos Pita +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# +# ##### END GPL LICENSE BLOCK ##### + +# Empty file to treat the folder as a package + From 8fb640478407f1e5cb65bf44a700ea2dd71f10b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 11:36:23 +0100 Subject: [PATCH 12/40] Added Ship design module README file --- src/Mod/Ship/README | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 src/Mod/Ship/README diff --git a/src/Mod/Ship/README b/src/Mod/Ship/README new file mode 100644 index 0000000000..4ebdbd41ce --- /dev/null +++ b/src/Mod/Ship/README @@ -0,0 +1,10 @@ +* Authors +--------- + +Jose Luis Cercós Pita + +* Introduction +-------------- + +FreeCAD-Ship is a free module for FreeCAD oriented to aid ship design providing most common tools (Outline drawing, hydrostatics, ...). + From 71a4711bb759d9800a25a4a206971a9d5d49f28f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 11:37:23 +0100 Subject: [PATCH 13/40] Added Ship design module doxygen file --- src/Mod/Ship/surfaces.dox | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 src/Mod/Ship/surfaces.dox diff --git a/src/Mod/Ship/surfaces.dox b/src/Mod/Ship/surfaces.dox new file mode 100644 index 0000000000..ad7a274a71 --- /dev/null +++ b/src/Mod/Ship/surfaces.dox @@ -0,0 +1,3 @@ +/** \defgroup SHIP Ship + * \ingroup WORKBENCHES */ + From 359d6b15179c97b1ac160e72d3a5859c2202cdc7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 11:45:39 +0100 Subject: [PATCH 14/40] Added Ship design module cmake files --- src/Mod/Ship/CMakeLists.txt | 33 +++++++++++++++++++++ src/Mod/Ship/Icons/CMakeLists.txt | 29 ++++++++++++++++++ src/Mod/Ship/shipCreateShip/CMakeLists.txt | 10 +++++++ src/Mod/Ship/shipOutlineDraw/CMakeLists.txt | 11 +++++++ src/Mod/Ship/shipUtils/CMakeLists.txt | 10 +++++++ 5 files changed, 93 insertions(+) create mode 100644 src/Mod/Ship/CMakeLists.txt create mode 100644 src/Mod/Ship/Icons/CMakeLists.txt create mode 100644 src/Mod/Ship/shipCreateShip/CMakeLists.txt create mode 100644 src/Mod/Ship/shipOutlineDraw/CMakeLists.txt create mode 100644 src/Mod/Ship/shipUtils/CMakeLists.txt diff --git a/src/Mod/Ship/CMakeLists.txt b/src/Mod/Ship/CMakeLists.txt new file mode 100644 index 0000000000..dc695ee5c6 --- /dev/null +++ b/src/Mod/Ship/CMakeLists.txt @@ -0,0 +1,33 @@ +add_subdirectory(Icons) +add_subdirectory(shipCreateShip) +add_subdirectory(shipOutlineDraw) +add_subdirectory(shipUtils) + +SET(Ship_SRCS + InitGui.py + ShipGui.py + Instance.py +) +SOURCE_GROUP("" FILES ${Ship_SRCS}) + +SET(all_files ${Ship_SRCS}) + +ADD_CUSTOM_TARGET(Ship ALL + SOURCES ${all_files} +) + +fc_copy_sources("Mod/Ship" "Ship" ${all_files}) + +INSTALL( + FILES + ${Ship_SRCS} + README + DESTINATION + Mod/Ship +) + + + + + + diff --git a/src/Mod/Ship/Icons/CMakeLists.txt b/src/Mod/Ship/Icons/CMakeLists.txt new file mode 100644 index 0000000000..3e84c50195 --- /dev/null +++ b/src/Mod/Ship/Icons/CMakeLists.txt @@ -0,0 +1,29 @@ +INSTALL( + FILES + AreaCurveIco.png + AreaCurveIco.xcf + AreaCurveIco.xpm + DataIco.png + DataIco.xcf + DataIco.xpm + DiscretizeIco.png + DiscretizeIco.xcf + DiscretizeIco.xpm + HydrostaticsIco.png + HydrostaticsIco.xcf + HydrostaticsIco.xpm + Ico.png + Ico.xcf + Ico.xpm + OutlineDrawIco.png + OutlineDrawIco.xcf + OutlineDrawIco.xpm + ReparametrizeIco.png + ReparametrizeIco.xcf + ReparametrizeIco.xpm + Ship.xcf + Ship.xpm + DESTINATION + Mod/Ship/Icons +) + diff --git a/src/Mod/Ship/shipCreateShip/CMakeLists.txt b/src/Mod/Ship/shipCreateShip/CMakeLists.txt new file mode 100644 index 0000000000..d03020201b --- /dev/null +++ b/src/Mod/Ship/shipCreateShip/CMakeLists.txt @@ -0,0 +1,10 @@ +INSTALL( + FILES + __init__.py + Preview.py + TaskPanel.py + TaskPanel.ui + DESTINATION + Mod/Ship/shipCreateShip +) + diff --git a/src/Mod/Ship/shipOutlineDraw/CMakeLists.txt b/src/Mod/Ship/shipOutlineDraw/CMakeLists.txt new file mode 100644 index 0000000000..0db83ddb7e --- /dev/null +++ b/src/Mod/Ship/shipOutlineDraw/CMakeLists.txt @@ -0,0 +1,11 @@ +INSTALL( + FILES + __init__.py + Plot.py + Preview.py + TaskPanel.py + TaskPanel.ui + DESTINATION + Mod/Ship/shipOutlineDraw +) + diff --git a/src/Mod/Ship/shipUtils/CMakeLists.txt b/src/Mod/Ship/shipUtils/CMakeLists.txt new file mode 100644 index 0000000000..023e3f867e --- /dev/null +++ b/src/Mod/Ship/shipUtils/CMakeLists.txt @@ -0,0 +1,10 @@ +INSTALL( + FILES + __init__.py + Math.py + Paths.py + Translator.py + DESTINATION + Mod/Ship/shipUtils +) + From ded106ff02d18555925bbac94ef66662ce083cb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 11:46:39 +0100 Subject: [PATCH 15/40] Added Ship subdirectory to Mod cmake list --- src/Mod/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Mod/CMakeLists.txt b/src/Mod/CMakeLists.txt index d90166054a..995c104fd9 100644 --- a/src/Mod/CMakeLists.txt +++ b/src/Mod/CMakeLists.txt @@ -45,3 +45,4 @@ if(FREECAD_BUILD_SANDBOX) endif(FREECAD_BUILD_SANDBOX) add_subdirectory(Surfaces) +add_subdirectory(Ship) From cf52b1a3355426f2ab33570cc4ece73bfc1524c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 12:01:15 +0100 Subject: [PATCH 16/40] Added Surfaces module autotools scripts --- src/Mod/Surfaces/Icons/Makefile.am | 22 ++++++++++++++++++++++ src/Mod/Surfaces/Makefile.am | 12 ++++++++++++ src/Mod/Surfaces/surfBorder/Makefile.am | 8 ++++++++ src/Mod/Surfaces/surfConvert/Makefile.am | 11 +++++++++++ src/Mod/Surfaces/surfISOCurve/Makefile.am | 12 ++++++++++++ src/Mod/Surfaces/surfSlice/Makefile.am | 12 ++++++++++++ src/Mod/Surfaces/surfUtils/Makefile.am | 12 ++++++++++++ 7 files changed, 89 insertions(+) create mode 100644 src/Mod/Surfaces/Icons/Makefile.am create mode 100644 src/Mod/Surfaces/Makefile.am create mode 100644 src/Mod/Surfaces/surfBorder/Makefile.am create mode 100644 src/Mod/Surfaces/surfConvert/Makefile.am create mode 100644 src/Mod/Surfaces/surfISOCurve/Makefile.am create mode 100644 src/Mod/Surfaces/surfSlice/Makefile.am create mode 100644 src/Mod/Surfaces/surfUtils/Makefile.am diff --git a/src/Mod/Surfaces/Icons/Makefile.am b/src/Mod/Surfaces/Icons/Makefile.am new file mode 100644 index 0000000000..d4400fedf9 --- /dev/null +++ b/src/Mod/Surfaces/Icons/Makefile.am @@ -0,0 +1,22 @@ +# Change data dir from default $(datadir) to actual directory +datadir = $(prefix)/Mod/Surfaces/Icons +data_DATA = \ + BorderIco.png \ + BorderIco.xcf \ + BorderIco.xpm \ + ConvertIco.png \ + ConvertIco.xcf \ + ConvertTo4SidesIco.xpm \ + Ico.png \ + Ico.xcf \ + Ico.xpm \ + IsoCurveIco.png \ + IsoCurveIco.xcf \ + IsoCurveIco.xpm \ + SliceIco.png \ + SliceIco.xcf \ + SliceIco.xpm + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt diff --git a/src/Mod/Surfaces/Makefile.am b/src/Mod/Surfaces/Makefile.am new file mode 100644 index 0000000000..03c16fc0d0 --- /dev/null +++ b/src/Mod/Surfaces/Makefile.am @@ -0,0 +1,12 @@ +SUBDIRS=Icons surfBorder surfConvert surfISOCurve surfSlice surfUtils + +# Change data dir from default ($(prefix)/share) to actual dir +datadir = $(prefix)/Mod/Surfaces + +data_DATA = InitGui.py SurfGui.py + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt \ + README \ + surfaces.dox diff --git a/src/Mod/Surfaces/surfBorder/Makefile.am b/src/Mod/Surfaces/surfBorder/Makefile.am new file mode 100644 index 0000000000..8962f936d7 --- /dev/null +++ b/src/Mod/Surfaces/surfBorder/Makefile.am @@ -0,0 +1,8 @@ +# Change data dir from default $(datadir) to actual directory +datadir = $(prefix)/Mod/Surfaces/surfBorder +data_DATA = \ + __init__.py + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt diff --git a/src/Mod/Surfaces/surfConvert/Makefile.am b/src/Mod/Surfaces/surfConvert/Makefile.am new file mode 100644 index 0000000000..0f840248dd --- /dev/null +++ b/src/Mod/Surfaces/surfConvert/Makefile.am @@ -0,0 +1,11 @@ +# Change data dir from default $(datadir) to actual directory +datadir = $(prefix)/Mod/Surfaces/surfConvert +data_DATA = \ + __init__.py \ + Preview.py \ + TaskPanel.py \ + TaskPanel.ui + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt diff --git a/src/Mod/Surfaces/surfISOCurve/Makefile.am b/src/Mod/Surfaces/surfISOCurve/Makefile.am new file mode 100644 index 0000000000..e6f9abe919 --- /dev/null +++ b/src/Mod/Surfaces/surfISOCurve/Makefile.am @@ -0,0 +1,12 @@ +# Change data dir from default $(datadir) to actual directory +datadir = $(prefix)/Mod/Surfaces/surfISOCurve +data_DATA = \ + __init__.py \ + PointTracker.py \ + Preview.py \ + TaskPanel.py \ + TaskPanel.ui + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt diff --git a/src/Mod/Surfaces/surfSlice/Makefile.am b/src/Mod/Surfaces/surfSlice/Makefile.am new file mode 100644 index 0000000000..13f6a44684 --- /dev/null +++ b/src/Mod/Surfaces/surfSlice/Makefile.am @@ -0,0 +1,12 @@ +# Change data dir from default $(datadir) to actual directory +datadir = $(prefix)/Mod/Surfaces/surfSlice +data_DATA = \ + __init__.py \ + PointTracker.py \ + Preview.py \ + TaskPanel.py \ + TaskPanel.ui + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt diff --git a/src/Mod/Surfaces/surfUtils/Makefile.am b/src/Mod/Surfaces/surfUtils/Makefile.am new file mode 100644 index 0000000000..283b8c1002 --- /dev/null +++ b/src/Mod/Surfaces/surfUtils/Makefile.am @@ -0,0 +1,12 @@ +# Change data dir from default $(datadir) to actual directory +datadir = $(prefix)/Mod/Surfaces/surfUtils +data_DATA = \ + Geometry.py \ + __init__.py \ + Math.py \ + Paths.py \ + Translator.py + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt From 3c0da7c2ced64e9683f4d676836dce7d7b8bcfd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 12:01:49 +0100 Subject: [PATCH 17/40] Included Surfaces module into autotools installer --- configure.ac | 7 +++++++ src/Mod/Makefile.am | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 69fcffde3f..c0b29909d7 100644 --- a/configure.ac +++ b/configure.ac @@ -1027,6 +1027,13 @@ src/Mod/TemplatePyMod/Makefile src/Mod/Sandbox/Makefile src/Mod/Sandbox/App/Makefile src/Mod/Sandbox/Gui/Makefile +src/Mod/Surfaces/Makefile +src/Mod/Surfaces/Icons/Makefile +src/Mod/Surfaces/surfBorder/Makefile +src/Mod/Surfaces/surfConvert/Makefile +src/Mod/Surfaces/surfISOCurve/Makefile +src/Mod/Surfaces/surfSlice/Makefile +src/Mod/Surfaces/surfUtils/Makefile src/Tools/Makefile src/Tools/_TEMPLATE_/Makefile src/Tools/_TEMPLATE_/App/Makefile diff --git a/src/Mod/Makefile.am b/src/Mod/Makefile.am index 0da856dec7..d82e72289c 100644 --- a/src/Mod/Makefile.am +++ b/src/Mod/Makefile.am @@ -1,5 +1,5 @@ #SUBDIRS=Part Mesh Points Raytracing Image Drawing Complete Draft Test TemplatePyMod -SUBDIRS=Points Complete Draft Test TemplatePyMod Web Start Idf Arch +SUBDIRS=Points Complete Draft Test TemplatePyMod Web Start Idf Arch Surfaces #if HAVE_OPENCV SUBDIRS += Image From 3f248ebfb7962fe7632c976d770b44aa32b074ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 12:04:51 +0100 Subject: [PATCH 18/40] Renamed Ship design module doxygen file correctly --- src/Mod/Ship/{surfaces.dox => ship.dox} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/Mod/Ship/{surfaces.dox => ship.dox} (100%) diff --git a/src/Mod/Ship/surfaces.dox b/src/Mod/Ship/ship.dox similarity index 100% rename from src/Mod/Ship/surfaces.dox rename to src/Mod/Ship/ship.dox From 7888c4128b94053ad11745f3b3edc4123bdf2711 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 12:25:36 +0100 Subject: [PATCH 19/40] Added Ship design module autotools scripts --- src/Mod/Ship/Icons/Makefile.am | 30 ++++++++++++++++++++++++ src/Mod/Ship/Makefile.am | 13 ++++++++++ src/Mod/Ship/shipCreateShip/Makefile.am | 11 +++++++++ src/Mod/Ship/shipOutlineDraw/Makefile.am | 12 ++++++++++ src/Mod/Ship/shipUtils/Makefile.am | 11 +++++++++ 5 files changed, 77 insertions(+) create mode 100644 src/Mod/Ship/Icons/Makefile.am create mode 100644 src/Mod/Ship/Makefile.am create mode 100644 src/Mod/Ship/shipCreateShip/Makefile.am create mode 100644 src/Mod/Ship/shipOutlineDraw/Makefile.am create mode 100644 src/Mod/Ship/shipUtils/Makefile.am diff --git a/src/Mod/Ship/Icons/Makefile.am b/src/Mod/Ship/Icons/Makefile.am new file mode 100644 index 0000000000..285943436e --- /dev/null +++ b/src/Mod/Ship/Icons/Makefile.am @@ -0,0 +1,30 @@ +# Change data dir from default $(datadir) to actual directory +datadir = $(prefix)/Mod/Ship/Icons +data_DATA = \ + AreaCurveIco.png \ + AreaCurveIco.xcf \ + AreaCurveIco.xpm \ + DataIco.png \ + DataIco.xcf \ + DataIco.xpm \ + DiscretizeIco.png \ + DiscretizeIco.xcf \ + DiscretizeIco.xpm \ + HydrostaticsIco.png \ + HydrostaticsIco.xcf \ + HydrostaticsIco.xpm \ + Ico.png \ + Ico.xcf \ + Ico.xpm \ + OutlineDrawIco.png \ + OutlineDrawIco.xcf \ + OutlineDrawIco.xpm \ + ReparametrizeIco.png \ + ReparametrizeIco.xcf \ + ReparametrizeIco.xpm \ + Ship.xcf \ + Ship.xpm + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt diff --git a/src/Mod/Ship/Makefile.am b/src/Mod/Ship/Makefile.am new file mode 100644 index 0000000000..0b042d8542 --- /dev/null +++ b/src/Mod/Ship/Makefile.am @@ -0,0 +1,13 @@ +SUBDIRS=Icons shipCreateShip shipOutlineDraw shipUtils + +# Change data dir from default ($(prefix)/share) to actual dir +datadir = $(prefix)/Mod/Ship + +data_DATA = InitGui.py ShipGui.py Instance.py + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt \ + README \ + ship.dox + diff --git a/src/Mod/Ship/shipCreateShip/Makefile.am b/src/Mod/Ship/shipCreateShip/Makefile.am new file mode 100644 index 0000000000..7f9b7a022e --- /dev/null +++ b/src/Mod/Ship/shipCreateShip/Makefile.am @@ -0,0 +1,11 @@ +# Change data dir from default $(datadir) to actual directory +datadir = $(prefix)/Mod/Ship/shipCreateShip +data_DATA = \ + __init__.py \ + Preview.py \ + TaskPanel.py \ + TaskPanel.ui + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt diff --git a/src/Mod/Ship/shipOutlineDraw/Makefile.am b/src/Mod/Ship/shipOutlineDraw/Makefile.am new file mode 100644 index 0000000000..f7d5168df7 --- /dev/null +++ b/src/Mod/Ship/shipOutlineDraw/Makefile.am @@ -0,0 +1,12 @@ +# Change data dir from default $(datadir) to actual directory +datadir = $(prefix)/Mod/Ship/shipOutlineDraw +data_DATA = \ + __init__.py \ + Plot.py \ + Preview.py \ + TaskPanel.py \ + TaskPanel.ui + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt diff --git a/src/Mod/Ship/shipUtils/Makefile.am b/src/Mod/Ship/shipUtils/Makefile.am new file mode 100644 index 0000000000..50d893c8a2 --- /dev/null +++ b/src/Mod/Ship/shipUtils/Makefile.am @@ -0,0 +1,11 @@ +# Change data dir from default $(datadir) to actual directory +datadir = $(prefix)/Mod/Ship/shipUtils +data_DATA = \ + __init__.py \ + Math.py \ + Paths.py \ + Translator.py + +EXTRA_DIST = \ + $(data_DATA) \ + CMakeLists.txt From f9f389501f20f72550f65597b1e7cd6dd150dc16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 30 Dec 2011 12:26:16 +0100 Subject: [PATCH 20/40] Included Ship design module into autotools installer --- configure.ac | 5 +++++ src/Mod/Makefile.am | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index c0b29909d7..5e9f8e95df 100644 --- a/configure.ac +++ b/configure.ac @@ -1034,6 +1034,11 @@ src/Mod/Surfaces/surfConvert/Makefile src/Mod/Surfaces/surfISOCurve/Makefile src/Mod/Surfaces/surfSlice/Makefile src/Mod/Surfaces/surfUtils/Makefile +src/Mod/Ship/Makefile +src/Mod/Ship/Icons/Makefile +src/Mod/Ship/shipCreateShip/Makefile +src/Mod/Ship/shipOutlineDraw/Makefile +src/Mod/Ship/shipUtils/Makefile src/Tools/Makefile src/Tools/_TEMPLATE_/Makefile src/Tools/_TEMPLATE_/App/Makefile diff --git a/src/Mod/Makefile.am b/src/Mod/Makefile.am index d82e72289c..7fe7c39734 100644 --- a/src/Mod/Makefile.am +++ b/src/Mod/Makefile.am @@ -1,5 +1,5 @@ #SUBDIRS=Part Mesh Points Raytracing Image Drawing Complete Draft Test TemplatePyMod -SUBDIRS=Points Complete Draft Test TemplatePyMod Web Start Idf Arch Surfaces +SUBDIRS=Points Complete Draft Test TemplatePyMod Web Start Idf Arch Surfaces Ship #if HAVE_OPENCV SUBDIRS += Image From e1c38be266aaf8e78792b9680df91fbc6f00befb Mon Sep 17 00:00:00 2001 From: Yorik van Havre Date: Tue, 24 Jan 2012 15:59:00 -0200 Subject: [PATCH 21/40] Fixes before merging Ship --- src/Mod/Arch/ArchAxis.py | 1 + src/Mod/Arch/ArchCommands.py | 1 + src/Mod/Draft/Draft.py | 1 + 3 files changed, 3 insertions(+) diff --git a/src/Mod/Arch/ArchAxis.py b/src/Mod/Arch/ArchAxis.py index 4ea4fa317b..53b425b757 100644 --- a/src/Mod/Arch/ArchAxis.py +++ b/src/Mod/Arch/ArchAxis.py @@ -22,6 +22,7 @@ #*************************************************************************** import FreeCAD,FreeCADGui,Draft,math + from draftlibs import fcvec from FreeCAD import Vector from PyQt4 import QtCore, QtGui diff --git a/src/Mod/Arch/ArchCommands.py b/src/Mod/Arch/ArchCommands.py index a8b09f5e81..d05dd13465 100644 --- a/src/Mod/Arch/ArchCommands.py +++ b/src/Mod/Arch/ArchCommands.py @@ -138,6 +138,7 @@ def splitMesh(obj,mark=True): def meshToShape(obj,mark=True): '''meshToShape(object,[mark]): turns a mesh into a shape, joining coplanar facets. If mark is True (default), non-solid objects will be marked in red''' + name = obj.Name import Part,MeshPart from draftlibs import fcgeo diff --git a/src/Mod/Draft/Draft.py b/src/Mod/Draft/Draft.py index 7b03d5ebde..c7209ae7b4 100644 --- a/src/Mod/Draft/Draft.py +++ b/src/Mod/Draft/Draft.py @@ -970,6 +970,7 @@ def draftify(objectslist,makeblock=False): wire. If makeblock is True, multiple objects will be grouped in a block''' from draftlibs import fcgeo import Part + if not isinstance(objectslist,list): objectslist = [objectslist] newobjlist = [] From 6d5943dc6e048e9d48554e0e332f2c7fe0fe04ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20Pita?= Date: Mon, 2 Jan 2012 15:50:37 +0100 Subject: [PATCH 22/40] Fixed errors using CMAKE compile tools --- src/Mod/Ship/Icons/CMakeLists.txt | 66 ++++++++++++-------- src/Mod/Ship/shipCreateShip/CMakeLists.txt | 28 ++++++--- src/Mod/Ship/shipOutlineDraw/CMakeLists.txt | 30 ++++++--- src/Mod/Ship/shipUtils/CMakeLists.txt | 28 ++++++--- src/Mod/Surfaces/Icons/CMakeLists.txt | 50 +++++++++------ src/Mod/Surfaces/surfBorder/CMakeLists.txt | 22 +++++-- src/Mod/Surfaces/surfConvert/CMakeLists.txt | 28 ++++++--- src/Mod/Surfaces/surfISOCurve/CMakeLists.txt | 28 +++++++-- src/Mod/Surfaces/surfSlice/CMakeLists.txt | 28 +++++++-- src/Mod/Surfaces/surfUtils/CMakeLists.txt | 28 +++++++-- 10 files changed, 237 insertions(+), 99 deletions(-) diff --git a/src/Mod/Ship/Icons/CMakeLists.txt b/src/Mod/Ship/Icons/CMakeLists.txt index 3e84c50195..09505795f7 100644 --- a/src/Mod/Ship/Icons/CMakeLists.txt +++ b/src/Mod/Ship/Icons/CMakeLists.txt @@ -1,29 +1,41 @@ -INSTALL( - FILES - AreaCurveIco.png - AreaCurveIco.xcf - AreaCurveIco.xpm - DataIco.png - DataIco.xcf - DataIco.xpm - DiscretizeIco.png - DiscretizeIco.xcf - DiscretizeIco.xpm - HydrostaticsIco.png - HydrostaticsIco.xcf - HydrostaticsIco.xpm - Ico.png - Ico.xcf - Ico.xpm - OutlineDrawIco.png - OutlineDrawIco.xcf - OutlineDrawIco.xpm - ReparametrizeIco.png - ReparametrizeIco.xcf - ReparametrizeIco.xpm - Ship.xcf - Ship.xpm - DESTINATION - Mod/Ship/Icons +SET(Ship_Icons + AreaCurveIco.png + AreaCurveIco.xcf + AreaCurveIco.xpm + DataIco.png + DataIco.xcf + DataIco.xpm + DiscretizeIco.png + DiscretizeIco.xcf + DiscretizeIco.xpm + HydrostaticsIco.png + HydrostaticsIco.xcf + HydrostaticsIco.xpm + Ico.png + Ico.xcf + Ico.xpm + OutlineDrawIco.png + OutlineDrawIco.xcf + OutlineDrawIco.xpm + ReparametrizeIco.png + ReparametrizeIco.xcf + ReparametrizeIco.xpm + Ship.xcf + Ship.xpm +) + +SOURCE_GROUP("" FILES ${Ship_Icons}) + +ADD_CUSTOM_TARGET(ShipIcons ALL + SOURCES ${Ship_Icons} +) + +fc_copy_sources("Mod/Ship/Icons" "Ship/Icons" ${Ship_Icons}) + +INSTALL( + FILES + ${Ship_Icons} + DESTINATION + Mod/Ship/Icons ) diff --git a/src/Mod/Ship/shipCreateShip/CMakeLists.txt b/src/Mod/Ship/shipCreateShip/CMakeLists.txt index d03020201b..3c3dd42992 100644 --- a/src/Mod/Ship/shipCreateShip/CMakeLists.txt +++ b/src/Mod/Ship/shipCreateShip/CMakeLists.txt @@ -1,10 +1,22 @@ -INSTALL( - FILES - __init__.py - Preview.py - TaskPanel.py - TaskPanel.ui - DESTINATION - Mod/Ship/shipCreateShip +SET(Ship_CreateShip + __init__.py + Preview.py + TaskPanel.py + TaskPanel.ui +) + +SOURCE_GROUP("" FILES ${Ship_CreateShip}) + +ADD_CUSTOM_TARGET(ShipCreateShip ALL + SOURCES ${Ship_CreateShip} +) + +fc_copy_sources("Mod/Ship/shipCreateShip" "Ship/shipCreateShip" ${Ship_CreateShip}) + +INSTALL( + FILES + ${Ship_CreateShip} + DESTINATION + Mod/Ship/shipCreateShip ) diff --git a/src/Mod/Ship/shipOutlineDraw/CMakeLists.txt b/src/Mod/Ship/shipOutlineDraw/CMakeLists.txt index 0db83ddb7e..e144950f57 100644 --- a/src/Mod/Ship/shipOutlineDraw/CMakeLists.txt +++ b/src/Mod/Ship/shipOutlineDraw/CMakeLists.txt @@ -1,11 +1,23 @@ -INSTALL( - FILES - __init__.py - Plot.py - Preview.py - TaskPanel.py - TaskPanel.ui - DESTINATION - Mod/Ship/shipOutlineDraw +SET(Ship_OutlineDraw + __init__.py + Plot.py + Preview.py + TaskPanel.py + TaskPanel.ui +) + +SOURCE_GROUP("" FILES ${Ship_OutlineDraw}) + +ADD_CUSTOM_TARGET(ShipOutlineDraw ALL + SOURCES ${Ship_OutlineDraw} +) + +fc_copy_sources("Mod/Ship/shipOutlineDraw" "Ship/shipOutlineDraw" ${Ship_OutlineDraw}) + +INSTALL( + FILES + ${Ship_OutlineDraw} + DESTINATION + Mod/Ship/shipOutlineDraw ) diff --git a/src/Mod/Ship/shipUtils/CMakeLists.txt b/src/Mod/Ship/shipUtils/CMakeLists.txt index 023e3f867e..696b3c3909 100644 --- a/src/Mod/Ship/shipUtils/CMakeLists.txt +++ b/src/Mod/Ship/shipUtils/CMakeLists.txt @@ -1,10 +1,22 @@ -INSTALL( - FILES - __init__.py - Math.py - Paths.py - Translator.py - DESTINATION - Mod/Ship/shipUtils +SET(Ship_Utils + __init__.py + Math.py + Paths.py + Translator.py +) + +SOURCE_GROUP("" FILES ${Ship_Utils}) + +ADD_CUSTOM_TARGET(ShipUtils ALL + SOURCES ${Ship_Utils} +) + +fc_copy_sources("Mod/Ship/shipUtils" "Ship/shipUtils" ${Ship_Utils}) + +INSTALL( + FILES + ${Ship_Utils} + DESTINATION + Mod/Ship/shipUtils ) diff --git a/src/Mod/Surfaces/Icons/CMakeLists.txt b/src/Mod/Surfaces/Icons/CMakeLists.txt index 5f02f4d4a9..7fc12e7820 100644 --- a/src/Mod/Surfaces/Icons/CMakeLists.txt +++ b/src/Mod/Surfaces/Icons/CMakeLists.txt @@ -1,21 +1,33 @@ -INSTALL( - FILES - BorderIco.png - BorderIco.xpm - ConvertIco.png - ConvertTo4SidesIco.xpm - Ico.xcf - IsoCurveIco.png - IsoCurveIco.xpm - SliceIco.xcf - BorderIco.xcf - ConvertIco.xcf - Ico.png - Ico.xpm - IsoCurveIco.xcf - SliceIco.png - SliceIco.xpm - DESTINATION - Mod/Surfaces/Icons +SET(Surfaces_Icons + BorderIco.png + BorderIco.xpm + ConvertIco.png + ConvertTo4SidesIco.xpm + Ico.xcf + IsoCurveIco.png + IsoCurveIco.xpm + SliceIco.xcf + BorderIco.xcf + ConvertIco.xcf + Ico.png + Ico.xpm + IsoCurveIco.xcf + SliceIco.png + SliceIco.xpm +) + +SOURCE_GROUP("" FILES ${Surfaces_Icons}) + +ADD_CUSTOM_TARGET(SurfacesIcons ALL + SOURCES ${Surfaces_Icons} +) + +fc_copy_sources("Mod/Surfaces/Icons" "Surfaces/Icons" ${Surfaces_Icons}) + +INSTALL( + FILES + ${Surfaces_Icons} + DESTINATION + Mod/Surfaces/Icons ) diff --git a/src/Mod/Surfaces/surfBorder/CMakeLists.txt b/src/Mod/Surfaces/surfBorder/CMakeLists.txt index fb9e2befe1..d629820b00 100644 --- a/src/Mod/Surfaces/surfBorder/CMakeLists.txt +++ b/src/Mod/Surfaces/surfBorder/CMakeLists.txt @@ -1,7 +1,19 @@ -INSTALL( - FILES - __init__.py - DESTINATION - Mod/Surfaces/surfBorder +SET(Surfaces_Border + __init__.py +) + +SOURCE_GROUP("" FILES ${Surfaces_Border}) + +ADD_CUSTOM_TARGET(SurfacesBorder ALL + SOURCES ${Surfaces_Border} +) + +fc_copy_sources("Mod/Surfaces/surfBorder" "Surfaces/surfBorder" ${Surfaces_Border}) + +INSTALL( + FILES + ${Surfaces_Border} + DESTINATION + Mod/Surfaces/surfBorder ) diff --git a/src/Mod/Surfaces/surfConvert/CMakeLists.txt b/src/Mod/Surfaces/surfConvert/CMakeLists.txt index 2bd1f7e58e..c5e204b82a 100644 --- a/src/Mod/Surfaces/surfConvert/CMakeLists.txt +++ b/src/Mod/Surfaces/surfConvert/CMakeLists.txt @@ -1,10 +1,22 @@ -INSTALL( - FILES - __init__.py - Preview.py - TaskPanel.py - TaskPanel.ui - DESTINATION - Mod/Surfaces/surfConvert +SET(Surfaces_Convert + __init__.py + Preview.py + TaskPanel.py + TaskPanel.ui +) + +SOURCE_GROUP("" FILES ${Surfaces_Convert}) + +ADD_CUSTOM_TARGET(SurfacesConvert ALL + SOURCES ${Surfaces_Convert} +) + +fc_copy_sources("Mod/Surfaces/surfConvert" "Surfaces/surfConvert" ${Surfaces_Convert}) + +INSTALL( + FILES + ${Surfaces_Convert} + DESTINATION + Mod/Surfaces/surfConvert ) diff --git a/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt b/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt index 21445ed821..3c12675ddf 100644 --- a/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt +++ b/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt @@ -1,10 +1,28 @@ +SET(Surfaces_ISOCurve + __init__.py + PointTracker.py + TaskPanel.py + Preview.py + TaskPanel.ui +) + +SOURCE_GROUP("" FILES ${Surfaces_ISOCurve}) + +ADD_CUSTOM_TARGET(SurfacesISOCurve ALL + SOURCES ${Surfaces_ISOCurve} +) + +fc_copy_sources("Mod/Surfaces/surfISOCurve" "Surfaces/surfISOCurve" ${Surfaces_ISOCurve}) + +INSTALL( + FILES + ${Surfaces_ISOCurve} + DESTINATION + Mod/Surfaces/surfISOCurve +) + INSTALL( FILES - __init__.py - PointTracker.py - TaskPanel.py - Preview.py - TaskPanel.ui DESTINATION Mod/Surfaces/surfISOCurve ) diff --git a/src/Mod/Surfaces/surfSlice/CMakeLists.txt b/src/Mod/Surfaces/surfSlice/CMakeLists.txt index 7757f84eac..28a2b6ffa1 100644 --- a/src/Mod/Surfaces/surfSlice/CMakeLists.txt +++ b/src/Mod/Surfaces/surfSlice/CMakeLists.txt @@ -1,10 +1,28 @@ +SET(Surfaces_Slice + __init__.py + PointTracker.py + TaskPanel.py + Preview.py + TaskPanel.ui +) + +SOURCE_GROUP("" FILES ${Surfaces_Slice}) + +ADD_CUSTOM_TARGET(SurfacesSlice ALL + SOURCES ${Surfaces_Slice} +) + +fc_copy_sources("Mod/Surfaces/surfSlice" "Surfaces/surfSlice" ${Surfaces_Slice}) + +INSTALL( + FILES + ${Surfaces_Slice} + DESTINATION + Mod/Surfaces/surfSlice +) + INSTALL( FILES - __init__.py - PointTracker.py - TaskPanel.py - Preview.py - TaskPanel.ui DESTINATION Mod/Surfaces/surfSlice ) diff --git a/src/Mod/Surfaces/surfUtils/CMakeLists.txt b/src/Mod/Surfaces/surfUtils/CMakeLists.txt index 46ceac9efc..c38e9b10f4 100644 --- a/src/Mod/Surfaces/surfUtils/CMakeLists.txt +++ b/src/Mod/Surfaces/surfUtils/CMakeLists.txt @@ -1,10 +1,28 @@ +SET(Surfaces_Utils + __init__.py + Geometry.py + Math.py + Paths.py + Translator.py +) + +SOURCE_GROUP("" FILES ${Surfaces_Utils}) + +ADD_CUSTOM_TARGET(SurfacesUtils ALL + SOURCES ${Surfaces_Utils} +) + +fc_copy_sources("Mod/Surfaces/surfUtils" "Surfaces/surfUtils" ${Surfaces_Utils}) + +INSTALL( + FILES + ${Surfaces_Utils} + DESTINATION + Mod/Surfaces/surfUtils +) + INSTALL( FILES - __init__.py - Geometry.py - Math.py - Paths.py - Translator.py DESTINATION Mod/Surfaces/surfUtils ) From eb86cc8a8fbf52667a10e8b30074c221a39a5b57 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20Pita?= Date: Thu, 5 Jan 2012 14:56:26 +0100 Subject: [PATCH 23/40] Fixed QtCore.Qt.ImhFormattedNumbersOnly backward compatibility --- src/Mod/Ship/shipOutlineDraw/TaskPanel.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/Mod/Ship/shipOutlineDraw/TaskPanel.py b/src/Mod/Ship/shipOutlineDraw/TaskPanel.py index 3861027e36..07c8c18a0d 100644 --- a/src/Mod/Ship/shipOutlineDraw/TaskPanel.py +++ b/src/Mod/Ship/shipOutlineDraw/TaskPanel.py @@ -76,7 +76,11 @@ class TaskPanel: mw = self.getMainWindow() form = mw.findChild(QtGui.QWidget, "TaskPanel") form.sections = form.findChild(QtGui.QTableWidget, "Sections") - form.sections.setInputMethodHints(QtCore.Qt.ImhFormattedNumbersOnly) + try: + form.sections.setInputMethodHints(QtCore.Qt.ImhFormattedNumbersOnly) + except: + msg = Translator.translate("QtCore.Qt.ImhFormattedNumbersOnly not supported, will not used.\n") + App.Console.PrintWarning(msg) form.sectionType = form.findChild(QtGui.QComboBox, "SectionType") form.deleteButton = form.findChild(QtGui.QPushButton, "DeleteButton") form.nSections = form.findChild(QtGui.QSpinBox, "NSections") @@ -201,10 +205,20 @@ class TaskPanel: if(item.text() != ''): self.form.sections.setRowCount(nRow+1) # Ensure that new item is a number + ID = self.form.sectionType.currentIndex() + if ID == 0: + SectionList = self.LSections[:] + elif ID == 1: + SectionList = self.BSections[:] + elif ID == 2: + SectionList = self.TSections[:] item = self.form.sections.item(row,column) (number,flag) = item.text().toFloat() if not flag: - number = 0.0 + if len(SectionList) > nRow-1: + number = SectionList[nRow-1] + else: + number = 0.0 string = '%f' % (number) item.setText(string) # Regenerate the list From d3895aa142e130720bef7665151f97b0578b3470 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Thu, 5 Jan 2012 16:04:29 +0100 Subject: [PATCH 24/40] Fixed multiple project generation --- src/Mod/Ship/CMakeLists.txt | 103 +++++++++++++--- src/Mod/Ship/Icons/CMakeLists.txt | 41 ------- src/Mod/Ship/shipCreateShip/CMakeLists.txt | 22 ---- src/Mod/Ship/shipOutlineDraw/CMakeLists.txt | 23 ---- src/Mod/Ship/shipUtils/CMakeLists.txt | 22 ---- src/Mod/Surfaces/CMakeLists.txt | 118 ++++++++++++++++--- src/Mod/Surfaces/Icons/CMakeLists.txt | 33 ------ src/Mod/Surfaces/surfBorder/CMakeLists.txt | 19 --- src/Mod/Surfaces/surfConvert/CMakeLists.txt | 22 ---- src/Mod/Surfaces/surfISOCurve/CMakeLists.txt | 29 ----- src/Mod/Surfaces/surfSlice/CMakeLists.txt | 29 ----- src/Mod/Surfaces/surfUtils/CMakeLists.txt | 29 ----- 12 files changed, 186 insertions(+), 304 deletions(-) delete mode 100644 src/Mod/Ship/Icons/CMakeLists.txt delete mode 100644 src/Mod/Ship/shipCreateShip/CMakeLists.txt delete mode 100644 src/Mod/Ship/shipOutlineDraw/CMakeLists.txt delete mode 100644 src/Mod/Ship/shipUtils/CMakeLists.txt delete mode 100644 src/Mod/Surfaces/Icons/CMakeLists.txt delete mode 100644 src/Mod/Surfaces/surfBorder/CMakeLists.txt delete mode 100644 src/Mod/Surfaces/surfConvert/CMakeLists.txt delete mode 100644 src/Mod/Surfaces/surfISOCurve/CMakeLists.txt delete mode 100644 src/Mod/Surfaces/surfSlice/CMakeLists.txt delete mode 100644 src/Mod/Surfaces/surfUtils/CMakeLists.txt diff --git a/src/Mod/Ship/CMakeLists.txt b/src/Mod/Ship/CMakeLists.txt index dc695ee5c6..e446440efb 100644 --- a/src/Mod/Ship/CMakeLists.txt +++ b/src/Mod/Ship/CMakeLists.txt @@ -1,16 +1,63 @@ -add_subdirectory(Icons) -add_subdirectory(shipCreateShip) -add_subdirectory(shipOutlineDraw) -add_subdirectory(shipUtils) - -SET(Ship_SRCS - InitGui.py - ShipGui.py - Instance.py +SET(ShipMain_SRCS + InitGui.py + ShipGui.py + Instance.py ) -SOURCE_GROUP("" FILES ${Ship_SRCS}) +SOURCE_GROUP("" FILES ${ShipMain_SRCS}) -SET(all_files ${Ship_SRCS}) +SET(ShipIcons_SRCS + Icons/AreaCurveIco.png + Icons/AreaCurveIco.xcf + Icons/AreaCurveIco.xpm + Icons/DataIco.png + Icons/DataIco.xcf + Icons/DataIco.xpm + Icons/DiscretizeIco.png + Icons/DiscretizeIco.xcf + Icons/DiscretizeIco.xpm + Icons/HydrostaticsIco.png + Icons/HydrostaticsIco.xcf + Icons/HydrostaticsIco.xpm + Icons/Ico.png + Icons/Ico.xcf + Icons/Ico.xpm + Icons/OutlineDrawIco.png + Icons/OutlineDrawIco.xcf + Icons/OutlineDrawIco.xpm + Icons/ReparametrizeIco.png + Icons/ReparametrizeIco.xcf + Icons/ReparametrizeIco.xpm + Icons/Ship.xcf + Icons/Ship.xpm +) +SOURCE_GROUP("shipicons" FILES ${ShipIcons_SRCS}) + +SET(ShipCreateShip_SRCS + shipCreateShip/__init__.py + shipCreateShip/Preview.py + shipCreateShip/TaskPanel.py + shipCreateShip/TaskPanel.ui +) +SOURCE_GROUP("shipcreateship" FILES ${ShipCreateShip_SRCS}) + +SET(ShipOutlineDraw_SRCS + shipOutlineDraw/__init__.py + shipOutlineDraw/Plot.py + shipOutlineDraw/Preview.py + shipOutlineDraw/TaskPanel.py + shipOutlineDraw/TaskPanel.ui +) +SOURCE_GROUP("shipoutlinedraw" FILES ${ShipOutlineDraw_SRCS}) + +SET(ShipUtils_SRCS + shipUtils/__init__.py + shipUtils/Math.py + shipUtils/Paths.py + shipUtils/Translator.py +) +SOURCE_GROUP("shiputils" FILES ${ShipUtils_SRCS}) + +SET(all_files ${ShipMain_SRCS} ${ShipIcons_SRCS} ${ShipCreateShip_SRCS} ${ShipOutlineDraw_SRCS} ${ShipUtils_SRCS}) ADD_CUSTOM_TARGET(Ship ALL SOURCES ${all_files} @@ -20,14 +67,32 @@ fc_copy_sources("Mod/Ship" "Ship" ${all_files}) INSTALL( FILES - ${Ship_SRCS} - README + ${ShipIcons_SRCS} DESTINATION - Mod/Ship + Mod/Ship/Icons +) +INSTALL( + FILES + ${ShipCreateShip_SRCS} + DESTINATION + Mod/Ship/shipCreateShip +) +INSTALL( + FILES + ${ShipOutlineDraw_SRCS} + DESTINATION + Mod/Ship/shipOutlineDraw +) +INSTALL( + FILES + ${ShipUtils_SRCS} + DESTINATION + Mod/Ship/shipUtils +) +INSTALL( + FILES + ${ShipMain_SRCS} + DESTINATION + Mod/Ship ) - - - - - diff --git a/src/Mod/Ship/Icons/CMakeLists.txt b/src/Mod/Ship/Icons/CMakeLists.txt deleted file mode 100644 index 09505795f7..0000000000 --- a/src/Mod/Ship/Icons/CMakeLists.txt +++ /dev/null @@ -1,41 +0,0 @@ -SET(Ship_Icons - AreaCurveIco.png - AreaCurveIco.xcf - AreaCurveIco.xpm - DataIco.png - DataIco.xcf - DataIco.xpm - DiscretizeIco.png - DiscretizeIco.xcf - DiscretizeIco.xpm - HydrostaticsIco.png - HydrostaticsIco.xcf - HydrostaticsIco.xpm - Ico.png - Ico.xcf - Ico.xpm - OutlineDrawIco.png - OutlineDrawIco.xcf - OutlineDrawIco.xpm - ReparametrizeIco.png - ReparametrizeIco.xcf - ReparametrizeIco.xpm - Ship.xcf - Ship.xpm -) - -SOURCE_GROUP("" FILES ${Ship_Icons}) - -ADD_CUSTOM_TARGET(ShipIcons ALL - SOURCES ${Ship_Icons} -) - -fc_copy_sources("Mod/Ship/Icons" "Ship/Icons" ${Ship_Icons}) - -INSTALL( - FILES - ${Ship_Icons} - DESTINATION - Mod/Ship/Icons -) - diff --git a/src/Mod/Ship/shipCreateShip/CMakeLists.txt b/src/Mod/Ship/shipCreateShip/CMakeLists.txt deleted file mode 100644 index 3c3dd42992..0000000000 --- a/src/Mod/Ship/shipCreateShip/CMakeLists.txt +++ /dev/null @@ -1,22 +0,0 @@ -SET(Ship_CreateShip - __init__.py - Preview.py - TaskPanel.py - TaskPanel.ui -) - -SOURCE_GROUP("" FILES ${Ship_CreateShip}) - -ADD_CUSTOM_TARGET(ShipCreateShip ALL - SOURCES ${Ship_CreateShip} -) - -fc_copy_sources("Mod/Ship/shipCreateShip" "Ship/shipCreateShip" ${Ship_CreateShip}) - -INSTALL( - FILES - ${Ship_CreateShip} - DESTINATION - Mod/Ship/shipCreateShip -) - diff --git a/src/Mod/Ship/shipOutlineDraw/CMakeLists.txt b/src/Mod/Ship/shipOutlineDraw/CMakeLists.txt deleted file mode 100644 index e144950f57..0000000000 --- a/src/Mod/Ship/shipOutlineDraw/CMakeLists.txt +++ /dev/null @@ -1,23 +0,0 @@ -SET(Ship_OutlineDraw - __init__.py - Plot.py - Preview.py - TaskPanel.py - TaskPanel.ui -) - -SOURCE_GROUP("" FILES ${Ship_OutlineDraw}) - -ADD_CUSTOM_TARGET(ShipOutlineDraw ALL - SOURCES ${Ship_OutlineDraw} -) - -fc_copy_sources("Mod/Ship/shipOutlineDraw" "Ship/shipOutlineDraw" ${Ship_OutlineDraw}) - -INSTALL( - FILES - ${Ship_OutlineDraw} - DESTINATION - Mod/Ship/shipOutlineDraw -) - diff --git a/src/Mod/Ship/shipUtils/CMakeLists.txt b/src/Mod/Ship/shipUtils/CMakeLists.txt deleted file mode 100644 index 696b3c3909..0000000000 --- a/src/Mod/Ship/shipUtils/CMakeLists.txt +++ /dev/null @@ -1,22 +0,0 @@ -SET(Ship_Utils - __init__.py - Math.py - Paths.py - Translator.py -) - -SOURCE_GROUP("" FILES ${Ship_Utils}) - -ADD_CUSTOM_TARGET(ShipUtils ALL - SOURCES ${Ship_Utils} -) - -fc_copy_sources("Mod/Ship/shipUtils" "Ship/shipUtils" ${Ship_Utils}) - -INSTALL( - FILES - ${Ship_Utils} - DESTINATION - Mod/Ship/shipUtils -) - diff --git a/src/Mod/Surfaces/CMakeLists.txt b/src/Mod/Surfaces/CMakeLists.txt index 5284816196..edf782c511 100644 --- a/src/Mod/Surfaces/CMakeLists.txt +++ b/src/Mod/Surfaces/CMakeLists.txt @@ -1,18 +1,69 @@ -add_subdirectory(Icons) -add_subdirectory(surfBorder) -add_subdirectory(surfConvert) -add_subdirectory(surfISOCurve) -add_subdirectory(surfSlice) -add_subdirectory(surfUtils) - - -SET(Surfaces_SRCS - InitGui.py - SurfGui.py +SET(SurfMain_SRCS + InitGui.py + SurfGui.py ) -SOURCE_GROUP("" FILES ${Surfaces_SRCS}) +SOURCE_GROUP("" FILES ${SurfMain_SRCS}) -SET(all_files ${Surfaces_SRCS}) +SET(SurfIcons_SRCS + Icons/BorderIco.png + Icons/BorderIco.xpm + Icons/ConvertIco.png + Icons/ConvertTo4SidesIco.xpm + Icons/Ico.xcf + Icons/IsoCurveIco.png + Icons/IsoCurveIco.xpm + Icons/SliceIco.xcf + Icons/BorderIco.xcf + Icons/ConvertIco.xcf + Icons/Ico.png + Icons/Ico.xpm + Icons/IsoCurveIco.xcf + Icons/SliceIco.png + Icons/SliceIco.xpm +) +SOURCE_GROUP("surficons" FILES ${SurfIcons_SRCS}) + +SET(SurfBorder_SRCS + surfBorder/__init__.py +) +SOURCE_GROUP("surfborder" FILES ${SurfBorder_SRCS}) + +SET(SurfConvert_SRCS + surfConvert/__init__.py + surfConvert/Preview.py + surfConvert/TaskPanel.py + surfConvert/TaskPanel.ui +) +SOURCE_GROUP("surfconvert" FILES ${SurfConvert_SRCS}) + +SET(SurfISOCurve_SRCS + surfISOCurve/__init__.py + surfISOCurve/PointTracker.py + surfISOCurve/TaskPanel.py + surfISOCurve/Preview.py + surfISOCurve/TaskPanel.ui +) +SOURCE_GROUP("surfISOcurve" FILES ${SurfISOCurve_SRCS}) + +SET(SurfSlice_SRCS + surfSlice/__init__.py + surfSlice/PointTracker.py + surfSlice/TaskPanel.py + surfSlice/Preview.py + surfSlice/TaskPanel.ui +) +SOURCE_GROUP("surfslice" FILES ${SurfSlice_SRCS}) + +SET(SurfUtils_SRCS + surfUtils/__init__.py + surfUtils/Geometry.py + surfUtils/Math.py + surfUtils/Paths.py + surfUtils/Translator.py +) +SOURCE_GROUP("surfutils" FILES ${SurfUtils_SRCS}) + +SET(all_files ${SurfMain_SRCS} ${SurfIcons_SRCS} ${SurfBorder_SRCS} ${SurfConvert_SRCS} ${SurfISOCurve_SRCS} ${SurfSlice_SRCS} ${SurfUtils_SRCS}) ADD_CUSTOM_TARGET(Surfaces ALL SOURCES ${all_files} @@ -22,9 +73,44 @@ fc_copy_sources("Mod/Surfaces" "Surfaces" ${all_files}) INSTALL( FILES - ${Surfaces_SRCS} - README + ${SurfIcons_SRCS} DESTINATION - Mod/Surfaces + Mod/Surfaces/Icons +) +INSTALL( + FILES + ${SurfBorder_SRCS} + DESTINATION + Mod/Surfaces/surfBorder +) +INSTALL( + FILES + ${SurfConvert_SRCS} + DESTINATION + Mod/Surfaces/surfConvert +) +INSTALL( + FILES + ${SurfISOCurve_SRCS} + DESTINATION + Mod/Surfaces/surfISOCurve +) +INSTALL( + FILES + ${SurfSlice_SRCS} + DESTINATION + Mod/Surfaces/surfSlice +) +INSTALL( + FILES + ${SurfUtils_SRCS} + DESTINATION + Mod/Surfaces/surfUtils +) +INSTALL( + FILES + ${SurfMain_SRCS} + DESTINATION + Mod/Surfaces ) diff --git a/src/Mod/Surfaces/Icons/CMakeLists.txt b/src/Mod/Surfaces/Icons/CMakeLists.txt deleted file mode 100644 index 7fc12e7820..0000000000 --- a/src/Mod/Surfaces/Icons/CMakeLists.txt +++ /dev/null @@ -1,33 +0,0 @@ -SET(Surfaces_Icons - BorderIco.png - BorderIco.xpm - ConvertIco.png - ConvertTo4SidesIco.xpm - Ico.xcf - IsoCurveIco.png - IsoCurveIco.xpm - SliceIco.xcf - BorderIco.xcf - ConvertIco.xcf - Ico.png - Ico.xpm - IsoCurveIco.xcf - SliceIco.png - SliceIco.xpm -) - -SOURCE_GROUP("" FILES ${Surfaces_Icons}) - -ADD_CUSTOM_TARGET(SurfacesIcons ALL - SOURCES ${Surfaces_Icons} -) - -fc_copy_sources("Mod/Surfaces/Icons" "Surfaces/Icons" ${Surfaces_Icons}) - -INSTALL( - FILES - ${Surfaces_Icons} - DESTINATION - Mod/Surfaces/Icons -) - diff --git a/src/Mod/Surfaces/surfBorder/CMakeLists.txt b/src/Mod/Surfaces/surfBorder/CMakeLists.txt deleted file mode 100644 index d629820b00..0000000000 --- a/src/Mod/Surfaces/surfBorder/CMakeLists.txt +++ /dev/null @@ -1,19 +0,0 @@ -SET(Surfaces_Border - __init__.py -) - -SOURCE_GROUP("" FILES ${Surfaces_Border}) - -ADD_CUSTOM_TARGET(SurfacesBorder ALL - SOURCES ${Surfaces_Border} -) - -fc_copy_sources("Mod/Surfaces/surfBorder" "Surfaces/surfBorder" ${Surfaces_Border}) - -INSTALL( - FILES - ${Surfaces_Border} - DESTINATION - Mod/Surfaces/surfBorder -) - diff --git a/src/Mod/Surfaces/surfConvert/CMakeLists.txt b/src/Mod/Surfaces/surfConvert/CMakeLists.txt deleted file mode 100644 index c5e204b82a..0000000000 --- a/src/Mod/Surfaces/surfConvert/CMakeLists.txt +++ /dev/null @@ -1,22 +0,0 @@ -SET(Surfaces_Convert - __init__.py - Preview.py - TaskPanel.py - TaskPanel.ui -) - -SOURCE_GROUP("" FILES ${Surfaces_Convert}) - -ADD_CUSTOM_TARGET(SurfacesConvert ALL - SOURCES ${Surfaces_Convert} -) - -fc_copy_sources("Mod/Surfaces/surfConvert" "Surfaces/surfConvert" ${Surfaces_Convert}) - -INSTALL( - FILES - ${Surfaces_Convert} - DESTINATION - Mod/Surfaces/surfConvert -) - diff --git a/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt b/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt deleted file mode 100644 index 3c12675ddf..0000000000 --- a/src/Mod/Surfaces/surfISOCurve/CMakeLists.txt +++ /dev/null @@ -1,29 +0,0 @@ -SET(Surfaces_ISOCurve - __init__.py - PointTracker.py - TaskPanel.py - Preview.py - TaskPanel.ui -) - -SOURCE_GROUP("" FILES ${Surfaces_ISOCurve}) - -ADD_CUSTOM_TARGET(SurfacesISOCurve ALL - SOURCES ${Surfaces_ISOCurve} -) - -fc_copy_sources("Mod/Surfaces/surfISOCurve" "Surfaces/surfISOCurve" ${Surfaces_ISOCurve}) - -INSTALL( - FILES - ${Surfaces_ISOCurve} - DESTINATION - Mod/Surfaces/surfISOCurve -) - -INSTALL( - FILES - DESTINATION - Mod/Surfaces/surfISOCurve -) - diff --git a/src/Mod/Surfaces/surfSlice/CMakeLists.txt b/src/Mod/Surfaces/surfSlice/CMakeLists.txt deleted file mode 100644 index 28a2b6ffa1..0000000000 --- a/src/Mod/Surfaces/surfSlice/CMakeLists.txt +++ /dev/null @@ -1,29 +0,0 @@ -SET(Surfaces_Slice - __init__.py - PointTracker.py - TaskPanel.py - Preview.py - TaskPanel.ui -) - -SOURCE_GROUP("" FILES ${Surfaces_Slice}) - -ADD_CUSTOM_TARGET(SurfacesSlice ALL - SOURCES ${Surfaces_Slice} -) - -fc_copy_sources("Mod/Surfaces/surfSlice" "Surfaces/surfSlice" ${Surfaces_Slice}) - -INSTALL( - FILES - ${Surfaces_Slice} - DESTINATION - Mod/Surfaces/surfSlice -) - -INSTALL( - FILES - DESTINATION - Mod/Surfaces/surfSlice -) - diff --git a/src/Mod/Surfaces/surfUtils/CMakeLists.txt b/src/Mod/Surfaces/surfUtils/CMakeLists.txt deleted file mode 100644 index c38e9b10f4..0000000000 --- a/src/Mod/Surfaces/surfUtils/CMakeLists.txt +++ /dev/null @@ -1,29 +0,0 @@ -SET(Surfaces_Utils - __init__.py - Geometry.py - Math.py - Paths.py - Translator.py -) - -SOURCE_GROUP("" FILES ${Surfaces_Utils}) - -ADD_CUSTOM_TARGET(SurfacesUtils ALL - SOURCES ${Surfaces_Utils} -) - -fc_copy_sources("Mod/Surfaces/surfUtils" "Surfaces/surfUtils" ${Surfaces_Utils}) - -INSTALL( - FILES - ${Surfaces_Utils} - DESTINATION - Mod/Surfaces/surfUtils -) - -INSTALL( - FILES - DESTINATION - Mod/Surfaces/surfUtils -) - From cd9bc18a6582fcf306bad761cf38188f9e0855ab Mon Sep 17 00:00:00 2001 From: Jose Luis Cercos Pita Date: Fri, 6 Jan 2012 14:04:56 +0100 Subject: [PATCH 25/40] Improved Ship object to viewable & selectable object --- src/Mod/Ship/Instance.py | 904 ++++++++++++----------- src/Mod/Ship/shipCreateShip/TaskPanel.py | 2 +- 2 files changed, 477 insertions(+), 429 deletions(-) diff --git a/src/Mod/Ship/Instance.py b/src/Mod/Ship/Instance.py index 1e024023ee..c1b7f7b149 100644 --- a/src/Mod/Ship/Instance.py +++ b/src/Mod/Ship/Instance.py @@ -48,8 +48,47 @@ class Ship: obj.Proxy = self self.obj = obj + def onChanged(self, fp, prop): + ''' Print the name of the property that has changed ''' + # FreeCAD.Console.PrintMessage("Change property: " + str(prop) + "\n") + if prop == "Length" or prop == "Beam" or prop == "Draft": + fp.Shape = Part.makeShell(self.faces) + def execute(self, obj): - pass + ''' Print a short message when doing a recomputation, this method is mandatory ''' + # FreeCAD.Console.PrintMessage("Recompute Ship\n") + obj.Shape = Part.makeShell(self.faces) + + def lineFaceSection(self,line,surface): + """ Returns the point of section of a line with a face + @param line Line object, that can be a curve. + @param surface Surface object (must be a Part::Shape) + @return Section points array, [] if line don't cut surface + """ + # Get initial data + result = [] + vertexes = line.Vertexes + nVertex = len(vertexes) + # Perform the cut + section = line.cut(surface) + # Filter all old points + points = section.Vertexes + nPoint = len(points) + if nPoint <= nVertex: + # Any valid point + result + for i in range(0,nPoint): + disp = len(result) + flag = 0 + if not Math.isAprox(points[i].X,vertexes[i-disp].X,0.0001): + flag = flag+1 + if not Math.isAprox(points[i].Y,vertexes[i-disp].Y,0.0001): + flag = flag+1 + if not Math.isAprox(points[i].Z,vertexes[i-disp].Z,0.0001): + flag = flag+1 + if flag > 0: + result.append(points[i]) + return result def discretize(self, nS, nP): """ Discretize the surface. @@ -122,443 +161,452 @@ class Ship: for j in range(0,len(points)): self.obj.mSections.append(points[j]) - def lineFaceSection(self,line,surface): - """ Returns the point of section of a line with a face - @param line Line object, that can be a curve. - @param surface Surface object (must be a Part::Shape) - @return Section points array, [] if line don't cut surface - """ - # Get initial data - result = [] - vertexes = line.Vertexes - nVertex = len(vertexes) - # Perform the cut - section = line.cut(surface) - # Filter all old points - points = section.Vertexes - nPoint = len(points) - if nPoint <= nVertex: - # Any valid point - result - for i in range(0,nPoint): - disp = len(result) - flag = 0 - if not Math.isAprox(points[i].X,vertexes[i-disp].X,0.0001): - flag = flag+1 - if not Math.isAprox(points[i].Y,vertexes[i-disp].Y,0.0001): - flag = flag+1 - if not Math.isAprox(points[i].Z,vertexes[i-disp].Z,0.0001): - flag = flag+1 - if flag > 0: - result.append(points[i]) - return result - class ViewProviderShip: def __init__(self, obj): "Set this object to the proxy object of the actual view provider" obj.Proxy = self + def attach(self, obj): + ''' Setup the scene sub-graph of the view provider, this method is mandatory ''' + return + + def updateData(self, fp, prop): + ''' If a property of the handled feature has changed we have the chance to handle this here ''' + return + + def getDisplayModes(self,obj): + ''' Return a list of display modes. ''' + modes=[] + return modes + + def getDefaultDisplayMode(self): + ''' Return the name of the default display mode. It must be defined in getDisplayModes. ''' + return "Shaded" + + def setDisplayMode(self,mode): + ''' Map the display mode defined in attach with those defined in getDisplayModes. + Since they have the same names nothing needs to be done. This method is optinal. + ''' + return mode + + def onChanged(self, vp, prop): + ''' Print the name of the property that has changed ''' + # FreeCAD.Console.PrintMessage("Change property: " + str(prop) + "\n") + + def __getstate__(self): + ''' When saving the document this object gets stored using Python's cPickle module. + Since we have some un-pickable here -- the Coin stuff -- we must define this method + to return a tuple of all pickable objects or None. + ''' + return None + + def __setstate__(self,state): + ''' When restoring the pickled object from document we have the chance to set some + internals here. Since no data were pickled nothing needs to be done here. + ''' + return None + def getIcon(self): return """ /* XPM */ static char * Ship_xpm[] = { "32 32 396 2", - " c None", - ". c #2C2C2C", - "+ c #3A3A3A", - "@ c #585857", - "# c #161616", - "$ c #000000", - "% c #363636", - "& c #333333", - "* c #B3B3B3", - "= c #B4B4B4", - "- c #949494", - "; c #565653", - "> c #141414", - ", c #080807", - "' c #585858", - ") c #878787", - "! c #9F9E9F", - "~ c #9F9F9E", - "{ c #8F8F90", - "] c #6B6B6B", - "^ c #101010", - "/ c #737373", - "( c #4C4C4C", - "_ c #B1B1B7", - ": c #9090C0", - "< c #A7A7B2", - "[ c #87878E", - "} c #4F4F52", - "| c #191919", - "1 c #656565", - "2 c #D1D1D2", - "3 c #D1D1D1", - "4 c #CECECE", - "5 c #CDCCCC", - "6 c #CCCCCC", - "7 c #CCCCCB", - "8 c #CDCECD", - "9 c #BDBDBD", - "0 c #424242", - "a c #373737", - "b c #0A0A0A", - "c c #241414", - "d c #0E0C0C", - "e c #929393", - "f c #383738", - "g c #9B9B9A", - "h c #A0A0AF", - "i c #2929E4", - "j c #2525E5", - "k c #3F3FD7", - "l c #5B5BC8", - "m c #535368", - "n c #686866", - "o c #C8C8C8", - "p c #C8C8C7", - "q c #C7C6C7", - "r c #C6C6C6", - "s c #C5C5C5", - "t c #C4C5C5", - "u c #C3C4C3", - "v c #C3C3C2", - "w c #BCBCBC", - "x c #595959", - "y c #A6A6A6", - "z c #969696", - "A c #0B0B0B", - "B c #0D0707", - "C c #894646", - "D c #1C1A1A", - "E c #525252", - "F c #6C6D6C", - "G c #A3A3A2", - "H c #A3A296", - "I c #8E8F98", - "J c #6F6EA5", - "K c #5354AF", - "L c #373753", - "M c #8D8D8B", - "N c #C5C5C4", - "O c #C2C2C2", - "P c #C1C1C1", - "Q c #C0C0C0", - "R c #C0BFBF", - "S c #BFBFBF", - "T c #BEBEBE", - "U c #B1B2B2", - "V c #404040", - "W c #ABAAAA", - "X c #797979", - "Y c #2A1212", - "Z c #662828", - "` c #3D403F", - " . c #B5B5B5", - ".. c #6B6A6B", - "+. c #4A4A4A", - "@. c #9A9A9A", - "#. c #909090", - "$. c #8B8B8A", - "%. c #898A86", - "&. c #84837F", - "*. c #3D3D3C", - "=. c #9E9E9E", - "-. c #BFBFBE", - ";. c #BDBEBD", - ">. c #BBBBBB", - ",. c #BABABA", - "'. c #B9B9B9", - "). c #B8B8B8", - "!. c #999999", - "~. c #BABAB9", - "{. c #ABABAB", - "]. c #292929", - "^. c #381212", - "/. c #4C1514", - "(. c #535656", - "_. c #717171", - ":. c #919090", - "<. c #818181", - "[. c #4E4E4E", - "}. c #4B4B4B", - "|. c #B1B1B1", - "1. c #B8B7B8", - "2. c #B6B6B6", - "3. c #B6B5B5", - "4. c #B4B5B4", - "5. c #B2B3B2", - "6. c #5C5D5C", - "7. c #AFAFAF", - "8. c #ADACAC", - "9. c #5B5B5B", - "0. c #410C0C", - "a. c #3E0707", - "b. c #525555", - "c. c #9C9C9C", - "d. c #2D2D2D", - "e. c #757575", - "f. c #474747", - "g. c #484848", - "h. c #9F9F9F", - "i. c #B3B3B4", - "j. c #B2B2B2", - "k. c #B0B0B0", - "l. c #ADAEAD", - "m. c #ADADAD", - "n. c #B0B1B0", - "o. c #1E1E1E", - "p. c #ACABAC", - "q. c #AAA9A9", - "r. c #A8A8A8", - "s. c #5D5D5D", - "t. c #290202", - "u. c #281010", - "v. c #272828", - "w. c #767777", - "x. c #505050", - "y. c #1F1F1F", - "z. c #5E5E5D", - "A. c #A4A5A5", - "B. c #B1B2B1", - "C. c #AEAEAE", - "D. c #AEADAD", - "E. c #ABACAC", - "F. c #AAAAAA", - "G. c #A9A8A8", - "H. c #ABABAC", - "I. c #7B7B7B", - "J. c #2B2B2B", - "K. c #A4A4A4", - "L. c #A6A5A6", - "M. c #888888", - "N. c #0E0E0E", - "O. c #101312", - "P. c #7E8080", - "Q. c #5E5E5E", - "R. c #242424", - "S. c #555555", - "T. c #7F7F7F", - "U. c #A4A3A4", - "V. c #B3B3B2", - "W. c #ACACAC", - "X. c #A9A9A9", - "Y. c #A8A7A7", - "Z. c #A7A6A7", - "`. c #A7A7A7", - " + c #A8A8A7", - ".+ c #A5A5A5", - "++ c #A2A2A2", - "@+ c #222122", - "#+ c #7E7E7E", - "$+ c #A3A3A3", - "%+ c #9B9B9B", - "&+ c #050505", - "*+ c #6E6E6E", - "=+ c #A7A7A6", - "-+ c #989898", - ";+ c #A5A4A4", - ">+ c #A7A7A8", - ",+ c #A5A6A7", - "'+ c #979A99", - ")+ c #818383", - "!+ c #757878", - "~+ c #757979", - "{+ c #878A8A", - "]+ c #A3A5A5", - "^+ c #828282", - "/+ c #A0A0A0", - "(+ c #232323", - "_+ c #939393", - ":+ c #A5A6A5", - "<+ c #A2A3A2", - "[+ c #A2A1A1", - "}+ c #A1A0A1", - "|+ c #939292", - "1+ c #636262", - "2+ c #554D4D", - "3+ c #634C4C", - "4+ c #755555", - "5+ c #936464", - "6+ c #9F6868", - "7+ c #9B6060", - "8+ c #804A4A", - "9+ c #5C3737", - "0+ c #1D1616", - "a+ c #A1A1A1", - "b+ c #010101", - "c+ c #151516", - "d+ c #707070", - "e+ c #9D9E9E", - "f+ c #8C8D8D", - "g+ c #8B8888", - "h+ c #726A6A", - "i+ c #6D5959", - "j+ c #866261", - "k+ c #C18B8B", - "l+ c #D79696", - "m+ c #D18C8C", - "n+ c #CB8180", - "o+ c #C57575", - "p+ c #BF6B6A", - "q+ c #BB6161", - "r+ c #B95958", - "s+ c #9C4544", - "t+ c #2E1212", - "u+ c #6F6C6C", - "v+ c #A0A1A1", - "w+ c #575757", - "x+ c #0C0C0C", - "y+ c #9C9D9D", - "z+ c #7A7272", - "A+ c #876F6F", - "B+ c #977070", - "C+ c #C28C8C", - "D+ c #D59595", - "E+ c #D08A8A", - "F+ c #C67D7D", - "G+ c #C07272", - "H+ c #BC6969", - "I+ c #B85F5F", - "J+ c #B35656", - "K+ c #B04C4C", - "L+ c #AB4243", - "M+ c #A63939", - "N+ c #591B1B", - "O+ c #6A2121", - "P+ c #542323", - "Q+ c #585A5A", - "R+ c #191515", - "S+ c #706262", - "T+ c #A58080", - "U+ c #B58383", - "V+ c #CE8F8F", - "W+ c #CD8989", - "X+ c #C17372", - "Y+ c #B45656", - "Z+ c #AF4C4C", - "`+ c #AB4242", - " @ c #A73A39", - ".@ c #A3302F", - "+@ c #9F2626", - "@@ c #8E1A1A", - "#@ c #2C0808", - "$@ c #91191A", - "%@ c #2F0200", - "&@ c #90C6FB", - "*@ c #8BBFFB", - "=@ c #94CBFC", - "-@ c #AFEFFB", - ";@ c #7DABA0", - ">@ c #3C2521", - ",@ c #C88484", - "'@ c #C57C7D", - ")@ c #C17273", - "!@ c #B86060", - "~@ c #AB4343", - "{@ c #A73939", - "]@ c #A32F2F", - "^@ c #9B1C1D", - "/@ c #961313", - "(@ c #96090A", - "_@ c #3C0202", - ":@ c #4E0202", - "<@ c #300000", - "[@ c #3E5378", - "}@ c #7EABF9", - "|@ c #84B5FC", - "1@ c #96CDFB", - "2@ c #B2F2FA", - "3@ c #C4FFFA", - "4@ c #2E3FFD", - "5@ c #3346FD", - "6@ c #2A3AFD", - "7@ c #161EFE", - "8@ c #1B25FD", - "9@ c #1F25B4", - "0@ c #7C6196", - "a@ c #AA6075", - "b@ c #AC5763", - "c@ c #AD5155", - "d@ c #AD4645", - "e@ c #A83938", - "f@ c #A3302E", - "g@ c #A02624", - "h@ c #9B1C1B", - "i@ c #971311", - "j@ c #930A09", - "k@ c #900300", - "l@ c #900505", - "m@ c #660007", - "n@ c #00000D", - "o@ c #200112", - "p@ c #597F88", - "q@ c #6E97FD", - "r@ c #384CFD", - "s@ c #394EFD", - "t@ c #2D3EFD", - "u@ c #151DFE", - "v@ c #1821FE", - "w@ c #3C52FD", - "x@ c #6388FC", - "y@ c #9CD6FB", - "z@ c #D0FFFA", - "A@ c #AEEEFB", - "B@ c #749FFF", - "C@ c #3F5DFF", - "D@ c #4165FF", - "E@ c #525AE3", - "F@ c #6153C4", - "G@ c #672D8D", - "H@ c #6C1B6A", - "I@ c #722164", - "J@ c #75225E", - "K@ c #731D57", - "L@ c #701653", - "M@ c #690E52", - "N@ c #5F0050", - "O@ c #562086", - "P@ c #11108D", - "Q@ c #2330BE", - "R@ c #344AE1", - "S@ c #4E6BFF", - "T@ c #4E6BFD", - "U@ c #597AFC", - "V@ c #6184FC", - "W@ c #7099FC", - "X@ c #8BBEFB", - "Y@ c #95CCFB", - "Z@ c #5B7CFC", - "`@ c #1C26FD", - " # c #121AFE", - ".# c #9ED7FB", - "+# c #81B4FF", - "@# c #6893FF", - "## c #6997FF", - "$# c #6695FF", - "%# c #6390FF", - "&# c #618DFF", - "*# c #608DFF", - "=# c #618EFF", - "-# c #6391FF", - ";# c #6898FF", - "># c #6B9AFF", - ",# c #5171ED", - "'# c #90C4FF", - ")# c #7EABFC", - "!# c #729CFC", - "~# c #6287FC", - "{# c #4761FD", - "]# c #070AFE", - "^# c #6084FC", - "/# c #9AD2FB", - "(# c #A2DDFB", - "_# c #8ABDFB", - ":# c #2B3AFD", - "<# c #A9E8FB", - "[# c #B9FCFA", - "}# c #BAFEFA", + " c None", + ". c #2C2C2C", + "+ c #3A3A3A", + "@ c #585857", + "# c #161616", + "$ c #000000", + "% c #363636", + "& c #333333", + "* c #B3B3B3", + "= c #B4B4B4", + "- c #949494", + "; c #565653", + "> c #141414", + ", c #080807", + "' c #585858", + ") c #878787", + "! c #9F9E9F", + "~ c #9F9F9E", + "{ c #8F8F90", + "] c #6B6B6B", + "^ c #101010", + "/ c #737373", + "( c #4C4C4C", + "_ c #B1B1B7", + ": c #9090C0", + "< c #A7A7B2", + "[ c #87878E", + "} c #4F4F52", + "| c #191919", + "1 c #656565", + "2 c #D1D1D2", + "3 c #D1D1D1", + "4 c #CECECE", + "5 c #CDCCCC", + "6 c #CCCCCC", + "7 c #CCCCCB", + "8 c #CDCECD", + "9 c #BDBDBD", + "0 c #424242", + "a c #373737", + "b c #0A0A0A", + "c c #241414", + "d c #0E0C0C", + "e c #929393", + "f c #383738", + "g c #9B9B9A", + "h c #A0A0AF", + "i c #2929E4", + "j c #2525E5", + "k c #3F3FD7", + "l c #5B5BC8", + "m c #535368", + "n c #686866", + "o c #C8C8C8", + "p c #C8C8C7", + "q c #C7C6C7", + "r c #C6C6C6", + "s c #C5C5C5", + "t c #C4C5C5", + "u c #C3C4C3", + "v c #C3C3C2", + "w c #BCBCBC", + "x c #595959", + "y c #A6A6A6", + "z c #969696", + "A c #0B0B0B", + "B c #0D0707", + "C c #894646", + "D c #1C1A1A", + "E c #525252", + "F c #6C6D6C", + "G c #A3A3A2", + "H c #A3A296", + "I c #8E8F98", + "J c #6F6EA5", + "K c #5354AF", + "L c #373753", + "M c #8D8D8B", + "N c #C5C5C4", + "O c #C2C2C2", + "P c #C1C1C1", + "Q c #C0C0C0", + "R c #C0BFBF", + "S c #BFBFBF", + "T c #BEBEBE", + "U c #B1B2B2", + "V c #404040", + "W c #ABAAAA", + "X c #797979", + "Y c #2A1212", + "Z c #662828", + "` c #3D403F", + " . c #B5B5B5", + ".. c #6B6A6B", + "+. c #4A4A4A", + "@. c #9A9A9A", + "#. c #909090", + "$. c #8B8B8A", + "%. c #898A86", + "&. c #84837F", + "*. c #3D3D3C", + "=. c #9E9E9E", + "-. c #BFBFBE", + ";. c #BDBEBD", + ">. c #BBBBBB", + ",. c #BABABA", + "'. c #B9B9B9", + "). c #B8B8B8", + "!. c #999999", + "~. c #BABAB9", + "{. c #ABABAB", + "]. c #292929", + "^. c #381212", + "/. c #4C1514", + "(. c #535656", + "_. c #717171", + ":. c #919090", + "<. c #818181", + "[. c #4E4E4E", + "}. c #4B4B4B", + "|. c #B1B1B1", + "1. c #B8B7B8", + "2. c #B6B6B6", + "3. c #B6B5B5", + "4. c #B4B5B4", + "5. c #B2B3B2", + "6. c #5C5D5C", + "7. c #AFAFAF", + "8. c #ADACAC", + "9. c #5B5B5B", + "0. c #410C0C", + "a. c #3E0707", + "b. c #525555", + "c. c #9C9C9C", + "d. c #2D2D2D", + "e. c #757575", + "f. c #474747", + "g. c #484848", + "h. c #9F9F9F", + "i. c #B3B3B4", + "j. c #B2B2B2", + "k. c #B0B0B0", + "l. c #ADAEAD", + "m. c #ADADAD", + "n. c #B0B1B0", + "o. c #1E1E1E", + "p. c #ACABAC", + "q. c #AAA9A9", + "r. c #A8A8A8", + "s. c #5D5D5D", + "t. c #290202", + "u. c #281010", + "v. c #272828", + "w. c #767777", + "x. c #505050", + "y. c #1F1F1F", + "z. c #5E5E5D", + "A. c #A4A5A5", + "B. c #B1B2B1", + "C. c #AEAEAE", + "D. c #AEADAD", + "E. c #ABACAC", + "F. c #AAAAAA", + "G. c #A9A8A8", + "H. c #ABABAC", + "I. c #7B7B7B", + "J. c #2B2B2B", + "K. c #A4A4A4", + "L. c #A6A5A6", + "M. c #888888", + "N. c #0E0E0E", + "O. c #101312", + "P. c #7E8080", + "Q. c #5E5E5E", + "R. c #242424", + "S. c #555555", + "T. c #7F7F7F", + "U. c #A4A3A4", + "V. c #B3B3B2", + "W. c #ACACAC", + "X. c #A9A9A9", + "Y. c #A8A7A7", + "Z. c #A7A6A7", + "`. c #A7A7A7", + " + c #A8A8A7", + ".+ c #A5A5A5", + "++ c #A2A2A2", + "@+ c #222122", + "#+ c #7E7E7E", + "$+ c #A3A3A3", + "%+ c #9B9B9B", + "&+ c #050505", + "*+ c #6E6E6E", + "=+ c #A7A7A6", + "-+ c #989898", + ";+ c #A5A4A4", + ">+ c #A7A7A8", + ",+ c #A5A6A7", + "'+ c #979A99", + ")+ c #818383", + "!+ c #757878", + "~+ c #757979", + "{+ c #878A8A", + "]+ c #A3A5A5", + "^+ c #828282", + "/+ c #A0A0A0", + "(+ c #232323", + "_+ c #939393", + ":+ c #A5A6A5", + "<+ c #A2A3A2", + "[+ c #A2A1A1", + "}+ c #A1A0A1", + "|+ c #939292", + "1+ c #636262", + "2+ c #554D4D", + "3+ c #634C4C", + "4+ c #755555", + "5+ c #936464", + "6+ c #9F6868", + "7+ c #9B6060", + "8+ c #804A4A", + "9+ c #5C3737", + "0+ c #1D1616", + "a+ c #A1A1A1", + "b+ c #010101", + "c+ c #151516", + "d+ c #707070", + "e+ c #9D9E9E", + "f+ c #8C8D8D", + "g+ c #8B8888", + "h+ c #726A6A", + "i+ c #6D5959", + "j+ c #866261", + "k+ c #C18B8B", + "l+ c #D79696", + "m+ c #D18C8C", + "n+ c #CB8180", + "o+ c #C57575", + "p+ c #BF6B6A", + "q+ c #BB6161", + "r+ c #B95958", + "s+ c #9C4544", + "t+ c #2E1212", + "u+ c #6F6C6C", + "v+ c #A0A1A1", + "w+ c #575757", + "x+ c #0C0C0C", + "y+ c #9C9D9D", + "z+ c #7A7272", + "A+ c #876F6F", + "B+ c #977070", + "C+ c #C28C8C", + "D+ c #D59595", + "E+ c #D08A8A", + "F+ c #C67D7D", + "G+ c #C07272", + "H+ c #BC6969", + "I+ c #B85F5F", + "J+ c #B35656", + "K+ c #B04C4C", + "L+ c #AB4243", + "M+ c #A63939", + "N+ c #591B1B", + "O+ c #6A2121", + "P+ c #542323", + "Q+ c #585A5A", + "R+ c #191515", + "S+ c #706262", + "T+ c #A58080", + "U+ c #B58383", + "V+ c #CE8F8F", + "W+ c #CD8989", + "X+ c #C17372", + "Y+ c #B45656", + "Z+ c #AF4C4C", + "`+ c #AB4242", + " @ c #A73A39", + ".@ c #A3302F", + "+@ c #9F2626", + "@@ c #8E1A1A", + "#@ c #2C0808", + "$@ c #91191A", + "%@ c #2F0200", + "&@ c #90C6FB", + "*@ c #8BBFFB", + "=@ c #94CBFC", + "-@ c #AFEFFB", + ";@ c #7DABA0", + ">@ c #3C2521", + ",@ c #C88484", + "'@ c #C57C7D", + ")@ c #C17273", + "!@ c #B86060", + "~@ c #AB4343", + "{@ c #A73939", + "]@ c #A32F2F", + "^@ c #9B1C1D", + "/@ c #961313", + "(@ c #96090A", + "_@ c #3C0202", + ":@ c #4E0202", + "<@ c #300000", + "[@ c #3E5378", + "}@ c #7EABF9", + "|@ c #84B5FC", + "1@ c #96CDFB", + "2@ c #B2F2FA", + "3@ c #C4FFFA", + "4@ c #2E3FFD", + "5@ c #3346FD", + "6@ c #2A3AFD", + "7@ c #161EFE", + "8@ c #1B25FD", + "9@ c #1F25B4", + "0@ c #7C6196", + "a@ c #AA6075", + "b@ c #AC5763", + "c@ c #AD5155", + "d@ c #AD4645", + "e@ c #A83938", + "f@ c #A3302E", + "g@ c #A02624", + "h@ c #9B1C1B", + "i@ c #971311", + "j@ c #930A09", + "k@ c #900300", + "l@ c #900505", + "m@ c #660007", + "n@ c #00000D", + "o@ c #200112", + "p@ c #597F88", + "q@ c #6E97FD", + "r@ c #384CFD", + "s@ c #394EFD", + "t@ c #2D3EFD", + "u@ c #151DFE", + "v@ c #1821FE", + "w@ c #3C52FD", + "x@ c #6388FC", + "y@ c #9CD6FB", + "z@ c #D0FFFA", + "A@ c #AEEEFB", + "B@ c #749FFF", + "C@ c #3F5DFF", + "D@ c #4165FF", + "E@ c #525AE3", + "F@ c #6153C4", + "G@ c #672D8D", + "H@ c #6C1B6A", + "I@ c #722164", + "J@ c #75225E", + "K@ c #731D57", + "L@ c #701653", + "M@ c #690E52", + "N@ c #5F0050", + "O@ c #562086", + "P@ c #11108D", + "Q@ c #2330BE", + "R@ c #344AE1", + "S@ c #4E6BFF", + "T@ c #4E6BFD", + "U@ c #597AFC", + "V@ c #6184FC", + "W@ c #7099FC", + "X@ c #8BBEFB", + "Y@ c #95CCFB", + "Z@ c #5B7CFC", + "`@ c #1C26FD", + " # c #121AFE", + ".# c #9ED7FB", + "+# c #81B4FF", + "@# c #6893FF", + "## c #6997FF", + "$# c #6695FF", + "%# c #6390FF", + "&# c #618DFF", + "*# c #608DFF", + "=# c #618EFF", + "-# c #6391FF", + ";# c #6898FF", + "># c #6B9AFF", + ",# c #5171ED", + "'# c #90C4FF", + ")# c #7EABFC", + "!# c #729CFC", + "~# c #6287FC", + "{# c #4761FD", + "]# c #070AFE", + "^# c #6084FC", + "/# c #9AD2FB", + "(# c #A2DDFB", + "_# c #8ABDFB", + ":# c #2B3AFD", + "<# c #A9E8FB", + "[# c #B9FCFA", + "}# c #BAFEFA", " ", " ", " ", diff --git a/src/Mod/Ship/shipCreateShip/TaskPanel.py b/src/Mod/Ship/shipCreateShip/TaskPanel.py index 7cb6c0eda8..2c1bec68c3 100644 --- a/src/Mod/Ship/shipCreateShip/TaskPanel.py +++ b/src/Mod/Ship/shipCreateShip/TaskPanel.py @@ -37,7 +37,7 @@ class TaskPanel: def accept(self): self.preview.clean() # Create new ship instance - obj = App.ActiveDocument.addObject("App::FeaturePython","Ship") + obj = App.ActiveDocument.addObject("Part::FeaturePython","Ship") ship = Instance.Ship(obj, self.faces) Instance.ViewProviderShip(obj.ViewObject) # Set main dimensions From cb0a24817418bcf26e5981e25dc1f653353a2d9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Sun, 8 Jan 2012 17:43:03 +0100 Subject: [PATCH 26/40] Revocated several projects generation for each module (autotools) --- src/Mod/Ship/Icons/Makefile.am | 30 -------------- src/Mod/Ship/Makefile.am | 48 +++++++++++++++++++++-- src/Mod/Ship/shipCreateShip/Makefile.am | 11 ------ src/Mod/Ship/shipOutlineDraw/Makefile.am | 12 ------ src/Mod/Ship/shipUtils/Makefile.am | 11 ------ src/Mod/Surfaces/Icons/Makefile.am | 22 ----------- src/Mod/Surfaces/Makefile.am | 46 ++++++++++++++++++++-- src/Mod/Surfaces/surfBorder/Makefile.am | 8 ---- src/Mod/Surfaces/surfConvert/Makefile.am | 11 ------ src/Mod/Surfaces/surfISOCurve/Makefile.am | 12 ------ src/Mod/Surfaces/surfSlice/Makefile.am | 12 ------ src/Mod/Surfaces/surfUtils/Makefile.am | 12 ------ 12 files changed, 88 insertions(+), 147 deletions(-) delete mode 100644 src/Mod/Ship/Icons/Makefile.am delete mode 100644 src/Mod/Ship/shipCreateShip/Makefile.am delete mode 100644 src/Mod/Ship/shipOutlineDraw/Makefile.am delete mode 100644 src/Mod/Ship/shipUtils/Makefile.am delete mode 100644 src/Mod/Surfaces/Icons/Makefile.am delete mode 100644 src/Mod/Surfaces/surfBorder/Makefile.am delete mode 100644 src/Mod/Surfaces/surfConvert/Makefile.am delete mode 100644 src/Mod/Surfaces/surfISOCurve/Makefile.am delete mode 100644 src/Mod/Surfaces/surfSlice/Makefile.am delete mode 100644 src/Mod/Surfaces/surfUtils/Makefile.am diff --git a/src/Mod/Ship/Icons/Makefile.am b/src/Mod/Ship/Icons/Makefile.am deleted file mode 100644 index 285943436e..0000000000 --- a/src/Mod/Ship/Icons/Makefile.am +++ /dev/null @@ -1,30 +0,0 @@ -# Change data dir from default $(datadir) to actual directory -datadir = $(prefix)/Mod/Ship/Icons -data_DATA = \ - AreaCurveIco.png \ - AreaCurveIco.xcf \ - AreaCurveIco.xpm \ - DataIco.png \ - DataIco.xcf \ - DataIco.xpm \ - DiscretizeIco.png \ - DiscretizeIco.xcf \ - DiscretizeIco.xpm \ - HydrostaticsIco.png \ - HydrostaticsIco.xcf \ - HydrostaticsIco.xpm \ - Ico.png \ - Ico.xcf \ - Ico.xpm \ - OutlineDrawIco.png \ - OutlineDrawIco.xcf \ - OutlineDrawIco.xpm \ - ReparametrizeIco.png \ - ReparametrizeIco.xcf \ - ReparametrizeIco.xpm \ - Ship.xcf \ - Ship.xpm - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt diff --git a/src/Mod/Ship/Makefile.am b/src/Mod/Ship/Makefile.am index 0b042d8542..333680262a 100644 --- a/src/Mod/Ship/Makefile.am +++ b/src/Mod/Ship/Makefile.am @@ -1,12 +1,54 @@ -SUBDIRS=Icons shipCreateShip shipOutlineDraw shipUtils - # Change data dir from default ($(prefix)/share) to actual dir datadir = $(prefix)/Mod/Ship -data_DATA = InitGui.py ShipGui.py Instance.py +data_DATA = \ + InitGui.py \ + ShipGui.py \ + Instance.py + +nobase_data_DATA = \ + Icons/AreaCurveIco.png \ + Icons/AreaCurveIco.xcf \ + Icons/AreaCurveIco.xpm \ + Icons/DataIco.png \ + Icons/DataIco.xcf \ + Icons/DataIco.xpm \ + Icons/DiscretizeIco.png \ + Icons/DiscretizeIco.xcf \ + Icons/DiscretizeIco.xpm \ + Icons/HydrostaticsIco.png \ + Icons/HydrostaticsIco.xcf \ + Icons/HydrostaticsIco.xpm \ + Icons/Ico.png \ + Icons/Ico.xcf \ + Icons/Ico.xpm \ + Icons/OutlineDrawIco.png \ + Icons/OutlineDrawIco.xcf \ + Icons/OutlineDrawIco.xpm \ + Icons/ReparametrizeIco.png \ + Icons/ReparametrizeIco.xcf \ + Icons/ReparametrizeIco.xpm \ + Icons/Ship.xcf \ + Icons/Ship.xpm \ + shipCreateShip/__init__.py \ + shipCreateShip/Preview.py \ + shipCreateShip/TaskPanel.py \ + shipCreateShip/TaskPanel.ui \ + shipOutlineDraw/__init__.py \ + shipOutlineDraw/Plot.py \ + shipOutlineDraw/Preview.py \ + shipOutlineDraw/TaskPanel.py \ + shipOutlineDraw/TaskPanel.ui \ + shipUtils/__init__.py \ + shipUtils/Math.py \ + shipUtils/Paths.py \ + shipUtils/Translator.py + +CLEANFILES = $(BUILT_SOURCES) EXTRA_DIST = \ $(data_DATA) \ + $(nobase_data_DATA) \ CMakeLists.txt \ README \ ship.dox diff --git a/src/Mod/Ship/shipCreateShip/Makefile.am b/src/Mod/Ship/shipCreateShip/Makefile.am deleted file mode 100644 index 7f9b7a022e..0000000000 --- a/src/Mod/Ship/shipCreateShip/Makefile.am +++ /dev/null @@ -1,11 +0,0 @@ -# Change data dir from default $(datadir) to actual directory -datadir = $(prefix)/Mod/Ship/shipCreateShip -data_DATA = \ - __init__.py \ - Preview.py \ - TaskPanel.py \ - TaskPanel.ui - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt diff --git a/src/Mod/Ship/shipOutlineDraw/Makefile.am b/src/Mod/Ship/shipOutlineDraw/Makefile.am deleted file mode 100644 index f7d5168df7..0000000000 --- a/src/Mod/Ship/shipOutlineDraw/Makefile.am +++ /dev/null @@ -1,12 +0,0 @@ -# Change data dir from default $(datadir) to actual directory -datadir = $(prefix)/Mod/Ship/shipOutlineDraw -data_DATA = \ - __init__.py \ - Plot.py \ - Preview.py \ - TaskPanel.py \ - TaskPanel.ui - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt diff --git a/src/Mod/Ship/shipUtils/Makefile.am b/src/Mod/Ship/shipUtils/Makefile.am deleted file mode 100644 index 50d893c8a2..0000000000 --- a/src/Mod/Ship/shipUtils/Makefile.am +++ /dev/null @@ -1,11 +0,0 @@ -# Change data dir from default $(datadir) to actual directory -datadir = $(prefix)/Mod/Ship/shipUtils -data_DATA = \ - __init__.py \ - Math.py \ - Paths.py \ - Translator.py - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt diff --git a/src/Mod/Surfaces/Icons/Makefile.am b/src/Mod/Surfaces/Icons/Makefile.am deleted file mode 100644 index d4400fedf9..0000000000 --- a/src/Mod/Surfaces/Icons/Makefile.am +++ /dev/null @@ -1,22 +0,0 @@ -# Change data dir from default $(datadir) to actual directory -datadir = $(prefix)/Mod/Surfaces/Icons -data_DATA = \ - BorderIco.png \ - BorderIco.xcf \ - BorderIco.xpm \ - ConvertIco.png \ - ConvertIco.xcf \ - ConvertTo4SidesIco.xpm \ - Ico.png \ - Ico.xcf \ - Ico.xpm \ - IsoCurveIco.png \ - IsoCurveIco.xcf \ - IsoCurveIco.xpm \ - SliceIco.png \ - SliceIco.xcf \ - SliceIco.xpm - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt diff --git a/src/Mod/Surfaces/Makefile.am b/src/Mod/Surfaces/Makefile.am index 03c16fc0d0..6557f97c06 100644 --- a/src/Mod/Surfaces/Makefile.am +++ b/src/Mod/Surfaces/Makefile.am @@ -1,12 +1,52 @@ -SUBDIRS=Icons surfBorder surfConvert surfISOCurve surfSlice surfUtils - # Change data dir from default ($(prefix)/share) to actual dir datadir = $(prefix)/Mod/Surfaces -data_DATA = InitGui.py SurfGui.py +data_DATA = InitGui.py \ + SurfGui.py + +nobase_data_DATA = \ + Icons/BorderIco.png \ + Icons/BorderIco.xcf \ + Icons/BorderIco.xpm \ + Icons/ConvertIco.png \ + Icons/ConvertIco.xcf \ + Icons/ConvertTo4SidesIco.xpm \ + Icons/Ico.png \ + Icons/Ico.xcf \ + Icons/Ico.xpm \ + Icons/IsoCurveIco.png \ + Icons/IsoCurveIco.xcf \ + Icons/IsoCurveIco.xpm \ + Icons/SliceIco.png \ + Icons/SliceIco.xcf \ + Icons/SliceIco.xpm \ + surfBorder/__init__.py \ + surfConvert/__init__.py \ + surfConvert/Preview.py \ + surfConvert/TaskPanel.py \ + surfConvert/TaskPanel.ui \ + surfISOCurve/__init__.py \ + surfISOCurve/PointTracker.py \ + surfISOCurve/Preview.py \ + surfISOCurve/TaskPanel.py \ + surfISOCurve/TaskPanel.ui \ + surfSlice/__init__.py \ + surfSlice/PointTracker.py \ + surfSlice/Preview.py \ + surfSlice/TaskPanel.py \ + surfSlice/TaskPanel.ui \ + surfUtils/Geometry.py \ + surfUtils/__init__.py \ + surfUtils/Math.py \ + surfUtils/Paths.py \ + surfUtils/Translator.py + +CLEANFILES = $(BUILT_SOURCES) EXTRA_DIST = \ $(data_DATA) \ + $(nobase_data_DATA) \ CMakeLists.txt \ README \ surfaces.dox + diff --git a/src/Mod/Surfaces/surfBorder/Makefile.am b/src/Mod/Surfaces/surfBorder/Makefile.am deleted file mode 100644 index 8962f936d7..0000000000 --- a/src/Mod/Surfaces/surfBorder/Makefile.am +++ /dev/null @@ -1,8 +0,0 @@ -# Change data dir from default $(datadir) to actual directory -datadir = $(prefix)/Mod/Surfaces/surfBorder -data_DATA = \ - __init__.py - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt diff --git a/src/Mod/Surfaces/surfConvert/Makefile.am b/src/Mod/Surfaces/surfConvert/Makefile.am deleted file mode 100644 index 0f840248dd..0000000000 --- a/src/Mod/Surfaces/surfConvert/Makefile.am +++ /dev/null @@ -1,11 +0,0 @@ -# Change data dir from default $(datadir) to actual directory -datadir = $(prefix)/Mod/Surfaces/surfConvert -data_DATA = \ - __init__.py \ - Preview.py \ - TaskPanel.py \ - TaskPanel.ui - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt diff --git a/src/Mod/Surfaces/surfISOCurve/Makefile.am b/src/Mod/Surfaces/surfISOCurve/Makefile.am deleted file mode 100644 index e6f9abe919..0000000000 --- a/src/Mod/Surfaces/surfISOCurve/Makefile.am +++ /dev/null @@ -1,12 +0,0 @@ -# Change data dir from default $(datadir) to actual directory -datadir = $(prefix)/Mod/Surfaces/surfISOCurve -data_DATA = \ - __init__.py \ - PointTracker.py \ - Preview.py \ - TaskPanel.py \ - TaskPanel.ui - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt diff --git a/src/Mod/Surfaces/surfSlice/Makefile.am b/src/Mod/Surfaces/surfSlice/Makefile.am deleted file mode 100644 index 13f6a44684..0000000000 --- a/src/Mod/Surfaces/surfSlice/Makefile.am +++ /dev/null @@ -1,12 +0,0 @@ -# Change data dir from default $(datadir) to actual directory -datadir = $(prefix)/Mod/Surfaces/surfSlice -data_DATA = \ - __init__.py \ - PointTracker.py \ - Preview.py \ - TaskPanel.py \ - TaskPanel.ui - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt diff --git a/src/Mod/Surfaces/surfUtils/Makefile.am b/src/Mod/Surfaces/surfUtils/Makefile.am deleted file mode 100644 index 283b8c1002..0000000000 --- a/src/Mod/Surfaces/surfUtils/Makefile.am +++ /dev/null @@ -1,12 +0,0 @@ -# Change data dir from default $(datadir) to actual directory -datadir = $(prefix)/Mod/Surfaces/surfUtils -data_DATA = \ - Geometry.py \ - __init__.py \ - Math.py \ - Paths.py \ - Translator.py - -EXTRA_DIST = \ - $(data_DATA) \ - CMakeLists.txt From 4296197e9b4b7cce934743e5936ffb96f1a9652d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Sun, 8 Jan 2012 17:43:45 +0100 Subject: [PATCH 27/40] Removed modules subdirectories from autogen --- configure.ac | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/configure.ac b/configure.ac index 5e9f8e95df..0484ab2744 100644 --- a/configure.ac +++ b/configure.ac @@ -1028,17 +1028,7 @@ src/Mod/Sandbox/Makefile src/Mod/Sandbox/App/Makefile src/Mod/Sandbox/Gui/Makefile src/Mod/Surfaces/Makefile -src/Mod/Surfaces/Icons/Makefile -src/Mod/Surfaces/surfBorder/Makefile -src/Mod/Surfaces/surfConvert/Makefile -src/Mod/Surfaces/surfISOCurve/Makefile -src/Mod/Surfaces/surfSlice/Makefile -src/Mod/Surfaces/surfUtils/Makefile src/Mod/Ship/Makefile -src/Mod/Ship/Icons/Makefile -src/Mod/Ship/shipCreateShip/Makefile -src/Mod/Ship/shipOutlineDraw/Makefile -src/Mod/Ship/shipUtils/Makefile src/Tools/Makefile src/Tools/_TEMPLATE_/Makefile src/Tools/_TEMPLATE_/App/Makefile From 42025cae8155bb6cbc10338987def2f8e9ae85ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 13 Jan 2012 14:49:03 +0100 Subject: [PATCH 28/40] Changed license from GPL >= 2 to LGPL >= 2 --- src/Mod/Ship/InitGui.py | 41 +++++++++--------- src/Mod/Ship/Instance.py | 41 +++++++++--------- src/Mod/Ship/ShipGui.py | 41 +++++++++--------- src/Mod/Ship/shipCreateShip/Preview.py | 41 +++++++++--------- src/Mod/Ship/shipCreateShip/TaskPanel.py | 41 +++++++++--------- src/Mod/Ship/shipCreateShip/__init__.py | 41 +++++++++--------- src/Mod/Ship/shipOutlineDraw/Plot.py | 41 +++++++++--------- src/Mod/Ship/shipOutlineDraw/Preview.py | 41 +++++++++--------- src/Mod/Ship/shipOutlineDraw/TaskPanel.py | 41 +++++++++--------- src/Mod/Ship/shipOutlineDraw/__init__.py | 41 +++++++++--------- src/Mod/Ship/shipUtils/Math.py | 41 +++++++++--------- src/Mod/Ship/shipUtils/Paths.py | 41 +++++++++--------- src/Mod/Ship/shipUtils/Translator.py | 41 +++++++++--------- src/Mod/Ship/shipUtils/__init__.py | 41 +++++++++--------- src/Mod/Surfaces/InitGui.py | 41 +++++++++--------- src/Mod/Surfaces/SurfGui.py | 41 +++++++++--------- src/Mod/Surfaces/surfBorder/__init__.py | 41 +++++++++--------- src/Mod/Surfaces/surfConvert/Preview.py | 41 +++++++++--------- src/Mod/Surfaces/surfConvert/TaskPanel.py | 42 ++++++++++--------- src/Mod/Surfaces/surfConvert/__init__.py | 41 +++++++++--------- src/Mod/Surfaces/surfISOCurve/PointTracker.py | 41 +++++++++--------- src/Mod/Surfaces/surfISOCurve/Preview.py | 41 +++++++++--------- src/Mod/Surfaces/surfISOCurve/TaskPanel.py | 41 +++++++++--------- src/Mod/Surfaces/surfISOCurve/__init__.py | 41 +++++++++--------- src/Mod/Surfaces/surfSlice/PointTracker.py | 41 +++++++++--------- src/Mod/Surfaces/surfSlice/Preview.py | 41 +++++++++--------- src/Mod/Surfaces/surfSlice/TaskPanel.py | 41 +++++++++--------- src/Mod/Surfaces/surfSlice/__init__.py | 41 +++++++++--------- src/Mod/Surfaces/surfUtils/Geometry.py | 41 +++++++++--------- src/Mod/Surfaces/surfUtils/Math.py | 41 +++++++++--------- src/Mod/Surfaces/surfUtils/Paths.py | 41 +++++++++--------- src/Mod/Surfaces/surfUtils/Translator.py | 41 +++++++++--------- src/Mod/Surfaces/surfUtils/__init__.py | 41 +++++++++--------- 33 files changed, 726 insertions(+), 628 deletions(-) diff --git a/src/Mod/Ship/InitGui.py b/src/Mod/Ship/InitGui.py index b85eca16f0..43d6baff8c 100644 --- a/src/Mod/Ship/InitGui.py +++ b/src/Mod/Ship/InitGui.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** class ShipWorkbench ( Workbench ): """ @brief Workbench of Ship design module. Here toolbars & icons are append. """ diff --git a/src/Mod/Ship/Instance.py b/src/Mod/Ship/Instance.py index c1b7f7b149..4f6e65df4f 100644 --- a/src/Mod/Ship/Instance.py +++ b/src/Mod/Ship/Instance.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** import time diff --git a/src/Mod/Ship/ShipGui.py b/src/Mod/Ship/ShipGui.py index adef90e26d..2d693f2f34 100644 --- a/src/Mod/Ship/ShipGui.py +++ b/src/Mod/Ship/ShipGui.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** from PyQt4 import QtCore, QtGui import FreeCAD, FreeCADGui, os diff --git a/src/Mod/Ship/shipCreateShip/Preview.py b/src/Mod/Ship/shipCreateShip/Preview.py index defe489443..c7048b0064 100644 --- a/src/Mod/Ship/shipCreateShip/Preview.py +++ b/src/Mod/Ship/shipCreateShip/Preview.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD,FreeCADGui diff --git a/src/Mod/Ship/shipCreateShip/TaskPanel.py b/src/Mod/Ship/shipCreateShip/TaskPanel.py index 2c1bec68c3..36b7b301b4 100644 --- a/src/Mod/Ship/shipCreateShip/TaskPanel.py +++ b/src/Mod/Ship/shipCreateShip/TaskPanel.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD as App diff --git a/src/Mod/Ship/shipCreateShip/__init__.py b/src/Mod/Ship/shipCreateShip/__init__.py index e7b35d03e8..5cfd85d172 100644 --- a/src/Mod/Ship/shipCreateShip/__init__.py +++ b/src/Mod/Ship/shipCreateShip/__init__.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD diff --git a/src/Mod/Ship/shipOutlineDraw/Plot.py b/src/Mod/Ship/shipOutlineDraw/Plot.py index db3714193d..a92352fb5e 100644 --- a/src/Mod/Ship/shipOutlineDraw/Plot.py +++ b/src/Mod/Ship/shipOutlineDraw/Plot.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD,FreeCADGui diff --git a/src/Mod/Ship/shipOutlineDraw/Preview.py b/src/Mod/Ship/shipOutlineDraw/Preview.py index 316cf8da29..f8c9aa6e2a 100644 --- a/src/Mod/Ship/shipOutlineDraw/Preview.py +++ b/src/Mod/Ship/shipOutlineDraw/Preview.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD,FreeCADGui diff --git a/src/Mod/Ship/shipOutlineDraw/TaskPanel.py b/src/Mod/Ship/shipOutlineDraw/TaskPanel.py index 07c8c18a0d..0bdbb52aa4 100644 --- a/src/Mod/Ship/shipOutlineDraw/TaskPanel.py +++ b/src/Mod/Ship/shipOutlineDraw/TaskPanel.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD as App diff --git a/src/Mod/Ship/shipOutlineDraw/__init__.py b/src/Mod/Ship/shipOutlineDraw/__init__.py index e7b35d03e8..5cfd85d172 100644 --- a/src/Mod/Ship/shipOutlineDraw/__init__.py +++ b/src/Mod/Ship/shipOutlineDraw/__init__.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD diff --git a/src/Mod/Ship/shipUtils/Math.py b/src/Mod/Ship/shipUtils/Math.py index 9063c9560e..c4e4ef518c 100644 --- a/src/Mod/Ship/shipUtils/Math.py +++ b/src/Mod/Ship/shipUtils/Math.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** def isAprox(a,b,tol=0.0001): """returns if a value is into (b-tol,b+tol) diff --git a/src/Mod/Ship/shipUtils/Paths.py b/src/Mod/Ship/shipUtils/Paths.py index a08c75a422..6b375119e3 100644 --- a/src/Mod/Ship/shipUtils/Paths.py +++ b/src/Mod/Ship/shipUtils/Paths.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** import FreeCAD, FreeCADGui, os diff --git a/src/Mod/Ship/shipUtils/Translator.py b/src/Mod/Ship/shipUtils/Translator.py index dac26928c8..24abe19dbb 100644 --- a/src/Mod/Ship/shipUtils/Translator.py +++ b/src/Mod/Ship/shipUtils/Translator.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** import FreeCAD, FreeCADGui, os from PyQt4 import QtCore,QtGui diff --git a/src/Mod/Ship/shipUtils/__init__.py b/src/Mod/Ship/shipUtils/__init__.py index e82fff67ce..ef55bbe2bf 100644 --- a/src/Mod/Ship/shipUtils/__init__.py +++ b/src/Mod/Ship/shipUtils/__init__.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # Empty file to treat the folder as a package diff --git a/src/Mod/Surfaces/InitGui.py b/src/Mod/Surfaces/InitGui.py index 1a614efaf7..815d2549da 100644 --- a/src/Mod/Surfaces/InitGui.py +++ b/src/Mod/Surfaces/InitGui.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** class SurfWorkbench ( Workbench ): """ @brief Workbench of Ship design module. Here toolbars & icons are append. """ diff --git a/src/Mod/Surfaces/SurfGui.py b/src/Mod/Surfaces/SurfGui.py index 9f1832bdd8..3b221ebd56 100644 --- a/src/Mod/Surfaces/SurfGui.py +++ b/src/Mod/Surfaces/SurfGui.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** from PyQt4 import QtCore, QtGui import FreeCAD, FreeCADGui, os diff --git a/src/Mod/Surfaces/surfBorder/__init__.py b/src/Mod/Surfaces/surfBorder/__init__.py index f3747dbe93..196273743b 100644 --- a/src/Mod/Surfaces/surfBorder/__init__.py +++ b/src/Mod/Surfaces/surfBorder/__init__.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD diff --git a/src/Mod/Surfaces/surfConvert/Preview.py b/src/Mod/Surfaces/surfConvert/Preview.py index 2ee908cb87..b19ed6cb62 100644 --- a/src/Mod/Surfaces/surfConvert/Preview.py +++ b/src/Mod/Surfaces/surfConvert/Preview.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD,FreeCADGui diff --git a/src/Mod/Surfaces/surfConvert/TaskPanel.py b/src/Mod/Surfaces/surfConvert/TaskPanel.py index 49ed1c6e10..e2755d8c4d 100644 --- a/src/Mod/Surfaces/surfConvert/TaskPanel.py +++ b/src/Mod/Surfaces/surfConvert/TaskPanel.py @@ -1,23 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# Alicia Lapique <> -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # Standart libraries import math diff --git a/src/Mod/Surfaces/surfConvert/__init__.py b/src/Mod/Surfaces/surfConvert/__init__.py index c104e04e8f..dab351bf14 100644 --- a/src/Mod/Surfaces/surfConvert/__init__.py +++ b/src/Mod/Surfaces/surfConvert/__init__.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD diff --git a/src/Mod/Surfaces/surfISOCurve/PointTracker.py b/src/Mod/Surfaces/surfISOCurve/PointTracker.py index 0796bab732..e12833b2f5 100644 --- a/src/Mod/Surfaces/surfISOCurve/PointTracker.py +++ b/src/Mod/Surfaces/surfISOCurve/PointTracker.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD as App diff --git a/src/Mod/Surfaces/surfISOCurve/Preview.py b/src/Mod/Surfaces/surfISOCurve/Preview.py index cd8562d4a5..a3af5a78b6 100644 --- a/src/Mod/Surfaces/surfISOCurve/Preview.py +++ b/src/Mod/Surfaces/surfISOCurve/Preview.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD,FreeCADGui diff --git a/src/Mod/Surfaces/surfISOCurve/TaskPanel.py b/src/Mod/Surfaces/surfISOCurve/TaskPanel.py index 2361d08242..34b6084b0f 100644 --- a/src/Mod/Surfaces/surfISOCurve/TaskPanel.py +++ b/src/Mod/Surfaces/surfISOCurve/TaskPanel.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD as App diff --git a/src/Mod/Surfaces/surfISOCurve/__init__.py b/src/Mod/Surfaces/surfISOCurve/__init__.py index c104e04e8f..dab351bf14 100644 --- a/src/Mod/Surfaces/surfISOCurve/__init__.py +++ b/src/Mod/Surfaces/surfISOCurve/__init__.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD diff --git a/src/Mod/Surfaces/surfSlice/PointTracker.py b/src/Mod/Surfaces/surfSlice/PointTracker.py index 863c47924e..434b5455a5 100644 --- a/src/Mod/Surfaces/surfSlice/PointTracker.py +++ b/src/Mod/Surfaces/surfSlice/PointTracker.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD as App diff --git a/src/Mod/Surfaces/surfSlice/Preview.py b/src/Mod/Surfaces/surfSlice/Preview.py index b0c1f1f8c2..fbf5b3dff1 100644 --- a/src/Mod/Surfaces/surfSlice/Preview.py +++ b/src/Mod/Surfaces/surfSlice/Preview.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD,FreeCADGui diff --git a/src/Mod/Surfaces/surfSlice/TaskPanel.py b/src/Mod/Surfaces/surfSlice/TaskPanel.py index 795787b564..84bfee0f58 100644 --- a/src/Mod/Surfaces/surfSlice/TaskPanel.py +++ b/src/Mod/Surfaces/surfSlice/TaskPanel.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD as App diff --git a/src/Mod/Surfaces/surfSlice/__init__.py b/src/Mod/Surfaces/surfSlice/__init__.py index c104e04e8f..dab351bf14 100644 --- a/src/Mod/Surfaces/surfSlice/__init__.py +++ b/src/Mod/Surfaces/surfSlice/__init__.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # FreeCAD modules import FreeCAD diff --git a/src/Mod/Surfaces/surfUtils/Geometry.py b/src/Mod/Surfaces/surfUtils/Geometry.py index d34844e1f3..b540b1be13 100644 --- a/src/Mod/Surfaces/surfUtils/Geometry.py +++ b/src/Mod/Surfaces/surfUtils/Geometry.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** import math # FreeCAD diff --git a/src/Mod/Surfaces/surfUtils/Math.py b/src/Mod/Surfaces/surfUtils/Math.py index 9063c9560e..c4e4ef518c 100644 --- a/src/Mod/Surfaces/surfUtils/Math.py +++ b/src/Mod/Surfaces/surfUtils/Math.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** def isAprox(a,b,tol=0.0001): """returns if a value is into (b-tol,b+tol) diff --git a/src/Mod/Surfaces/surfUtils/Paths.py b/src/Mod/Surfaces/surfUtils/Paths.py index fc9f8a1938..75bf36ce5e 100644 --- a/src/Mod/Surfaces/surfUtils/Paths.py +++ b/src/Mod/Surfaces/surfUtils/Paths.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** import FreeCAD, FreeCADGui, os diff --git a/src/Mod/Surfaces/surfUtils/Translator.py b/src/Mod/Surfaces/surfUtils/Translator.py index 8d08d7fe4a..3b785ef6db 100644 --- a/src/Mod/Surfaces/surfUtils/Translator.py +++ b/src/Mod/Surfaces/surfUtils/Translator.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** import FreeCAD, FreeCADGui, os from PyQt4 import QtCore,QtGui diff --git a/src/Mod/Surfaces/surfUtils/__init__.py b/src/Mod/Surfaces/surfUtils/__init__.py index e82fff67ce..ef55bbe2bf 100644 --- a/src/Mod/Surfaces/surfUtils/__init__.py +++ b/src/Mod/Surfaces/surfUtils/__init__.py @@ -1,22 +1,25 @@ -# ##### BEGIN GPL LICENSE BLOCK ##### -# -# Author: Jose Luis Cercos Pita -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation, -# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# -# ##### END GPL LICENSE BLOCK ##### +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercós Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** # Empty file to treat the folder as a package From dde434912a07480b8fa1927ed6df4fc7e6f0fe1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 13 Jan 2012 15:40:06 +0100 Subject: [PATCH 29/40] Fixed bad formatted author name --- src/Mod/Ship/InitGui.py | 6 +++--- src/Mod/Ship/Instance.py | 2 +- src/Mod/Ship/ShipGui.py | 15 ++++++++++++++- src/Mod/Ship/shipCreateShip/Preview.py | 2 +- src/Mod/Ship/shipCreateShip/TaskPanel.py | 2 +- src/Mod/Ship/shipCreateShip/__init__.py | 2 +- src/Mod/Ship/shipOutlineDraw/Plot.py | 2 +- src/Mod/Ship/shipOutlineDraw/Preview.py | 2 +- src/Mod/Ship/shipOutlineDraw/TaskPanel.py | 2 +- src/Mod/Ship/shipOutlineDraw/__init__.py | 2 +- src/Mod/Ship/shipUtils/Math.py | 2 +- src/Mod/Ship/shipUtils/Paths.py | 2 +- src/Mod/Ship/shipUtils/Translator.py | 2 +- src/Mod/Ship/shipUtils/__init__.py | 2 +- src/Mod/Surfaces/InitGui.py | 2 +- src/Mod/Surfaces/SurfGui.py | 2 +- src/Mod/Surfaces/surfBorder/__init__.py | 2 +- src/Mod/Surfaces/surfConvert/Preview.py | 2 +- src/Mod/Surfaces/surfConvert/TaskPanel.py | 2 +- src/Mod/Surfaces/surfConvert/__init__.py | 2 +- src/Mod/Surfaces/surfISOCurve/PointTracker.py | 2 +- src/Mod/Surfaces/surfISOCurve/Preview.py | 2 +- src/Mod/Surfaces/surfISOCurve/TaskPanel.py | 2 +- src/Mod/Surfaces/surfISOCurve/__init__.py | 2 +- src/Mod/Surfaces/surfSlice/PointTracker.py | 2 +- src/Mod/Surfaces/surfSlice/Preview.py | 2 +- src/Mod/Surfaces/surfSlice/TaskPanel.py | 2 +- src/Mod/Surfaces/surfSlice/__init__.py | 2 +- src/Mod/Surfaces/surfUtils/Geometry.py | 2 +- src/Mod/Surfaces/surfUtils/Math.py | 2 +- src/Mod/Surfaces/surfUtils/Paths.py | 2 +- src/Mod/Surfaces/surfUtils/Translator.py | 2 +- src/Mod/Surfaces/surfUtils/__init__.py | 2 +- 33 files changed, 48 insertions(+), 35 deletions(-) diff --git a/src/Mod/Ship/InitGui.py b/src/Mod/Ship/InitGui.py index 43d6baff8c..01d08f55cd 100644 --- a/src/Mod/Ship/InitGui.py +++ b/src/Mod/Ship/InitGui.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * @@ -32,11 +32,11 @@ class ShipWorkbench ( Workbench ): def Initialize(self): # ToolBar - list = ["Ship_CreateShip", "Ship_OutlineDraw"] + list = ["Ship_CreateShip", "Ship_OutlineDraw", "Ship_AreasCurve"] self.appendToolbar("Ship design",list) # Menu - list = ["Ship_CreateShip", "Ship_OutlineDraw"] + list = ["Ship_CreateShip", "Ship_OutlineDraw", "Ship_AreasCurve"] self.appendMenu("Ship design",list) Gui.addWorkbench(ShipWorkbench()) diff --git a/src/Mod/Ship/Instance.py b/src/Mod/Ship/Instance.py index 4f6e65df4f..00d83a5293 100644 --- a/src/Mod/Ship/Instance.py +++ b/src/Mod/Ship/Instance.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Ship/ShipGui.py b/src/Mod/Ship/ShipGui.py index 2d693f2f34..1ebeb92873 100644 --- a/src/Mod/Ship/ShipGui.py +++ b/src/Mod/Ship/ShipGui.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * @@ -47,6 +47,19 @@ class OutlineDraw: MenuText = str(Translator.translate('Outline draw')) ToolTip = str(Translator.translate('Plot ship outline draw')) return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} + +class OutlineDraw: + def Activated(self): + import shipAreasCurve + shipAreasCurve.load() + + def GetResources(self): + from shipUtils import Paths, Translator + IconPath = Paths.iconsPath() + "/AreaCurveIco.png" + MenuText = str(Translator.translate('Areas curve')) + ToolTip = str(Translator.translate('Plot transversal areas curve')) + return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} FreeCADGui.addCommand('Ship_CreateShip', CreateShip()) FreeCADGui.addCommand('Ship_OutlineDraw', OutlineDraw()) +FreeCADGui.addCommand('Ship_AreasCurve', AreasCurve()) diff --git a/src/Mod/Ship/shipCreateShip/Preview.py b/src/Mod/Ship/shipCreateShip/Preview.py index c7048b0064..b4d9e39b9a 100644 --- a/src/Mod/Ship/shipCreateShip/Preview.py +++ b/src/Mod/Ship/shipCreateShip/Preview.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Ship/shipCreateShip/TaskPanel.py b/src/Mod/Ship/shipCreateShip/TaskPanel.py index 36b7b301b4..bee6c69648 100644 --- a/src/Mod/Ship/shipCreateShip/TaskPanel.py +++ b/src/Mod/Ship/shipCreateShip/TaskPanel.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Ship/shipCreateShip/__init__.py b/src/Mod/Ship/shipCreateShip/__init__.py index 5cfd85d172..cbfb57d75d 100644 --- a/src/Mod/Ship/shipCreateShip/__init__.py +++ b/src/Mod/Ship/shipCreateShip/__init__.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Ship/shipOutlineDraw/Plot.py b/src/Mod/Ship/shipOutlineDraw/Plot.py index a92352fb5e..155b6b0b62 100644 --- a/src/Mod/Ship/shipOutlineDraw/Plot.py +++ b/src/Mod/Ship/shipOutlineDraw/Plot.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Ship/shipOutlineDraw/Preview.py b/src/Mod/Ship/shipOutlineDraw/Preview.py index f8c9aa6e2a..cf615db05e 100644 --- a/src/Mod/Ship/shipOutlineDraw/Preview.py +++ b/src/Mod/Ship/shipOutlineDraw/Preview.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Ship/shipOutlineDraw/TaskPanel.py b/src/Mod/Ship/shipOutlineDraw/TaskPanel.py index 0bdbb52aa4..a745263c63 100644 --- a/src/Mod/Ship/shipOutlineDraw/TaskPanel.py +++ b/src/Mod/Ship/shipOutlineDraw/TaskPanel.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Ship/shipOutlineDraw/__init__.py b/src/Mod/Ship/shipOutlineDraw/__init__.py index 5cfd85d172..cbfb57d75d 100644 --- a/src/Mod/Ship/shipOutlineDraw/__init__.py +++ b/src/Mod/Ship/shipOutlineDraw/__init__.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Ship/shipUtils/Math.py b/src/Mod/Ship/shipUtils/Math.py index c4e4ef518c..f8c583bef6 100644 --- a/src/Mod/Ship/shipUtils/Math.py +++ b/src/Mod/Ship/shipUtils/Math.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Ship/shipUtils/Paths.py b/src/Mod/Ship/shipUtils/Paths.py index 6b375119e3..0ea1168ea0 100644 --- a/src/Mod/Ship/shipUtils/Paths.py +++ b/src/Mod/Ship/shipUtils/Paths.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Ship/shipUtils/Translator.py b/src/Mod/Ship/shipUtils/Translator.py index 24abe19dbb..1fe7f61e8d 100644 --- a/src/Mod/Ship/shipUtils/Translator.py +++ b/src/Mod/Ship/shipUtils/Translator.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Ship/shipUtils/__init__.py b/src/Mod/Ship/shipUtils/__init__.py index ef55bbe2bf..00b200f140 100644 --- a/src/Mod/Ship/shipUtils/__init__.py +++ b/src/Mod/Ship/shipUtils/__init__.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/InitGui.py b/src/Mod/Surfaces/InitGui.py index 815d2549da..299866b7cd 100644 --- a/src/Mod/Surfaces/InitGui.py +++ b/src/Mod/Surfaces/InitGui.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/SurfGui.py b/src/Mod/Surfaces/SurfGui.py index 3b221ebd56..615d90e222 100644 --- a/src/Mod/Surfaces/SurfGui.py +++ b/src/Mod/Surfaces/SurfGui.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfBorder/__init__.py b/src/Mod/Surfaces/surfBorder/__init__.py index 196273743b..78c0107839 100644 --- a/src/Mod/Surfaces/surfBorder/__init__.py +++ b/src/Mod/Surfaces/surfBorder/__init__.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfConvert/Preview.py b/src/Mod/Surfaces/surfConvert/Preview.py index b19ed6cb62..faf8c7f64f 100644 --- a/src/Mod/Surfaces/surfConvert/Preview.py +++ b/src/Mod/Surfaces/surfConvert/Preview.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfConvert/TaskPanel.py b/src/Mod/Surfaces/surfConvert/TaskPanel.py index e2755d8c4d..86e922a2fb 100644 --- a/src/Mod/Surfaces/surfConvert/TaskPanel.py +++ b/src/Mod/Surfaces/surfConvert/TaskPanel.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfConvert/__init__.py b/src/Mod/Surfaces/surfConvert/__init__.py index dab351bf14..7990a70ea1 100644 --- a/src/Mod/Surfaces/surfConvert/__init__.py +++ b/src/Mod/Surfaces/surfConvert/__init__.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfISOCurve/PointTracker.py b/src/Mod/Surfaces/surfISOCurve/PointTracker.py index e12833b2f5..44abf85a44 100644 --- a/src/Mod/Surfaces/surfISOCurve/PointTracker.py +++ b/src/Mod/Surfaces/surfISOCurve/PointTracker.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfISOCurve/Preview.py b/src/Mod/Surfaces/surfISOCurve/Preview.py index a3af5a78b6..2df6a982a7 100644 --- a/src/Mod/Surfaces/surfISOCurve/Preview.py +++ b/src/Mod/Surfaces/surfISOCurve/Preview.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfISOCurve/TaskPanel.py b/src/Mod/Surfaces/surfISOCurve/TaskPanel.py index 34b6084b0f..72dba46a02 100644 --- a/src/Mod/Surfaces/surfISOCurve/TaskPanel.py +++ b/src/Mod/Surfaces/surfISOCurve/TaskPanel.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfISOCurve/__init__.py b/src/Mod/Surfaces/surfISOCurve/__init__.py index dab351bf14..7990a70ea1 100644 --- a/src/Mod/Surfaces/surfISOCurve/__init__.py +++ b/src/Mod/Surfaces/surfISOCurve/__init__.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfSlice/PointTracker.py b/src/Mod/Surfaces/surfSlice/PointTracker.py index 434b5455a5..6eb9d79251 100644 --- a/src/Mod/Surfaces/surfSlice/PointTracker.py +++ b/src/Mod/Surfaces/surfSlice/PointTracker.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfSlice/Preview.py b/src/Mod/Surfaces/surfSlice/Preview.py index fbf5b3dff1..4191a6c52d 100644 --- a/src/Mod/Surfaces/surfSlice/Preview.py +++ b/src/Mod/Surfaces/surfSlice/Preview.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfSlice/TaskPanel.py b/src/Mod/Surfaces/surfSlice/TaskPanel.py index 84bfee0f58..bdaa7c7692 100644 --- a/src/Mod/Surfaces/surfSlice/TaskPanel.py +++ b/src/Mod/Surfaces/surfSlice/TaskPanel.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfSlice/__init__.py b/src/Mod/Surfaces/surfSlice/__init__.py index dab351bf14..7990a70ea1 100644 --- a/src/Mod/Surfaces/surfSlice/__init__.py +++ b/src/Mod/Surfaces/surfSlice/__init__.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfUtils/Geometry.py b/src/Mod/Surfaces/surfUtils/Geometry.py index b540b1be13..687fe3cdd2 100644 --- a/src/Mod/Surfaces/surfUtils/Geometry.py +++ b/src/Mod/Surfaces/surfUtils/Geometry.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfUtils/Math.py b/src/Mod/Surfaces/surfUtils/Math.py index c4e4ef518c..f8c583bef6 100644 --- a/src/Mod/Surfaces/surfUtils/Math.py +++ b/src/Mod/Surfaces/surfUtils/Math.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfUtils/Paths.py b/src/Mod/Surfaces/surfUtils/Paths.py index 75bf36ce5e..bd236d9e5a 100644 --- a/src/Mod/Surfaces/surfUtils/Paths.py +++ b/src/Mod/Surfaces/surfUtils/Paths.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfUtils/Translator.py b/src/Mod/Surfaces/surfUtils/Translator.py index 3b785ef6db..917c02377f 100644 --- a/src/Mod/Surfaces/surfUtils/Translator.py +++ b/src/Mod/Surfaces/surfUtils/Translator.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * diff --git a/src/Mod/Surfaces/surfUtils/__init__.py b/src/Mod/Surfaces/surfUtils/__init__.py index ef55bbe2bf..00b200f140 100644 --- a/src/Mod/Surfaces/surfUtils/__init__.py +++ b/src/Mod/Surfaces/surfUtils/__init__.py @@ -1,7 +1,7 @@ #*************************************************************************** #* * #* Copyright (c) 2011, 2012 * -#* Jose Luis Cercós Pita * +#* Jose Luis Cercos Pita * #* * #* This program is free software; you can redistribute it and/or modify * #* it under the terms of the GNU Lesser General Public License (LGPL) * From 9bab1220284cc66e29c3100aa769b52b136c0c28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 13 Jan 2012 16:02:58 +0100 Subject: [PATCH 30/40] Started areas curve tool redevelope --- src/Mod/Ship/CMakeLists.txt | 16 +- src/Mod/Ship/Makefile.am | 4 + src/Mod/Ship/ShipGui.py | 2 +- src/Mod/Ship/shipAreasCurve/Preview.py | 130 +++++++++++++++ src/Mod/Ship/shipAreasCurve/TaskPanel.py | 193 +++++++++++++++++++++++ src/Mod/Ship/shipAreasCurve/TaskPanel.ui | 112 +++++++++++++ src/Mod/Ship/shipAreasCurve/__init__.py | 36 +++++ 7 files changed, 491 insertions(+), 2 deletions(-) create mode 100644 src/Mod/Ship/shipAreasCurve/Preview.py create mode 100644 src/Mod/Ship/shipAreasCurve/TaskPanel.py create mode 100644 src/Mod/Ship/shipAreasCurve/TaskPanel.ui create mode 100644 src/Mod/Ship/shipAreasCurve/__init__.py diff --git a/src/Mod/Ship/CMakeLists.txt b/src/Mod/Ship/CMakeLists.txt index e446440efb..783f641b08 100644 --- a/src/Mod/Ship/CMakeLists.txt +++ b/src/Mod/Ship/CMakeLists.txt @@ -49,6 +49,14 @@ SET(ShipOutlineDraw_SRCS ) SOURCE_GROUP("shipoutlinedraw" FILES ${ShipOutlineDraw_SRCS}) +SET(ShipAreasCurve_SRCS + shipAreasCurve/__init__.py + shipAreasCurve/Preview.py + shipAreasCurve/TaskPanel.py + shipAreasCurve/TaskPanel.ui +) +SOURCE_GROUP("shipareascurve" FILES ${ShipAreasCurve_SRCS}) + SET(ShipUtils_SRCS shipUtils/__init__.py shipUtils/Math.py @@ -57,7 +65,7 @@ SET(ShipUtils_SRCS ) SOURCE_GROUP("shiputils" FILES ${ShipUtils_SRCS}) -SET(all_files ${ShipMain_SRCS} ${ShipIcons_SRCS} ${ShipCreateShip_SRCS} ${ShipOutlineDraw_SRCS} ${ShipUtils_SRCS}) +SET(all_files ${ShipMain_SRCS} ${ShipIcons_SRCS} ${ShipCreateShip_SRCS} ${ShipOutlineDraw_SRCS} ${ShipAreasCurve_SRCS} ${ShipUtils_SRCS}) ADD_CUSTOM_TARGET(Ship ALL SOURCES ${all_files} @@ -83,6 +91,12 @@ INSTALL( DESTINATION Mod/Ship/shipOutlineDraw ) +INSTALL( + FILES + ${ShipAreasCurve_SRCS} + DESTINATION + Mod/Ship/shipAreasCurve +) INSTALL( FILES ${ShipUtils_SRCS} diff --git a/src/Mod/Ship/Makefile.am b/src/Mod/Ship/Makefile.am index 333680262a..4cba953c0d 100644 --- a/src/Mod/Ship/Makefile.am +++ b/src/Mod/Ship/Makefile.am @@ -39,6 +39,10 @@ nobase_data_DATA = \ shipOutlineDraw/Preview.py \ shipOutlineDraw/TaskPanel.py \ shipOutlineDraw/TaskPanel.ui \ + shipAreasCurve/__init__.py \ + shipAreasCurve/Preview.py \ + shipAreasCurve/TaskPanel.py \ + shipAreasCurve/TaskPanel.ui \ shipUtils/__init__.py \ shipUtils/Math.py \ shipUtils/Paths.py \ diff --git a/src/Mod/Ship/ShipGui.py b/src/Mod/Ship/ShipGui.py index 1ebeb92873..2059565bfe 100644 --- a/src/Mod/Ship/ShipGui.py +++ b/src/Mod/Ship/ShipGui.py @@ -48,7 +48,7 @@ class OutlineDraw: ToolTip = str(Translator.translate('Plot ship outline draw')) return {'Pixmap' : IconPath, 'MenuText': MenuText, 'ToolTip': ToolTip} -class OutlineDraw: +class AreasCurve: def Activated(self): import shipAreasCurve shipAreasCurve.load() diff --git a/src/Mod/Ship/shipAreasCurve/Preview.py b/src/Mod/Ship/shipAreasCurve/Preview.py new file mode 100644 index 0000000000..b4d9e39b9a --- /dev/null +++ b/src/Mod/Ship/shipAreasCurve/Preview.py @@ -0,0 +1,130 @@ +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercos Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** + +# FreeCAD modules +import FreeCAD,FreeCADGui +from FreeCAD import Base +from FreeCAD import Part +# FreeCADShip modules +from shipUtils import Paths, Translator + +class Preview(object): + def __init__(self): + """ Constructor. + """ + self.baseLine = None + self.baseLineLabel = None + self.reinit() + + def reinit(self): + """ Reinitializate drawer. + """ + self.clean() + + def update(self, L, B, T): + """ Update the 3D view printing annotations. + @param L Ship length. + @param B Ship beam. + @param T Ship draft. + """ + # Destroy all previous entities + self.clean() + # Draw base line + xStart = -0.6*L; + xEnd = 0.6*L; + baseLine = Part.makeLine((xStart,0,0),(xEnd,0,0)) + Part.show(baseLine) + objs = FreeCAD.ActiveDocument.Objects + self.baseLine = objs[len(objs)-1] + self.baseLine.Label = 'BaseLine' + self.baseLineLabel = DrawText('BaseLineText', str(Translator.translate('Base line')), Base.Vector(xEnd,0,0)) + # Draw free surface + fsLine = Part.makeLine((xStart,0,T),(xEnd,0,T)) + Part.show(fsLine) + objs = FreeCAD.ActiveDocument.Objects + self.fsLine = objs[len(objs)-1] + self.fsLine.Label = 'FreeSurface' + self.fsLineLabel = DrawText('FSText', str(Translator.translate('Free surface')), Base.Vector(xEnd,0,T)) + # Draw forward perpendicular + zStart = -0.1*T + zEnd = 1.1*T + fpLine = Part.makeLine((0.5*L,0,zStart),(0.5*L,0,zEnd)) + Part.show(fpLine) + objs = FreeCAD.ActiveDocument.Objects + self.fpLine = objs[len(objs)-1] + self.fpLine.Label = 'ForwardPerpendicular' + self.fpLineLabel = DrawText('FPText', str(Translator.translate('Forward perpendicular')), Base.Vector(0.5*L,0,zEnd)) + # Draw after perpendicular + apLine = Part.makeLine((-0.5*L,0,zStart),(-0.5*L,0,zEnd)) + Part.show(apLine) + objs = FreeCAD.ActiveDocument.Objects + self.apLine = objs[len(objs)-1] + self.apLine.Label = 'AfterPerpendicular' + self.apLineLabel = DrawText('APText', str(Translator.translate('After perpendicular')), Base.Vector(-0.5*L,0,zEnd)) + # Draw amin frame + amLine = Part.makeLine((0,-0.5*B,zStart),(0,-0.5*B,zEnd)) + Part.show(amLine) + objs = FreeCAD.ActiveDocument.Objects + self.amLine = objs[len(objs)-1] + self.amLine.Label = 'AminFrame' + self.amLineLabel = DrawText('AMText', str(Translator.translate('Amin frame')), Base.Vector(0,-0.5*B,zEnd)) + + def clean(self): + """ Erase all annotations from screen. + """ + if not self.baseLine: + return + FreeCAD.ActiveDocument.removeObject(self.baseLine.Name) + FreeCAD.ActiveDocument.removeObject(self.baseLineLabel.Name) + FreeCAD.ActiveDocument.removeObject(self.fsLine.Name) + FreeCAD.ActiveDocument.removeObject(self.fsLineLabel.Name) + FreeCAD.ActiveDocument.removeObject(self.fpLine.Name) + FreeCAD.ActiveDocument.removeObject(self.fpLineLabel.Name) + FreeCAD.ActiveDocument.removeObject(self.apLine.Name) + FreeCAD.ActiveDocument.removeObject(self.apLineLabel.Name) + FreeCAD.ActiveDocument.removeObject(self.amLine.Name) + FreeCAD.ActiveDocument.removeObject(self.amLineLabel.Name) + +def DrawText(name, string, position, displayMode="Screen", angle=0.0, justification="Left", colour=(0.00,0.00,0.00), size=12): + """ Draws a text in a desired position. + @param name Name of the object + @param string Text to draw (recommended format u'') + @param position Point to draw the text + @param angle Counter clockwise rotation of text + @param justification Alignement of the text ("Left", "Right" or "Center") + @param colour Colour of the text + @param size Font size + @return FreeCAD annotation object + """ + # Create the object + text = FreeCAD.ActiveDocument.addObject("App::Annotation",name) + # Set the text + text.LabelText = [string, u''] + # Set the options + text.Position = position + FreeCADGui.ActiveDocument.getObject(text.Name).Rotation = angle + FreeCADGui.ActiveDocument.getObject(text.Name).Justification = justification + FreeCADGui.ActiveDocument.getObject(text.Name).FontSize = size + FreeCADGui.ActiveDocument.getObject(text.Name).TextColor = colour + FreeCADGui.ActiveDocument.getObject(text.Name).DisplayMode = displayMode + return FreeCAD.ActiveDocument.getObject(text.Name) diff --git a/src/Mod/Ship/shipAreasCurve/TaskPanel.py b/src/Mod/Ship/shipAreasCurve/TaskPanel.py new file mode 100644 index 0000000000..09433b90cd --- /dev/null +++ b/src/Mod/Ship/shipAreasCurve/TaskPanel.py @@ -0,0 +1,193 @@ +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercos Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** + +# FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui +# Qt library +from PyQt4 import QtGui,QtCore +# Module +import Preview +import Instance +from shipUtils import Paths, Translator +from surfUtils import Geometry + +class TaskPanel: + def __init__(self): + self.ui = Paths.modulePath() + "/shipAreasCurve/TaskPanel.ui" + self.preview = Preview.Preview() + self.ship = None + + def accept(self): + if not self.ship: + return False + self.save() + self.preview.clean() + return True + + def reject(self): + self.preview.clean() + return True + + def clicked(self, index): + pass + + def open(self): + pass + + def needsFullSpace(self): + return True + + def isAllowedAlterSelection(self): + return False + + def isAllowedAlterView(self): + return True + + def isAllowedAlterDocument(self): + return False + + def helpRequested(self): + pass + + def setupUi(self): + mw = self.getMainWindow() + form = mw.findChild(QtGui.QWidget, "TaskPanel") + form.draft = form.findChild(QtGui.QDoubleSpinBox, "Draft") + form.trim = form.findChild(QtGui.QDoubleSpinBox, "Trim") + self.form = form + # Initial values + if self.initValues(): + return True + self.retranslateUi() + # Connect Signals and Slots + QtCore.QObject.connect(form.draft, QtCore.SIGNAL("valueChanged(double)"), self.onData) + QtCore.QObject.connect(form.trim, QtCore.SIGNAL("valueChanged(double)"), self.onData) + QtCore.QObject.connect(form.findChild(QtGui.QPushButton, "UpdateButton"),QtCore.SIGNAL("pressed()"),self.onUpdate) + + def getMainWindow(self): + "returns the main window" + # using QtGui.qApp.activeWindow() isn't very reliable because if another + # widget than the mainwindow is active (e.g. a dialog) the wrong widget is + # returned + toplevel = QtGui.qApp.topLevelWidgets() + for i in toplevel: + if i.metaObject().className() == "Gui::MainWindow": + return i + raise Exception("No main window found") + + def initValues(self): + """ Set initial values for fields + """ + # Get objects + selObjs = Geometry.getSelectedObjs() + if not selObjs: + msg = Translator.translate("Ship instance must be selected (any object selected)\n") + App.Console.PrintError(msg) + return True + for i in range(0,len(selObjs)): + obj = selObjs[i] + # Test if is a ship instance + props = obj.PropertiesList + try: + props.index("IsShip") + except ValueError: + continue + if obj.IsShip: + # Test if another ship already selected + if self.ship: + msg = Translator.translate("More than one ship selected (extra ship will be neglected)\n") + App.Console.PrintWarning(msg) + break + self.ship = obj + # Test if any valid ship was selected + if not self.ship: + msg = Translator.translate("Ship instance must be selected (any valid ship found at selected objects)\n") + App.Console.PrintError(msg) + return True + # Get bounds + bbox = self.ship.Shape.BoundBox + self.form.draft.setMaximum(bbox.ZMax) + self.form.draft.setMinimum(bbox.ZMin) + self.form.draft.setValue(self.ship.Draft) + # Try to use saved values + props = self.ship.PropertiesList + flag = True + try: + props.index("AreaCurveDraft") + except ValueError: + flag = False + if flag: + self.form.draft.setValue(self.ship.AreaCurveDraft) + flag = True + try: + props.index("AreaCurveTrim") + except ValueError: + flag = False + if flag: + self.form.trim.setValue(self.ship.AreaCurveTrim) + msg = Translator.translate("Ready to work\n") + App.Console.PrintMessage(msg) + return False + + def retranslateUi(self): + """ Set user interface locale strings. + """ + self.form.setWindowTitle(Translator.translate("Plot transversal areas curve")) + self.form.findChild(QtGui.QLabel, "DraftLabel").setText(Translator.translate("Draft")) + self.form.findChild(QtGui.QLabel, "TrimLabel").setText(Translator.translate("Trim")) + self.form.findChild(QtGui.QPushButton, "UpdateButton").setText(Translator.translate("Update Data")) + + def onData(self, value): + """ Method called when input data is changed. + @param value Changed value. + """ + pass + + def onUpdate(self): + """ Method called when update data request. + """ + pass + + def save(self): + """ Saves data into ship instance. + """ + props = self.ship.PropertiesList + try: + props.index("AreaCurveDraft") + except ValueError: + self.ship.addProperty("App::PropertyFloat","AreaCurveDraft","Ship", str(Translator.translate("Areas curve draft selected [m]"))) + self.ship.AreaCurveDraft = self.form.draft.value() + try: + props.index("AreaCurveTrim") + except ValueError: + self.ship.addProperty("App::PropertyFloat","AreaCurveTrim","Ship", str(Translator.translate("Areas curve trim selected [m]"))) + self.ship.AreaCurveTrim = self.form.draft.value() + +def createTask(): + panel = TaskPanel() + Gui.Control.showDialog(panel) + if panel.setupUi(): + Gui.Control.closeDialog(panel) + return None + return panel diff --git a/src/Mod/Ship/shipAreasCurve/TaskPanel.ui b/src/Mod/Ship/shipAreasCurve/TaskPanel.ui new file mode 100644 index 0000000000..0aaf1abcd2 --- /dev/null +++ b/src/Mod/Ship/shipAreasCurve/TaskPanel.ui @@ -0,0 +1,112 @@ + + + TaskPanel + + + + 0 + 0 + 260 + 256 + + + + Create new ship + + + + + + + + Draft + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 3 + + + 0.100000000000000 + + + + + + + + 24 + 16777215 + + + + m + + + + + + + + + + + Trim + + + + + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 1 + + + -45.000000000000000 + + + 45.000000000000000 + + + + + + + + 24 + 16777215 + + + + Deg + + + + + + + + + Update data + + + + + + + Qt::TextSelectableByKeyboard|Qt::TextSelectableByMouse + + + + + + + + diff --git a/src/Mod/Ship/shipAreasCurve/__init__.py b/src/Mod/Ship/shipAreasCurve/__init__.py new file mode 100644 index 0000000000..cbfb57d75d --- /dev/null +++ b/src/Mod/Ship/shipAreasCurve/__init__.py @@ -0,0 +1,36 @@ +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercos Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** + +# FreeCAD modules +import FreeCAD +import FreeCADGui + +# Qt libraries +from PyQt4 import QtGui,QtCore + +# Main object +import TaskPanel + +def load(): + """ Loads the tool """ + TaskPanel.createTask() From bed7099c1f775c8acff184cab782deb195dd8e4f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Fri, 20 Jan 2012 14:36:22 +0100 Subject: [PATCH 31/40] Added Free surface 3D view update --- src/Mod/Ship/shipAreasCurve/Preview.py | 112 ++++++----------------- src/Mod/Ship/shipAreasCurve/TaskPanel.py | 9 +- 2 files changed, 37 insertions(+), 84 deletions(-) diff --git a/src/Mod/Ship/shipAreasCurve/Preview.py b/src/Mod/Ship/shipAreasCurve/Preview.py index b4d9e39b9a..8f2d7eba15 100644 --- a/src/Mod/Ship/shipAreasCurve/Preview.py +++ b/src/Mod/Ship/shipAreasCurve/Preview.py @@ -32,99 +32,47 @@ class Preview(object): def __init__(self): """ Constructor. """ - self.baseLine = None - self.baseLineLabel = None self.reinit() def reinit(self): """ Reinitializate drawer. """ + self.obj = None self.clean() - def update(self, L, B, T): - """ Update the 3D view printing annotations. - @param L Ship length. - @param B Ship beam. - @param T Ship draft. + def update(self, draft, trim, ship): + """ Update free surface 3D view + @param traft Draft. + @param trim Trim in degrees. """ - # Destroy all previous entities + # Destroy old object if exist self.clean() - # Draw base line - xStart = -0.6*L; - xEnd = 0.6*L; - baseLine = Part.makeLine((xStart,0,0),(xEnd,0,0)) - Part.show(baseLine) + # Set free surface bounds + bbox = ship.Shape.BoundBox + L = 1.5 * bbox.XLength + B = 3.0 * bbox.YLength + # Create plane + x = - 0.5 * L + y = - 0.5 * B + point = Base.Vector(x,y,0.0) + plane = Part.makePlane(L,B, point, Base.Vector(0,0,1)) + # Set position + plane.rotate(Base.Vector(0,0,0), Base.Vector(0,1,0), trim) + plane.translate(Base.Vector(0,0,draft)) + # Create the FreeCAD object + Part.show(plane) objs = FreeCAD.ActiveDocument.Objects - self.baseLine = objs[len(objs)-1] - self.baseLine.Label = 'BaseLine' - self.baseLineLabel = DrawText('BaseLineText', str(Translator.translate('Base line')), Base.Vector(xEnd,0,0)) - # Draw free surface - fsLine = Part.makeLine((xStart,0,T),(xEnd,0,T)) - Part.show(fsLine) - objs = FreeCAD.ActiveDocument.Objects - self.fsLine = objs[len(objs)-1] - self.fsLine.Label = 'FreeSurface' - self.fsLineLabel = DrawText('FSText', str(Translator.translate('Free surface')), Base.Vector(xEnd,0,T)) - # Draw forward perpendicular - zStart = -0.1*T - zEnd = 1.1*T - fpLine = Part.makeLine((0.5*L,0,zStart),(0.5*L,0,zEnd)) - Part.show(fpLine) - objs = FreeCAD.ActiveDocument.Objects - self.fpLine = objs[len(objs)-1] - self.fpLine.Label = 'ForwardPerpendicular' - self.fpLineLabel = DrawText('FPText', str(Translator.translate('Forward perpendicular')), Base.Vector(0.5*L,0,zEnd)) - # Draw after perpendicular - apLine = Part.makeLine((-0.5*L,0,zStart),(-0.5*L,0,zEnd)) - Part.show(apLine) - objs = FreeCAD.ActiveDocument.Objects - self.apLine = objs[len(objs)-1] - self.apLine.Label = 'AfterPerpendicular' - self.apLineLabel = DrawText('APText', str(Translator.translate('After perpendicular')), Base.Vector(-0.5*L,0,zEnd)) - # Draw amin frame - amLine = Part.makeLine((0,-0.5*B,zStart),(0,-0.5*B,zEnd)) - Part.show(amLine) - objs = FreeCAD.ActiveDocument.Objects - self.amLine = objs[len(objs)-1] - self.amLine.Label = 'AminFrame' - self.amLineLabel = DrawText('AMText', str(Translator.translate('Amin frame')), Base.Vector(0,-0.5*B,zEnd)) - + self.obj = objs[len(objs)-1] + self.obj.Label = 'FreeSurface' + # Set properties of object + guiObj = FreeCADGui.ActiveDocument.getObject(self.obj.Name) + guiObj.ShapeColor = (0.4,0.8,0.85) + guiObj.Transparency = 50 + def clean(self): """ Erase all annotations from screen. """ - if not self.baseLine: + if not self.obj: return - FreeCAD.ActiveDocument.removeObject(self.baseLine.Name) - FreeCAD.ActiveDocument.removeObject(self.baseLineLabel.Name) - FreeCAD.ActiveDocument.removeObject(self.fsLine.Name) - FreeCAD.ActiveDocument.removeObject(self.fsLineLabel.Name) - FreeCAD.ActiveDocument.removeObject(self.fpLine.Name) - FreeCAD.ActiveDocument.removeObject(self.fpLineLabel.Name) - FreeCAD.ActiveDocument.removeObject(self.apLine.Name) - FreeCAD.ActiveDocument.removeObject(self.apLineLabel.Name) - FreeCAD.ActiveDocument.removeObject(self.amLine.Name) - FreeCAD.ActiveDocument.removeObject(self.amLineLabel.Name) - -def DrawText(name, string, position, displayMode="Screen", angle=0.0, justification="Left", colour=(0.00,0.00,0.00), size=12): - """ Draws a text in a desired position. - @param name Name of the object - @param string Text to draw (recommended format u'') - @param position Point to draw the text - @param angle Counter clockwise rotation of text - @param justification Alignement of the text ("Left", "Right" or "Center") - @param colour Colour of the text - @param size Font size - @return FreeCAD annotation object - """ - # Create the object - text = FreeCAD.ActiveDocument.addObject("App::Annotation",name) - # Set the text - text.LabelText = [string, u''] - # Set the options - text.Position = position - FreeCADGui.ActiveDocument.getObject(text.Name).Rotation = angle - FreeCADGui.ActiveDocument.getObject(text.Name).Justification = justification - FreeCADGui.ActiveDocument.getObject(text.Name).FontSize = size - FreeCADGui.ActiveDocument.getObject(text.Name).TextColor = colour - FreeCADGui.ActiveDocument.getObject(text.Name).DisplayMode = displayMode - return FreeCAD.ActiveDocument.getObject(text.Name) + FreeCAD.ActiveDocument.removeObject(self.obj.Name) + self.obj=None diff --git a/src/Mod/Ship/shipAreasCurve/TaskPanel.py b/src/Mod/Ship/shipAreasCurve/TaskPanel.py index 09433b90cd..cbb3c20be8 100644 --- a/src/Mod/Ship/shipAreasCurve/TaskPanel.py +++ b/src/Mod/Ship/shipAreasCurve/TaskPanel.py @@ -146,6 +146,8 @@ class TaskPanel: flag = False if flag: self.form.trim.setValue(self.ship.AreaCurveTrim) + # Update GUI + self.preview.update(self.form.draft.value(), self.form.trim.value(), self.ship) msg = Translator.translate("Ready to work\n") App.Console.PrintMessage(msg) return False @@ -162,12 +164,15 @@ class TaskPanel: """ Method called when input data is changed. @param value Changed value. """ - pass + if not self.ship: + return + self.preview.update(self.form.draft.value(), self.form.trim.value(), self.ship) def onUpdate(self): """ Method called when update data request. """ - pass + if not self.ship: + return def save(self): """ Saves data into ship instance. From 90729be255d8492ce9d1f89d00ddb7fd2f24e1dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Sat, 21 Jan 2012 17:45:59 +0100 Subject: [PATCH 32/40] Added output report to areas curve tool --- src/Mod/Ship/shipAreasCurve/TaskPanel.py | 27 ++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/src/Mod/Ship/shipAreasCurve/TaskPanel.py b/src/Mod/Ship/shipAreasCurve/TaskPanel.py index cbb3c20be8..a218c59a0d 100644 --- a/src/Mod/Ship/shipAreasCurve/TaskPanel.py +++ b/src/Mod/Ship/shipAreasCurve/TaskPanel.py @@ -21,6 +21,7 @@ #* * #*************************************************************************** +import math # FreeCAD modules import FreeCAD as App import FreeCADGui as Gui @@ -75,6 +76,8 @@ class TaskPanel: form = mw.findChild(QtGui.QWidget, "TaskPanel") form.draft = form.findChild(QtGui.QDoubleSpinBox, "Draft") form.trim = form.findChild(QtGui.QDoubleSpinBox, "Trim") + form.output = form.findChild(QtGui.QTextEdit, "OutputData") + form.doc = QtGui.QTextDocument(form.output) self.form = form # Initial values if self.initValues(): @@ -148,6 +151,7 @@ class TaskPanel: self.form.trim.setValue(self.ship.AreaCurveTrim) # Update GUI self.preview.update(self.form.draft.value(), self.form.trim.value(), self.ship) + self.onUpdate() msg = Translator.translate("Ready to work\n") App.Console.PrintMessage(msg) return False @@ -173,6 +177,29 @@ class TaskPanel: """ if not self.ship: return + # Calculate drafts + angle = math.radians(self.form.trim.value()) + L = self.ship.Length + draftAP = self.form.trim.value() + 0.5*L*math.tan(angle) + if draftAP < 0.0: + draftAP = 0.0 + draftFP = self.form.trim.value() - 0.5*L*math.tan(angle) + if draftFP < 0.0: + draftFP = 0.0 + # Calculate hydrostatics involved + disp = 0.0 + xcb = 0.0 + # Prepare the string in html format + string = 'L = %g [m]
' % (self.ship.Length) + string = string + 'B = %g [m]
' % (self.ship.Beam) + string = string + 'T = %g [m]


' % (self.form.draft.value()) + string = string + 'Trim = %g [degrees]
' % (self.form.trim.value()) + string = string + 'TAP = %g [m]
' % (draftAP) + string = string + 'TFP = %g [m]
' % (draftFP) + string = string + Translator.translate('Displacement') + ' = %g [ton]
' % (disp) + string = string + 'XCB = %g [m]' % (xcb) + # Set the document + self.form.output.setHtml(string) def save(self): """ Saves data into ship instance. From b95e9c3fab4a535fe3918d28cc2c1e827928c543 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Sat, 21 Jan 2012 17:50:49 +0100 Subject: [PATCH 33/40] Added Hydrostatics development tools --- src/Mod/Ship/CMakeLists.txt | 14 ++++++++- src/Mod/Ship/Makefile.am | 2 ++ src/Mod/Ship/shipHydrostatics/Tools.py | 36 +++++++++++++++++++++++ src/Mod/Ship/shipHydrostatics/__init__.py | 23 +++++++++++++++ 4 files changed, 74 insertions(+), 1 deletion(-) create mode 100644 src/Mod/Ship/shipHydrostatics/Tools.py create mode 100644 src/Mod/Ship/shipHydrostatics/__init__.py diff --git a/src/Mod/Ship/CMakeLists.txt b/src/Mod/Ship/CMakeLists.txt index 783f641b08..9f86e5e4af 100644 --- a/src/Mod/Ship/CMakeLists.txt +++ b/src/Mod/Ship/CMakeLists.txt @@ -57,6 +57,12 @@ SET(ShipAreasCurve_SRCS ) SOURCE_GROUP("shipareascurve" FILES ${ShipAreasCurve_SRCS}) +SET(ShipHydrostatics_SRCS + shipHydrostatics/__init__.py + shipHydrostatics/Tools.py +) +SOURCE_GROUP("shiphydrostatics" FILES ${ShipHydrostatics_SRCS}) + SET(ShipUtils_SRCS shipUtils/__init__.py shipUtils/Math.py @@ -65,7 +71,7 @@ SET(ShipUtils_SRCS ) SOURCE_GROUP("shiputils" FILES ${ShipUtils_SRCS}) -SET(all_files ${ShipMain_SRCS} ${ShipIcons_SRCS} ${ShipCreateShip_SRCS} ${ShipOutlineDraw_SRCS} ${ShipAreasCurve_SRCS} ${ShipUtils_SRCS}) +SET(all_files ${ShipMain_SRCS} ${ShipIcons_SRCS} ${ShipCreateShip_SRCS} ${ShipOutlineDraw_SRCS} ${ShipAreasCurve_SRCS} ${ShipHydrostatics_SRCS} ${ShipUtils_SRCS}) ADD_CUSTOM_TARGET(Ship ALL SOURCES ${all_files} @@ -97,6 +103,12 @@ INSTALL( DESTINATION Mod/Ship/shipAreasCurve ) +INSTALL( + FILES + ${ShipHydrostatics_SRCS} + DESTINATION + Mod/Ship/shipHydrostatics +) INSTALL( FILES ${ShipUtils_SRCS} diff --git a/src/Mod/Ship/Makefile.am b/src/Mod/Ship/Makefile.am index 4cba953c0d..bb1821b818 100644 --- a/src/Mod/Ship/Makefile.am +++ b/src/Mod/Ship/Makefile.am @@ -43,6 +43,8 @@ nobase_data_DATA = \ shipAreasCurve/Preview.py \ shipAreasCurve/TaskPanel.py \ shipAreasCurve/TaskPanel.ui \ + shipHydrostatics/__init__.ui \ + shipHydrostatics/Tools.ui \ shipUtils/__init__.py \ shipUtils/Math.py \ shipUtils/Paths.py \ diff --git a/src/Mod/Ship/shipHydrostatics/Tools.py b/src/Mod/Ship/shipHydrostatics/Tools.py new file mode 100644 index 0000000000..282ccb71a6 --- /dev/null +++ b/src/Mod/Ship/shipHydrostatics/Tools.py @@ -0,0 +1,36 @@ +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercos Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** + +import math +# FreeCAD modules +import FreeCAD as App +import FreeCADGui as Gui + +def Displacement(ship, draft, trim): + """ Calculate ship displacement. + @param ship Selected ship instance + @param traft Draft. + @param trim Trim in degrees. + @return Ship displacement, also X bouyance center coordinate is provided. + """ + return [0.0, 0.0] diff --git a/src/Mod/Ship/shipHydrostatics/__init__.py b/src/Mod/Ship/shipHydrostatics/__init__.py new file mode 100644 index 0000000000..55ed9aee58 --- /dev/null +++ b/src/Mod/Ship/shipHydrostatics/__init__.py @@ -0,0 +1,23 @@ +#*************************************************************************** +#* * +#* Copyright (c) 2011, 2012 * +#* Jose Luis Cercos Pita * +#* * +#* This program is free software; you can redistribute it and/or modify * +#* it under the terms of the GNU Lesser General Public License (LGPL) * +#* as published by the Free Software Foundation; either version 2 of * +#* the License, or (at your option) any later version. * +#* for detail see the LICENCE text file. * +#* * +#* This program is distributed in the hope that it will be useful, * +#* but WITHOUT ANY WARRANTY; without even the implied warranty of * +#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +#* GNU Library General Public License for more details. * +#* * +#* You should have received a copy of the GNU Library General Public * +#* License along with this program; if not, write to the Free Software * +#* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * +#* USA * +#* * +#*************************************************************************** + From 1c855b0f1a701dce6a349eadcf1e6e89dc51b05e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Sat, 21 Jan 2012 18:02:15 +0100 Subject: [PATCH 34/40] Using Hydrostatics tools into Areas curve widget. --- src/Mod/Ship/shipAreasCurve/TaskPanel.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Mod/Ship/shipAreasCurve/TaskPanel.py b/src/Mod/Ship/shipAreasCurve/TaskPanel.py index a218c59a0d..9b43c99c24 100644 --- a/src/Mod/Ship/shipAreasCurve/TaskPanel.py +++ b/src/Mod/Ship/shipAreasCurve/TaskPanel.py @@ -32,6 +32,7 @@ import Preview import Instance from shipUtils import Paths, Translator from surfUtils import Geometry +from shipHydrostatics import Tools as Hydrostatics class TaskPanel: def __init__(self): @@ -187,8 +188,7 @@ class TaskPanel: if draftFP < 0.0: draftFP = 0.0 # Calculate hydrostatics involved - disp = 0.0 - xcb = 0.0 + disp = Hydrostatics.Displacement(self.ship,self.form.draft.value(),self.form.trim.value()) # Prepare the string in html format string = 'L = %g [m]
' % (self.ship.Length) string = string + 'B = %g [m]
' % (self.ship.Beam) @@ -196,8 +196,8 @@ class TaskPanel: string = string + 'Trim = %g [degrees]
' % (self.form.trim.value()) string = string + 'TAP = %g [m]
' % (draftAP) string = string + 'TFP = %g [m]
' % (draftFP) - string = string + Translator.translate('Displacement') + ' = %g [ton]
' % (disp) - string = string + 'XCB = %g [m]' % (xcb) + string = string + Translator.translate('Displacement') + ' = %g [ton]
' % (disp[0]) + string = string + 'XCB = %g [m]' % (disp[0]) # Set the document self.form.output.setHtml(string) From ed1dba0c97b8a6db5a098b9bacc0b1389de5baa2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Sun, 22 Jan 2012 17:03:24 +0100 Subject: [PATCH 35/40] Fixed bug that causes some boundary points can be moved when redistribute points. --- src/Mod/Surfaces/surfConvert/TaskPanel.py | 183 ++++++++++++++-------- 1 file changed, 121 insertions(+), 62 deletions(-) diff --git a/src/Mod/Surfaces/surfConvert/TaskPanel.py b/src/Mod/Surfaces/surfConvert/TaskPanel.py index 86e922a2fb..172160e9d2 100644 --- a/src/Mod/Surfaces/surfConvert/TaskPanel.py +++ b/src/Mod/Surfaces/surfConvert/TaskPanel.py @@ -129,10 +129,10 @@ class TaskPanel: msg = Translator.translate("4 connected edges and at least 1 surface must be selected (Less than 5 objects selected)") App.Console.PrintError(msg) return True - # Separate edge objects and face objects. + # Separate edge objects and face objects to work with them separately. if self.getEdgesFaces(): return True - # Ensure that closed object given + # Ensure that closed edges given if not self.isClosed(): return True # Sort edges (as connect chain) @@ -145,7 +145,7 @@ class TaskPanel: return True # On screen data self.preview = Preview.Preview(self.edges[0],self.edges[1]) - msg = Translator.translate("Ready to work") + msg = Translator.translate("Ready to work\n") App.Console.PrintMessage(msg) return False @@ -251,6 +251,7 @@ class TaskPanel: """ Get points that will make the surface. @return True if error happens. False otherwise. """ + # Discretize the edges using nU,nV if self.divideEdges(): return True if self.samplePoints(): @@ -265,7 +266,8 @@ class TaskPanel: def divideEdges(self): - """ Get points along the edges. + """ Get points along the edges. This method only divide the + edges into nU/nV parametrically equidistant points. @return True if error happens. False otherwise. """ # Get curves from edges @@ -326,7 +328,9 @@ class TaskPanel: return False def samplePoints(self): - """ Builds a set of points between the edges points. + """ Builds a set of points between the edges points. The points + are a smooth interpolation between edges points in order to + project it over the surface. @return True if error happens. False otherwise. """ # We will advance in V direction, getting point columns, so two @@ -336,15 +340,15 @@ class TaskPanel: endV = self.EdgePoints[1] startV = self.EdgePoints[3] self.sample = [startU] - # Take two guides froms the starting and end U curves. All - # sample points will be reprojects with this guides + # Take two guides from the starting and end U curves. All + # sample points will be interpolated with this guides Guide0 = startU[len(startU)-1] - startU[0] Length0 = Guide0.Length Guide0.normalize() Guide1 = endU[len(endU)-1] - endU[0] Length1 = Guide1.Length Guide1.normalize() - # Loop over columns to get + # Loop over columns for i in range(1,len(startV)-1): # Get the guide Guide = endV[i] - startV[i] @@ -365,12 +369,15 @@ class TaskPanel: points.append(startV[i]+v) points.append(endV[i]) self.sample.append(points) - # Append las points column (end U curve) + # Append last points column (end U curve) self.sample.append(endU) return False def getSurfacePoints(self): - """ Get the points of the surface. + """ Get the points of the surface. Here sample points will be + projected into the surface, getting another surface with nU,nV + knots. + @todo Support trimmed surfaces. @return True if error happens. False otherwise. """ surf = self.faces[0].Surface @@ -446,7 +453,6 @@ class TaskPanel: point = surf.value(uv[0], uv[1]) self.points[j][k]=point self.surfacesID[j][k] = i - return False def redistributePointsU(self): @@ -457,85 +463,138 @@ class TaskPanel: for i in range(0,len(self.points)): sumdif=0.0 difs=[] + # Compute distances between points for j in range(1,len(self.points[i])): vdif=self.points[i][j]-self.points[i][j-1] dif=vdif.Length sumdif=sumdif+dif difs.append(dif) + # Loop over point distances for k in range(0,len(difs)): + # If not the same surface for each point, UV + # redistribution is not valid, so 3D points must be + # edited (more effort and worst convergency). if self.surfacesID[i][k] != self.surfacesID[i][k+1]: if difs[k]>=(2*sumdif/len(difs)): - self.points[i][k][0]=self.points[i][k][0]+0.33*(self.points[i][k+1][0]-self.points[i][k][0]) - self.points[i][k][1]=self.points[i][k][1]+0.33*(self.points[i][k+1][1]-self.points[i][k][1]) - self.points[i][k][2]=self.points[i][k][2]+0.33*(self.points[i][k+1][2]-self.points[i][k][2]) - self.points[i][k+1][0]=self.points[i][k+1][0]-0.33*(self.points[i][k+1][0]-self.points[i][k][0]) - self.points[i][k+1][1]=self.points[i][k+1][1]-0.33*(self.points[i][k+1][1]-self.points[i][k][1]) - self.points[i][k+1][2]=self.points[i][k+1][2]-0.33*(self.points[i][k+1][2]-self.points[i][k][2]) - surf1 = self.faces[self.surfacesID[i][k]].Surface - surf2 = self.faces[self.surfacesID[i][k+1]].Surface - uv = surf1.parameter(self.points[i][k]) - self.uv[i][k] = [uv[0], uv[1]] - uv = surf2.parameter(self.points[i][k+1]) - self.uv[i][k+1] = [uv[0], uv[1]] - self.points[i][k]=surf1.value(self.uv[i][k][0],self.uv[i][k][1]) - self.points[i][k+1]=surf2.value(self.uv[i][k+1][0],self.uv[i][k+1][1]) - return True - break + point1 = App.Base.Vector(0.0,0.0,0.0) + point1.x = self.points[i][k][0]+0.33*(self.points[i][k+1][0]-self.points[i][k][0]) + point1.y = self.points[i][k][1]+0.33*(self.points[i][k+1][1]-self.points[i][k][1]) + point1.z = self.points[i][k][2]+0.33*(self.points[i][k+1][2]-self.points[i][k][2]) + point2 = App.Base.Vector(0.0,0.0,0.0) + point2.x = self.points[i][k+1][0]-0.33*(self.points[i][k+1][0]-self.points[i][k][0]) + point2.y = self.points[i][k+1][1]-0.33*(self.points[i][k+1][1]-self.points[i][k][1]) + point2.z = self.points[i][k+1][2]-0.33*(self.points[i][k+1][2]-self.points[i][k][2]) + moved = False + if(k != 0): + self.points[i][k] = point1 + surf1 = self.faces[self.surfacesID[i][k]].Surface + uv = surf1.parameter(self.points[i][k]) + self.uv[i][k] = [uv[0], uv[1]] + self.points[i][k]=surf1.value(self.uv[i][k][0],self.uv[i][k][1]) + moved = True + if(k+1 != len(self.points[i])-1): + self.points[i][k+1] = point2 + surf2 = self.faces[self.surfacesID[i][k+1]].Surface + uv = surf2.parameter(self.points[i][k+1]) + self.uv[i][k+1] = [uv[0], uv[1]] + self.points[i][k+1]=surf2.value(self.uv[i][k+1][0],self.uv[i][k+1][1]) + moved = True + if moved: + return True continue + # If same surface for each point, UV + # redistribution is possible, with better convergency + # and less computation effort. if difs[k]>=(2*sumdif/len(difs)): - self.uv[i][k][0]=self.uv[i][k][0]+0.33*(self.uv[i][k+1][0]-self.uv[i][k][0]) - self.uv[i][k][1]=self.uv[i][k][1]+0.33*(self.uv[i][k+1][1]-self.uv[i][k][1]) - self.uv[i][k+1][0]=self.uv[i][k+1][0]-0.33*(self.uv[i][k+1][0]-self.uv[i][k][0]) - self.uv[i][k+1][1]=self.uv[i][k+1][1]-0.33*(self.uv[i][k+1][1]-self.uv[i][k][1]) - surf = self.faces[self.surfacesID[i][k]].Surface - self.points[i][k] = surf.value(self.uv[i][k][0], self.uv[i][k][1]) - self.points[i][k+1] = surf.value(self.uv[i][k+1][0], self.uv[i][k+1][1]) - return True - break + uv1 = [0.0,0.0] + uv1[0] = self.uv[i][k][0]+0.33*(self.uv[i][k+1][0]-self.uv[i][k][0]) + uv1[1] = self.uv[i][k][1]+0.33*(self.uv[i][k+1][1]-self.uv[i][k][1]) + uv2 = [0.0,0.0] + uv2[0] = self.uv[i][k+1][0]-0.33*(self.uv[i][k+1][0]-self.uv[i][k][0]) + uv2[1] = self.uv[i][k+1][1]-0.33*(self.uv[i][k+1][1]-self.uv[i][k][1]) + moved = False + if(k != 0): + self.uv[i][k] = uv1[:] + surf = self.faces[self.surfacesID[i][k]].Surface + self.points[i][k] = surf.value(self.uv[i][k][0], self.uv[i][k][1]) + moved = True + if(k+1 != len(self.points[i])-1): + self.uv[i][k+1] = uv2[:] + surf = self.faces[self.surfacesID[i][k+1]].Surface + self.points[i][k+1] = surf.value(self.uv[i][k+1][0], self.uv[i][k+1][1]) + if moved: + return True return False + def redistributePointsV(self): """ Redistributes the points of the surface (V direction). @return False if all points are right placed. True otherwise. """ - #Redistribute files + #Redistribute rows for i in range(0,len(self.points[0])): sumdif=0 difs=[] + # Compute distances between points for j in range(1,len(self.points)): vdif=self.points[j][i]-self.points[j-1][i] dif=vdif.Length sumdif=sumdif+dif difs.append(dif) + # Loop over point distances for k in range(0,len(difs)): + # If not the same surface for each point, UV + # redistribution is not valid, so 3D points must be + # edited (more effort and worst convergency). if self.surfacesID[k][i] != self.surfacesID[k+1][i]: if difs[k]>=(2*sumdif/len(difs)): - self.points[k][i][0]=self.points[k][i][0]+0.33*(self.points[k+1][i][0]-self.points[k][i][0]) - self.points[k][i][1]=self.points[k][i][1]+0.33*(self.points[k+1][i][1]-self.points[k][i][1]) - self.points[k][i][2]=self.points[k][i][2]+0.33*(self.points[k+1][k+1][2]-self.points[k][i][2]) - self.points[k+1][i][0]=self.points[k+1][i][0]-0.33*(self.points[k+1][i][0]-self.points[k][i][0]) - self.points[k+1][i][1]=self.points[k+1][i][1]-0.33*(self.points[k+1][i][1]-self.points[k][i][1]) - self.points[k+1][i][2]=self.points[k+1][i][2]-0.33*(self.points[k+1][i][2]-self.points[k][i][2]) - surf1 = self.faces[self.surfacesID[k][i]].Surface - surf2 = self.faces[self.surfacesID[k+1][i]].Surface - uv = surf1.parameter(self.points[k][i]) - self.uv[k][i] = [uv[0], uv[1]] - uv = surf2.parameter(self.points[k+1][i]) - self.uv[k+1][i] = [uv[0], uv[1]] - self.points[k][i]=surf1.value(self.uv[k][i][0],self.uv[k][i][1]) - self.points[k+1][i]=surf2.value(self.uv[k+1][i][0],self.uv[k+1][i][1]) - return True - break + point1 = App.Base.Vector(0.0,0.0,0.0) + point1.x = self.points[k][i][0]+0.33*(self.points[k+1][i][0]-self.points[k][i][0]) + point1.y = self.points[k][i][1]+0.33*(self.points[k+1][i][1]-self.points[k][i][1]) + point1.z = self.points[k][i][2]+0.33*(self.points[k+1][i][2]-self.points[k][i][2]) + point2 = App.Base.Vector(0.0,0.0,0.0) + point2.x = self.points[k+1][i][0]-0.33*(self.points[k+1][i][0]-self.points[k][i][0]) + point2.y = self.points[k+1][i][1]-0.33*(self.points[k+1][i][1]-self.points[k][i][1]) + point2.z = self.points[k+1][i][2]-0.33*(self.points[k+1][i][2]-self.points[k][i][2]) + moved = False + if(k != 0): + self.points[k][i] = point1 + surf1 = self.faces[self.surfacesID[k][i]].Surface + uv = surf1.parameter(self.points[k][i]) + self.uv[k][i] = [uv[0], uv[1]] + self.points[k][i]=surf1.value(self.uv[k][i][0],self.uv[k][i][1]) + moved = True + if(k+1 != len(self.points)-1): + self.points[k+1][i] = point2 + surf2 = self.faces[self.surfacesID[k+1][i]].Surface + uv = surf2.parameter(self.points[k+1][i]) + self.uv[k+1][i] = [uv[0], uv[1]] + self.points[k+1][i]=surf2.value(self.uv[k+1][i][0],self.uv[k+1][i][1]) + moved = True + if moved: + return True continue + # If same surface for each point, UV + # redistribution is possible, with better convergency + # and less computation effort. if difs[k]>=(2*sumdif/len(difs)): - self.uv[k][i][0]=self.uv[k][i][0]+0.33*(self.uv[k+1][i][0]-self.uv[k][i][0]) - self.uv[k][i][1]=self.uv[k][i][1]+0.33*(self.uv[k+1][i][1]-self.uv[k][i][1]) - self.uv[k+1][i][0]=self.uv[k+1][i][0]-0.33*(self.uv[k+1][i][0]-self.uv[k][i][0]) - self.uv[k+1][i][1]=self.uv[k+1][i][1]-0.33*(self.uv[k+1][i][1]-self.uv[k][i][1]) - surf = self.faces[self.surfacesID[k][i]].Surface - self.points[k][i] = surf.value(self.uv[k][i][0], self.uv[k][i][1]) - self.points[k+1][i] = surf.value(self.uv[k+1][i][0], self.uv[k+1][i][1]) - return True - break + uv1 = [0.0,0.0] + uv1[0] = self.uv[k][i][0]+0.33*(self.uv[k+1][i][0]-self.uv[k][i][0]) + uv1[1] = self.uv[k][i][1]+0.33*(self.uv[k+1][i][1]-self.uv[k][i][1]) + uv2 = [0.0,0.0] + uv2[0] = self.uv[k+1][i][0]-0.33*(self.uv[k+1][i][0]-self.uv[k][i][0]) + uv2[1] = self.uv[k+1][i][1]-0.33*(self.uv[k+1][i][1]-self.uv[k][i][1]) + moved = False + if(k != 0): + self.uv[i][k] = uv1[:] + surf = self.faces[self.surfacesID[k][i]].Surface + self.points[k][i] = surf.value(self.uv[k][i][0], self.uv[k][i][1]) + moved = True + if(k+1 != len(self.points[i])-1): + self.uv[i][k+1] = uv2[:] + surf = self.faces[self.surfacesID[k+1][i]].Surface + self.points[k+1][i] = surf.value(self.uv[k+1][i][0], self.uv[k+1][i][1]) + if moved: + return True return False def createSurface(self): From d4fe147a3e29460611232922f731072ed1507da4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Sun, 22 Jan 2012 17:05:04 +0100 Subject: [PATCH 36/40] Fixed bug at file name that caused compilation fails using autotools. --- src/Mod/Ship/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Mod/Ship/Makefile.am b/src/Mod/Ship/Makefile.am index bb1821b818..1792ede1fb 100644 --- a/src/Mod/Ship/Makefile.am +++ b/src/Mod/Ship/Makefile.am @@ -43,7 +43,7 @@ nobase_data_DATA = \ shipAreasCurve/Preview.py \ shipAreasCurve/TaskPanel.py \ shipAreasCurve/TaskPanel.ui \ - shipHydrostatics/__init__.ui \ + shipHydrostatics/__init__.py \ shipHydrostatics/Tools.ui \ shipUtils/__init__.py \ shipUtils/Math.py \ From ec4185606898752a9545a856eafea0753f3aaf9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Sun, 22 Jan 2012 17:27:56 +0100 Subject: [PATCH 37/40] Fixed bug at file name that caused compilation fails using autotools. --- src/Mod/Ship/Makefile.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Mod/Ship/Makefile.am b/src/Mod/Ship/Makefile.am index 1792ede1fb..ed2efda8dc 100644 --- a/src/Mod/Ship/Makefile.am +++ b/src/Mod/Ship/Makefile.am @@ -44,7 +44,7 @@ nobase_data_DATA = \ shipAreasCurve/TaskPanel.py \ shipAreasCurve/TaskPanel.ui \ shipHydrostatics/__init__.py \ - shipHydrostatics/Tools.ui \ + shipHydrostatics/Tools.py \ shipUtils/__init__.py \ shipUtils/Math.py \ shipUtils/Paths.py \ From 5930aaf6f70a38af8f3eaaf585fb7c1a1ee35413 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Sun, 22 Jan 2012 19:24:51 +0100 Subject: [PATCH 38/40] Fixed unstored discretization data. --- src/Mod/Ship/Instance.py | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/src/Mod/Ship/Instance.py b/src/Mod/Ship/Instance.py index 00d83a5293..042a6c097f 100644 --- a/src/Mod/Ship/Instance.py +++ b/src/Mod/Ship/Instance.py @@ -79,7 +79,7 @@ class Ship: nPoint = len(points) if nPoint <= nVertex: # Any valid point - result + return result for i in range(0,nPoint): disp = len(result) flag = 0 @@ -98,10 +98,14 @@ class Ship: @param nS Number of sections @param nP Number of points per section """ + print(nS,nP) self.obj.addProperty("App::PropertyInteger","nSections","Ship", str(Translator.translate("Number of sections"))).nSections=nS self.obj.addProperty("App::PropertyIntegerList","nPoints","Ship", str(Translator.translate("List of number of points per sections (accumulated histogram)"))).nPoints=[0] self.obj.addProperty("App::PropertyFloatList","xSection","Ship", str(Translator.translate("List of sections x coordinate"))).xSection=[] self.obj.addProperty("App::PropertyVectorList","mSections","Ship", str(Translator.translate("List of sections points"))).mSections=[] + nPoints = [0] + xSection = [] + mSections = [] # Get bounds shape = self.obj.Shape bbox = shape.BoundBox @@ -124,7 +128,7 @@ class Ship: for i in range(0,nS): section = [] x = x0 + i*dx - self.obj.xSection.append(x) + xSection.append(x) percen = i*100 / (nS-1) FreeCAD.Console.PrintMessage('%d%%\n' % (percen)); # Slice the surface to get curves @@ -136,7 +140,7 @@ class Ship: FreeCAD.Console.PrintWarning(msg) FreeCAD.Console.PrintWarning('\tThis may happens if a bad defined (or really complex) surface has been provided.\n') FreeCAD.Console.PrintWarning('\tPlease, ensure that this section is correct, or fix surfaces and create a new ship.\n') - self.obj.nPoints.append(0) + nPoints.append(0) # Desarrollate wires into edges list edges = [] for j in range(0,len(wires)): @@ -160,9 +164,13 @@ class Ship: for j in range(0,len(points)): section.append(Vector(points[j].x, aux[j], points[j].z)) # Store points - self.obj.nPoints.append(len(points)) - for j in range(0,len(points)): - self.obj.mSections.append(points[j]) + nPoints.append(len(section)) + for j in range(0,len(section)): + mSections.append(section[j]) + # Save data + self.obj.nPoints = nPoints[:] + self.obj.xSection = xSection[:] + self.obj.mSections = mSections[:] class ViewProviderShip: def __init__(self, obj): @@ -653,8 +661,10 @@ def sections(obj): histogram = obj.nPoints[:] points = obj.mSections[:] sections = [] + print(histogram) for i in range(0, len(histogram) - 1): sections.append([]) + print(histogram[i],histogram[i+1]) for j in range(histogram[i],histogram[i+1]): sections[i].append(points[j]) return sections From 4333c4fc63a8148eafaf12dfc7d23d21e1bcd9d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Sun, 22 Jan 2012 19:46:11 +0100 Subject: [PATCH 39/40] Added Draft, displacement and XCB widget indicator --- src/Mod/Ship/Instance.py | 5 +- src/Mod/Ship/shipAreasCurve/TaskPanel.py | 10 ++-- src/Mod/Ship/shipHydrostatics/Tools.py | 72 +++++++++++++++++++++++- 3 files changed, 77 insertions(+), 10 deletions(-) diff --git a/src/Mod/Ship/Instance.py b/src/Mod/Ship/Instance.py index 042a6c097f..be4481ed8d 100644 --- a/src/Mod/Ship/Instance.py +++ b/src/Mod/Ship/Instance.py @@ -98,7 +98,6 @@ class Ship: @param nS Number of sections @param nP Number of points per section """ - print(nS,nP) self.obj.addProperty("App::PropertyInteger","nSections","Ship", str(Translator.translate("Number of sections"))).nSections=nS self.obj.addProperty("App::PropertyIntegerList","nPoints","Ship", str(Translator.translate("List of number of points per sections (accumulated histogram)"))).nPoints=[0] self.obj.addProperty("App::PropertyFloatList","xSection","Ship", str(Translator.translate("List of sections x coordinate"))).xSection=[] @@ -168,6 +167,8 @@ class Ship: for j in range(0,len(section)): mSections.append(section[j]) # Save data + for i in range(1,len(nPoints)): + nPoints[i] = nPoints[i] + nPoints[i-1] self.obj.nPoints = nPoints[:] self.obj.xSection = xSection[:] self.obj.mSections = mSections[:] @@ -661,10 +662,8 @@ def sections(obj): histogram = obj.nPoints[:] points = obj.mSections[:] sections = [] - print(histogram) for i in range(0, len(histogram) - 1): sections.append([]) - print(histogram[i],histogram[i+1]) for j in range(histogram[i],histogram[i+1]): sections[i].append(points[j]) return sections diff --git a/src/Mod/Ship/shipAreasCurve/TaskPanel.py b/src/Mod/Ship/shipAreasCurve/TaskPanel.py index 9b43c99c24..f076794ae7 100644 --- a/src/Mod/Ship/shipAreasCurve/TaskPanel.py +++ b/src/Mod/Ship/shipAreasCurve/TaskPanel.py @@ -181,14 +181,14 @@ class TaskPanel: # Calculate drafts angle = math.radians(self.form.trim.value()) L = self.ship.Length - draftAP = self.form.trim.value() + 0.5*L*math.tan(angle) + draftAP = self.form.draft.value() + 0.5*L*math.tan(angle) if draftAP < 0.0: draftAP = 0.0 - draftFP = self.form.trim.value() - 0.5*L*math.tan(angle) + draftFP = self.form.draft.value() - 0.5*L*math.tan(angle) if draftFP < 0.0: draftFP = 0.0 # Calculate hydrostatics involved - disp = Hydrostatics.Displacement(self.ship,self.form.draft.value(),self.form.trim.value()) + data = Hydrostatics.Displacement(self.ship,self.form.draft.value(),self.form.trim.value()) # Prepare the string in html format string = 'L = %g [m]
' % (self.ship.Length) string = string + 'B = %g [m]
' % (self.ship.Beam) @@ -196,8 +196,8 @@ class TaskPanel: string = string + 'Trim = %g [degrees]
' % (self.form.trim.value()) string = string + 'TAP = %g [m]
' % (draftAP) string = string + 'TFP = %g [m]
' % (draftFP) - string = string + Translator.translate('Displacement') + ' = %g [ton]
' % (disp[0]) - string = string + 'XCB = %g [m]' % (disp[0]) + string = string + Translator.translate('Displacement') + ' = %g [ton]
' % (data[1]) + string = string + 'XCB = %g [m]' % (data[2]) # Set the document self.form.output.setHtml(string) diff --git a/src/Mod/Ship/shipHydrostatics/Tools.py b/src/Mod/Ship/shipHydrostatics/Tools.py index 282ccb71a6..32ce25dc0f 100644 --- a/src/Mod/Ship/shipHydrostatics/Tools.py +++ b/src/Mod/Ship/shipHydrostatics/Tools.py @@ -25,12 +25,80 @@ import math # FreeCAD modules import FreeCAD as App import FreeCADGui as Gui +# Module +import Instance def Displacement(ship, draft, trim): """ Calculate ship displacement. @param ship Selected ship instance @param traft Draft. @param trim Trim in degrees. - @return Ship displacement, also X bouyance center coordinate is provided. + @return [areas,disp,xcb]: \n + areas : Area of each section \n + disp: Ship displacement \n + xcb: X bouyance center coordinate """ - return [0.0, 0.0] + angle = math.radians(trim) + sections = Instance.sections(ship) + xCoord = ship.xSection[:] + areas = [] + vol = 0.0 + moment = 0.0 + if not sections: + return [[],0.0,0.0] + for i in range(0, len(sections)): + # Get the section + section = sections[i] + if len(section) < 2: # Empty section + areas.append(0.0) + continue + # Get the position of the section + x = xCoord[i] + # Get the maximum Z value + Z = draft - x*math.tan(angle) + # Count the number of valid points + n = 0 + for j in range(0,len(section)): + z = section[j].z + if z > Z: + break + n = n+1 + # Discard invalid sections + if n == 0: + areas.append(0.0) + continue + # Truncate only valid points + points = section[0:n] + # Study if additional point is needed + if n < len(section): + y0 = section[n-1].y + z0 = section[n-1].z + y1 = section[n].y + z1 = section[n].z + factor = (Z - z0) / (z1 - z0) + y = y0 + factor*(y1 - y0) + points.append(App.Base.Vector(x,y,Z)) + # Integrate area + area = 0.0 + for j in range(0, len(points)-1): + y0 = abs(points[j].y) + z0 = points[j].z + y1 = abs(points[j+1].y) + z1 = points[j+1].z + y = 0.5 * (y0 + y1) + dz = z1 - z0 + area = area + 2.0*y*dz # 2x because only half ship is represented + areas.append(area) + # Add volume & moment if proceed + if i > 0: + dx = xCoord[i] - xCoord[i-1] + x = 0.5*(xCoord[i] + xCoord[i-1]) + area = 0.5*(areas[i] + areas[i-1]) + vol = vol + area*dx + moment = moment + area*dx*x + # Compute displacement and xcb + disp = vol / 1.025 # rho = 1.025 ton/m3 (salt water density) + xcb = 0.0 + if vol > 0.0: + xcb = moment / vol + return [areas,disp,xcb] From 106cbdf811d75c327c88a5723838a6019a19f313 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jose=20Luis=20Cerc=C3=B3s=20pita?= Date: Sun, 22 Jan 2012 19:49:02 +0100 Subject: [PATCH 40/40] Deleted update data button, now data is automatically updated. --- src/Mod/Ship/shipAreasCurve/TaskPanel.py | 3 +-- src/Mod/Ship/shipAreasCurve/TaskPanel.ui | 7 ------- 2 files changed, 1 insertion(+), 9 deletions(-) diff --git a/src/Mod/Ship/shipAreasCurve/TaskPanel.py b/src/Mod/Ship/shipAreasCurve/TaskPanel.py index f076794ae7..3a5dab2fc9 100644 --- a/src/Mod/Ship/shipAreasCurve/TaskPanel.py +++ b/src/Mod/Ship/shipAreasCurve/TaskPanel.py @@ -87,7 +87,6 @@ class TaskPanel: # Connect Signals and Slots QtCore.QObject.connect(form.draft, QtCore.SIGNAL("valueChanged(double)"), self.onData) QtCore.QObject.connect(form.trim, QtCore.SIGNAL("valueChanged(double)"), self.onData) - QtCore.QObject.connect(form.findChild(QtGui.QPushButton, "UpdateButton"),QtCore.SIGNAL("pressed()"),self.onUpdate) def getMainWindow(self): "returns the main window" @@ -163,7 +162,6 @@ class TaskPanel: self.form.setWindowTitle(Translator.translate("Plot transversal areas curve")) self.form.findChild(QtGui.QLabel, "DraftLabel").setText(Translator.translate("Draft")) self.form.findChild(QtGui.QLabel, "TrimLabel").setText(Translator.translate("Trim")) - self.form.findChild(QtGui.QPushButton, "UpdateButton").setText(Translator.translate("Update Data")) def onData(self, value): """ Method called when input data is changed. @@ -171,6 +169,7 @@ class TaskPanel: """ if not self.ship: return + self.onUpdate() self.preview.update(self.form.draft.value(), self.form.trim.value(), self.ship) def onUpdate(self): diff --git a/src/Mod/Ship/shipAreasCurve/TaskPanel.ui b/src/Mod/Ship/shipAreasCurve/TaskPanel.ui index 0aaf1abcd2..8e03561851 100644 --- a/src/Mod/Ship/shipAreasCurve/TaskPanel.ui +++ b/src/Mod/Ship/shipAreasCurve/TaskPanel.ui @@ -91,13 +91,6 @@ - - - - Update data - - -