From: buliabyak Date: Sun, 6 Sep 2009 02:34:31 +0000 (+0000) Subject: textual patch from bug 408093 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=2f23b1ab52f2251a9820a60987bc1c8c435c77e1;p=inkscape.git textual patch from bug 408093 --- diff --git a/share/extensions/draw_from_triangle.inx b/share/extensions/draw_from_triangle.inx index 7973cda8a..341388dc3 100644 --- a/share/extensions/draw_from_triangle.inx +++ b/share/extensions/draw_from_triangle.inx @@ -35,14 +35,14 @@ cos(a_a):cos(a_b):cos(a_c) - + s_a*s_b*s_c/(4*area) - This extension draws constructions about a triangle defined by the first 3 nodes of a selected path. You may select one of preset objects or create your own ones. + <_param name="instructions" type="description" xml:space="preserve">This extension draws constructions about a triangle defined by the first 3 nodes of a selected path. You may select one of preset objects or create your own ones. All units are the Inkscape's pixel unit. Angles are all in radians. You can specify a point by trilinear coordinates or by a triangle centre function. @@ -63,7 +63,7 @@ Also available are the inverse trigonometric functions: sec(x); csc(x); cot(x) You can specify the radius of a circle about a custom point using an formula, which may also contain the side lengths, angles, etc. You can also plot the isogonal and isotomic conjugate of the point. Be aware that this may cause a divide-by-zero error for certain points. - + diff --git a/share/extensions/draw_from_triangle.py b/share/extensions/draw_from_triangle.py index 196bc3c9e..38843210c 100644 --- a/share/extensions/draw_from_triangle.py +++ b/share/extensions/draw_from_triangle.py @@ -175,7 +175,7 @@ def report_properties( params ):#report to the Inkscape console using errormsg inkex.errormsg(_("Side Length 'a'/px: " + str( params[0][0] ) )) inkex.errormsg(_("Side Length 'b'/px: " + str( params[0][1] ) )) inkex.errormsg(_("Side Length 'c'/px: " + str( params[0][2] ) )) - inkex.errormsg(_("Angle 'A'/radians:" + str( params[1][0] ) )) + inkex.errormsg(_("Angle 'A'/radians: " + str( params[1][0] ) )) inkex.errormsg(_("Angle 'B'/radians: " + str( params[1][1] ) )) inkex.errormsg(_("Angle 'C'/radians: " + str( params[1][2] ) )) inkex.errormsg(_("Semiperimeter/px: " + str( params[4][1] ) )) diff --git a/share/extensions/dxf_input.inx b/share/extensions/dxf_input.inx index 5ad63c565..70aae46d5 100644 --- a/share/extensions/dxf_input.inx +++ b/share/extensions/dxf_input.inx @@ -17,12 +17,11 @@ - <_param name="inputhelp" type="description">- AutoCAD Release 13 and newer. + <_param name="inputhelp" type="description" xml:space="preserve">- AutoCAD Release 13 and newer. - assume dxf drawing is in mm. - assume svg drawing is in pixels, at 90 dpi. -- layers are preserved only on File->Open, not Import. -- limited support for BLOCKS, use AutoCAD Explode Blocks instead, if needed. - +- layers are preserved only on File->Open, not Import. +- limited support for BLOCKS, use AutoCAD Explode Blocks instead, if needed. diff --git a/share/extensions/dxf_outlines.inx b/share/extensions/dxf_outlines.inx index a557deb94..169385001 100644 --- a/share/extensions/dxf_outlines.inx +++ b/share/extensions/dxf_outlines.inx @@ -10,12 +10,11 @@ false - <_param name="inputhelp" type="description">- AutoCAD Release 13 format. + <_param name="inputhelp" type="description" xml:space="preserve">- AutoCAD Release 13 format. - assume svg drawing is in pixels, at 90 dpi. - assume dxf drawing is in mm. - only LWPOLYLINE and SPLINE elements are supported. -- ROBO-Master option is a specialized spline readable only by ROBO-Master and AutoDesk viewers, not Inkscape. - +- ROBO-Master option is a specialized spline readable only by ROBO-Master and AutoDesk viewers, not Inkscape. diff --git a/share/extensions/extractimage.py b/share/extensions/extractimage.py index 38f929846..8b47de958 100644 --- a/share/extensions/extractimage.py +++ b/share/extensions/extractimage.py @@ -63,7 +63,7 @@ class MyEffect(inkex.Effect): open(path,'wb').write(data) node.set(inkex.addNS('href','xlink'),os.path.realpath(path)) #absolute for making in-mem cycles work else: - inkex.errormsg(_('Difficulty finding the image data.')) + inkex.errormsg(_('Unable to find image data.')) break if __name__ == '__main__': diff --git a/share/extensions/extrude.inx b/share/extensions/extrude.inx index ee5fa9c2e..b282fe0d9 100644 --- a/share/extensions/extrude.inx +++ b/share/extensions/extrude.inx @@ -5,8 +5,8 @@ extrude.py inkex.py - - + <_option>Lines + <_option>Polygons path diff --git a/share/extensions/pathalongpath.inx b/share/extensions/pathalongpath.inx index 4fc7287ff..a4ee40852 100644 --- a/share/extensions/pathalongpath.inx +++ b/share/extensions/pathalongpath.inx @@ -5,7 +5,7 @@ pathmodifier.py pathalongpath.py inkex.py - <_param name="title" type="description">This effect bends a pattern object along arbitrary "skeleton" paths. The pattern is the top most object in the selection. (groups of paths/shapes/clones... allowed) + <_param name="title" type="description">This effect bends a pattern object along arbitrary "skeleton" paths. The pattern is the topmost object in the selection. (groups of paths/shapes/clones... allowed) <_item value="Single">Single <_item value="Single, stretched">Single, stretched diff --git a/share/extensions/pathscatter.inx b/share/extensions/pathscatter.inx index 88cf0e2c9..fe52828b8 100644 --- a/share/extensions/pathscatter.inx +++ b/share/extensions/pathscatter.inx @@ -5,7 +5,7 @@ pathmodifier.py pathscatter.py inkex.py - <_param name="title" type="description">This effect scatters a pattern along arbitrary "skeleton" paths. The pattern is the top most object in the selection. (groups of paths/shapes/clones... allowed) + <_param name="title" type="description">This effect scatters a pattern along arbitrary "skeleton" paths. The pattern is the topmost object in the selection. (groups of paths/shapes/clones... allowed) false false 0.0 diff --git a/share/extensions/polyhedron_3d.inx b/share/extensions/polyhedron_3d.inx index 4f1de90c7..e7807b469 100644 --- a/share/extensions/polyhedron_3d.inx +++ b/share/extensions/polyhedron_3d.inx @@ -10,7 +10,7 @@ <_option value="cube">Cube <_option value="trunc_cube">Truncated Cube <_option value="snub_cube">Snub Cube - <_option value="cuboct">Cuboctohedron + <_option value="cuboct">Cuboctahedron <_option value="tet">Tetrahedron <_option value="trunc_tet">Truncated Tetrahedron <_option value="oct">Octahedron @@ -65,9 +65,9 @@ 100 - 255 - 0 - 0 + 255 + 0 + 0 100 100 2 @@ -75,7 +75,9 @@ 1 1 -2 - + + <_option value="vtx">Vertices <_option value="edg">Edges <_option value="fce">Faces diff --git a/share/extensions/polyhedron_3d.py b/share/extensions/polyhedron_3d.py index ae73d6b27..514ace94a 100644 --- a/share/extensions/polyhedron_3d.py +++ b/share/extensions/polyhedron_3d.py @@ -57,7 +57,7 @@ _ = gettext.gettext try: from numpy import * except: - inkex.errormsg(_("Failed to import the numpy module. This module is required by this extension. Please install them and try again. On a Debian-like system this can be done with the command, sudo apt-get install python-numpy.")) + inkex.errormsg(_("Failed to import the numpy module. This module is required by this extension. Please install it and try again. On a Debian-like system this can be done with the command, sudo apt-get install python-numpy.")) sys.exit() #FILE IO ROUTINES diff --git a/share/extensions/printing-marks.inx b/share/extensions/printing-marks.inx index 256f97e85..40954380f 100644 --- a/share/extensions/printing-marks.inx +++ b/share/extensions/printing-marks.inx @@ -11,13 +11,12 @@ false true false - true + true false <_item value="canvas">Canvas - <_item value="selection">Selection diff --git a/share/extensions/restack.inx b/share/extensions/restack.inx index 07d222a16..cd79860af 100644 --- a/share/extensions/restack.inx +++ b/share/extensions/restack.inx @@ -15,14 +15,16 @@ 0.00 - <_option value="l">Left - <_option value="m">Middle - <_option value="r">Right + + <_option value="l">restack|Left + <_option value="m">restack|Middle + <_option value="r">restack|Right - <_option value="t">Top - <_option value="m">Middle - <_option value="b">Bottom + <_option value="t">restack|Top + <_option value="m">restack|Middle + <_option value="b">restack|Bottom path diff --git a/share/extensions/summersnight.py b/share/extensions/summersnight.py index 7c76d7162..f14b400cd 100755 --- a/share/extensions/summersnight.py +++ b/share/extensions/summersnight.py @@ -33,9 +33,7 @@ class Project(inkex.Effect): inkex.Effect.__init__(self) def effect(self): if len(self.options.ids) < 2: - inkex.errormsg(_("This extension requires two selected paths.") - + " " - + _("The second path must be exactly four nodes long.")) + inkex.errormsg(_("This extension requires two selected paths. \nThe second path must be exactly four nodes long.")) exit() #obj is selected second diff --git a/share/extensions/svgcalendar.inx b/share/extensions/svgcalendar.inx index 8eaf747e5..fd1af0544 100644 --- a/share/extensions/svgcalendar.inx +++ b/share/extensions/svgcalendar.inx @@ -38,8 +38,8 @@ <_param name="l10n-help" type="description">You may change the names for other languages: - <_param name="month-names" type="string" _gui-text="Month names">January February March April May June July August September October November December - <_param name="day-names" type="string" _gui-text="Day names">Sun Mon Tue Wed Thu Fri Sat + <_param name="month-names" type="string" _gui-text="Month names" xml:space="preserve">January February March April May June July August September October November December + <_param name="day-names" type="string" _gui-text="Day names" xml:space="preserve">Sun Mon Tue Wed Thu Fri Sat <_param name="day-names-help" type="description">(The day names list must start from Sunday) diff --git a/share/extensions/web-set-att.inx b/share/extensions/web-set-att.inx index e8caa94ea..5bb14d285 100644 --- a/share/extensions/web-set-att.inx +++ b/share/extensions/web-set-att.inx @@ -8,9 +8,9 @@ <_param name="sep1" type="description">•••••••••••••••••••••••••••••••••••••••••••••••• <_param name="help" type="description">This effect sets one or more attributes in the second selected element, when a defined event occurs on the first selected element. <_param name="sep2" type="description">•••••••••••••••••••••••••••••••••••••••••••••••• - <_param name="help" type="description">If you want to set more then one attribute, you must separate this with a space, and only with a space. + <_param name="help" type="description">If you want to set more than one attribute, you must separate this with a space, and only with a space. fill stroke stroke-width - + <_item value="onclick">on click <_item value="onfocusin">on focus <_item value="onfocusout">on blur @@ -22,7 +22,7 @@ <_item value="onmouseout">on mouse out <_item value="onload">on element loaded - <_param name="help" type="description">The list of values must have the same size of the attributes list. + <_param name="help" type="description">The list of values must have the same size as the attributes list. red black 5px <_item value="append">Run it after @@ -32,7 +32,7 @@ <_param name="help" type="description">The next parameter is useful when you select more than two elements <_item value="g-to-one">All selected ones set an attribute in the last one - <_item value="one-to-g">The first selected set an attribute in all others + <_item value="one-to-g">The first selected sets an attribute in all others all diff --git a/share/extensions/web-transmit-att.inx b/share/extensions/web-transmit-att.inx index c1d5895b3..caf284b93 100644 --- a/share/extensions/web-transmit-att.inx +++ b/share/extensions/web-transmit-att.inx @@ -6,7 +6,7 @@ inkex.py <_param name="intro" type="description">This effect adds a feature visible (or usable) only on a SVG enabled web browser (like Firefox). <_param name="sep1" type="description">•••••••••••••••••••••••••••••••••••••••••••••••• - <_param name="help" type="description">This effect transmits one or more attributes from the first selected element to the second when a event occurs. + <_param name="help" type="description">This effect transmits one or more attributes from the first selected element to the second when an event occurs. <_param name="sep2" type="description">•••••••••••••••••••••••••••••••••••••••••••••••• <_param name="help" type="description">If you want to transmit more than one attribute, you should separate this with a space, and only with a space. fill @@ -29,7 +29,7 @@ <_param name="help" type="description">The next parameter is useful when you select more than two elements - <_item value="g-to-one">All selected ones transmits to the last one + <_item value="g-to-one">All selected ones transmit to the last one <_item value="one-to-g">The first selected transmits to all others diff --git a/src/extension/execution-env.cpp b/src/extension/execution-env.cpp index 4a13890d7..e8d7c4baf 100644 --- a/src/extension/execution-env.cpp +++ b/src/extension/execution-env.cpp @@ -131,7 +131,7 @@ ExecutionEnv::createWorkingDialog (void) { return; Gtk::Window *window = Glib::wrap(GTK_WINDOW(toplevel), false); - gchar * dlgmessage = g_strdup_printf(_("'%s' working, please wait..."), _effect->get_name()); + gchar * dlgmessage = g_strdup_printf(_("'%s' working, please wait..."), _(_effect->get_name())); _visibleDialog = new Gtk::MessageDialog(*window, dlgmessage, false, // use markup diff --git a/src/live_effects/lpe-rough-hatches.cpp b/src/live_effects/lpe-rough-hatches.cpp index 4df1064ce..bcfd0f373 100644 --- a/src/live_effects/lpe-rough-hatches.cpp +++ b/src/live_effects/lpe-rough-hatches.cpp @@ -226,24 +226,24 @@ LPERoughHatches::LPERoughHatches(LivePathEffectObject *lpeobject) : dist_rdm(_("Frequency randomness"), _("Variation of distance between hatches, in %."), "dist_rdm", &wr, this, 75), growth(_("Growth"), _("Growth of distance between hatches."), "growth", &wr, this, 0.), //FIXME: top/bottom names are inverted in the UI/svg and in the code!! - scale_tf(_("Half turns smoothness: 1st side, in"), _("Set smoothness/sharpness of path when reaching a 'bottom' halfturn. 0=sharp, 1=default"), "scale_bf", &wr, this, 1.), - scale_tb(_("1st side, out"), _("Set smoothness/sharpness of path when leaving a 'bottom' halfturn. 0=sharp, 1=default"), "scale_bb", &wr, this, 1.), - scale_bf(_("2nd side, in"), _("Set smoothness/sharpness of path when reaching a 'top' halfturn. 0=sharp, 1=default"), "scale_tf", &wr, this, 1.), - scale_bb(_("2nd side, out"), _("Set smoothness/sharpness of path when leaving a 'top' halfturn. 0=sharp, 1=default"), "scale_tb", &wr, this, 1.), - top_edge_variation(_("Magnitude jitter: 1st side"), _("Randomly moves 'bottom' halfsturns to produce magnitude variations."), "bottom_edge_variation", &wr, this, 0), - bot_edge_variation(_("2nd side"), _("Randomly moves 'top' halfsturns to produce magnitude variations."), "top_edge_variation", &wr, this, 0), - top_tgt_variation(_("Parallelism jitter: 1st side"), _("Add direction randomness by moving 'bottom' halfsturns tangentially to the boundary."), "bottom_tgt_variation", &wr, this, 0), - bot_tgt_variation(_("2nd side"), _("Add direction randomness by randomly moving 'top' halfsturns tangentially to the boundary."), "top_tgt_variation", &wr, this, 0), - top_smth_variation(_("Variance: 1st side"), _("Randomness of 'bottom' halfturns smoothness"), "top_smth_variation", &wr, this, 0), - bot_smth_variation(_("2nd side"), _("Randomness of 'top' halfturns smoothness"), "bottom_smth_variation", &wr, this, 0), + scale_tf(_("Half-turns smoothness: 1st side, in"), _("Set smoothness/sharpness of path when reaching a 'bottom' half-turn. 0=sharp, 1=default"), "scale_bf", &wr, this, 1.), + scale_tb(_("1st side, out"), _("Set smoothness/sharpness of path when leaving a 'bottom' half-turn. 0=sharp, 1=default"), "scale_bb", &wr, this, 1.), + scale_bf(_("2nd side, in"), _("Set smoothness/sharpness of path when reaching a 'top' half-turn. 0=sharp, 1=default"), "scale_tf", &wr, this, 1.), + scale_bb(_("2nd side, out"), _("Set smoothness/sharpness of path when leaving a 'top' half-turn. 0=sharp, 1=default"), "scale_tb", &wr, this, 1.), + top_edge_variation(_("Magnitude jitter: 1st side"), _("Randomly moves 'bottom' half-turns to produce magnitude variations."), "bottom_edge_variation", &wr, this, 0), + bot_edge_variation(_("2nd side"), _("Randomly moves 'top' half-turns to produce magnitude variations."), "top_edge_variation", &wr, this, 0), + top_tgt_variation(_("Parallelism jitter: 1st side"), _("Add direction randomness by moving 'bottom' half-turns tangentially to the boundary."), "bottom_tgt_variation", &wr, this, 0), + bot_tgt_variation(_("2nd side"), _("Add direction randomness by randomly moving 'top' half-turns tangentially to the boundary."), "top_tgt_variation", &wr, this, 0), + top_smth_variation(_("Variance: 1st side"), _("Randomness of 'bottom' half-turns smoothness"), "top_smth_variation", &wr, this, 0), + bot_smth_variation(_("2nd side"), _("Randomness of 'top' half-turns smoothness"), "bottom_smth_variation", &wr, this, 0), // - fat_output(_("Generate thick/thin path"), _("Simulate a stroke of varrying width"), "fat_output", &wr, this, true), + fat_output(_("Generate thick/thin path"), _("Simulate a stroke of varying width"), "fat_output", &wr, this, true), do_bend(_("Bend hatches"), _("Add a global bend to the hatches (slower)"), "do_bend", &wr, this, true), - stroke_width_top(_("Thickness: at 1st side"), _("Width at 'bottom' half turns"), "stroke_width_top", &wr, this, 1.), - stroke_width_bot(_("at 2nd side"), _("Width at 'top' halfturns"), "stroke_width_bottom", &wr, this, 1.), + stroke_width_top(_("Thickness: at 1st side"), _("Width at 'bottom' half-turns"), "stroke_width_top", &wr, this, 1.), + stroke_width_bot(_("at 2nd side"), _("Width at 'top' half-turns"), "stroke_width_bottom", &wr, this, 1.), // - front_thickness(_("from 2nd to 1st side"), _("Width of paths from 'top' to 'bottom' halfturns"), "front_thickness", &wr, this, 1.), - back_thickness(_("from 1st to 2nd side"), _("Width of paths from 'top' to 'bottom' halfturns"), "back_thickness", &wr, this, .25), + front_thickness(_("from 2nd to 1st side"), _("Width from 'top' to 'bottom'"), "front_thickness", &wr, this, 1.), + back_thickness(_("from 1st to 2nd side"), _("Width from 'bottom' to 'top'"), "back_thickness", &wr, this, .25), direction(_("Hatches width and dir"), _("Defines hatches frequency and direction"), "direction", &wr, this, Geom::Point(50,0)), // diff --git a/src/live_effects/lpe-vonkoch.cpp b/src/live_effects/lpe-vonkoch.cpp index 32fb763d3..7fd0ac0b4 100644 --- a/src/live_effects/lpe-vonkoch.cpp +++ b/src/live_effects/lpe-vonkoch.cpp @@ -49,7 +49,7 @@ LPEVonKoch::LPEVonKoch(LivePathEffectObject *lpeobject) : similar_only(_("Use uniform transforms only"), _("2 consecutive segments are used to reverse/preserve orientation only (otherwise, they define a general transform)."), "similar_only", &wr, this, false), drawall(_("Draw all generations"), _("If unchecked, draw only the last generation"), "drawall", &wr, this, true), //,draw_boxes(_("Display boxes"), _("Display boxes instead of paths only"), "draw_boxes", &wr, this, true) - ref_path(_("Reference segment"), _("The reference segment. Defaults to bbox diameter."), "ref_path", &wr, this, "M0,0 L10,0"), + ref_path(_("Reference segment"), _("The reference segment. Defaults to the horizontal midline of the bbox."), "ref_path", &wr, this, "M0,0 L10,0"), //refA(_("Ref Start"), _("Left side middle of the reference box"), "refA", &wr, this), //refB(_("Ref End"), _("Right side middle of the reference box"), "refB", &wr, this), //FIXME: a path is used here instead of 2 points to work around path/point param incompatibility bug. diff --git a/src/object-edit.cpp b/src/object-edit.cpp index c8e3ab204..6b83413e4 100644 --- a/src/object-edit.cpp +++ b/src/object-edit.cpp @@ -930,7 +930,7 @@ ArcKnotHolder::ArcKnotHolder(SPDesktop *desktop, SPItem *item, SPKnotHolderRelea _("Adjust ellipse height, with Ctrl to make circle"), SP_KNOT_SHAPE_SQUARE, SP_KNOT_MODE_XOR); entity_start->create(desktop, item, this, - _("Position the start point of the arc or segment; with Ctrl" + _("Position the start point of the arc or segment; with Ctrl " "to snap angle; drag inside the ellipse for arc, outside for segment"), SP_KNOT_SHAPE_CIRCLE, SP_KNOT_MODE_XOR); entity_end->create(desktop, item, this, diff --git a/src/sp-item.cpp b/src/sp-item.cpp index 662dc1cac..395048280 100644 --- a/src/sp-item.cpp +++ b/src/sp-item.cpp @@ -1062,7 +1062,7 @@ sp_item_description(SPItem *item) const gchar *label = SP_OBJECT_STYLE(item)->filter.href->getObject()->label(); gchar *snew; if (label) { - snew = g_strdup_printf (_("%s; filtered (%s)"), s, label); + snew = g_strdup_printf (_("%s; filtered (%s)"), s, _(label)); } else { snew = g_strdup_printf (_("%s; filtered"), s); } diff --git a/src/ui/dialog/inkscape-preferences.cpp b/src/ui/dialog/inkscape-preferences.cpp index 9b6d9e084..438371b8c 100644 --- a/src/ui/dialog/inkscape-preferences.cpp +++ b/src/ui/dialog/inkscape-preferences.cpp @@ -220,11 +220,11 @@ void InkscapePreferences::initPageSnapping() _snap_delay.init("/options/snapdelay/value", 0, 1000, 50, 100, 300, 0); _page_snapping.add_line( false, _("Delay (in ms):"), _snap_delay, "", - _("Postpone snapping as long as the mouse is moving, and then wait an additional fraction of a second. This additional delay is specified here. When set to zero or to a very small number, snapping will be immediate"), true); + _("Postpone snapping as long as the mouse is moving, and then wait an additional fraction of a second. This additional delay is specified here. When set to zero or to a very small number, snapping will be immediate."), true); _snap_closest_only.init( _("Only snap the node closest to the pointer"), "/options/snapclosestonly/value", false); _page_snapping.add_line( false, "", _snap_closest_only, "", - _("Only try to snap the node that is initialy closest to the mouse pointer")); + _("Only try to snap the node that is initially closest to the mouse pointer")); _snap_weight.init("/options/snapweight/value", 0, 1, 0.1, 0.2, 0.5, 1); _page_snapping.add_line( false, _("Weight factor:"), _snap_weight, "", diff --git a/src/widgets/sp-color-icc-selector.cpp b/src/widgets/sp-color-icc-selector.cpp index 80a551f6a..916e4363c 100644 --- a/src/widgets/sp-color-icc-selector.cpp +++ b/src/widgets/sp-color-icc-selector.cpp @@ -303,7 +303,7 @@ void ColorICCSelector::init() _profileSel = gtk_combo_box_new_text(); - gtk_combo_box_append_text( GTK_COMBO_BOX(_profileSel), "" ); + gtk_combo_box_append_text( GTK_COMBO_BOX(_profileSel), _("") ); gtk_widget_show( _profileSel ); gtk_combo_box_set_active( GTK_COMBO_BOX(_profileSel), 0 ); gtk_table_attach( GTK_TABLE(t), _profileSel, 1, 2, row, row + 1, GTK_FILL, GTK_FILL, XPAD, YPAD ); @@ -576,7 +576,7 @@ void ColorICCSelector::_profilesChanged( std::string const & name ) gtk_combo_box_remove_text( combo, 0 ); } - gtk_combo_box_append_text( combo, ""); + gtk_combo_box_append_text( combo, _("")); gtk_combo_box_set_active( combo, 0 );