gitextract_1exs9n_q/ ├── .github/ │ ├── ISSUE_TEMPLATE.md │ └── workflows/ │ ├── ci-linux.yml │ ├── ci-macOS.yml │ ├── ci-windows.yml │ └── gradle-wrapper-validation.yml ├── .gitignore ├── .travis.yml ├── COPYING ├── README.adoc ├── README.html ├── README.md ├── build.gradle.kts ├── changelog.adoc ├── deployfx/ │ └── gnome-money.icns ├── gradle/ │ └── wrapper/ │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradle.properties ├── gradlew ├── gradlew.bat ├── jGnash ├── jgnash-bayes/ │ ├── build.gradle.kts │ └── src/ │ └── main/ │ └── java/ │ └── jgnash/ │ └── bayes/ │ └── BayesClassifier.java ├── jgnash-convert/ │ ├── build.gradle.kts │ └── src/ │ └── main/ │ ├── java/ │ │ └── jgnash/ │ │ └── convert/ │ │ ├── common/ │ │ │ └── OfxTags.java │ │ ├── exportantur/ │ │ │ ├── csv/ │ │ │ │ └── CsvExport.java │ │ │ └── ofx/ │ │ │ └── OfxExport.java │ │ └── importat/ │ │ ├── BayesImportClassifier.java │ │ ├── DateFormat.java │ │ ├── GenericImport.java │ │ ├── ImportBank.java │ │ ├── ImportFilter.java │ │ ├── ImportSecurity.java │ │ ├── ImportState.java │ │ ├── ImportTransaction.java │ │ ├── ImportUtils.java │ │ ├── ofx/ │ │ │ ├── OfxBank.java │ │ │ ├── OfxImport.java │ │ │ ├── OfxV1ToV2.java │ │ │ ├── OfxV2Parser.java │ │ │ └── Sanitize.java │ │ └── qif/ │ │ ├── QifAccount.java │ │ ├── QifCategory.java │ │ ├── QifImport.java │ │ ├── QifParser.java │ │ ├── QifReader.java │ │ ├── QifSplitTransaction.java │ │ ├── QifTransaction.java │ │ └── QifUtils.java │ └── resources/ │ └── jgnash/ │ └── convert/ │ └── scripts/ │ └── tidy.js ├── jgnash-core/ │ ├── build.gradle.kts │ └── src/ │ └── main/ │ ├── java/ │ │ └── jgnash/ │ │ ├── engine/ │ │ │ ├── AbstractInvestmentTransactionEntry.java │ │ │ ├── Account.java │ │ │ ├── AccountGroup.java │ │ │ ├── AccountProxy.java │ │ │ ├── AccountTreeXMLFactory.java │ │ │ ├── AccountType.java │ │ │ ├── AccountUtils.java │ │ │ ├── AmortizeObject.java │ │ │ ├── AttachmentUtils.java │ │ │ ├── CashFlow.java │ │ │ ├── CommodityNode.java │ │ │ ├── Comparators.java │ │ │ ├── Config.java │ │ │ ├── CurrencyNode.java │ │ │ ├── DataStore.java │ │ │ ├── DataStoreType.java │ │ │ ├── DefaultCurrencies.java │ │ │ ├── Engine.java │ │ │ ├── EngineException.java │ │ │ ├── EngineFactory.java │ │ │ ├── ExchangeRate.java │ │ │ ├── ExchangeRateDAO.java │ │ │ ├── ExchangeRateHistoryNode.java │ │ │ ├── InvestmentAccountProxy.java │ │ │ ├── InvestmentPerformanceSummary.java │ │ │ ├── InvestmentTransaction.java │ │ │ ├── MathConstants.java │ │ │ ├── QuoteSource.java │ │ │ ├── RecTransaction.java │ │ │ ├── ReconcileManager.java │ │ │ ├── ReconciledState.java │ │ │ ├── RootAccount.java │ │ │ ├── SecurityHistoryEvent.java │ │ │ ├── SecurityHistoryEventType.java │ │ │ ├── SecurityHistoryNode.java │ │ │ ├── SecurityNode.java │ │ │ ├── StoredObject.java │ │ │ ├── StoredObjectComparator.java │ │ │ ├── Tag.java │ │ │ ├── Transaction.java │ │ │ ├── TransactionEntry.java │ │ │ ├── TransactionEntryAbstractIncrease.java │ │ │ ├── TransactionEntryAddX.java │ │ │ ├── TransactionEntryBuyX.java │ │ │ ├── TransactionEntryDividendX.java │ │ │ ├── TransactionEntryMergeX.java │ │ │ ├── TransactionEntryReinvestDivX.java │ │ │ ├── TransactionEntryRemoveX.java │ │ │ ├── TransactionEntryRocX.java │ │ │ ├── TransactionEntrySellX.java │ │ │ ├── TransactionEntrySplitX.java │ │ │ ├── TransactionFactory.java │ │ │ ├── TransactionTag.java │ │ │ ├── TransactionType.java │ │ │ ├── TrashObject.java │ │ │ ├── attachment/ │ │ │ │ ├── AttachmentManager.java │ │ │ │ ├── AttachmentTransferClient.java │ │ │ │ ├── AttachmentTransferServer.java │ │ │ │ ├── DistributedAttachmentManager.java │ │ │ │ ├── LocalAttachmentManager.java │ │ │ │ └── NettyTransferHandler.java │ │ │ ├── budget/ │ │ │ │ ├── Budget.java │ │ │ │ ├── BudgetFactory.java │ │ │ │ ├── BudgetGoal.java │ │ │ │ ├── BudgetPeriodDescriptor.java │ │ │ │ ├── BudgetPeriodDescriptorFactory.java │ │ │ │ ├── BudgetPeriodResults.java │ │ │ │ ├── BudgetResultsModel.java │ │ │ │ └── Pattern.java │ │ │ ├── concurrent/ │ │ │ │ ├── DistributedLockManager.java │ │ │ │ ├── DistributedLockServer.java │ │ │ │ ├── LocalLockManager.java │ │ │ │ ├── LockManager.java │ │ │ │ ├── Priority.java │ │ │ │ └── PriorityThreadPoolExecutor.java │ │ │ ├── dao/ │ │ │ │ ├── AbstractDAO.java │ │ │ │ ├── AccountDAO.java │ │ │ │ ├── BudgetDAO.java │ │ │ │ ├── CommodityDAO.java │ │ │ │ ├── ConfigDAO.java │ │ │ │ ├── DAO.java │ │ │ │ ├── EngineDAO.java │ │ │ │ ├── RecurringDAO.java │ │ │ │ ├── TagDAO.java │ │ │ │ ├── TransactionDAO.java │ │ │ │ └── TrashDAO.java │ │ │ ├── jpa/ │ │ │ │ ├── AbstractJpaDAO.java │ │ │ │ ├── AbstractJpaDataStore.java │ │ │ │ ├── JpaAccountDAO.java │ │ │ │ ├── JpaBudgetDAO.java │ │ │ │ ├── JpaCommodityDAO.java │ │ │ │ ├── JpaConfigDAO.java │ │ │ │ ├── JpaConfiguration.java │ │ │ │ ├── JpaEngineDAO.java │ │ │ │ ├── JpaH2DataStore.java │ │ │ │ ├── JpaH2MvDataStore.java │ │ │ │ ├── JpaHsqlDataStore.java │ │ │ │ ├── JpaNetworkServer.java │ │ │ │ ├── JpaRecurringDAO.java │ │ │ │ ├── JpaTagDAO.java │ │ │ │ ├── JpaTransactionDAO.java │ │ │ │ ├── JpaTrashDAO.java │ │ │ │ ├── JpaTrashEntity.java │ │ │ │ └── SqlUtils.java │ │ │ ├── message/ │ │ │ │ ├── ChannelEvent.java │ │ │ │ ├── LocalServerListener.java │ │ │ │ ├── Message.java │ │ │ │ ├── MessageBus.java │ │ │ │ ├── MessageBusClient.java │ │ │ │ ├── MessageBusServer.java │ │ │ │ ├── MessageChannel.java │ │ │ │ ├── MessageListener.java │ │ │ │ ├── MessageProperty.java │ │ │ │ ├── MessageProxy.java │ │ │ │ └── XStreamFactory.java │ │ │ ├── recurring/ │ │ │ │ ├── DailyReminder.java │ │ │ │ ├── MonthlyReminder.java │ │ │ │ ├── OneTimeReminder.java │ │ │ │ ├── PendingReminder.java │ │ │ │ ├── RecurringIterator.java │ │ │ │ ├── Reminder.java │ │ │ │ ├── ReminderType.java │ │ │ │ ├── WeeklyReminder.java │ │ │ │ └── YearlyReminder.java │ │ │ └── xstream/ │ │ │ ├── AbstractXStreamContainer.java │ │ │ ├── AbstractXStreamDAO.java │ │ │ ├── BinaryContainer.java │ │ │ ├── BinaryXStreamDataStore.java │ │ │ ├── StoredObjectReflectionProvider.java │ │ │ ├── XMLContainer.java │ │ │ ├── XMLDataStore.java │ │ │ ├── XStreamAccountDAO.java │ │ │ ├── XStreamBudgetDAO.java │ │ │ ├── XStreamCommodityDAO.java │ │ │ ├── XStreamConfigDAO.java │ │ │ ├── XStreamEngineDAO.java │ │ │ ├── XStreamJVM9.java │ │ │ ├── XStreamRecurringDAO.java │ │ │ ├── XStreamTagDAO.java │ │ │ ├── XStreamTransactionDAO.java │ │ │ └── XStreamTrashDAO.java │ │ ├── net/ │ │ │ ├── AbstractAuthenticator.java │ │ │ ├── ConnectionFactory.java │ │ │ ├── YahooCrumbManager.java │ │ │ ├── currency/ │ │ │ │ ├── CurrencyConverterParser.java │ │ │ │ ├── CurrencyParser.java │ │ │ │ └── CurrencyUpdateFactory.java │ │ │ └── security/ │ │ │ ├── NullParser.java │ │ │ ├── SecurityParser.java │ │ │ ├── UpdateFactory.java │ │ │ ├── YahooEventParser.java │ │ │ └── iex/ │ │ │ └── IEXParser.java │ │ ├── report/ │ │ │ ├── BalanceByMonthCSVReport.java │ │ │ ├── ProfitLossTextReport.java │ │ │ ├── ReportPeriod.java │ │ │ └── ReportPeriodUtils.java │ │ ├── text/ │ │ │ └── NumericFormats.java │ │ ├── time/ │ │ │ ├── DateUtils.java │ │ │ └── Period.java │ │ └── util/ │ │ ├── CollectionUtils.java │ │ ├── DefaultDaemonThreadFactory.java │ │ ├── EncodeDecode.java │ │ ├── EncryptionManager.java │ │ ├── FileLocker.java │ │ ├── FileMagic.java │ │ ├── FileUtils.java │ │ ├── LocaleObject.java │ │ ├── LockedCommodityNode.java │ │ ├── LogUtil.java │ │ ├── MathEval.java │ │ ├── MultiHashMap.java │ │ ├── NewFileUtility.java │ │ ├── NotNull.java │ │ ├── Nullable.java │ │ ├── SearchUtils.java │ │ ├── function/ │ │ │ ├── MemoPredicate.java │ │ │ ├── ParentAccountPredicate.java │ │ │ ├── PayeePredicate.java │ │ │ ├── ReconciledPredicate.java │ │ │ ├── TagPredicate.java │ │ │ └── TransactionAgePredicate.java │ │ └── prefs/ │ │ ├── MapBasedPreferences.java │ │ ├── MapPreferencesFactory.java │ │ └── PortablePreferences.java │ └── resources/ │ ├── META-INF/ │ │ └── persistence.xml │ └── logging.properties ├── jgnash-fx/ │ ├── build.gradle.kts │ ├── scripts/ │ │ ├── clean-security-history.js │ │ └── helloworld.js │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── jgnash/ │ │ │ ├── app/ │ │ │ │ ├── jGnash.java │ │ │ │ └── jGnashFx.java │ │ │ ├── bootloader/ │ │ │ │ ├── BootLoader.java │ │ │ │ └── BootLoaderDialog.java │ │ │ └── uifx/ │ │ │ ├── Options.java │ │ │ ├── StaticUIMethods.java │ │ │ ├── about/ │ │ │ │ └── AboutDialogController.java │ │ │ ├── actions/ │ │ │ │ ├── DatabasePathAction.java │ │ │ │ ├── DefaultCurrencyAction.java │ │ │ │ ├── DefaultLocaleAction.java │ │ │ │ ├── ExecuteJavaScriptAction.java │ │ │ │ ├── ExportAccountsAction.java │ │ │ │ ├── ImportAccountsAction.java │ │ │ │ ├── ImportOfxAction.java │ │ │ │ └── ImportQifAction.java │ │ │ ├── control/ │ │ │ │ ├── AbstractAccountTreeController.java │ │ │ │ ├── AccountComboBox.java │ │ │ │ ├── Alert.java │ │ │ │ ├── AutoCompleteTextField.java │ │ │ │ ├── BigDecimalTableCell.java │ │ │ │ ├── BusyPane.java │ │ │ │ ├── CheckComboBox.java │ │ │ │ ├── CheckListView.java │ │ │ │ ├── ChoiceDialog.java │ │ │ │ ├── CurrencyComboBox.java │ │ │ │ ├── DataStoreTypeComboBox.java │ │ │ │ ├── DatePickerEx.java │ │ │ │ ├── DateRangeDialogController.java │ │ │ │ ├── DecimalTextField.java │ │ │ │ ├── DetailedDecimalTextField.java │ │ │ │ ├── DoughnutChart.java │ │ │ │ ├── ExceptionDialog.java │ │ │ │ ├── ImageDialog.java │ │ │ │ ├── IntegerTextField.java │ │ │ │ ├── IntegerTreeTableCell.java │ │ │ │ ├── LockedCommodityListCell.java │ │ │ │ ├── NullTableViewSelectionModel.java │ │ │ │ ├── PopOverButton.java │ │ │ │ ├── QuoteSourceComboBox.java │ │ │ │ ├── SecurityComboBox.java │ │ │ │ ├── SecurityHistoryEventTypeComboBox.java │ │ │ │ ├── SecurityNodeAreaChart.java │ │ │ │ ├── ShortDateTableCell.java │ │ │ │ ├── StatusBar.java │ │ │ │ ├── TabViewPane.java │ │ │ │ ├── TableViewEx.java │ │ │ │ ├── TextFieldEx.java │ │ │ │ ├── TextInputDialog.java │ │ │ │ ├── TimePeriodComboBox.java │ │ │ │ ├── TransactionNumberComboBox.java │ │ │ │ ├── autocomplete/ │ │ │ │ │ ├── AutoCompleteFactory.java │ │ │ │ │ ├── AutoCompleteModel.java │ │ │ │ │ └── DefaultAutoCompleteModel.java │ │ │ │ └── wizard/ │ │ │ │ ├── AbstractWizardPaneController.java │ │ │ │ ├── WizardDescriptor.java │ │ │ │ ├── WizardDialogController.java │ │ │ │ └── WizardPaneController.java │ │ │ ├── dialog/ │ │ │ │ ├── ChangeDatabasePasswordDialogController.java │ │ │ │ ├── ImportScriptsDialogController.java │ │ │ │ ├── PackDatabaseDialogController.java │ │ │ │ ├── RemoteConnectionDialogController.java │ │ │ │ ├── TagManagerDialogController.java │ │ │ │ ├── currency/ │ │ │ │ │ ├── AddRemoveCurrencyController.java │ │ │ │ │ ├── EditExchangeRatesController.java │ │ │ │ │ └── ModifyCurrencyController.java │ │ │ │ ├── options/ │ │ │ │ │ ├── AccountTabController.java │ │ │ │ │ ├── DataProviderTabController.java │ │ │ │ │ ├── FormatsTabController.java │ │ │ │ │ ├── GeneralTabController.java │ │ │ │ │ ├── NetworkTabController.java │ │ │ │ │ ├── OptionDialogController.java │ │ │ │ │ ├── RegisterTabController.java │ │ │ │ │ ├── RemindersTabController.java │ │ │ │ │ ├── ReportTabController.java │ │ │ │ │ ├── StartupShutdownTabController.java │ │ │ │ │ └── TransactionNumberDialogController.java │ │ │ │ └── security/ │ │ │ │ ├── CreateModifySecuritiesController.java │ │ │ │ ├── HistoricalImportController.java │ │ │ │ └── SecurityHistoryController.java │ │ │ ├── net/ │ │ │ │ └── NetworkAuthenticator.java │ │ │ ├── report/ │ │ │ │ ├── AbstractSumByTypeReport.java │ │ │ │ ├── AccountBalanceChartController.java │ │ │ │ ├── AccountRegisterReport.java │ │ │ │ ├── AccountRegisterReportController.java │ │ │ │ ├── BalanceByMonthOptionsDialogController.java │ │ │ │ ├── BalanceSheetReport.java │ │ │ │ ├── BalanceSheetReportController.java │ │ │ │ ├── ChartUtilities.java │ │ │ │ ├── IncomeExpenseBarChartDialogController.java │ │ │ │ ├── IncomeExpensePayeePieChartDialogController.java │ │ │ │ ├── IncomeExpensePieChartDialogController.java │ │ │ │ ├── ListOfAccountsReport.java │ │ │ │ ├── ListOfAccountsReportController.java │ │ │ │ ├── NetWorthReport.java │ │ │ │ ├── NetWorthReportController.java │ │ │ │ ├── PortfolioReport.java │ │ │ │ ├── PortfolioReportController.java │ │ │ │ ├── ProfitLossReport.java │ │ │ │ ├── ProfitLossReportController.java │ │ │ │ ├── ReportActions.java │ │ │ │ ├── TransactionTagPieChartDialogController.java │ │ │ │ └── pdf/ │ │ │ │ ├── PageFormatDialogController.java │ │ │ │ ├── ReportController.java │ │ │ │ └── ReportViewerDialogController.java │ │ │ ├── resource/ │ │ │ │ ├── cursor/ │ │ │ │ │ └── CustomCursor.java │ │ │ │ └── font/ │ │ │ │ └── MaterialDesignLabel.java │ │ │ ├── skin/ │ │ │ │ ├── BaseColorDialogController.java │ │ │ │ ├── FontSizeDialogController.java │ │ │ │ ├── StyleClass.java │ │ │ │ └── ThemeManager.java │ │ │ ├── tasks/ │ │ │ │ ├── BootEngineTask.java │ │ │ │ ├── CloseFileTask.java │ │ │ │ ├── PackDatabaseTask.java │ │ │ │ └── SaveAsTask.java │ │ │ ├── util/ │ │ │ │ ├── AccountTypeFilter.java │ │ │ │ ├── FXMLUtils.java │ │ │ │ ├── FileChooserFactory.java │ │ │ │ ├── InjectFXML.java │ │ │ │ ├── JavaFXUtils.java │ │ │ │ ├── StageUtils.java │ │ │ │ ├── TableViewManager.java │ │ │ │ └── TreeSearch.java │ │ │ ├── views/ │ │ │ │ ├── AccountBalanceDisplayManager.java │ │ │ │ ├── AccountBalanceDisplayMode.java │ │ │ │ ├── accounts/ │ │ │ │ │ ├── AccountCommodityFormatTreeTableCell.java │ │ │ │ │ ├── AccountPropertiesController.java │ │ │ │ │ ├── AccountTypeFilterFormController.java │ │ │ │ │ ├── AccountsViewController.java │ │ │ │ │ ├── SelectAccountController.java │ │ │ │ │ ├── SelectAccountSecuritiesDialog.java │ │ │ │ │ └── StaticAccountsMethods.java │ │ │ │ ├── budget/ │ │ │ │ │ ├── BudgetGoalsDialogController.java │ │ │ │ │ ├── BudgetManagerDialogController.java │ │ │ │ │ ├── BudgetPropertiesDialogController.java │ │ │ │ │ ├── BudgetSparkLine.java │ │ │ │ │ ├── BudgetTableController.java │ │ │ │ │ ├── BudgetViewController.java │ │ │ │ │ └── HistoricalBudgetDialogController.java │ │ │ │ ├── main/ │ │ │ │ │ ├── ConsoleDialogController.java │ │ │ │ │ ├── MainToolBarController.java │ │ │ │ │ ├── MainView.java │ │ │ │ │ ├── MenuBarController.java │ │ │ │ │ └── OpenDatabaseController.java │ │ │ │ ├── recurring/ │ │ │ │ │ ├── AbstractTabController.java │ │ │ │ │ ├── DayTabController.java │ │ │ │ │ ├── MonthTabController.java │ │ │ │ │ ├── NoneTabController.java │ │ │ │ │ ├── NotificationDialog.java │ │ │ │ │ ├── RecurringDialogController.java │ │ │ │ │ ├── RecurringEntryDialog.java │ │ │ │ │ ├── RecurringPropertiesController.java │ │ │ │ │ ├── RecurringTabController.java │ │ │ │ │ ├── RecurringViewController.java │ │ │ │ │ ├── WeekTabController.java │ │ │ │ │ └── YearTabController.java │ │ │ │ └── register/ │ │ │ │ ├── AbstractInvIncomeSlipController.java │ │ │ │ ├── AbstractInvSlipController.java │ │ │ │ ├── AbstractPriceQtyInvSlipController.java │ │ │ │ ├── AbstractSlipController.java │ │ │ │ ├── AbstractTransactionEntryDialog.java │ │ │ │ ├── AbstractTransactionEntrySlipController.java │ │ │ │ ├── AbstractTransactionTableCell.java │ │ │ │ ├── AccountExchangePane.java │ │ │ │ ├── AccountPropertyWrapper.java │ │ │ │ ├── AdjustSharesSlipController.java │ │ │ │ ├── AdjustmentSlipController.java │ │ │ │ ├── AmortizeSetupDialogController.java │ │ │ │ ├── AttachmentPane.java │ │ │ │ ├── BankRegisterPaneController.java │ │ │ │ ├── BaseSlip.java │ │ │ │ ├── BasicRegisterTableController.java │ │ │ │ ├── BuyShareSlipController.java │ │ │ │ ├── DateTransNumberDialogController.java │ │ │ │ ├── DecreaseAmountProperty.java │ │ │ │ ├── DividendSlipController.java │ │ │ │ ├── FeeDialog.java │ │ │ │ ├── FeePane.java │ │ │ │ ├── FeeTransactionEntrySlipController.java │ │ │ │ ├── GainLossDialog.java │ │ │ │ ├── GainLossPane.java │ │ │ │ ├── GainLossTransactionEntrySlipController.java │ │ │ │ ├── IncreaseAmountProperty.java │ │ │ │ ├── InvestmentRegisterPaneController.java │ │ │ │ ├── InvestmentRegisterTableController.java │ │ │ │ ├── InvestmentSlipManager.java │ │ │ │ ├── InvestmentTransactionDialog.java │ │ │ │ ├── InvestmentTransactionQuantityTableCell.java │ │ │ │ ├── LiabilityRegisterPaneController.java │ │ │ │ ├── LockedBasicRegisterPaneController.java │ │ │ │ ├── LockedInvestmentRegisterPaneController.java │ │ │ │ ├── RegisterActions.java │ │ │ │ ├── RegisterFactory.java │ │ │ │ ├── RegisterPaneController.java │ │ │ │ ├── RegisterStage.java │ │ │ │ ├── RegisterTableController.java │ │ │ │ ├── RegisterViewController.java │ │ │ │ ├── ReinvestDividendSlipController.java │ │ │ │ ├── ReturnOfCapitalSlipController.java │ │ │ │ ├── SellShareSlipController.java │ │ │ │ ├── Slip.java │ │ │ │ ├── SlipController.java │ │ │ │ ├── SlipControllerContainer.java │ │ │ │ ├── SlipType.java │ │ │ │ ├── SplitMergeSharesSlipController.java │ │ │ │ ├── SplitTransactionDialog.java │ │ │ │ ├── SplitTransactionSlipController.java │ │ │ │ ├── TransactionCommodityFormatTableCell.java │ │ │ │ ├── TransactionDateTableCell.java │ │ │ │ ├── TransactionDateTimeTableCell.java │ │ │ │ ├── TransactionDialog.java │ │ │ │ ├── TransactionEntryCommodityFormatTableCell.java │ │ │ │ ├── TransactionStringTableCell.java │ │ │ │ ├── TransactionTagDialogController.java │ │ │ │ ├── TransactionTagPane.java │ │ │ │ ├── TransferSlipController.java │ │ │ │ └── reconcile/ │ │ │ │ ├── ReconcileDialogController.java │ │ │ │ └── ReconcileSettingsDialogController.java │ │ │ └── wizard/ │ │ │ ├── file/ │ │ │ │ ├── NewFileFourController.java │ │ │ │ ├── NewFileOneController.java │ │ │ │ ├── NewFileSummaryController.java │ │ │ │ ├── NewFileThreeController.java │ │ │ │ ├── NewFileTwoController.java │ │ │ │ └── NewFileWizard.java │ │ │ └── imports/ │ │ │ ├── ImportPageOneController.java │ │ │ ├── ImportPageThreeController.java │ │ │ ├── ImportPageTwoController.java │ │ │ └── ImportWizard.java │ │ └── resources/ │ │ ├── META-INF/ │ │ │ └── MANIFEST.MF │ │ └── jgnash/ │ │ ├── skin/ │ │ │ ├── default.css │ │ │ ├── tableHideHorizontalScrollBar.css │ │ │ └── tableHideVerticalScrollBar.css │ │ └── uifx/ │ │ ├── about/ │ │ │ └── AboutDialog.fxml │ │ ├── control/ │ │ │ ├── AlertDialog.fxml │ │ │ ├── ChoiceDialog.fxml │ │ │ ├── DateRangeDialog.fxml │ │ │ ├── DetailedDecimalTextField.fxml │ │ │ ├── ExceptionDialog.fxml │ │ │ ├── TabViewPane.fxml │ │ │ ├── TextInputDialog.fxml │ │ │ └── wizard/ │ │ │ └── WizardDialog.fxml │ │ ├── dialog/ │ │ │ ├── ChangePasswordDialog.fxml │ │ │ ├── ImportScriptsDialog.fxml │ │ │ ├── PackDatabaseDialog.fxml │ │ │ ├── RemoteConnectionDialog.fxml │ │ │ ├── TagManagerDialog.fxml │ │ │ ├── currency/ │ │ │ │ ├── AddRemoveCurrency.fxml │ │ │ │ ├── EditExchangeRates.fxml │ │ │ │ └── ModifyCurrency.fxml │ │ │ ├── options/ │ │ │ │ ├── AccountTab.fxml │ │ │ │ ├── DataProviderTab.fxml │ │ │ │ ├── FormatsTab.fxml │ │ │ │ ├── GeneralTab.fxml │ │ │ │ ├── NetworkTab.fxml │ │ │ │ ├── OptionDialog.fxml │ │ │ │ ├── RegisterTab.fxml │ │ │ │ ├── RemindersTab.fxml │ │ │ │ ├── ReportTab.fxml │ │ │ │ ├── StartupShutdownTab.fxml │ │ │ │ └── TransactionNumberDialog.fxml │ │ │ └── security/ │ │ │ ├── CreateModifySecurities.fxml │ │ │ ├── HistoricalImport.fxml │ │ │ └── SecurityHistory.fxml │ │ ├── report/ │ │ │ ├── AccountBalanceChart.fxml │ │ │ ├── AccountRegisterReport.fxml │ │ │ ├── BalanceByMonthOptionsDialog.fxml │ │ │ ├── BalanceSheetReport.fxml │ │ │ ├── IncomeExpenseBarChartDialog.fxml │ │ │ ├── IncomeExpensePayeePieChartDialog.fxml │ │ │ ├── IncomeExpensePieChartDialog.fxml │ │ │ ├── ListOfAccountsReport.fxml │ │ │ ├── NetWorthReport.fxml │ │ │ ├── PortfolioReport.fxml │ │ │ ├── ProfitLossReport.fxml │ │ │ ├── TransactionTagPieChartDialog.fxml │ │ │ └── pdf/ │ │ │ ├── PageFormatDialog.fxml │ │ │ └── ReportViewerDialog.fxml │ │ ├── skin/ │ │ │ ├── BaseColorDialog.fxml │ │ │ └── FontSizeDialog.fxml │ │ ├── views/ │ │ │ ├── accounts/ │ │ │ │ ├── AccountProperties.fxml │ │ │ │ ├── AccountTypeFilterForm.fxml │ │ │ │ ├── AccountsView.fxml │ │ │ │ └── SelectAccountForm.fxml │ │ │ ├── budget/ │ │ │ │ ├── BudgetGoalsDialog.fxml │ │ │ │ ├── BudgetManagerDialog.fxml │ │ │ │ ├── BudgetPropertiesDialog.fxml │ │ │ │ ├── BudgetTable.fxml │ │ │ │ ├── BudgetView.fxml │ │ │ │ └── HistoricalBudgetDialog.fxml │ │ │ ├── main/ │ │ │ │ ├── ConsoleDialog.fxml │ │ │ │ ├── MainMenuBar.fxml │ │ │ │ ├── MainToolBar.fxml │ │ │ │ └── OpenDatabaseForm.fxml │ │ │ ├── recurring/ │ │ │ │ ├── DayTab.fxml │ │ │ │ ├── MonthTab.fxml │ │ │ │ ├── NoneTab.fxml │ │ │ │ ├── NotificationDialog.fxml │ │ │ │ ├── RecurringDialog.fxml │ │ │ │ ├── RecurringProperties.fxml │ │ │ │ ├── RecurringView.fxml │ │ │ │ ├── WeekTab.fxml │ │ │ │ └── YearTab.fxml │ │ │ └── register/ │ │ │ ├── AccountExchangePane.fxml │ │ │ ├── AdjustSharesSlip.fxml │ │ │ ├── AdjustmentSlip.fxml │ │ │ ├── AmortizeSetupDialog.fxml │ │ │ ├── AttachmentPane.fxml │ │ │ ├── BankSlip.fxml │ │ │ ├── BasicRegisterPane.fxml │ │ │ ├── BasicRegisterTable.fxml │ │ │ ├── BuyShareSlip.fxml │ │ │ ├── DateTransNumberDialog.fxml │ │ │ ├── DividendSlip.fxml │ │ │ ├── FeeDialog.fxml │ │ │ ├── FeeTransactionEntrySlip.fxml │ │ │ ├── GainLossDialog.fxml │ │ │ ├── GainLossTransactionEntrySlip.fxml │ │ │ ├── InvestmentRegisterPane.fxml │ │ │ ├── InvestmentRegisterTable.fxml │ │ │ ├── InvestmentTransactionDialog.fxml │ │ │ ├── InvestmentTransactionPane.fxml │ │ │ ├── LiabilityRegisterPane.fxml │ │ │ ├── LockedBasicRegisterPane.fxml │ │ │ ├── LockedInvestmentRegisterPane.fxml │ │ │ ├── RegisterView.fxml │ │ │ ├── ReinvestDividendSlip.fxml │ │ │ ├── ReturnOfCapitalSlip.fxml │ │ │ ├── SellShareSlip.fxml │ │ │ ├── SplitMergeSharesSlip.fxml │ │ │ ├── SplitTransactionDialog.fxml │ │ │ ├── SplitTransactionSlip.fxml │ │ │ ├── TransactionDialog.fxml │ │ │ ├── TransactionTagDialog.fxml │ │ │ ├── TransactionTagPane.fxml │ │ │ ├── TransferSlip.fxml │ │ │ └── reconcile/ │ │ │ ├── ReconcileDialog.fxml │ │ │ └── ReconcileSettingsDialog.fxml │ │ └── wizard/ │ │ ├── file/ │ │ │ ├── NewFileFour.fxml │ │ │ ├── NewFileOne.fxml │ │ │ ├── NewFileSummary.fxml │ │ │ ├── NewFileThree.fxml │ │ │ └── NewFileTwo.fxml │ │ └── imports/ │ │ ├── ImportPageOne.fxml │ │ ├── ImportPageThree.fxml │ │ └── ImportPageTwo.fxml │ └── test/ │ └── java/ │ └── jgnash/ │ └── uifx/ │ ├── ControlsTest.java │ └── control/ │ └── autocomplete/ │ └── AutoCompleteModelTest.java ├── jgnash-fx-test-plugin/ │ ├── build.gradle.kts │ └── src/ │ └── main/ │ └── java/ │ └── jgnash/ │ └── uifx/ │ └── plugin/ │ └── TestFxPlugin.java ├── jgnash-manual/ │ ├── readme.md │ ├── sample.bxds │ └── src/ │ ├── Manual.tex │ ├── fdl-1.3.tex │ └── gpl-3.0.tex ├── jgnash-plugin/ │ ├── build.gradle.kts │ └── src/ │ └── main/ │ └── java/ │ └── jgnash/ │ └── plugin/ │ ├── FxPlugin.java │ ├── Plugin.java │ └── PluginFactory.java ├── jgnash-report-core/ │ ├── build.gradle.kts │ └── src/ │ └── main/ │ └── java/ │ └── jgnash/ │ └── report/ │ ├── pdf/ │ │ ├── Constants.java │ │ ├── FontRegistry.java │ │ ├── PageSize.java │ │ ├── Report.java │ │ └── ReportFactory.java │ ├── poi/ │ │ ├── BudgetResultsExport.java │ │ ├── StyleFactory.java │ │ └── Workbook.java │ ├── table/ │ │ ├── AbstractReportTableModel.java │ │ ├── ColumnStyle.java │ │ ├── GroupInfo.java │ │ ├── Row.java │ │ └── SortOrder.java │ └── ui/ │ └── ReportPrintFactory.java ├── jgnash-resources/ │ ├── build.gradle.kts │ └── src/ │ └── main/ │ ├── java/ │ │ └── jgnash/ │ │ └── resource/ │ │ └── util/ │ │ ├── ClassPathUtils.java │ │ ├── HTMLResource.java │ │ ├── MonthName.java │ │ ├── OS.java │ │ ├── ResourceUtils.java │ │ ├── TextResource.java │ │ └── Version.java │ └── resources/ │ └── jgnash/ │ └── resource/ │ ├── account/ │ │ ├── cs/ │ │ │ ├── common.xml │ │ │ ├── set.txt │ │ │ └── spouse.xml │ │ ├── de/ │ │ │ ├── set.txt │ │ │ ├── spouse.xml │ │ │ └── standard.xml │ │ ├── en/ │ │ │ ├── common.xml │ │ │ ├── set.txt │ │ │ └── spouse.xml │ │ ├── pt/ │ │ │ ├── common.xml │ │ │ ├── set.txt │ │ │ └── spouse.xml │ │ └── zh/ │ │ ├── common.xml │ │ ├── set.txt │ │ └── spouse.xml │ ├── constants.properties │ ├── html/ │ │ └── en/ │ │ ├── apache-license.html │ │ ├── credits.html │ │ ├── gpl-license.html │ │ ├── jgnash-license.html │ │ ├── lgpl.html │ │ ├── notice.html │ │ └── xstream-license.html │ ├── resource.properties │ ├── resource_cs.properties │ ├── resource_de.properties │ ├── resource_en.properties │ ├── resource_en_GB.properties │ ├── resource_es.properties │ ├── resource_fr.properties │ ├── resource_it.properties │ ├── resource_iw.properties │ ├── resource_lt.properties │ ├── resource_nl.properties │ ├── resource_pl.properties │ ├── resource_pt.properties │ ├── resource_ru.properties │ ├── resource_uk.properties │ ├── resource_zh.properties │ ├── resource_zh_TW.properties │ └── text/ │ ├── cs/ │ │ ├── ArchiveDate.txt │ │ ├── ArchiveEquity.txt │ │ ├── ArchiveFile.txt │ │ ├── CreateNewFile.txt │ │ ├── DupeTransImport.txt │ │ ├── FileNotSaved.txt │ │ ├── ImportFileZero.txt │ │ ├── ImportOne.txt │ │ ├── ImportTwo.txt │ │ ├── NewFileFour.txt │ │ ├── NewFileOne.txt │ │ ├── NewFileThree.txt │ │ ├── NewFileTwo.txt │ │ ├── QifOne.txt │ │ └── QifTwo.txt │ ├── de/ │ │ ├── ArchiveDate.txt │ │ ├── ArchiveEquity.txt │ │ ├── ArchiveFile.txt │ │ ├── CreateNewFile.txt │ │ ├── DupeTransImport.txt │ │ ├── FileNotSaved.txt │ │ ├── ImportFileZero.txt │ │ ├── ImportOne.txt │ │ ├── ImportTwo.txt │ │ ├── NewBudgetOne.txt │ │ ├── NewFileFour.txt │ │ ├── NewFileOne.txt │ │ ├── NewFileThree.txt │ │ ├── NewFileTwo.txt │ │ ├── QifOne.txt │ │ └── QifTwo.txt │ ├── en/ │ │ ├── ArchiveDate.txt │ │ ├── ArchiveEquity.txt │ │ ├── ArchiveFile.txt │ │ ├── CreateNewFile.txt │ │ ├── DupeTransImport.txt │ │ ├── FileNotSaved.txt │ │ ├── ImportFileZero.txt │ │ ├── ImportOne.txt │ │ ├── ImportTwo.txt │ │ ├── NewBudgetOne.txt │ │ ├── NewFileFour.txt │ │ ├── NewFileOne.txt │ │ ├── NewFileThree.txt │ │ ├── NewFileTwo.txt │ │ ├── QifOne.txt │ │ └── QifTwo.txt │ ├── es/ │ │ ├── ArchiveDate.txt │ │ ├── ArchiveEquity.txt │ │ ├── ArchiveFile.txt │ │ ├── CreateNewFile.txt │ │ ├── DupeTransImport.txt │ │ ├── FileNotSaved.txt │ │ ├── NewFileFour.txt │ │ ├── NewFileThree.txt │ │ ├── NewFileTwo.txt │ │ ├── QifOne.txt │ │ └── QifTwo.txt │ ├── fr/ │ │ ├── ArchiveDate.txt │ │ ├── ArchiveEquity.txt │ │ ├── ArchiveFile.txt │ │ ├── CreateNewFile.txt │ │ ├── DupeTransImport.txt │ │ ├── FileNotSaved.txt │ │ ├── NewFileFour.txt │ │ ├── NewFileThree.txt │ │ ├── NewFileTwo.txt │ │ ├── QifOne.txt │ │ └── QifTwo.txt │ ├── it/ │ │ ├── CreateNewFile.txt │ │ ├── FileNotSaved.txt │ │ ├── NewFileFour.txt │ │ ├── NewFileThree.txt │ │ ├── NewFileTwo.txt │ │ ├── QifOne.txt │ │ └── QifTwo.txt │ ├── lt/ │ │ ├── ArchiveDate.txt │ │ ├── ArchiveEquity.txt │ │ ├── ArchiveFile.txt │ │ ├── CreateNewFile.txt │ │ ├── FileNotSaved.txt │ │ ├── NewFileFour.txt │ │ ├── NewFileThree.txt │ │ ├── NewFileTwo.txt │ │ ├── QifOne.txt │ │ └── QifTwo.txt │ ├── nl/ │ │ ├── ArchiveDate.txt │ │ ├── ArchiveEquity.txt │ │ ├── ArchiveFile.txt │ │ ├── CreateNewFile.txt │ │ ├── DupeTransImport.txt │ │ ├── FileNotSaved.txt │ │ ├── NewFileFour.txt │ │ ├── NewFileThree.txt │ │ ├── NewFileTwo.txt │ │ ├── QifOne.txt │ │ └── QifTwo.txt │ ├── pl/ │ │ ├── ArchiveDate.txt │ │ ├── ArchiveEquity.txt │ │ ├── ArchiveFile.txt │ │ ├── CreateNewFile.txt │ │ ├── DupeTransImport.txt │ │ ├── FileNotSaved.txt │ │ ├── ImportFileZero.txt │ │ ├── ImportOne.txt │ │ ├── ImportTwo.txt │ │ ├── NewBudgetOne.txt │ │ ├── NewFileFour.txt │ │ ├── NewFileOne.txt │ │ ├── NewFileThree.txt │ │ ├── NewFileTwo.txt │ │ ├── QifOne.txt │ │ └── QifTwo.txt │ ├── pt/ │ │ ├── ArchiveDate.txt │ │ ├── ArchiveEquity.txt │ │ ├── ArchiveFile.txt │ │ ├── CreateNewFile.txt │ │ ├── DupeTransImport.txt │ │ ├── FileNotSaved.txt │ │ ├── ImportFileZero.txt │ │ ├── ImportOne.txt │ │ ├── ImportTwo.txt │ │ ├── NewFileFour.txt │ │ ├── NewFileOne.txt │ │ ├── NewFileThree.txt │ │ ├── NewFileTwo.txt │ │ ├── QifOne.txt │ │ └── QifTwo.txt │ ├── ru/ │ │ ├── ArchiveDate.txt │ │ ├── ArchiveEquity.txt │ │ ├── ArchiveFile.txt │ │ ├── CreateNewFile.txt │ │ ├── DupeTransImport.txt │ │ ├── FileNotSaved.txt │ │ ├── NewFileFour.txt │ │ ├── NewFileThree.txt │ │ ├── NewFileTwo.txt │ │ ├── QifOne.txt │ │ └── QifTwo.txt │ ├── uk/ │ │ ├── ArchiveDate.txt │ │ ├── ArchiveEquity.txt │ │ ├── ArchiveFile.txt │ │ ├── CreateNewFile.txt │ │ ├── DupeTransImport.txt │ │ ├── FileNotSaved.txt │ │ ├── ImportFileZero.txt │ │ ├── ImportOne.txt │ │ ├── ImportTwo.txt │ │ ├── NewFileFour.txt │ │ ├── NewFileOne.txt │ │ ├── NewFileThree.txt │ │ ├── NewFileTwo.txt │ │ ├── QifOne.txt │ │ └── QifTwo.txt │ └── zh/ │ ├── ArchiveDate.txt │ ├── ArchiveEquity.txt │ ├── ArchiveFile.txt │ ├── CreateNewFile.txt │ ├── DupeTransImport.txt │ ├── FileNotSaved.txt │ ├── ImportFileZero.txt │ ├── ImportOne.txt │ ├── ImportTwo.txt │ ├── NewBudgetOne.txt │ ├── NewFileFour.txt │ ├── NewFileOne.txt │ ├── NewFileThree.txt │ ├── NewFileTwo.txt │ ├── QifOne.txt │ └── QifTwo.txt ├── jgnash-tests/ │ ├── build.gradle.kts │ └── src/ │ └── test/ │ ├── java/ │ │ ├── ApiTest.java │ │ └── jgnash/ │ │ ├── ClassPathTest.java │ │ ├── JavascriptTest.js │ │ ├── PDFBoxTableTest.java │ │ ├── VersionTest.java │ │ ├── bayes/ │ │ │ └── BayesClassifierTest.java │ │ ├── convert/ │ │ │ └── importat/ │ │ │ ├── FilterTest.java │ │ │ ├── ofx/ │ │ │ │ ├── Ofx2Test.java │ │ │ │ ├── OfxConvertTest.java │ │ │ │ └── OfxExportText.java │ │ │ └── qif/ │ │ │ └── QifUtilsTest.java │ │ ├── engine/ │ │ │ ├── AbstractEngineTest.java │ │ │ ├── AccountTreeDepthTest.java │ │ │ ├── BinaryXStreamEngineTest.java │ │ │ ├── CashFlowTest.java │ │ │ ├── ConfigTest.java │ │ │ ├── DataStoreTest.java │ │ │ ├── DistributedLockTest.java │ │ │ ├── EncryptedDistributedLockTest.java │ │ │ ├── EngineTest.java │ │ │ ├── FileTransferTest.java │ │ │ ├── InvestmentHistoryExchangeTest.java │ │ │ ├── InvestmentPerformanceTest.java │ │ │ ├── InvestmentTransactionTest.java │ │ │ ├── JpaH2EngineTest.java │ │ │ ├── JpaH2MvEngineTest.java │ │ │ ├── JpaHsqlEngineTest.java │ │ │ ├── PriorityThreadTest.java │ │ │ ├── TransactionTest.java │ │ │ ├── XMLEngineTest.java │ │ │ ├── net/ │ │ │ │ └── security/ │ │ │ │ ├── IEXParserTest.java │ │ │ │ └── YahooEventParserTest.java │ │ │ └── recurring/ │ │ │ ├── DailyReminderTest.java │ │ │ ├── MonthlyReminderTest.java │ │ │ ├── WeeklyReminderTest.java │ │ │ └── YearlyReminderTest.java │ │ ├── report/ │ │ │ └── poi/ │ │ │ └── BudgetResultsExportTest.java │ │ ├── text/ │ │ │ └── NumericFormatsTests.java │ │ └── util/ │ │ ├── BinaryXStreamTest.java │ │ ├── DateFormatTest.java │ │ ├── DateTest.java │ │ ├── EncodeDecodeTest.java │ │ ├── EncryptionManagerTest.java │ │ ├── FileMagicTest.java │ │ └── FileUtilsTest.java │ └── resources/ │ ├── 401k-header.xml │ ├── 401k.xml │ ├── File_with_Accents.ofx │ ├── IEX-IBM-1y.csv │ ├── IEX-IBM-1y.json │ ├── Sample.ofx │ ├── activity.ofx │ ├── bank1-commas.ofx │ ├── bank1-indent.ofx │ ├── bank1.ofx │ ├── bank1.qif │ ├── bank2.ofx │ ├── budgetTest.xml │ ├── checking1.ofx │ ├── chequing.ofx │ ├── comptes.ofx │ ├── demobank.ofx │ ├── invest.xml │ ├── invest2.xml │ ├── ofx_spec160_stmtrs_example.sgml │ ├── ofx_spec201_stmtrs_example.xml │ ├── test_fails.ofx │ └── uglyFormat.ofx ├── mt940/ │ ├── build.gradle.kts │ └── src/ │ ├── main/ │ │ └── java/ │ │ └── net/ │ │ └── bzzt/ │ │ └── swift/ │ │ └── mt940/ │ │ ├── ImportMt940FxAction.java │ │ ├── Mt940Entry.java │ │ ├── Mt940File.java │ │ ├── Mt940Plugin.java │ │ ├── Mt940Record.java │ │ ├── exporter/ │ │ │ └── Mt940Exporter.java │ │ └── parser/ │ │ └── Mt940Parser.java │ └── test/ │ ├── java/ │ │ └── net/ │ │ └── bzzt/ │ │ └── swift/ │ │ └── mt940/ │ │ └── Mt940Test.java │ └── resources/ │ ├── bank1.STA │ ├── multiaccounts.sta │ └── rabobank.swi ├── rhino-scripts/ │ ├── README.adoc │ ├── clear-budget-goal.js │ ├── create-random-transaction.js │ └── load-budget-goal.js ├── rust-launcher/ │ ├── Cargo.toml │ ├── README.adoc │ ├── build.rs │ └── src/ │ └── main.rs ├── settings.gradle.kts ├── spelling.dic └── windows 10 Java reg fix.reg