Fri, 27 Sep 2013 17:49:40 +0200 Laurent Bessard Added support for loading XML file even if not following XSD schema (but still following XML syntax), warning user of errors in XML file
Tue, 24 Sep 2013 15:18:25 +0200 Laurent Bessard Fixed bug when compiling
Tue, 24 Sep 2013 00:50:02 +0200 Laurent Bessard Fixed higen example removing obsolete attribute in CIA402 node params file
Tue, 24 Sep 2013 00:48:21 +0200 Laurent Bessard Fixed controllers for working with latest version of xmlclass
Tue, 25 Jun 2013 00:55:38 +0200 Laurent Bessard Added bug in support for set flag for optional variables activation in axis public struct
Mon, 24 Jun 2013 23:53:57 +0200 Laurent Bessard Added support for set flag for optional variables activation in axis public struct
Mon, 24 Jun 2013 21:03:22 +0200 Laurent Bessard Replaced location for axis ref from %IW(location).0 to %IW(location).402. Added location for network position at %IW(location).
Mon, 24 Jun 2013 09:23:28 +0200 Laurent Bessard Rewrite CIA402 node specific code generating part
Wed, 02 Apr 2014 15:03:32 +0200 Edouard Tisserant Cherry-pick and re-commit to legitimate ancestor of commit 'Ethercat Management Function Refactoring Source by RTES Lab.' from youcu <youcu1022@gmail.com>
Mon, 03 Jun 2013 08:24:08 +0200 Laurent Bessard Fixed bug when drag'n dropping variable in master startup command grid
Tue, 21 May 2013 16:03:40 +0900 Edouard Tisserant Moved ratio scaling back to MCL. Rewrote CiA402 C part in a way it can be read and understood by some humans.
Thu, 16 May 2013 23:21:01 +0200 Laurent Bessard Added icon for Ethercat extension root and Ethercat master node
Fri, 10 May 2013 09:16:07 +0200 Laurent Bessard Fixed bug with global instance declaration
Fri, 10 May 2013 08:44:05 +0200 Laurent Bessard Fix bug in when moving Ethercat slaves fixed
Wed, 08 May 2013 10:40:06 +0200 Laurent Bessard Added mapping for TouchProbe function in CIA402 slave node
Fri, 03 May 2013 13:47:51 +0200 Laurent Bessard Fixed bug with axes boolean parameters value
Thu, 02 May 2013 13:40:35 +0200 Laurent Bessard Added error message when a device informations can't be found in ESI files
Thu, 02 May 2013 10:21:47 +0200 Laurent Bessard Fixed ToolTip on VariablesGrid columns on Windows
Tue, 30 Apr 2013 01:39:54 +0200 Laurent Bessard Update higen drive example introducing usage of csv mode
Tue, 30 Apr 2013 01:31:47 +0200 Laurent Bessard Merged
Mon, 29 Apr 2013 11:07:32 +0200 Laurent Bessard Fixed bug in support for module extra params in EthercatCFileGenerator
Mon, 29 Apr 2013 11:03:06 +0200 Laurent Bessard Added support for module extra params in EthercatCFileGenerator
Fri, 26 Apr 2013 23:23:09 +0200 Laurent Bessard Fixed support for multiple module extra params in ModulesLibrary
Fri, 26 Apr 2013 13:57:10 +0200 Laurent Bessard Added support for multiple module extra params in ModulesLibrary
Thu, 25 Apr 2013 23:01:06 +0200 Laurent Bessard Added support for using CIA402 motion mode csp, csv and cst
Fri, 26 Apr 2013 13:59:43 +0200 Laurent Bessard Fixed order of LocationCFilesAndCFLAGS, master was called after slaves in PLC init and retrieve functions
Wed, 24 Apr 2013 23:27:35 +0200 Laurent Bessard Fixed bug on Windows with sizers on Windows in Master Editor panel when its size changed
Wed, 24 Apr 2013 17:27:31 +0200 Laurent Bessard Fixed Save As... function in Beremiz
Mon, 22 Apr 2013 23:54:22 +0200 Laurent Bessard Added support for stopping SDOThreadProc when stopping PLC
Mon, 22 Apr 2013 09:30:48 +0200 Laurent Bessard Fixed bug when modifying slave module type
Fri, 19 Apr 2013 00:55:40 +0200 Laurent Bessard Fixed bug in filters behavior on Windows
Thu, 18 Apr 2013 00:48:32 +0200 Laurent Bessard Fixed filter behavior in MasterEditor and SlaveEditor
Tue, 16 Apr 2013 00:53:38 +0200 Laurent Bessard Fixed CIA402 node template for working with MC_Power modification removing implicit set position
Mon, 15 Apr 2013 00:40:47 +0200 Laurent Bessard Fix scan network functionality, project tree not refreshed after adding slaves
Mon, 15 Apr 2013 00:37:59 +0200 Laurent Bessard Rollback last commit
Sat, 13 Apr 2013 12:27:49 +0200 Laurent Bessard Fixed CIA402 node template for working with MC_Power modification removing implicit set position
Sat, 13 Apr 2013 02:14:37 +0200 Laurent Bessard Fixed bugs in drag'n drop from variables panel in master and slaves editor panel
Sat, 13 Apr 2013 01:40:31 +0200 Laurent Bessard Added initialization of abort_code and result_size to prevent warning message if not used in following code
Sat, 13 Apr 2013 01:39:05 +0200 Laurent Bessard Fixed header files inclusion in CIA402 node template file
Fri, 12 Apr 2013 15:41:22 +0900 Edouard Tisserant Fixed (again) some non-clean exit in case of SDO failure at init
Thu, 11 Apr 2013 10:32:58 +0200 Laurent Bessard Merged
Fri, 05 Apr 2013 00:14:00 +0200 Laurent Bessard Fixed ethercat test with higen drive project
Fri, 05 Apr 2013 00:09:54 +0200 Laurent Bessard Fixed bug when using real axis and simulated axis at the same time (got the same index)
Fri, 05 Apr 2013 21:47:37 +0900 Edouard Tisserant Now failure in template based part of C code also release the master for later use...
Fri, 05 Apr 2013 16:49:41 +0900 Edouard Tisserant Better logging, saffer failure at init (allows restart)
Fri, 05 Apr 2013 11:55:09 +0900 Edouard Tisserant Added error logging when SDO FB fails
Thu, 04 Apr 2013 17:50:43 +0900 Edouard Tisserant Added logging based on collecting Kernel logs
Thu, 04 Apr 2013 14:32:02 +0900 Edouard Tisserant Fixed typo
Fri, 29 Mar 2013 14:25:10 +0900 Edouard Tisserant Fixed linking with non RTDM etherlab lib. Now with rtdm...
Fri, 29 Mar 2013 01:15:01 +0100 Laurent Bessard Split etherlab.py into multiple files
Fri, 29 Mar 2013 01:13:17 +0100 Laurent Bessard Fixed bug with process variables grid
Thu, 28 Mar 2013 18:06:03 +0900 Edouard Tisserant Stripped useless depricated comments, changed print format of sdo abort code
Thu, 28 Mar 2013 15:50:23 +0900 Edouard Tisserant Updated generated code to etherlab 1.5.2
Tue, 26 Mar 2013 12:42:49 +0900 Edouard Tisserant Added Logging
Tue, 26 Mar 2013 09:34:30 +0900 Edouard Tisserant Now use beremiz.h
Wed, 20 Mar 2013 09:17:15 +0100 Laurent Bessard Fixed bugs in Network Configuration Editor
Thu, 14 Mar 2013 17:29:59 +0900 Edouard Tisserant CiA402 now fills NetworkPosition member of public axis struct
Thu, 07 Mar 2013 00:54:45 +0100 Laurent Bessard Fixed bugs in process variables generated code
Wed, 06 Mar 2013 19:25:20 +0100 Laurent Bessard Added specific add menu for directly choose slave type while adding new slave
Wed, 06 Mar 2013 18:38:17 +0100 Laurent Bessard Added code generation for process variables
Wed, 06 Mar 2013 18:37:23 +0100 Laurent Bessard Fixed modifications in Startup Commands grid
Tue, 05 Mar 2013 23:04:59 +0100 Laurent Bessard Improved Ethercat Network Configurator panels
Tue, 05 Mar 2013 00:59:34 +0100 Laurent Bessard Improved Ethercat Network Configurator panels
Wed, 27 Feb 2013 22:40:45 +0100 Laurent Bessard Added panel for managing ESI files from project and from database including module PDO alignment setting
Thu, 07 Feb 2013 00:59:50 +0100 Laurent Bessard Added support for MC_*DigitalOutput, MC_ReadAxisInfo and MC_ReadAxisError blocks from MCL in DS402 nodes generated code
Wed, 30 Jan 2013 23:46:58 +0100 Laurent Bessard Replaced SplitterWindow in ConfTreeNodeEditor by Notebook
Fri, 16 Nov 2012 23:43:45 +0100 Laurent Bessard Fix bug in support for Etherlab specific fieldbus interface function blocks
Fri, 16 Nov 2012 00:23:35 +0100 Laurent Bessard Fix bug in support for Etherlab specific fieldbus interface function blocks
Thu, 15 Nov 2012 22:43:44 +0100 Laurent Bessard Adding support for Etherlab specific function blocks for MCL fieldbus interface function blocks
Fri, 09 Nov 2012 11:27:30 +0100 Laurent Bessard Adding support for extracting ActualVelocity from CIA402 nodes PDOs
Fri, 09 Nov 2012 11:25:44 +0100 Laurent Bessard Fix bug in EtherLabSDODownload function block
Wed, 31 Oct 2012 12:06:04 +0100 Laurent Bessard Fix bug when Drag'n Dropping located variables on Windows
Wed, 31 Oct 2012 11:54:26 +0100 Laurent Bessard Adding support for using Etherlab SDO function blocks in MCL
Tue, 30 Oct 2012 00:22:29 +0100 Laurent Bessard Updating ethercat example for higen drive adding an example of Ethercat SDO upload block usage
Thu, 25 Oct 2012 19:55:02 +0200 Laurent Bessard Adding block library for SDO download and SDO upload
Fri, 19 Oct 2012 16:37:54 +0200 Laurent Bessard Fix bug in CIA402 slave digital inputs
Fri, 19 Oct 2012 12:43:42 +0200 Laurent Bessard Adding support to enable CIA402 slave digital inputs
Thu, 18 Oct 2012 01:23:35 +0200 Laurent Bessard Fix Axis_Ref type defined in VariableLocationTree
Wed, 17 Oct 2012 19:12:08 +0200 Laurent Bessard Adding support for selecting a PDO in a list of mutually exclusive configured PDOs in Ethercat Network Configurator
Sat, 13 Oct 2012 22:48:05 +0200 Laurent Bessard Fix bug in endianization in value transmit and received by SDO
Sun, 23 Sep 2012 23:52:47 +0200 Laurent Bessard Fix bug when modifying slave position
Sun, 23 Sep 2012 23:25:57 +0200 Laurent Bessard Fix C code Generator to use CoE section contained in the slave ESI file for defining Ethercat network configuration
Sat, 22 Sep 2012 12:07:06 +0200 Laurent Bessard Merged
Wed, 19 Sep 2012 11:03:25 +0200 Laurent Bessard Fix bug when modifying slave position
Fri, 21 Sep 2012 16:02:33 +0200 Edouard Tisserant Better jitter compensation before sending Ethercat frame. Jitter can be compensed in both directions, within some limits
Wed, 19 Sep 2012 03:30:58 +0200 Edouard Tisserant Different etherlab sequencing within retrieve and publish. Now, timer is polled after PLC exec until frame have to be sent. This slightly reduce jitter, compared to previous sequencing
Thu, 13 Sep 2012 11:07:51 +0200 Laurent Bessard Adding support for loading Profile dictionaries only if needed
Wed, 12 Sep 2012 18:13:28 +0200 Laurent Bessard Fix bug modules present in all groups with the same name even if they are defined by different vendors
Sun, 09 Sep 2012 22:59:07 +0200 Laurent Bessard Fix bug variable entries table column headers not translated
Fri, 07 Sep 2012 18:30:35 +0200 Laurent Bessard Fix import after integration of plcopeneditor into Beremiz
Tue, 04 Sep 2012 15:00:35 +0200 Laurent Bessard Removing call to UpdateAxis and ComputeAxis in CIA DS402 node generated retrieve and publish functions. These calls have been transfered to MCL library retrieve and publish functions.
Fri, 20 Jul 2012 02:13:07 +0200 Laurent Bessard Fix bug with AXIS_REF allocation
Mon, 25 Jun 2012 20:06:17 +0200 Laurent Bessard Adding support using plcopeneditor bitmap library for icon request
Mon, 25 Jun 2012 12:12:51 +0200 Laurent Bessard Fix bug slave information panel not refreshed when slave type changed
Tue, 19 Jun 2012 20:28:05 +0200 Laurent Bessard Fix bug when modifying node parameters
Mon, 11 Jun 2012 02:37:23 +0200 laurent Merged
Mon, 11 Jun 2012 02:25:57 +0200 Laurent Bessard Fix disable dynamic PDOs support
Mon, 11 Jun 2012 01:21:26 +0200 Laurent Bessard Fix bug with AXIS_REF located variable drag'n drop and disable dynamic PDOs support
Sun, 10 Jun 2012 20:16:17 +0200 Laurent Bessard Adding support for getting CIA402 slave AXIS_REF located variables and disabling dynamic PDO mapping algorithm for drives than doesn't support this functionality
Mon, 04 Jun 2012 19:00:58 +0200 Edouard Tisserant Changed AXIS_REF registration call name
Wed, 23 May 2012 16:30:41 +0200 Laurent Bessard Fixing bug on ConfNodeEditors refresh
Wed, 23 May 2012 16:13:49 +0200 Edouard Tisserant fixed multiple cia402 instance symbol collision
Wed, 23 May 2012 10:39:14 +0200 Laurent Bessard Replacing Panel by ScrolledWindow for displaying node information for more clarity when window is small
Tue, 22 May 2012 22:28:05 +0200 Laurent Bessard Removing ModesOfOperation parameter until handled by MCL
Mon, 21 May 2012 18:47:56 +0200 laurent Fix bug with VariablesList on Windows
Mon, 21 May 2012 10:21:41 +0200 laurent refactoring
Mon, 21 May 2012 10:07:35 +0200 laurent Merged
Mon, 21 May 2012 10:07:11 +0200 laurent refactoring
Mon, 21 May 2012 09:31:15 +0200 laurent Merged
Fri, 18 May 2012 18:51:07 +0200 laurent refactoring
Mon, 21 May 2012 04:34:10 +0200 Edouard Tisserant Fixed example build with installer 1.1
Sun, 20 May 2012 23:05:36 +0200 Edouard Tisserant updated examples also
Sun, 20 May 2012 22:42:37 +0200 Edouard Tisserant reflected changes in beremiz extension mechanism
Mon, 14 May 2012 07:43:40 +0900 edouard_and_laurent Fixed wrong PDO in unused sync managers\nFix higen drive ethercat example
Mon, 30 Apr 2012 16:21:30 +0200 laurent Fix Ethercat xsd files
Sun, 01 Apr 2012 16:36:41 +0200 laurent Adding test project using higen drive
Sat, 31 Mar 2012 15:13:14 +0200 laurent Adding forgotten icons
Wed, 21 Mar 2012 11:15:47 +0100 laurent Adding plugin icons and replacing reference to DS402 by CIA402
Mon, 19 Mar 2012 00:45:19 +0100 laurent Adding support for remotely scanning Etherlab network and automatically configure it
Sun, 18 Mar 2012 23:57:32 +0100 laurent Defining all slaves as Etherlab master subplugin instead of editing them in an editor with vertical notebook
Sun, 11 Mar 2012 21:57:00 +0100 laurent Adding Ethercat network scan command for testing (print result, network configuration not modified)
Sun, 11 Mar 2012 21:53:35 +0100 laurent Adding support for uploading default value for unused entries in output pdos from slaves before starting master
Sun, 11 Mar 2012 19:32:44 +0100 laurent Replacing wx.Grid control by a wx.TreeListCtrl for displaying slaves entries
Wed, 29 Feb 2012 12:00:20 +0100 laurent Fix bug when trying to drag'n drop variable from slave variables grid
Thu, 23 Feb 2012 23:34:40 +0100 laurent Adding support for setting TargetPosition only if PositionSetPoint value from MCL is valid
Thu, 23 Feb 2012 15:48:19 +0100 laurent Fix bug with PowerFeedback value
Wed, 22 Feb 2012 01:39:22 +0100 laurent Adding support for MCL
Thu, 16 Feb 2012 18:40:13 +0100 Edouard Tisserant Added test directory
Wed, 15 Feb 2012 00:38:26 +0100 laurent Adding support for DS402 node subplugin (only simple state transition implemented)
Tue, 07 Feb 2012 19:45:45 +0100 laurent Fix some issues regarding arbitrary variable mapping
Wed, 01 Feb 2012 00:04:58 +0100 laurent Moving Add and Remove button to Plugin menu items
Tue, 17 Jan 2012 17:24:53 +0100 laurent Adding support for displaying slave sync managers and profile object dictionary and for arbitrarily mapping variable through variable location
Tue, 10 Jan 2012 15:11:22 +0100 laurent Merge with Donggu modifications
Tue, 10 Jan 2012 15:10:08 +0100 laurent Merge with Donggu modifications
Sun, 08 Jan 2012 19:05:05 +0100 laurent Adding support for drag'n dropping located variables from topology panel to configurations and resources variable panel for declaring global located variables
Thu, 22 Dec 2011 14:52:18 +0900 Donggu Kang Master relase code added
Thu, 22 Dec 2011 14:44:58 +0900 Donggu Kang Master release code added
Tue, 20 Dec 2011 23:43:27 +0100 laurent Adding support for not configuring pdos when not mandatory and not needed by locations defined in PLC program. Adding support for displaying locations tree in Topology panel and BrowseLocationsDialog. Merging pdos grid and variables grid into one single grid in slave infos panel.
Sun, 18 Dec 2011 19:42:13 +0100 laurent First working implementation of Beremiz plugin for etherlab
Mon, 11 Jun 2018 08:34:15 +0200 Edouard Tisserant merge
Fri, 08 Jun 2018 13:28:00 +0200 Edouard Tisserant Add BACnet extension from Mario de Sousa <msousa@fe.up.pt>
Fri, 08 Jun 2018 09:43:48 +0200 Edouard Tisserant Make Modbus extension license compatible with the rest of Beremiz IDE python code : GPLv2.
Mon, 04 Jun 2018 11:22:08 +0200 Edouard Tisserant Commented out safety check to prevent deadlock in wxEvaluator, since wx Mainloop is not anymore in main thread. That safety check actually leads to having wx code running outside of MainLoop
Wed, 23 May 2018 20:22:45 +0200 Edouard Tisserant Merge
Wed, 23 May 2018 12:13:48 +0300 Andrey Skvortsov Print version information about software used for tests
Wed, 23 May 2018 11:48:34 +0300 Andrey Skvortsov Fix codestyle
Wed, 23 May 2018 11:47:56 +0300 Andrey Skvortsov Fix typos introduced by 9fa2f8e "Fixed random segfault happening when loading new PLC in runtime, when using Xenonai."
Tue, 22 May 2018 17:28:18 +0300 Andrey Skvortsov merged changes in README.md
Mon, 12 Mar 2018 14:10:19 +0000 Sergey Surkov add python-cycler dependence in readme
Wed, 23 May 2018 10:53:57 +0200 Edouard Tisserant Make Modbus mutexes non blocking for PLC. If data related to some modbus request is alredy locked when PLC wants to access it, then data isn't copied to/from PLC
Thu, 17 May 2018 09:33:58 +0200 Edouard Tisserant Merged #2476, URI dialog fixes
Thu, 17 May 2018 09:33:14 +0200 Edouard Tisserant close branch #2476 - URI dialog fixed #2476
Mon, 14 May 2018 13:26:35 +0200 dporopat #2476 Changes to the comment. #2476
Thu, 10 May 2018 13:11:11 +0200 dporopat #2476 Connectors dialog module added. #2476
Wed, 09 May 2018 15:09:54 +0200 dporopat #2476 Separate connectors dialogs from connectors module. #2476
Wed, 09 May 2018 11:16:27 +0200 dporopat #2476 Additional check added if we can import wx. #2476
Thu, 10 May 2018 08:33:50 +0200 Edouard Tisserant Allow deleting configuration tree node with no corresponding directory in project tree
Mon, 07 May 2018 15:10:39 +0200 Edouard Tisserant Support unicode in LDFLAGS returned by extensions
Mon, 07 May 2018 14:19:08 +0200 Edouard Tisserant Fixed typos
Fri, 20 Apr 2018 11:21:20 +0200 dporopat #2476 Added uri location editor, getting connectors from list in Beremiz. #2476
Fri, 27 Apr 2018 16:32:53 +0200 Edouard Tisserant Fixed random segfault happening when loading new PLC in runtime, when using Xenonai.
Thu, 19 Apr 2018 15:17:05 +0200 Edouard Tisserant PEP-8 and PyLint
Thu, 19 Apr 2018 15:03:23 +0200 Edouard Tisserant merged Denis change to apply input as we type in CTN configuration forms text fieds
Thu, 19 Apr 2018 14:53:42 +0200 Edouard Tisserant PEP-8 and PyLint
Thu, 19 Apr 2018 13:09:41 +0200 Edouard Tisserant Add safety check to prevent exception when disconnecting while debugging
Thu, 19 Apr 2018 13:02:13 +0200 Edouard Tisserant Removed DebugThread. Take advantage of the fact that buffering is done in runtime. No need to poll for traces more than ten per second, then use simple wxTimer for that. Also removed Debug Lock since now everything happens in wx' mainloop.
Thu, 19 Apr 2018 12:22:40 +0200 Edouard Tisserant Rework of runtime non-real-time threading, and shared object dynamic loading :
Tue, 17 Apr 2018 11:19:18 +0200 Edouard Tisserant Stripped forgotten debug code
Thu, 19 Apr 2018 15:06:10 +0200 Edouard Tisserant close branch #2476
Thu, 19 Apr 2018 09:50:00 +0200 dporopat #2476 Fix for saving text in URI edit text box. No need to click out of URI edit text box to save edited text. #2476
Mon, 16 Apr 2018 16:11:18 +0200 Edouard Tisserant Fixed Xenomai 3 PLC stop freeze. Now use explicit finish command with pipes. Closing both ends of pipes doesn't abort blocking read anymore.
Mon, 16 Apr 2018 11:00:04 +0200 Edouard Tisserant More canonical test.
Sat, 14 Apr 2018 10:09:33 +0200 Edouard Tisserant PLCObject got more methods serialized through worker : Start, Stop, NewPLC.
Fri, 13 Apr 2018 00:29:52 +0200 Edouard Tisserant Fixed implementation of runtime worker that ensure that PLCObject Load and Unload methods always run main thread.
Thu, 12 Apr 2018 22:32:43 +0200 Edouard Tisserant merged
Thu, 12 Apr 2018 22:32:12 +0200 Edouard Tisserant merged
Thu, 12 Apr 2018 22:20:38 +0200 Edouard Tisserant Intermediate state while implementing runtime worker to ensure that PLCObject Load and Unload methods always run main thread.
Thu, 12 Apr 2018 16:38:09 +0200 Edouard Tisserant Stripped more dead code.
Thu, 12 Apr 2018 16:33:44 +0200 Edouard Tisserant Cleanup of some dead code in PYRO connector.
Thu, 12 Apr 2018 16:31:30 +0200 Edouard Tisserant Added logging in Xenomai init phase.
Thu, 12 Apr 2018 16:29:43 +0200 Edouard Tisserant Apply new RT Pipes API from Xenomai 3
Thu, 12 Apr 2018 16:27:22 +0200 Edouard Tisserant Removed useless try/except in Canfestival.py
Tue, 10 Apr 2018 13:36:36 +0200 dporopat #2579 On showing search result, text color of tree item is set to white. We need to change back color to show the result.
Thu, 29 Mar 2018 23:33:36 +0200 Edouard Tisserant PEP-8...
Thu, 29 Mar 2018 23:25:26 +0200 Edouard Tisserant Fixed bug that was creating many frames at starup on Windows
Sun, 25 Mar 2018 16:22:36 +0200 Edouard Tisserant re-merge
Mon, 19 Mar 2018 16:18:17 +0100 Edouard Tisserant Xenomai 3
Fri, 02 Mar 2018 17:01:25 +0100 Edouard Tisserant merged Sergeys changes
Mon, 19 Feb 2018 19:36:43 +0300 Surkov Sergey fix bug with indelible values in some 'optional' fields in project properties panel
Mon, 19 Feb 2018 19:10:07 +0300 Surkov Sergey make the URI model compatible with https
Mon, 19 Feb 2018 19:02:25 +0300 Surkov Sergey add address validation in Company URL field
Fri, 02 Feb 2018 17:16:04 +0300 Surkov Sergey remove duplicating code for variables name generate