public void Initialize(RepositoryDllJsonStrategy strategyRepository, IStatusReporter statusReporter) {
			this.strategyRepository = strategyRepository;
			this.statusReporter = statusReporter;
			
			bool createdNewFile = this.dataSnapshotSerializer.Initialize(this.strategyRepository.RootPath,
				"Sq1.Widgets.StrategiesTree.StrategiesTreeDataSnapshot.json", "Workspaces",
				Assembler.InstanceInitialized.AssemblerDataSnapshot.CurrentWorkspaceName, false, true);
			this.dataSnapshot = this.dataSnapshotSerializer.Deserialize();
			
			this.populateStrategyRepositoryIntoTreeListView();
		}
//		[Obsolete("looks illogical, move IStatusReporter to Initialize() and use Assembler.InstanceInitialized instead of Assembler.Constructed")]
//		protected Assembler(IStatusReporter mainForm) : this() {
//			this.StatusReporter = mainForm;
//			Assembler.instance = this;
//		}
		public Assembler() {
			this.RepositoryCustomSymbolInfo = new RepositoryCustomSymbolInfo();
			this.MarketInfoRepository = new RepositoryCustomMarketInfo();
			this.RepositoryJsonDataSource = new RepositoryJsonDataSource();
			this.RepositoryDllJsonStrategy = new RepositoryDllJsonStrategy();

			this.RepositoryDllStaticProvider = new RepositoryDllStaticProvider();
			this.RepositoryDllStreamingProvider = new RepositoryDllStreamingProvider();
			this.RepositoryDllBrokerProvider = new RepositoryDllBrokerProvider();
			this.RepositoryDllReporters = new RepositoryDllReporters();
			
			this.WorkspacesRepository = new RepositoryFoldersNoJson();

			//this.ChartRendererConfigured = new ChartRenderer();
			this.OrderProcessor = new OrderProcessor();
			this.AlertsForChart = new DictionaryManyToOne<ChartShadow, Alert>();
			
			this.AssemblerDataSnapshot = new AssemblerDataSnapshot();
			this.AssemblerDataSnapshotSerializer = new Serializer<AssemblerDataSnapshot>();
		}
		public ScriptEditorFormFactory(ChartFormManager chartFormsManager, RepositoryDllJsonStrategy strategyRepository) {
			this.chartFormManager = chartFormsManager;
			this.strategyRepository = strategyRepository;
		}