http://git-wip-us.apache.org/repos/asf/incubator-fineract/blob/c1af6d66/fineract-provider/src/main/resources/sql/migrations/sample_data/barebones_db.sql
----------------------------------------------------------------------
diff --git 
a/fineract-provider/src/main/resources/sql/migrations/sample_data/barebones_db.sql
 
b/fineract-provider/src/main/resources/sql/migrations/sample_data/barebones_db.sql
index ea7c6d2..ae72670 100644
--- 
a/fineract-provider/src/main/resources/sql/migrations/sample_data/barebones_db.sql
+++ 
b/fineract-provider/src/main/resources/sql/migrations/sample_data/barebones_db.sql
@@ -19,7 +19,7 @@
 
 -- --------------------------------------------------------
 -- Host:                         127.0.0.1
--- Server version:               5.5.34 - MySQL Community Server (GPL)
+-- Server version:               5.6.33-log - MySQL Community Server (GPL)
 -- Server OS:                    Win64
 -- HeidiSQL Version:             9.3.0.4984
 -- --------------------------------------------------------
@@ -156,6 +156,7 @@ CREATE TABLE IF NOT EXISTS `acc_gl_journal_entry` (
   `office_running_balance` decimal(19,6) NOT NULL DEFAULT '0.000000',
   `organization_running_balance` decimal(19,6) NOT NULL DEFAULT '0.000000',
   `payment_details_id` bigint(20) DEFAULT NULL,
+  `share_transaction_id` bigint(20) DEFAULT NULL,
   PRIMARY KEY (`id`),
   KEY `FK_acc_gl_journal_entry_m_office` (`office_id`),
   KEY `FK_acc_gl_journal_entry_m_appuser` (`createdby_id`),
@@ -166,6 +167,7 @@ CREATE TABLE IF NOT EXISTS `acc_gl_journal_entry` (
   KEY `FK_acc_gl_journal_entry_m_savings_account_transaction` 
(`savings_transaction_id`),
   KEY `FK_acc_gl_journal_entry_m_payment_detail` (`payment_details_id`),
   KEY `FK_acc_gl_journal_entry_m_client_transaction` (`client_transaction_id`),
+  KEY `FK_acc_gl_journal_entry_m_share_account_transaction` 
(`share_transaction_id`),
   CONSTRAINT `FK_acc_gl_journal_entry_acc_gl_account` FOREIGN KEY 
(`account_id`) REFERENCES `acc_gl_account` (`id`),
   CONSTRAINT `FK_acc_gl_journal_entry_acc_gl_journal_entry` FOREIGN KEY 
(`reversal_id`) REFERENCES `acc_gl_journal_entry` (`id`),
   CONSTRAINT `FK_acc_gl_journal_entry_m_appuser` FOREIGN KEY (`createdby_id`) 
REFERENCES `m_appuser` (`id`),
@@ -174,7 +176,8 @@ CREATE TABLE IF NOT EXISTS `acc_gl_journal_entry` (
   CONSTRAINT `FK_acc_gl_journal_entry_m_loan_transaction` FOREIGN KEY 
(`loan_transaction_id`) REFERENCES `m_loan_transaction` (`id`),
   CONSTRAINT `FK_acc_gl_journal_entry_m_office` FOREIGN KEY (`office_id`) 
REFERENCES `m_office` (`id`),
   CONSTRAINT `FK_acc_gl_journal_entry_m_payment_detail` FOREIGN KEY 
(`payment_details_id`) REFERENCES `m_payment_detail` (`id`),
-  CONSTRAINT `FK_acc_gl_journal_entry_m_savings_account_transaction` FOREIGN 
KEY (`savings_transaction_id`) REFERENCES `m_savings_account_transaction` (`id`)
+  CONSTRAINT `FK_acc_gl_journal_entry_m_savings_account_transaction` FOREIGN 
KEY (`savings_transaction_id`) REFERENCES `m_savings_account_transaction` 
(`id`),
+  CONSTRAINT `FK_acc_gl_journal_entry_m_share_account_transaction` FOREIGN KEY 
(`share_transaction_id`) REFERENCES `m_share_account_transactions` (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 -- Dumping data for table mifostenant-default.acc_gl_journal_entry: ~0 rows 
(approximately)
@@ -247,7 +250,7 @@ CREATE TABLE IF NOT EXISTS `c_cache` (
   PRIMARY KEY (`id`)
 ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.c_cache: ~1 rows (approximately)
+-- Dumping data for table mifostenant-default.c_cache: ~0 rows (approximately)
 /*!40000 ALTER TABLE `c_cache` DISABLE KEYS */;
 INSERT INTO `c_cache` (`id`, `cache_type_enum`) VALUES
        (1, 1);
@@ -258,38 +261,46 @@ INSERT INTO `c_cache` (`id`, `cache_type_enum`) VALUES
 DROP TABLE IF EXISTS `c_configuration`;
 CREATE TABLE IF NOT EXISTS `c_configuration` (
   `id` bigint(20) NOT NULL AUTO_INCREMENT,
-  `name` varchar(50) DEFAULT NULL,
+  `name` varchar(100) DEFAULT NULL,
   `value` int(11) DEFAULT NULL,
+  `date_value` date DEFAULT NULL,
   `enabled` tinyint(1) NOT NULL DEFAULT '0',
   `is_trap_door` tinyint(1) NOT NULL DEFAULT '0',
   `description` varchar(300) DEFAULT NULL,
   PRIMARY KEY (`id`),
   UNIQUE KEY `name_UNIQUE` (`name`)
-) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB AUTO_INCREMENT=33 DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.c_configuration: ~20 rows 
(approximately)
+-- Dumping data for table mifostenant-default.c_configuration: ~27 rows 
(approximately)
 /*!40000 ALTER TABLE `c_configuration` DISABLE KEYS */;
-INSERT INTO `c_configuration` (`id`, `name`, `value`, `enabled`, 
`is_trap_door`, `description`) VALUES
-       (1, 'maker-checker', NULL, 0, 0, NULL),
-       (4, 'amazon-S3', NULL, 0, 0, NULL),
-       (5, 'reschedule-future-repayments', NULL, 1, 0, NULL),
-       (6, 'reschedule-repayments-on-holidays', NULL, 0, 0, NULL),
-       (7, 'allow-transactions-on-holiday', NULL, 0, 0, NULL),
-       (8, 'allow-transactions-on-non_workingday', NULL, 0, 0, NULL),
-       (9, 'constraint_approach_for_datatables', NULL, 0, 0, NULL),
-       (10, 'penalty-wait-period', 2, 1, 0, NULL),
-       (11, 'force-password-reset-days', 0, 0, 0, NULL),
-       (12, 'grace-on-penalty-posting', 0, 1, 0, NULL),
-       (15, 'savings-interest-posting-current-period-end', NULL, 0, 0, 
'Recommended to be changed only once during start of production. When set as 
false(default), interest will be posted on the first date of next period. If 
set as true, interest will be posted on last date of current period. There is 
no difference in the interest amount posted.'),
-       (16, 'financial-year-beginning-month', 1, 1, 0, 'Recommended to be 
changed only once during start of production. Allowed values 1 - 12 (January - 
December). Interest posting periods are evaluated based on this 
configuration.'),
-       (17, 'min-clients-in-group', 5, 0, 0, 'Minimum number of Clients that a 
Group should have'),
-       (18, 'max-clients-in-group', 5, 0, 0, 'Maximum number of Clients that a 
Group can have'),
-       (19, 'meetings-mandatory-for-jlg-loans', NULL, 0, 0, 'Enforces all JLG 
loans to follow a meeting schedule belonging to parent group or Center'),
-       (20, 'office-specific-products-enabled', 0, 0, 0, 'Whether products and 
fees should be office specific or not? This property should NOT be changed once 
Mifos is Live.'),
-       (21, 'restrict-products-to-user-office', 0, 0, 0, 'This should be 
enabled only if, products & fees are office specific (i.e. 
office-specific-products-enabled is enabled). This property specifies if the 
products should be auto-restricted to office of the user who created the 
proudct? Note: This property should NOT be changed once Mifos is Live.'),
-       (22, 'office-opening-balances-contra-account', 0, 1, 0, NULL),
-       (23, 'rounding-mode', 6, 1, 1, '0 - UP, 1 - DOWN, 2- CEILING, 3- FLOOR, 
4- HALF_UP, 5- HALF_DOWN, 6 - HALF_EVEN'),
-       (24, 'backdate-penalties-enabled', 0, 1, 0, 'If this parameter is 
disabled penalties will only be added to instalments due moving forward, any 
old overdue instalments will not be affected.');
+INSERT INTO `c_configuration` (`id`, `name`, `value`, `date_value`, `enabled`, 
`is_trap_door`, `description`) VALUES
+       (1, 'maker-checker', NULL, NULL, 0, 0, NULL),
+       (4, 'amazon-S3', NULL, NULL, 0, 0, NULL),
+       (5, 'reschedule-future-repayments', NULL, NULL, 1, 0, NULL),
+       (6, 'reschedule-repayments-on-holidays', NULL, NULL, 0, 0, NULL),
+       (7, 'allow-transactions-on-holiday', NULL, NULL, 0, 0, NULL),
+       (8, 'allow-transactions-on-non_workingday', NULL, NULL, 0, 0, NULL),
+       (9, 'constraint_approach_for_datatables', NULL, NULL, 0, 0, NULL),
+       (10, 'penalty-wait-period', 2, NULL, 1, 0, NULL),
+       (11, 'force-password-reset-days', 0, NULL, 0, 0, NULL),
+       (12, 'grace-on-penalty-posting', 0, NULL, 1, 0, NULL),
+       (15, 'savings-interest-posting-current-period-end', NULL, NULL, 0, 0, 
'Recommended to be changed only once during start of production. When set as 
false(default), interest will be posted on the first date of next period. If 
set as true, interest will be posted on last date of current period. There is 
no difference in the interest amount posted.'),
+       (16, 'financial-year-beginning-month', 1, NULL, 1, 0, 'Recommended to 
be changed only once during start of production. Allowed values 1 - 12 (January 
- December). Interest posting periods are evaluated based on this 
configuration.'),
+       (17, 'min-clients-in-group', 5, NULL, 0, 0, 'Minimum number of Clients 
that a Group should have'),
+       (18, 'max-clients-in-group', 5, NULL, 0, 0, 'Maximum number of Clients 
that a Group can have'),
+       (19, 'meetings-mandatory-for-jlg-loans', NULL, NULL, 0, 0, 'Enforces 
all JLG loans to follow a meeting schedule belonging to parent group or 
Center'),
+       (20, 'office-specific-products-enabled', 0, NULL, 0, 0, 'Whether 
products and fees should be office specific or not? This property should NOT be 
changed once Mifos is Live.'),
+       (21, 'restrict-products-to-user-office', 0, NULL, 0, 0, 'This should be 
enabled only if, products & fees are office specific (i.e. 
office-specific-products-enabled is enabled). This property specifies if the 
products should be auto-restricted to office of the user who created the 
proudct? Note: This property should NOT be changed once Mifos is Live.'),
+       (22, 'office-opening-balances-contra-account', 0, NULL, 1, 0, NULL),
+       (23, 'rounding-mode', 6, NULL, 1, 1, '0 - UP, 1 - DOWN, 2- CEILING, 3- 
FLOOR, 4- HALF_UP, 5- HALF_DOWN, 6 - HALF_EVEN'),
+       (24, 'backdate-penalties-enabled', 0, NULL, 1, 0, 'If this parameter is 
disabled penalties will only be added to instalments due moving forward, any 
old overdue instalments will not be affected.'),
+       (26, 'organisation-start-date', 0, NULL, 0, 0, NULL),
+       (27, 'paymenttype-applicable-for-disbursement-charges', NULL, NULL, 0, 
0, 'Is the Disbursement Entry need to be considering the fund source of the 
paymnet type'),
+       (28, 'interest-charged-from-date-same-as-disbursal-date', 0, NULL, 0, 
0, NULL),
+       (29, 'skip-repayment-on-first-day-of-month', 14, NULL, 0, 0, 'skipping 
repayment on first day of month'),
+       (30, 'change-emi-if-repaymentdate-same-as-disbursementdate', 0, NULL, 
1, 0, 'In tranche loans, if repayment date is same as tranche disbursement date 
then allow to change the emi amount'),
+       (31, 'daily-tpt-limit', 0, NULL, 0, 0, 'Daily limit for third party 
transfers'),
+       (32, 'Enable-Address', NULL, NULL, 0, 0, NULL);
 /*!40000 ALTER TABLE `c_configuration` ENABLE KEYS */;
 
 
@@ -300,11 +311,12 @@ CREATE TABLE IF NOT EXISTS `c_external_service` (
   `name` varchar(100) DEFAULT NULL,
   PRIMARY KEY (`id`),
   UNIQUE KEY `name_UNIQUE` (`name`)
-) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.c_external_service: ~2 rows 
(approximately)
+-- Dumping data for table mifostenant-default.c_external_service: ~3 rows 
(approximately)
 /*!40000 ALTER TABLE `c_external_service` DISABLE KEYS */;
 INSERT INTO `c_external_service` (`id`, `name`) VALUES
+       (3, 'MESSAGE_GATEWAY'),
        (1, 'S3'),
        (2, 'SMTP_Email_Account');
 /*!40000 ALTER TABLE `c_external_service` ENABLE KEYS */;
@@ -320,7 +332,7 @@ CREATE TABLE IF NOT EXISTS `c_external_service_properties` (
   CONSTRAINT `FK_c_external_service_properties_c_external_service` FOREIGN KEY 
(`external_service_id`) REFERENCES `c_external_service` (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.c_external_service_properties: 
~8 rows (approximately)
+-- Dumping data for table mifostenant-default.c_external_service_properties: 
~12 rows (approximately)
 /*!40000 ALTER TABLE `c_external_service_properties` DISABLE KEYS */;
 INSERT INTO `c_external_service_properties` (`name`, `value`, 
`external_service_id`) VALUES
        ('s3_access_key', NULL, 1),
@@ -330,7 +342,11 @@ INSERT INTO `c_external_service_properties` (`name`, 
`value`, `external_service_
        ('password', 'support81', 2),
        ('host', 'smtp.gmail.com', 2),
        ('port', '25', 2),
-       ('useTLS', 'true', 2);
+       ('useTLS', 'true', 2),
+       ('host_name', 'localhost', 3),
+       ('port_number', '9191', 3),
+       ('end_point', '/', 3),
+       ('tenant_app_key', NULL, 3);
 /*!40000 ALTER TABLE `c_external_service_properties` ENABLE KEYS */;
 
 
@@ -338,8 +354,8 @@ INSERT INTO `c_external_service_properties` (`name`, 
`value`, `external_service_
 DROP TABLE IF EXISTS `job`;
 CREATE TABLE IF NOT EXISTS `job` (
   `id` bigint(20) NOT NULL AUTO_INCREMENT,
-  `name` varchar(50) NOT NULL,
-  `display_name` varchar(50) NOT NULL,
+  `name` varchar(100) NOT NULL,
+  `display_name` varchar(100) NOT NULL,
   `cron_expression` varchar(20) CHARACTER SET latin1 NOT NULL,
   `create_time` datetime NOT NULL,
   `task_priority` smallint(6) NOT NULL DEFAULT '5',
@@ -354,30 +370,37 @@ CREATE TABLE IF NOT EXISTS `job` (
   `scheduler_group` smallint(2) NOT NULL DEFAULT '0',
   `is_misfired` tinyint(1) NOT NULL DEFAULT '0',
   PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.job: ~19 rows (approximately)
+-- Dumping data for table mifostenant-default.job: ~26 rows (approximately)
 /*!40000 ALTER TABLE `job` DISABLE KEYS */;
 INSERT INTO `job` (`id`, `name`, `display_name`, `cron_expression`, 
`create_time`, `task_priority`, `group_name`, `previous_run_start_time`, 
`next_run_time`, `job_key`, `initializing_errorlog`, `is_active`, 
`currently_running`, `updates_allowed`, `scheduler_group`, `is_misfired`) VALUES
-       (1, 'Update loan Summary', 'Update loan Summary', '0 0 22 1/1 * ? *', 
'2015-06-03 02:56:57', 5, NULL, NULL, '2016-01-20 22:00:00', 'Update loan 
SummaryJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
-       (2, 'Update Loan Arrears Ageing', 'Update Loan Arrears Ageing', '0 1 0 
1/1 * ? *', '2015-06-03 02:56:57', 5, NULL, NULL, '2016-01-21 00:01:00', 
'Update Loan Arrears AgeingJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
-       (3, 'Update Loan Paid In Advance', 'Update Loan Paid In Advance', '0 5 
0 1/1 * ? *', '2015-06-03 02:56:57', 5, NULL, NULL, '2016-01-21 00:05:00', 
'Update Loan Paid In AdvanceJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
-       (4, 'Apply Annual Fee For Savings', 'Apply Annual Fee For Savings', '0 
20 22 1/1 * ? *', '2015-06-03 02:56:57', 5, NULL, NULL, '2016-01-20 22:20:00', 
'Apply Annual Fee For SavingsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
-       (5, 'Apply Holidays To Loans', 'Apply Holidays To Loans', '0 0 12 * * 
?', '2015-06-03 02:56:57', 5, NULL, NULL, '2016-01-21 12:00:00', 'Apply 
Holidays To LoansJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
-       (6, 'Post Interest For Savings', 'Post Interest For Savings', '0 0 0 
1/1 * ? *', '2015-06-03 02:56:58', 5, NULL, NULL, '2016-01-21 00:00:00', 'Post 
Interest For SavingsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 1, 0),
-       (7, 'Transfer Fee For Loans From Savings', 'Transfer Fee For Loans From 
Savings', '0 1 0 1/1 * ? *', '2015-06-03 02:57:00', 5, NULL, NULL, '2016-01-21 
00:01:00', 'Transfer Fee For Loans From SavingsJobDetail1 _ DEFAULT', NULL, 1, 
0, 1, 0, 0),
-       (8, 'Pay Due Savings Charges', 'Pay Due Savings Charges', '0 0 12 * * 
?', '2013-09-23 00:00:00', 5, NULL, NULL, '2016-01-21 12:00:00', 'Pay Due 
Savings ChargesJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
-       (9, 'Update Accounting Running Balances', 'Update Accounting Running 
Balances', '0 1 0 1/1 * ? *', '2015-06-03 02:57:00', 5, NULL, NULL, '2016-01-21 
00:01:00', 'Update Accounting Running BalancesJobDetail1 _ DEFAULT', NULL, 1, 
0, 1, 0, 0),
-       (10, 'Execute Standing Instruction', 'Execute Standing Instruction', '0 
0 0 1/1 * ? *', '2015-06-03 02:57:04', 5, NULL, NULL, '2016-01-21 00:00:00', 
'Execute Standing InstructionJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
-       (11, 'Add Accrual Transactions', 'Add Accrual Transactions', '0 1 0 1/1 
* ? *', '2015-06-03 02:57:04', 3, NULL, NULL, '2016-01-21 00:01:00', 'Add 
Accrual TransactionsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 3, 0),
-       (12, 'Apply penalty to overdue loans', 'Apply penalty to overdue 
loans', '0 0 0 1/1 * ? *', '2015-06-03 02:57:04', 5, NULL, NULL, '2016-01-21 
00:00:00', 'Apply penalty to overdue loansJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 
0, 0),
-       (13, 'Update Non Performing Assets', 'Update Non Performing Assets', '0 
0 0 1/1 * ? *', '2015-06-03 02:57:04', 5, NULL, NULL, '2016-01-21 00:00:00', 
'Update Non Performing AssetsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 3, 0),
-       (14, 'Transfer Interest To Savings', 'Transfer Interest To Savings', '0 
2 0 1/1 * ? *', '2015-06-03 02:57:05', 4, NULL, NULL, '2016-01-21 00:02:00', 
'Transfer Interest To SavingsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 1, 0),
-       (15, 'Update Deposit Accounts Maturity details', 'Update Deposit 
Accounts Maturity details', '0 0 0 1/1 * ? *', '2015-06-03 02:57:05', 5, NULL, 
NULL, '2016-01-21 00:00:00', 'Update Deposit Accounts Maturity 
detailsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
-       (16, 'Add Periodic Accrual Transactions', 'Add Periodic Accrual 
Transactions', '0 2 0 1/1 * ? *', '2015-06-03 02:57:06', 2, NULL, NULL, 
'2016-01-21 00:02:00', 'Add Periodic Accrual TransactionsJobDetail1 _ DEFAULT', 
NULL, 1, 0, 1, 3, 0),
-       (17, 'Recalculate Interest For Loans', 'Recalculate Interest For 
Loans', '0 1 0 1/1 * ? *', '2015-06-03 02:57:07', 4, NULL, NULL, '2016-01-21 
00:01:00', 'Recalculate Interest For LoansJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 
3, 0),
-       (18, 'Generate Mandatory Savings Schedule', 'Generate Mandatory Savings 
Schedule', '0 5 0 1/1 * ? *', '2015-06-03 02:57:12', 5, NULL, NULL, '2016-01-21 
00:05:00', 'Generate Mandatory Savings ScheduleJobDetail1 _ DEFAULT', NULL, 1, 
0, 1, 0, 0),
-       (19, 'Generate Loan Loss Provisioning', 'Generate Loan Loss 
Provisioning', '0 0 0 1/1 * ? *', '2015-10-20 19:57:53', 5, NULL, NULL, 
'2016-01-21 00:00:00', 'Generate Loan Loss ProvisioningJobDetail1 _ DEFAULT', 
NULL, 1, 0, 1, 0, 0);
+       (1, 'Update loan Summary', 'Update loan Summary', '0 0 22 1/1 * ? *', 
'2015-06-03 02:56:57', 5, NULL, NULL, '2017-02-24 22:00:00', 'Update loan 
SummaryJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
+       (2, 'Update Loan Arrears Ageing', 'Update Loan Arrears Ageing', '0 1 0 
1/1 * ? *', '2015-06-03 02:56:57', 5, NULL, NULL, '2017-02-25 00:01:00', 
'Update Loan Arrears AgeingJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
+       (3, 'Update Loan Paid In Advance', 'Update Loan Paid In Advance', '0 5 
0 1/1 * ? *', '2015-06-03 02:56:57', 5, NULL, NULL, '2017-02-25 00:05:00', 
'Update Loan Paid In AdvanceJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
+       (4, 'Apply Annual Fee For Savings', 'Apply Annual Fee For Savings', '0 
20 22 1/1 * ? *', '2015-06-03 02:56:57', 5, NULL, NULL, '2017-02-24 22:20:00', 
'Apply Annual Fee For SavingsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
+       (5, 'Apply Holidays To Loans', 'Apply Holidays To Loans', '0 0 12 * * 
?', '2015-06-03 02:56:57', 5, NULL, NULL, '2017-02-25 12:00:00', 'Apply 
Holidays To LoansJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
+       (6, 'Post Interest For Savings', 'Post Interest For Savings', '0 0 0 
1/1 * ? *', '2015-06-03 02:56:58', 5, NULL, NULL, '2017-02-25 00:00:00', 'Post 
Interest For SavingsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 1, 0),
+       (7, 'Transfer Fee For Loans From Savings', 'Transfer Fee For Loans From 
Savings', '0 1 0 1/1 * ? *', '2015-06-03 02:57:00', 5, NULL, NULL, '2017-02-25 
00:01:00', 'Transfer Fee For Loans From SavingsJobDetail1 _ DEFAULT', NULL, 1, 
0, 1, 0, 0),
+       (8, 'Pay Due Savings Charges', 'Pay Due Savings Charges', '0 0 12 * * 
?', '2013-09-23 00:00:00', 5, NULL, NULL, '2017-02-25 12:00:00', 'Pay Due 
Savings ChargesJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
+       (9, 'Update Accounting Running Balances', 'Update Accounting Running 
Balances', '0 1 0 1/1 * ? *', '2015-06-03 02:57:00', 5, NULL, NULL, '2017-02-25 
00:01:00', 'Update Accounting Running BalancesJobDetail1 _ DEFAULT', NULL, 1, 
0, 1, 0, 0),
+       (10, 'Execute Standing Instruction', 'Execute Standing Instruction', '0 
0 0 1/1 * ? *', '2015-06-03 02:57:04', 5, NULL, NULL, '2017-02-25 00:00:00', 
'Execute Standing InstructionJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
+       (11, 'Add Accrual Transactions', 'Add Accrual Transactions', '0 1 0 1/1 
* ? *', '2015-06-03 02:57:04', 3, NULL, NULL, '2017-02-25 00:01:00', 'Add 
Accrual TransactionsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 3, 0),
+       (12, 'Apply penalty to overdue loans', 'Apply penalty to overdue 
loans', '0 0 0 1/1 * ? *', '2015-06-03 02:57:04', 5, NULL, NULL, '2017-02-25 
00:00:00', 'Apply penalty to overdue loansJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 
0, 0),
+       (13, 'Update Non Performing Assets', 'Update Non Performing Assets', '0 
0 0 1/1 * ? *', '2015-06-03 02:57:04', 6, NULL, NULL, '2017-02-25 00:00:00', 
'Update Non Performing AssetsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 3, 0),
+       (14, 'Transfer Interest To Savings', 'Transfer Interest To Savings', '0 
2 0 1/1 * ? *', '2015-06-03 02:57:05', 4, NULL, NULL, '2017-02-25 00:02:00', 
'Transfer Interest To SavingsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 1, 0),
+       (15, 'Update Deposit Accounts Maturity details', 'Update Deposit 
Accounts Maturity details', '0 0 0 1/1 * ? *', '2015-06-03 02:57:05', 5, NULL, 
NULL, '2017-02-25 00:00:00', 'Update Deposit Accounts Maturity 
detailsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
+       (16, 'Add Periodic Accrual Transactions', 'Add Periodic Accrual 
Transactions', '0 2 0 1/1 * ? *', '2015-06-03 02:57:06', 2, NULL, NULL, 
'2017-02-25 00:02:00', 'Add Periodic Accrual TransactionsJobDetail1 _ DEFAULT', 
NULL, 1, 0, 1, 3, 0),
+       (17, 'Recalculate Interest For Loans', 'Recalculate Interest For 
Loans', '0 1 0 1/1 * ? *', '2015-06-03 02:57:07', 4, NULL, NULL, '2017-02-25 
00:01:00', 'Recalculate Interest For LoansJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 
3, 0),
+       (18, 'Generate Mandatory Savings Schedule', 'Generate Mandatory Savings 
Schedule', '0 5 0 1/1 * ? *', '2015-06-03 02:57:12', 5, NULL, NULL, '2017-02-25 
00:05:00', 'Generate Mandatory Savings ScheduleJobDetail1 _ DEFAULT', NULL, 1, 
0, 1, 0, 0),
+       (19, 'Generate Loan Loss Provisioning', 'Generate Loan Loss 
Provisioning', '0 0 0 1/1 * ? *', '2015-10-20 19:57:53', 5, NULL, NULL, 
'2017-02-25 00:00:00', 'Generate Loan Loss ProvisioningJobDetail1 _ DEFAULT', 
NULL, 1, 0, 1, 0, 0),
+       (20, 'Post Dividends For Shares', 'Post Dividends For Shares', '0 0 0 
1/1 * ? *', '2017-02-24 14:15:48', 5, NULL, NULL, '2017-02-25 00:00:00', 'Post 
Dividends For SharesJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
+       (21, 'Update Savings Dormant Accounts', 'Update Savings Dormant 
Accounts', '0 0 0 1/1 * ? *', '2017-02-24 14:15:54', 3, NULL, NULL, '2017-02-25 
00:00:00', 'Update Savings Dormant AccountsJobDetail1 _ DEFAULT', NULL, 1, 0, 
1, 1, 0),
+       (22, 'Add Accrual Transactions For Loans With Income Posted As 
Transactions', 'Add Accrual Transactions For Loans With Income Posted As 
Transactions', '0 1 0 1/1 * ? *', '2017-02-24 14:15:59', 5, NULL, NULL, 
'2017-02-25 00:01:00', 'Add Accrual Transactions For Loans With Income Posted 
As TransactionsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 3, 0),
+       (23, 'Execute Report Mailing Jobs', 'Execute Report Mailing Jobs', '0 
0/15 * * * ?', '2017-02-24 14:16:11', 5, NULL, NULL, '2017-02-24 14:30:00', 
'Execute Report Mailing JobsJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 0, 0),
+       (24, 'Update SMS Outbound with Campaign Message', 'Update SMS Outbound 
with Campaign Message', '0 0 5 1/1 * ? *', '2017-02-24 14:16:18', 3, NULL, 
NULL, '2017-02-25 05:00:00', 'Update SMS Outbound with Campaign 
MessageJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 4, 0),
+       (25, 'Send Messages to SMS Gateway', 'Send Messages to SMS Gateway', '0 
0 5 1/1 * ? *', '2017-02-24 14:16:18', 2, NULL, NULL, '2017-02-25 05:00:00', 
'Send Messages to SMS GatewayJobDetail1 _ DEFAULT', NULL, 1, 0, 1, 4, 0),
+       (26, 'Get Delivery Reports from SMS Gateway', 'Get Delivery Reports 
from SMS Gateway', '0 0 5 1/1 * ? *', '2017-02-24 14:16:18', 1, NULL, NULL, 
'2017-02-25 05:00:00', 'Get Delivery Reports from SMS GatewayJobDetail1 _ 
DEFAULT', NULL, 1, 0, 1, 4, 0);
 /*!40000 ALTER TABLE `job` ENABLE KEYS */;
 
 
@@ -481,7 +504,7 @@ CREATE TABLE IF NOT EXISTS `mix_taxonomy_mapping` (
   PRIMARY KEY (`id`)
 ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.mix_taxonomy_mapping: ~1 rows 
(approximately)
+-- Dumping data for table mifostenant-default.mix_taxonomy_mapping: ~0 rows 
(approximately)
 /*!40000 ALTER TABLE `mix_taxonomy_mapping` DISABLE KEYS */;
 INSERT INTO `mix_taxonomy_mapping` (`id`, `identifier`, `config`, 
`last_update_date`, `currency`) VALUES
        (1, 'default', NULL, NULL, '');
@@ -630,6 +653,38 @@ CREATE TABLE IF NOT EXISTS 
`m_account_transfer_transaction` (
 /*!40000 ALTER TABLE `m_account_transfer_transaction` ENABLE KEYS */;
 
 
+-- Dumping structure for table mifostenant-default.m_address
+DROP TABLE IF EXISTS `m_address`;
+CREATE TABLE IF NOT EXISTS `m_address` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `street` varchar(100) DEFAULT NULL,
+  `address_line_1` varchar(100) DEFAULT NULL,
+  `address_line_2` varchar(100) DEFAULT NULL,
+  `address_line_3` varchar(100) DEFAULT NULL,
+  `town_village` varchar(100) DEFAULT NULL,
+  `city` varchar(100) DEFAULT NULL,
+  `county_district` varchar(100) DEFAULT NULL,
+  `state_province_id` int(11) DEFAULT NULL,
+  `country_id` int(11) DEFAULT NULL,
+  `postal_code` varchar(10) DEFAULT NULL,
+  `latitude` decimal(10,8) unsigned DEFAULT '0.00000000',
+  `longitude` decimal(10,8) unsigned DEFAULT '0.00000000',
+  `created_by` varchar(100) DEFAULT NULL,
+  `created_on` date DEFAULT NULL,
+  `updated_by` varchar(100) DEFAULT NULL,
+  `updated_on` date DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  KEY `address_fields_codefk1` (`state_province_id`),
+  KEY `address_fields_codefk2` (`country_id`),
+  CONSTRAINT `address_fields_codefk1` FOREIGN KEY (`state_province_id`) 
REFERENCES `m_code_value` (`id`),
+  CONSTRAINT `address_fields_codefk2` FOREIGN KEY (`country_id`) REFERENCES 
`m_code_value` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_address: ~0 rows 
(approximately)
+/*!40000 ALTER TABLE `m_address` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_address` ENABLE KEYS */;
+
+
 -- Dumping structure for table mifostenant-default.m_appuser
 DROP TABLE IF EXISTS `m_appuser`;
 CREATE TABLE IF NOT EXISTS `m_appuser` (
@@ -696,7 +751,7 @@ CREATE TABLE IF NOT EXISTS `m_appuser_role` (
   CONSTRAINT `FK7662CE59B4100309` FOREIGN KEY (`appuser_id`) REFERENCES 
`m_appuser` (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.m_appuser_role: ~1 rows 
(approximately)
+-- Dumping data for table mifostenant-default.m_appuser_role: ~0 rows 
(approximately)
 /*!40000 ALTER TABLE `m_appuser_role` DISABLE KEYS */;
 INSERT INTO `m_appuser_role` (`appuser_id`, `role_id`) VALUES
        (1, 1);
@@ -723,6 +778,7 @@ CREATE TABLE IF NOT EXISTS `m_calendar` (
   `lastmodifiedby_id` bigint(20) DEFAULT NULL,
   `created_date` datetime DEFAULT NULL,
   `lastmodified_date` datetime DEFAULT NULL,
+  `meeting_time` time DEFAULT NULL,
   PRIMARY KEY (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
@@ -843,10 +899,13 @@ CREATE TABLE IF NOT EXISTS `m_charge` (
   `max_cap` decimal(19,6) DEFAULT NULL,
   `fee_frequency` smallint(5) DEFAULT NULL,
   `income_or_liability_account_id` bigint(20) DEFAULT NULL,
+  `tax_group_id` bigint(20) DEFAULT NULL,
   PRIMARY KEY (`id`),
   UNIQUE KEY `name` (`name`),
   KEY `FK_m_charge_acc_gl_account` (`income_or_liability_account_id`),
-  CONSTRAINT `FK_m_charge_acc_gl_account` FOREIGN KEY 
(`income_or_liability_account_id`) REFERENCES `acc_gl_account` (`id`)
+  KEY `FK_m_charge_m_tax_group` (`tax_group_id`),
+  CONSTRAINT `FK_m_charge_acc_gl_account` FOREIGN KEY 
(`income_or_liability_account_id`) REFERENCES `acc_gl_account` (`id`),
+  CONSTRAINT `FK_m_charge_m_tax_group` FOREIGN KEY (`tax_group_id`) REFERENCES 
`m_tax_group` (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 -- Dumping data for table mifostenant-default.m_charge: ~0 rows (approximately)
@@ -897,6 +956,8 @@ CREATE TABLE IF NOT EXISTS `m_client` (
   `reactivated_on_date` date DEFAULT NULL,
   `reactivated_on_userid` bigint(20) DEFAULT NULL,
   `legal_form_enum` int(5) DEFAULT NULL,
+  `reopened_on_date` date DEFAULT NULL,
+  `reopened_by_userid` bigint(20) DEFAULT NULL,
   PRIMARY KEY (`id`),
   UNIQUE KEY `account_no_UNIQUE` (`account_no`),
   UNIQUE KEY `external_id` (`external_id`),
@@ -924,9 +985,9 @@ CREATE TABLE IF NOT EXISTS `m_client` (
   CONSTRAINT `FK_m_client_m_savings_product` FOREIGN KEY 
(`default_savings_product`) REFERENCES `m_savings_product` (`id`),
   CONSTRAINT `FK_m_client_m_staff` FOREIGN KEY (`staff_id`) REFERENCES 
`m_staff` (`id`),
   CONSTRAINT `FK_m_client_substatus_m_code_value` FOREIGN KEY (`sub_status`) 
REFERENCES `m_code_value` (`id`),
-  CONSTRAINT `FK_m_client_type_mcode_value_reject` FOREIGN KEY 
(`reject_reason_cv_id`) REFERENCES `m_code_value` (`id`),
   CONSTRAINT `FK_m_client_type_m_code_value` FOREIGN KEY (`client_type_cv_id`) 
REFERENCES `m_code_value` (`id`),
-  CONSTRAINT `FK_m_client_type_m_code_value_withdraw` FOREIGN KEY 
(`withdraw_reason_cv_id`) REFERENCES `m_code_value` (`id`)
+  CONSTRAINT `FK_m_client_type_m_code_value_withdraw` FOREIGN KEY 
(`withdraw_reason_cv_id`) REFERENCES `m_code_value` (`id`),
+  CONSTRAINT `FK_m_client_type_mcode_value_reject` FOREIGN KEY 
(`reject_reason_cv_id`) REFERENCES `m_code_value` (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 -- Dumping data for table mifostenant-default.m_client: ~0 rows (approximately)
@@ -934,6 +995,27 @@ CREATE TABLE IF NOT EXISTS `m_client` (
 /*!40000 ALTER TABLE `m_client` ENABLE KEYS */;
 
 
+-- Dumping structure for table mifostenant-default.m_client_address
+DROP TABLE IF EXISTS `m_client_address`;
+CREATE TABLE IF NOT EXISTS `m_client_address` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `client_id` bigint(20) NOT NULL DEFAULT '0',
+  `address_id` bigint(20) NOT NULL DEFAULT '0',
+  `address_type_id` int(11) NOT NULL DEFAULT '0',
+  `is_active` tinyint(4) NOT NULL DEFAULT '0',
+  PRIMARY KEY (`id`),
+  KEY `addressIdFk` (`address_id`),
+  KEY `address_codefk` (`address_type_id`),
+  KEY `clientaddressfk` (`client_id`),
+  CONSTRAINT `address_codefk` FOREIGN KEY (`address_type_id`) REFERENCES 
`m_code_value` (`id`),
+  CONSTRAINT `clientaddressfk` FOREIGN KEY (`client_id`) REFERENCES `m_client` 
(`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_client_address: ~0 rows 
(approximately)
+/*!40000 ALTER TABLE `m_client_address` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_client_address` ENABLE KEYS */;
+
+
 -- Dumping structure for table mifostenant-default.m_client_attendance
 DROP TABLE IF EXISTS `m_client_attendance`;
 CREATE TABLE IF NOT EXISTS `m_client_attendance` (
@@ -1010,6 +1092,8 @@ CREATE TABLE IF NOT EXISTS `m_client_identifier` (
   `client_id` bigint(20) NOT NULL,
   `document_type_id` int(11) NOT NULL,
   `document_key` varchar(50) NOT NULL,
+  `status` int(5) NOT NULL DEFAULT '300',
+  `active` int(5) DEFAULT NULL,
   `description` varchar(500) DEFAULT NULL,
   `createdby_id` bigint(20) DEFAULT NULL,
   `lastmodifiedby_id` bigint(20) DEFAULT NULL,
@@ -1017,7 +1101,7 @@ CREATE TABLE IF NOT EXISTS `m_client_identifier` (
   `lastmodified_date` datetime DEFAULT NULL,
   PRIMARY KEY (`id`),
   UNIQUE KEY `unique_identifier_key` (`document_type_id`,`document_key`),
-  UNIQUE KEY `unique_client_identifier` (`client_id`,`document_type_id`),
+  UNIQUE KEY `unique_active_client_identifier` 
(`client_id`,`document_type_id`,`active`),
   KEY `FK_m_client_document_m_client` (`client_id`),
   KEY `FK_m_client_document_m_code_value` (`document_type_id`),
   CONSTRAINT `FK_m_client_document_m_client` FOREIGN KEY (`client_id`) 
REFERENCES `m_client` (`id`),
@@ -1086,9 +1170,9 @@ CREATE TABLE IF NOT EXISTS `m_code` (
   `is_system_defined` tinyint(1) NOT NULL DEFAULT '0',
   PRIMARY KEY (`id`),
   UNIQUE KEY `code_name` (`code_name`)
-) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB AUTO_INCREMENT=30 DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.m_code: ~24 rows (approximately)
+-- Dumping data for table mifostenant-default.m_code: ~28 rows (approximately)
 /*!40000 ALTER TABLE `m_code` DISABLE KEYS */;
 INSERT INTO `m_code` (`id`, `code_name`, `is_system_defined`) VALUES
        (1, 'Customer Identifier', 1),
@@ -1114,7 +1198,11 @@ INSERT INTO `m_code` (`id`, `code_name`, 
`is_system_defined`) VALUES
        (22, 'CenterClosureReason', 1),
        (23, 'LoanRescheduleReason', 1),
        (24, 'Constitution', 1),
-       (25, 'Main Business Line', 1);
+       (25, 'Main Business Line', 1),
+       (26, 'WriteOffReasons', 1),
+       (27, 'STATE', 1),
+       (28, 'COUNTRY', 1),
+       (29, 'ADDRESS_TYPE', 1);
 /*!40000 ALTER TABLE `m_code` ENABLE KEYS */;
 
 
@@ -1128,27 +1216,29 @@ CREATE TABLE IF NOT EXISTS `m_code_value` (
   `order_position` int(11) NOT NULL DEFAULT '0',
   `code_score` int(11) DEFAULT NULL,
   `is_active` tinyint(1) NOT NULL DEFAULT '1',
+  `is_mandatory` tinyint(1) NOT NULL DEFAULT '0',
   PRIMARY KEY (`id`),
   UNIQUE KEY `code_value` (`code_id`,`code_value`),
   KEY `FKCFCEA42640BE071Z` (`code_id`),
   CONSTRAINT `FKCFCEA42640BE071Z` FOREIGN KEY (`code_id`) REFERENCES `m_code` 
(`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.m_code_value: ~12 rows 
(approximately)
+-- Dumping data for table mifostenant-default.m_code_value: ~13 rows 
(approximately)
 /*!40000 ALTER TABLE `m_code_value` DISABLE KEYS */;
-INSERT INTO `m_code_value` (`id`, `code_id`, `code_value`, `code_description`, 
`order_position`, `code_score`, `is_active`) VALUES
-       (1, 1, 'Passport', NULL, 1, NULL, 1),
-       (2, 1, 'Id', NULL, 2, NULL, 1),
-       (3, 1, 'Drivers License', NULL, 3, NULL, 1),
-       (4, 1, 'Any Other Id Type', NULL, 4, NULL, 1),
-       (5, 6, 'Spouse', NULL, 0, NULL, 1),
-       (6, 6, 'Parent', NULL, 0, NULL, 1),
-       (7, 6, 'Sibling', NULL, 0, NULL, 1),
-       (8, 6, 'Business Associate', NULL, 0, NULL, 1),
-       (9, 6, 'Other', NULL, 0, NULL, 1),
-       (10, 21, 'Office Access to Loan Products', NULL, 0, NULL, 1),
-       (11, 21, 'Office Access to Savings Products', NULL, 0, NULL, 1),
-       (12, 21, 'Office Access to Fees/Charges', NULL, 0, NULL, 1);
+INSERT INTO `m_code_value` (`id`, `code_id`, `code_value`, `code_description`, 
`order_position`, `code_score`, `is_active`, `is_mandatory`) VALUES
+       (1, 1, 'Passport', NULL, 1, NULL, 1, 0),
+       (2, 1, 'Id', NULL, 2, NULL, 1, 0),
+       (3, 1, 'Drivers License', NULL, 3, NULL, 1, 0),
+       (4, 1, 'Any Other Id Type', NULL, 4, NULL, 1, 0),
+       (5, 6, 'Spouse', NULL, 0, NULL, 1, 0),
+       (6, 6, 'Parent', NULL, 0, NULL, 1, 0),
+       (7, 6, 'Sibling', NULL, 0, NULL, 1, 0),
+       (8, 6, 'Business Associate', NULL, 0, NULL, 1, 0),
+       (9, 6, 'Other', NULL, 0, NULL, 1, 0),
+       (10, 21, 'Office Access to Loan Products', NULL, 0, NULL, 1, 0),
+       (11, 21, 'Office Access to Savings Products', NULL, 0, NULL, 1, 0),
+       (12, 21, 'Office Access to Fees/Charges', NULL, 0, NULL, 1, 0),
+       (13, 13, 'Leader', 'Group Leader Role', 1, NULL, 1, 0);
 /*!40000 ALTER TABLE `m_code_value` ENABLE KEYS */;
 
 
@@ -1200,7 +1290,7 @@ INSERT INTO `m_currency` (`id`, `code`, `decimal_places`, 
`currency_multiplesof`
        (29, 'CLP', 0, NULL, '$', 'Chilean Peso', 'currency.CLP'),
        (30, 'CNY', 2, NULL, NULL, 'Chinese Yuan Renminbi', 'currency.CNY'),
        (31, 'COP', 2, NULL, '$', 'Colombian Peso', 'currency.COP'),
-       (32, 'CRC', 2, NULL, '₡', 'Costa Rican Colon', 'currency.CRC'),
+       (32, 'CRC', 2, NULL, '¢', 'Costa Rican Colon', 'currency.CRC'),
        (33, 'CSD', 2, NULL, NULL, 'Serbian Dinar', 'currency.CSD'),
        (34, 'CUP', 2, NULL, '$MN', 'Cuban Peso', 'currency.CUP'),
        (35, 'CVE', 2, NULL, NULL, 'Cape Verde Escudo', 'currency.CVE'),
@@ -1232,7 +1322,7 @@ INSERT INTO `m_currency` (`id`, `code`, `decimal_places`, 
`currency_multiplesof`
        (61, 'HUF', 2, NULL, NULL, 'Hungarian Forint', 'currency.HUF'),
        (62, 'IDR', 2, NULL, NULL, 'Indonesian Rupiah', 'currency.IDR'),
        (63, 'ILS', 2, NULL, NULL, 'New Israeli Shekel', 'currency.ILS'),
-       (64, 'INR', 2, NULL, '₹', 'Indian Rupee', 'currency.INR'),
+       (64, 'INR', 2, NULL, '?', 'Indian Rupee', 'currency.INR'),
        (65, 'IQD', 3, NULL, NULL, 'Iraqi Dinar', 'currency.IQD'),
        (66, 'IRR', 2, NULL, NULL, 'Iranian Rial', 'currency.IRR'),
        (67, 'ISK', 0, NULL, NULL, 'Iceland Krona', 'currency.ISK'),
@@ -1284,7 +1374,7 @@ INSERT INTO `m_currency` (`id`, `code`, `decimal_places`, 
`currency_multiplesof`
        (113, 'PHP', 2, NULL, NULL, 'Philippine Peso', 'currency.PHP'),
        (114, 'PKR', 2, NULL, NULL, 'Pakistan Rupee', 'currency.PKR'),
        (115, 'PLN', 2, NULL, NULL, 'Polish Zloty', 'currency.PLN'),
-       (116, 'PYG', 0, NULL, '₲', 'Paraguayan Guarani', 'currency.PYG'),
+       (116, 'PYG', 0, NULL, '?', 'Paraguayan Guarani', 'currency.PYG'),
        (117, 'QAR', 2, NULL, NULL, 'Qatari Rial', 'currency.QAR'),
        (118, 'RON', 2, NULL, NULL, 'Romanian Leu', 'currency.RON'),
        (119, 'RUB', 2, NULL, NULL, 'Russian Ruble', 'currency.RUB'),
@@ -1491,6 +1581,27 @@ CREATE TABLE IF NOT EXISTS `m_document` (
 /*!40000 ALTER TABLE `m_document` ENABLE KEYS */;
 
 
+-- Dumping structure for table mifostenant-default.m_entity_datatable_check
+DROP TABLE IF EXISTS `m_entity_datatable_check`;
+CREATE TABLE IF NOT EXISTS `m_entity_datatable_check` (
+  `id` int(11) NOT NULL AUTO_INCREMENT,
+  `application_table_name` varchar(200) NOT NULL,
+  `x_registered_table_name` varchar(50) NOT NULL,
+  `status_enum` int(11) NOT NULL,
+  `system_defined` tinyint(4) NOT NULL DEFAULT '0',
+  `product_id` bigint(10) DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  UNIQUE KEY `unique_entity_check` 
(`application_table_name`,`x_registered_table_name`,`status_enum`,`product_id`),
+  KEY `x_registered_table_name` (`x_registered_table_name`),
+  KEY `product_id` (`product_id`),
+  CONSTRAINT `m_entity_datatable_check_ibfk_1` FOREIGN KEY 
(`x_registered_table_name`) REFERENCES `x_registered_table` 
(`registered_table_name`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_entity_datatable_check: ~0 
rows (approximately)
+/*!40000 ALTER TABLE `m_entity_datatable_check` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_entity_datatable_check` ENABLE KEYS */;
+
+
 -- Dumping structure for table mifostenant-default.m_entity_relation
 DROP TABLE IF EXISTS `m_entity_relation`;
 CREATE TABLE IF NOT EXISTS `m_entity_relation` (
@@ -1553,6 +1664,43 @@ CREATE TABLE IF NOT EXISTS `m_entity_to_entity_mapping` (
 /*!40000 ALTER TABLE `m_entity_to_entity_mapping` ENABLE KEYS */;
 
 
+-- Dumping structure for table mifostenant-default.m_field_configuration
+DROP TABLE IF EXISTS `m_field_configuration`;
+CREATE TABLE IF NOT EXISTS `m_field_configuration` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `entity` varchar(100) NOT NULL,
+  `subentity` varchar(100) NOT NULL,
+  `field` varchar(100) NOT NULL,
+  `is_enabled` tinyint(4) NOT NULL,
+  `is_mandatory` tinyint(4) NOT NULL,
+  `validation_regex` varchar(50) DEFAULT NULL,
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_field_configuration: ~18 rows 
(approximately)
+/*!40000 ALTER TABLE `m_field_configuration` DISABLE KEYS */;
+INSERT INTO `m_field_configuration` (`id`, `entity`, `subentity`, `field`, 
`is_enabled`, `is_mandatory`, `validation_regex`) VALUES
+       (1, 'ADDRESS', 'CLIENT', 'addressType', 1, 0, ''),
+       (2, 'ADDRESS', 'CLIENT', 'street', 1, 1, ''),
+       (3, 'ADDRESS', 'CLIENT', 'addressLine1', 1, 0, ''),
+       (4, 'ADDRESS', 'CLIENT', 'addressLine2', 1, 0, ''),
+       (5, 'ADDRESS', 'CLIENT', 'addressLine3', 1, 0, ''),
+       (6, 'ADDRESS', 'CLIENT', 'townVillage', 0, 0, ''),
+       (7, 'ADDRESS', 'CLIENT', 'city', 1, 0, ''),
+       (8, 'ADDRESS', 'CLIENT', 'countyDistrict', 0, 0, ''),
+       (9, 'ADDRESS', 'CLIENT', 'stateProvinceId', 1, 0, ''),
+       (10, 'ADDRESS', 'CLIENT', 'countryId', 1, 0, ''),
+       (11, 'ADDRESS', 'CLIENT', 'postalCode', 1, 0, ''),
+       (12, 'ADDRESS', 'CLIENT', 'latitude', 0, 0, ''),
+       (13, 'ADDRESS', 'CLIENT', 'longitude', 0, 0, ''),
+       (14, 'ADDRESS', 'CLIENT', 'createdBy', 1, 0, ''),
+       (15, 'ADDRESS', 'CLIENT', 'createdOn', 1, 0, ''),
+       (16, 'ADDRESS', 'CLIENT', 'updatedBy', 1, 0, ''),
+       (17, 'ADDRESS', 'CLIENT', 'updatedOn', 1, 0, ''),
+       (18, 'ADDRESS', 'CLIENT', 'isActive', 1, 0, '');
+/*!40000 ALTER TABLE `m_field_configuration` ENABLE KEYS */;
+
+
 -- Dumping structure for table mifostenant-default.m_floating_rates
 DROP TABLE IF EXISTS `m_floating_rates`;
 CREATE TABLE IF NOT EXISTS `m_floating_rates` (
@@ -1973,6 +2121,7 @@ CREATE TABLE IF NOT EXISTS `m_interest_rate_chart` (
   `description` varchar(200) DEFAULT NULL,
   `from_date` date NOT NULL,
   `end_date` date DEFAULT NULL,
+  `is_primary_grouping_by_amount` tinyint(1) NOT NULL DEFAULT '0',
   PRIMARY KEY (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
@@ -1987,8 +2136,8 @@ CREATE TABLE IF NOT EXISTS `m_interest_rate_slab` (
   `id` bigint(20) NOT NULL AUTO_INCREMENT,
   `interest_rate_chart_id` bigint(20) NOT NULL,
   `description` varchar(200) DEFAULT NULL,
-  `period_type_enum` smallint(5) NOT NULL DEFAULT '1',
-  `from_period` int(11) NOT NULL DEFAULT '0',
+  `period_type_enum` smallint(5) DEFAULT NULL,
+  `from_period` int(11) DEFAULT NULL,
   `to_period` int(11) DEFAULT NULL,
   `amount_range_from` decimal(19,6) DEFAULT NULL,
   `amount_range_to` decimal(19,6) DEFAULT NULL,
@@ -2037,10 +2186,9 @@ CREATE TABLE IF NOT EXISTS `m_loan` (
   `term_period_frequency_enum` smallint(5) NOT NULL DEFAULT '2',
   `repay_every` smallint(5) NOT NULL,
   `repayment_period_frequency_enum` smallint(5) NOT NULL,
-  `repayment_frequency_nth_day_enum` smallint(5) DEFAULT '0',
-  `repayment_frequency_day_of_week_enum` smallint(5) DEFAULT '0',
   `number_of_repayments` smallint(5) NOT NULL,
   `grace_on_principal_periods` smallint(5) DEFAULT NULL,
+  `recurring_moratorium_principal_periods` smallint(5) DEFAULT NULL,
   `grace_on_interest_periods` smallint(5) DEFAULT NULL,
   `grace_interest_free_periods` smallint(5) DEFAULT NULL,
   `amortization_method_enum` smallint(5) NOT NULL,
@@ -2109,6 +2257,9 @@ CREATE TABLE IF NOT EXISTS `m_loan` (
   `guarantee_amount_derived` decimal(19,6) DEFAULT NULL,
   `create_standing_instruction_at_disbursement` tinyint(1) DEFAULT NULL,
   `version` int(15) NOT NULL DEFAULT '1',
+  `writeoff_reason_cv_id` int(11) DEFAULT NULL,
+  `loan_sub_status_id` smallint(5) DEFAULT NULL,
+  `is_topup` tinyint(1) NOT NULL DEFAULT '0',
   PRIMARY KEY (`id`),
   UNIQUE KEY `loan_account_no_UNIQUE` (`account_no`),
   UNIQUE KEY `loan_externalid_UNIQUE` (`external_id`),
@@ -2126,6 +2277,7 @@ CREATE TABLE IF NOT EXISTS `m_loan` (
   KEY `FK_disbursedon_userid` (`disbursedon_userid`),
   KEY `FK_closedon_userid` (`closedon_userid`),
   KEY `fk_m_group_client_001_idx` (`group_id`,`client_id`),
+  KEY `FK_writeoffreason_m_loan_m_code_value` (`writeoff_reason_cv_id`),
   CONSTRAINT `FK7C885877240145` FOREIGN KEY (`fund_id`) REFERENCES `m_fund` 
(`id`),
   CONSTRAINT `FKB6F935D87179A0CB` FOREIGN KEY (`client_id`) REFERENCES 
`m_client` (`id`),
   CONSTRAINT `FKB6F935D8C8D4B434` FOREIGN KEY (`product_id`) REFERENCES 
`m_product_loan` (`id`),
@@ -2138,6 +2290,7 @@ CREATE TABLE IF NOT EXISTS `m_loan` (
   CONSTRAINT `FK_rejectedon_userid` FOREIGN KEY (`rejectedon_userid`) 
REFERENCES `m_appuser` (`id`),
   CONSTRAINT `FK_submittedon_userid` FOREIGN KEY (`submittedon_userid`) 
REFERENCES `m_appuser` (`id`),
   CONSTRAINT `FK_withdrawnon_userid` FOREIGN KEY (`withdrawnon_userid`) 
REFERENCES `m_appuser` (`id`),
+  CONSTRAINT `FK_writeoffreason_m_loan_m_code_value` FOREIGN KEY 
(`writeoff_reason_cv_id`) REFERENCES `m_code_value` (`id`),
   CONSTRAINT `m_loan_ibfk_1` FOREIGN KEY (`group_id`) REFERENCES `m_group` 
(`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
@@ -2342,6 +2495,23 @@ CREATE TABLE IF NOT EXISTS `m_loan_installment_charge` (
 /*!40000 ALTER TABLE `m_loan_installment_charge` ENABLE KEYS */;
 
 
+-- Dumping structure for table 
mifostenant-default.m_loan_interest_recalculation_additional_details
+DROP TABLE IF EXISTS `m_loan_interest_recalculation_additional_details`;
+CREATE TABLE IF NOT EXISTS `m_loan_interest_recalculation_additional_details` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `loan_repayment_schedule_id` bigint(20) NOT NULL,
+  `effective_date` date NOT NULL,
+  `amount` decimal(19,6) NOT NULL,
+  PRIMARY KEY (`id`),
+  KEY `FK_additional_details_repayment_schedule_id` 
(`loan_repayment_schedule_id`),
+  CONSTRAINT `FK_additional_details_repayment_schedule_id` FOREIGN KEY 
(`loan_repayment_schedule_id`) REFERENCES `m_loan_repayment_schedule` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table 
mifostenant-default.m_loan_interest_recalculation_additional_details: ~0 rows 
(approximately)
+/*!40000 ALTER TABLE `m_loan_interest_recalculation_additional_details` 
DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_loan_interest_recalculation_additional_details` ENABLE 
KEYS */;
+
+
 -- Dumping structure for table 
mifostenant-default.m_loan_officer_assignment_history
 DROP TABLE IF EXISTS `m_loan_officer_assignment_history`;
 CREATE TABLE IF NOT EXISTS `m_loan_officer_assignment_history` (
@@ -2412,10 +2582,16 @@ CREATE TABLE IF NOT EXISTS 
`m_loan_recalculation_details` (
   `reschedule_strategy_enum` smallint(5) NOT NULL,
   `rest_frequency_type_enum` smallint(1) NOT NULL,
   `rest_frequency_interval` smallint(3) NOT NULL DEFAULT '0',
-  `rest_freqency_date` date DEFAULT NULL,
   `compounding_frequency_type_enum` smallint(1) DEFAULT NULL,
   `compounding_frequency_interval` smallint(3) DEFAULT NULL,
-  `compounding_freqency_date` date DEFAULT NULL,
+  `rest_frequency_nth_day_enum` int(5) DEFAULT NULL,
+  `rest_frequency_on_day` int(5) DEFAULT NULL,
+  `rest_frequency_weekday_enum` int(5) DEFAULT NULL,
+  `compounding_frequency_nth_day_enum` int(5) DEFAULT NULL,
+  `compounding_frequency_on_day` int(5) DEFAULT NULL,
+  `is_compounding_to_be_posted_as_transaction` tinyint(1) NOT NULL DEFAULT '0',
+  `compounding_frequency_weekday_enum` int(5) DEFAULT NULL,
+  `allow_compounding_on_eod` tinyint(1) NOT NULL DEFAULT '0',
   PRIMARY KEY (`id`),
   KEY `FK_m_loan_m_loan_recalculation_details` (`loan_id`),
   CONSTRAINT `FK_m_loan_m_loan_recalculation_details` FOREIGN KEY (`loan_id`) 
REFERENCES `m_loan` (`id`)
@@ -2508,13 +2684,8 @@ CREATE TABLE IF NOT EXISTS `m_loan_reschedule_request` (
   `loan_id` bigint(20) NOT NULL,
   `status_enum` smallint(5) NOT NULL,
   `reschedule_from_installment` smallint(5) NOT NULL COMMENT 'Rescheduling 
will start from this installment',
-  `grace_on_principal` smallint(5) DEFAULT NULL COMMENT 'Number of 
installments that should be added with 0 principal amount',
-  `grace_on_interest` smallint(5) DEFAULT NULL COMMENT 'Number of installments 
that should be added with 0 interest rate',
   `reschedule_from_date` date NOT NULL COMMENT 'Rescheduling will start from 
the installment with due date similar to this date.',
-  `extra_terms` smallint(5) DEFAULT NULL COMMENT 'Number of extra terms to be 
added to the schedule',
-  `interest_rate` decimal(19,6) DEFAULT NULL COMMENT 'If provided, the 
interest rate for the unpaid installments will be recalculated',
   `recalculate_interest` tinyint(1) DEFAULT NULL COMMENT 'If set to 1, 
interest will be recalculated starting from the reschedule period.',
-  `adjusted_due_date` date DEFAULT NULL COMMENT 'New due date for the first 
rescheduled installment',
   `reschedule_reason_cv_id` int(11) DEFAULT NULL COMMENT 'ID of code value of 
reason for rescheduling',
   `reschedule_reason_comment` varchar(500) DEFAULT NULL COMMENT 'Text provided 
in addition to the reason code value',
   `submitted_on_date` date NOT NULL,
@@ -2541,6 +2712,24 @@ CREATE TABLE IF NOT EXISTS `m_loan_reschedule_request` (
 /*!40000 ALTER TABLE `m_loan_reschedule_request` ENABLE KEYS */;
 
 
+-- Dumping structure for table 
mifostenant-default.m_loan_reschedule_request_term_variations_mapping
+DROP TABLE IF EXISTS `m_loan_reschedule_request_term_variations_mapping`;
+CREATE TABLE IF NOT EXISTS `m_loan_reschedule_request_term_variations_mapping` 
(
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `loan_reschedule_request_id` bigint(20) NOT NULL,
+  `loan_term_variations_id` bigint(20) NOT NULL,
+  PRIMARY KEY (`id`),
+  KEY `FK__m_loan_reschedule_request` (`loan_reschedule_request_id`),
+  KEY `FK__m_loan_term_variations` (`loan_term_variations_id`),
+  CONSTRAINT `FK__m_loan_reschedule_request` FOREIGN KEY 
(`loan_reschedule_request_id`) REFERENCES `m_loan_reschedule_request` (`id`),
+  CONSTRAINT `FK__m_loan_term_variations` FOREIGN KEY 
(`loan_term_variations_id`) REFERENCES `m_loan_term_variations` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table 
mifostenant-default.m_loan_reschedule_request_term_variations_mapping: ~0 rows 
(approximately)
+/*!40000 ALTER TABLE `m_loan_reschedule_request_term_variations_mapping` 
DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_loan_reschedule_request_term_variations_mapping` 
ENABLE KEYS */;
+
+
 -- Dumping structure for table mifostenant-default.m_loan_term_variations
 DROP TABLE IF EXISTS `m_loan_term_variations`;
 CREATE TABLE IF NOT EXISTS `m_loan_term_variations` (
@@ -2552,6 +2741,8 @@ CREATE TABLE IF NOT EXISTS `m_loan_term_variations` (
   `date_value` date DEFAULT NULL,
   `is_specific_to_installment` tinyint(4) NOT NULL DEFAULT '0',
   `applied_on_loan_status` smallint(5) NOT NULL,
+  `is_active` tinyint(1) NOT NULL DEFAULT '1',
+  `parent_id` bigint(20) DEFAULT NULL,
   PRIMARY KEY (`id`),
   KEY `FK_loan_id_m_loan_id` (`loan_id`),
   CONSTRAINT `FK_loan_id_m_loan_id` FOREIGN KEY (`loan_id`) REFERENCES 
`m_loan` (`id`)
@@ -2562,6 +2753,28 @@ CREATE TABLE IF NOT EXISTS `m_loan_term_variations` (
 /*!40000 ALTER TABLE `m_loan_term_variations` ENABLE KEYS */;
 
 
+-- Dumping structure for table mifostenant-default.m_loan_topup
+DROP TABLE IF EXISTS `m_loan_topup`;
+CREATE TABLE IF NOT EXISTS `m_loan_topup` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `loan_id` bigint(20) NOT NULL,
+  `closure_loan_id` bigint(20) NOT NULL,
+  `account_transfer_details_id` bigint(20) DEFAULT NULL,
+  `topup_amount` decimal(19,6) DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  KEY `m_loan_topup_FK_loan_id` (`loan_id`),
+  KEY `m_loan_topup_FK_closure_loan_id` (`closure_loan_id`),
+  KEY `m_loan_topup_FK_account_transfer_details_id` 
(`account_transfer_details_id`),
+  CONSTRAINT `m_loan_topup_FK_account_transfer_details_id` FOREIGN KEY 
(`account_transfer_details_id`) REFERENCES `m_account_transfer_details` (`id`),
+  CONSTRAINT `m_loan_topup_FK_closure_loan_id` FOREIGN KEY (`closure_loan_id`) 
REFERENCES `m_loan` (`id`),
+  CONSTRAINT `m_loan_topup_FK_loan_id` FOREIGN KEY (`loan_id`) REFERENCES 
`m_loan` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_loan_topup: ~0 rows 
(approximately)
+/*!40000 ALTER TABLE `m_loan_topup` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_loan_topup` ENABLE KEYS */;
+
+
 -- Dumping structure for table mifostenant-default.m_loan_tranche_charges
 DROP TABLE IF EXISTS `m_loan_tranche_charges`;
 CREATE TABLE IF NOT EXISTS `m_loan_tranche_charges` (
@@ -2713,6 +2926,7 @@ CREATE TABLE IF NOT EXISTS `m_note` (
   `loan_transaction_id` bigint(20) DEFAULT NULL,
   `savings_account_id` bigint(20) DEFAULT NULL,
   `savings_account_transaction_id` bigint(20) DEFAULT NULL,
+  `share_account_id` bigint(20) DEFAULT NULL,
   `note_type_enum` smallint(5) NOT NULL,
   `note` varchar(1000) DEFAULT NULL,
   `created_date` datetime DEFAULT NULL,
@@ -2757,7 +2971,7 @@ CREATE TABLE IF NOT EXISTS `m_office` (
   CONSTRAINT `FK2291C477E2551DCC` FOREIGN KEY (`parent_id`) REFERENCES 
`m_office` (`id`)
 ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.m_office: ~1 rows (approximately)
+-- Dumping data for table mifostenant-default.m_office: ~0 rows (approximately)
 /*!40000 ALTER TABLE `m_office` DISABLE KEYS */;
 INSERT INTO `m_office` (`id`, `parent_id`, `hierarchy`, `external_id`, `name`, 
`opening_date`) VALUES
        (1, NULL, '.', '1', 'Head Office', '2009-01-01');
@@ -2800,7 +3014,7 @@ CREATE TABLE IF NOT EXISTS `m_organisation_currency` (
   PRIMARY KEY (`id`)
 ) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.m_organisation_currency: ~1 rows 
(approximately)
+-- Dumping data for table mifostenant-default.m_organisation_currency: ~0 rows 
(approximately)
 /*!40000 ALTER TABLE `m_organisation_currency` DISABLE KEYS */;
 INSERT INTO `m_organisation_currency` (`id`, `code`, `decimal_places`, 
`currency_multiplesof`, `name`, `display_symbol`, 
`internationalized_name_code`) VALUES
        (21, 'USD', 2, NULL, 'US Dollar', '$', 'currency.USD');
@@ -2873,9 +3087,9 @@ CREATE TABLE IF NOT EXISTS `m_permission` (
   `can_maker_checker` tinyint(1) NOT NULL DEFAULT '1',
   PRIMARY KEY (`id`),
   UNIQUE KEY `code` (`code`)
-) ENGINE=InnoDB AUTO_INCREMENT=705 DEFAULT CHARSET=utf8;
+) ENGINE=InnoDB AUTO_INCREMENT=767 DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.m_permission: ~741 rows 
(approximately)
+-- Dumping data for table mifostenant-default.m_permission: ~744 rows 
(approximately)
 /*!40000 ALTER TABLE `m_permission` DISABLE KEYS */;
 INSERT INTO `m_permission` (`id`, `grouping`, `code`, `entity_name`, 
`action_name`, `can_maker_checker`) VALUES
        (1, 'special', 'ALL_FUNCTIONS', NULL, NULL, 0),
@@ -3559,7 +3773,69 @@ INSERT INTO `m_permission` (`id`, `grouping`, `code`, 
`entity_name`, `action_nam
        (701, 'SHAREPRODUCT', 'CREATE_SHAREPRODUCT', 'SHAREPRODUCT', 'CREATE', 
0),
        (702, 'SHAREPRODUCT', 'UPDATE_SHAREPRODUCT', 'SHAREPRODUCT', 'CREATE', 
0),
        (703, 'SHAREACCOUNT', 'CREATE_SHAREACCOUNT', 'SHAREACCOUNT', 'CREATE', 
0),
-       (704, 'SHAREACCOUNT', 'UPDATE_SHAREACCOUNT', 'SHAREACCOUNT', 'CREATE', 
0);
+       (704, 'SHAREACCOUNT', 'UPDATE_SHAREACCOUNT', 'SHAREACCOUNT', 'CREATE', 
0),
+       (705, 'organisation', 'READ_TAXCOMPONENT', 'TAXCOMPONENT', 'READ', 0),
+       (706, 'organisation', 'CREATE_TAXCOMPONENT', 'TAXCOMPONENT', 'CREATE', 
0),
+       (707, 'organisation', 'CREATE_TAXCOMPONENT_CHECKER', 'TAXCOMPONENT', 
'CREATE_CHECKER', 0),
+       (708, 'organisation', 'UPDATE_TAXCOMPONENT', 'TAXCOMPONENT', 'UPDATE', 
0),
+       (709, 'organisation', 'UPDATE_TAXCOMPONENT_CHECKER', 'TAXCOMPONENT', 
'UPDATE_CHECKER', 0),
+       (710, 'organisation', 'READ_TAXGROUP', 'TAXGROUP', 'READ', 0),
+       (711, 'organisation', 'CREATE_TAXGROUP', 'TAXGROUP', 'CREATE', 0),
+       (712, 'organisation', 'CREATE_TAXGROUP_CHECKER', 'TAXGROUP', 
'CREATE_CHECKER', 0),
+       (713, 'organisation', 'UPDATE_TAXGROUP', 'TAXGROUP', 'UPDATE', 0),
+       (714, 'organisation', 'UPDATE_TAXGROUP_CHECKER', 'TAXGROUP', 
'UPDATE_CHECKER', 0),
+       (715, 'portfolio', 'UPDATEWITHHOLDTAX_SAVINGSACCOUNT', 
'SAVINGSACCOUNT', 'UPDATEWITHHOLDTAX', 0),
+       (716, 'portfolio', 'UPDATEWITHHOLDTAX_SAVINGSACCOUNT_CHECKER', 
'SAVINGSACCOUNT', 'UPDATEWITHHOLDTAX_CHECKER', 0),
+       (717, 'SHAREPRODUCT', 'CREATE_DIVIDEND_SHAREPRODUCT', 'SHAREPRODUCT', 
'CREATE_DIVIDEND', 0),
+       (718, 'SHAREPRODUCT', 'CREATE_DIVIDEND_SHAREPRODUCT_CHECKER', 
'SHAREPRODUCT', 'CREATE_DIVIDEND_CHECKER', 0),
+       (719, 'SHAREPRODUCT', 'APPROVE_DIVIDEND_SHAREPRODUCT', 'SHAREPRODUCT', 
'APPROVE_DIVIDEND', 0),
+       (720, 'SHAREPRODUCT', 'APPROVE_DIVIDEND_SHAREPRODUCT_CHECKER', 
'SHAREPRODUCT', 'APPROVE_DIVIDEND_CHECKER', 0),
+       (721, 'SHAREPRODUCT', 'DELETE_DIVIDEND_SHAREPRODUCT', 'SHAREPRODUCT', 
'DELETE_DIVIDEND', 0),
+       (722, 'SHAREPRODUCT', 'DELETE_DIVIDEND_SHAREPRODUCT_CHECKER', 
'SHAREPRODUCT', 'DELETE_DIVIDEND_CHECKER', 0),
+       (723, 'SHAREPRODUCT', 'READ_DIVIDEND_SHAREPRODUCT', 'SHAREPRODUCT', 
'READ_DIVIDEND', 0),
+       (724, 'SHAREACCOUNT', 'APPROVE_SHAREACCOUNT', 'SHAREACCOUNT', 
'APPROVE', 0),
+       (725, 'SHAREACCOUNT', 'ACTIVATE_SHAREACCOUNT', 'SHAREACCOUNT', 
'ACTIVATE', 0),
+       (726, 'SHAREACCOUNT', 'UNDOAPPROVAL_SHAREACCOUNT', 'SHAREACCOUNT', 
'UNDOAPPROVAL', 0),
+       (727, 'SHAREACCOUNT', 'REJECT_SHAREACCOUNT', 'SHAREACCOUNT', 'REJECT', 
0),
+       (728, 'SHAREACCOUNT', 'APPLYADDITIONALSHARES_SHAREACCOUNT', 
'SHAREACCOUNT', 'APPLYADDITIONALSHARES', 0),
+       (729, 'SHAREACCOUNT', 'APPROVEADDITIONALSHARES_SHAREACCOUNT', 
'SHAREACCOUNT', 'APPROVEADDITIONALSHARES', 0),
+       (730, 'SHAREACCOUNT', 'REJECTADDITIONALSHARES_SHAREACCOUNT', 
'SHAREACCOUNT', 'REJECTADDITIONALSHARES', 0),
+       (731, 'SHAREACCOUNT', 'REDEEMSHARES_SHAREACCOUNT', 'SHAREACCOUNT', 
'REDEEMSHARES', 0),
+       (732, 'SHAREACCOUNT', 'CLOSE_SHAREACCOUNT', 'SHAREACCOUNT', 'CLOSE', 0),
+       (733, 'SSBENEFICIARYTPT', 'READ_SSBENEFICIARYTPT', 'SSBENEFICIARYTPT', 
'READ', 0),
+       (734, 'SSBENEFICIARYTPT', 'CREATE_SSBENEFICIARYTPT', 
'SSBENEFICIARYTPT', 'CREATE', 0),
+       (735, 'SSBENEFICIARYTPT', 'UPDATE_SSBENEFICIARYTPT', 
'SSBENEFICIARYTPT', 'UPDATE', 0),
+       (736, 'SSBENEFICIARYTPT', 'DELETE_SSBENEFICIARYTPT', 
'SSBENEFICIARYTPT', 'DELETE', 0),
+       (737, 'portfolio', 'FORECLOSURE_LOAN', 'LOAN', 'FORECLOSURE', 0),
+       (738, 'portfolio', 'FORECLOSURE_LOAN_CHECKER', 'LOAN', 
'FORECLOSURE_CHECKER', 0),
+       (739, 'portfolio', 'CREATE_ADDRESS', 'ADDRESS', 'CREATE', 0),
+       (740, 'portfolio', 'CREATE_ADDRESS_CHECKER', 'ADDRESS', 
'CREATE_CHECKER', 1),
+       (741, 'portfolio', 'UPDATE_ADDRESS', 'ADDRESS', 'UPDATE', 0),
+       (742, 'portfolio', 'UPDATE_ADDRESS_CHECKER', 'ADDRESS', 
'UPDATE_CHECKER', 1),
+       (743, 'portfolio', 'READ_ADDRESS', 'ADDRESS', 'READ', 0),
+       (744, 'portfolio', 'DELETE_ADDRESS', 'ADDRESS', 'DELETE', 0),
+       (745, 'portfolio', 'DELETE_ADDRESS_CHECKER', 'ADDRESS', 
'DELETE_CHECKER', 1),
+       (746, 'jobs', 'CREATE_REPORTMAILINGJOB', 'REPORTMAILINGJOB', 'CREATE', 
0),
+       (747, 'jobs', 'UPDATE_REPORTMAILINGJOB', 'REPORTMAILINGJOB', 'UPDATE', 
0),
+       (748, 'jobs', 'DELETE_REPORTMAILINGJOB', 'REPORTMAILINGJOB', 'DELETE', 
0),
+       (749, 'jobs', 'READ_REPORTMAILINGJOB', 'REPORTMAILINGJOB', 'READ', 0),
+       (750, 'portfolio', 'UNDOREJECT_CLIENT', 'CLIENT', 'UNDOREJECT', 1),
+       (751, 'portfolio', 'UNDOREJECT_CLIENT_CHECKER', 'CLIENT', 
'UNDOREJECT_CHECKER', 1),
+       (752, 'portfolio', 'UNDOWITHDRAWAL_CLIENT', 'CLIENT', 'UNDOWITHDRAWAL', 
1),
+       (753, 'portfolio', 'UNDOWITHDRAWAL_CLIENT_CHECKER', 'CLIENT', 
'UNDOWITHDRAWAL_CHECKER', 1),
+       (754, 'organisation', 'READ_SMSCAMPAIGN', 'SMSCAMPAIGN', 'READ', 0),
+       (755, 'organisation', 'CREATE_SMSCAMPAIGN', 'SMSCAMPAIGN', 'CREATE', 0),
+       (756, 'organisation', 'CREATE_SMSCAMPAIGN_CHECKER', 'SMSCAMPAIGN', 
'CREATE', 0),
+       (757, 'organisation', 'UPDATE_SMSCAMPAIGN', 'SMSCAMPAIGN', 'UPDATE', 0),
+       (758, 'organisation', 'UPDATE_SMSCAMPAIGN_CHECKER', 'SMSCAMPAIGN', 
'UPDATE', 0),
+       (759, 'organisation', 'DELETE_SMSCAMPAIGN', 'SMSCAMPAIGN', 'DELETE', 0),
+       (760, 'organisation', 'DELETE_SMSCAMPAIGN_CHECKER', 'SMSCAMPAIGN', 
'DELETE', 0),
+       (761, 'organisation', 'ACTIVATE_SMSCAMPAIGN', 'SMSCAMPAIGN', 
'ACTIVATE', 0),
+       (762, 'organisation', 'CLOSE_SMSCAMPAIGN', 'SMSCAMPAIGN', 'CLOSE', 0),
+       (763, 'organisation', 'REACTIVATE_SMSCAMPAIGN', 'SMSCAMPAIGN', 
'REACTIVATE', 0),
+       (764, 'datatable', 'READ_ENTITY_DATATABLE_CHECK', 
'ENTITY_DATATABLE_CHECK', 'READ', 0),
+       (765, 'datatable', 'CREATE_ENTITY_DATATABLE_CHECK', 
'ENTITY_DATATABLE_CHECK', 'CREATE', 0),
+       (766, 'datatable', 'DELETE_ENTITY_DATATABLE_CHECK', 
'ENTITY_DATATABLE_CHECK', 'DELETE', 0);
 /*!40000 ALTER TABLE `m_permission` ENABLE KEYS */;
 
 
@@ -3663,6 +3939,7 @@ CREATE TABLE IF NOT EXISTS `m_product_loan` (
   `min_number_of_repayments` smallint(5) DEFAULT NULL,
   `max_number_of_repayments` smallint(5) DEFAULT NULL,
   `grace_on_principal_periods` smallint(5) DEFAULT NULL,
+  `recurring_moratorium_principal_periods` smallint(5) DEFAULT NULL,
   `grace_on_interest_periods` smallint(5) DEFAULT NULL,
   `grace_interest_free_periods` smallint(5) DEFAULT NULL,
   `amortization_method_enum` smallint(5) NOT NULL,
@@ -3687,6 +3964,8 @@ CREATE TABLE IF NOT EXISTS `m_product_loan` (
   `account_moves_out_of_npa_only_on_arrears_completion` tinyint(1) NOT NULL 
DEFAULT '0',
   `can_define_fixed_emi_amount` tinyint(1) NOT NULL DEFAULT '0',
   `instalment_amount_in_multiples_of` decimal(19,6) DEFAULT NULL,
+  `can_use_for_topup` tinyint(1) NOT NULL DEFAULT '0',
+  `sync_expected_with_disbursement_date` tinyint(4) DEFAULT '0',
   PRIMARY KEY (`id`),
   UNIQUE KEY `unq_name` (`name`),
   UNIQUE KEY `unq_short_name` (`short_name`),
@@ -3791,12 +4070,18 @@ CREATE TABLE IF NOT EXISTS 
`m_product_loan_recalculation_details` (
   `reschedule_strategy_enum` smallint(5) NOT NULL,
   `rest_frequency_type_enum` smallint(1) NOT NULL,
   `rest_frequency_interval` smallint(3) NOT NULL DEFAULT '0',
-  `rest_freqency_date` date DEFAULT NULL,
   `arrears_based_on_original_schedule` tinyint(1) NOT NULL DEFAULT '0',
   `pre_close_interest_calculation_strategy` smallint(3) NOT NULL DEFAULT '1',
   `compounding_frequency_type_enum` smallint(1) DEFAULT NULL,
   `compounding_frequency_interval` smallint(3) DEFAULT NULL,
-  `compounding_freqency_date` date DEFAULT NULL,
+  `rest_frequency_nth_day_enum` int(5) DEFAULT NULL,
+  `rest_frequency_on_day` int(5) DEFAULT NULL,
+  `rest_frequency_weekday_enum` int(5) DEFAULT NULL,
+  `compounding_frequency_nth_day_enum` int(5) DEFAULT NULL,
+  `compounding_frequency_on_day` int(5) DEFAULT NULL,
+  `compounding_frequency_weekday_enum` int(5) DEFAULT NULL,
+  `is_compounding_to_be_posted_as_transaction` tinyint(1) NOT NULL DEFAULT '0',
+  `allow_compounding_on_eod` tinyint(1) NOT NULL DEFAULT '0',
   PRIMARY KEY (`id`),
   KEY `FK_m_product_loan_m_product_loan_recalculation_details` (`product_id`),
   CONSTRAINT `FK_m_product_loan_m_product_loan_recalculation_details` FOREIGN 
KEY (`product_id`) REFERENCES `m_product_loan` (`id`)
@@ -3953,6 +4238,90 @@ INSERT INTO `m_provision_category` (`id`, 
`category_name`, `description`) VALUES
 /*!40000 ALTER TABLE `m_provision_category` ENABLE KEYS */;
 
 
+-- Dumping structure for table mifostenant-default.m_report_mailing_job
+DROP TABLE IF EXISTS `m_report_mailing_job`;
+CREATE TABLE IF NOT EXISTS `m_report_mailing_job` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `name` varchar(100) NOT NULL,
+  `description` text,
+  `start_datetime` datetime NOT NULL,
+  `recurrence` varchar(100) DEFAULT NULL,
+  `created_date` date NOT NULL,
+  `createdby_id` bigint(20) NOT NULL,
+  `lastmodified_date` date DEFAULT NULL,
+  `lastmodifiedby_id` bigint(20) DEFAULT NULL,
+  `email_recipients` text NOT NULL,
+  `email_subject` varchar(100) NOT NULL,
+  `email_message` text NOT NULL,
+  `email_attachment_file_format` varchar(10) NOT NULL,
+  `stretchy_report_id` int(11) NOT NULL,
+  `stretchy_report_param_map` text,
+  `previous_run_datetime` datetime DEFAULT NULL,
+  `next_run_datetime` datetime DEFAULT NULL,
+  `previous_run_status` varchar(10) DEFAULT NULL,
+  `previous_run_error_log` text,
+  `previous_run_error_message` text,
+  `number_of_runs` int(11) NOT NULL DEFAULT '0',
+  `is_active` tinyint(1) NOT NULL DEFAULT '0',
+  `is_deleted` tinyint(1) NOT NULL DEFAULT '0',
+  `run_as_userid` bigint(20) NOT NULL,
+  PRIMARY KEY (`id`),
+  UNIQUE KEY `unique_name` (`name`),
+  KEY `createdby_id` (`createdby_id`),
+  KEY `lastmodifiedby_id` (`lastmodifiedby_id`),
+  KEY `stretchy_report_id` (`stretchy_report_id`),
+  KEY `run_as_userid` (`run_as_userid`),
+  CONSTRAINT `m_report_mailing_job_ibfk_1` FOREIGN KEY (`createdby_id`) 
REFERENCES `m_appuser` (`id`),
+  CONSTRAINT `m_report_mailing_job_ibfk_2` FOREIGN KEY (`lastmodifiedby_id`) 
REFERENCES `m_appuser` (`id`),
+  CONSTRAINT `m_report_mailing_job_ibfk_3` FOREIGN KEY (`stretchy_report_id`) 
REFERENCES `stretchy_report` (`id`),
+  CONSTRAINT `m_report_mailing_job_ibfk_4` FOREIGN KEY (`run_as_userid`) 
REFERENCES `m_appuser` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_report_mailing_job: ~0 rows 
(approximately)
+/*!40000 ALTER TABLE `m_report_mailing_job` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_report_mailing_job` ENABLE KEYS */;
+
+
+-- Dumping structure for table 
mifostenant-default.m_report_mailing_job_configuration
+DROP TABLE IF EXISTS `m_report_mailing_job_configuration`;
+CREATE TABLE IF NOT EXISTS `m_report_mailing_job_configuration` (
+  `id` int(11) NOT NULL AUTO_INCREMENT,
+  `name` varchar(50) NOT NULL,
+  `value` varchar(200) NOT NULL,
+  PRIMARY KEY (`id`),
+  UNIQUE KEY `unique_name` (`name`)
+) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;
+
+-- Dumping data for table 
mifostenant-default.m_report_mailing_job_configuration: ~4 rows (approximately)
+/*!40000 ALTER TABLE `m_report_mailing_job_configuration` DISABLE KEYS */;
+INSERT INTO `m_report_mailing_job_configuration` (`id`, `name`, `value`) VALUES
+       (1, 'GMAIL_SMTP_SERVER', 'smtp.gmail.com'),
+       (2, 'GMAIL_SMTP_PORT', '587'),
+       (3, 'GMAIL_SMTP_USERNAME', ''),
+       (4, 'GMAIL_SMTP_PASSWORD', '');
+/*!40000 ALTER TABLE `m_report_mailing_job_configuration` ENABLE KEYS */;
+
+
+-- Dumping structure for table 
mifostenant-default.m_report_mailing_job_run_history
+DROP TABLE IF EXISTS `m_report_mailing_job_run_history`;
+CREATE TABLE IF NOT EXISTS `m_report_mailing_job_run_history` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `job_id` bigint(20) NOT NULL,
+  `start_datetime` datetime NOT NULL,
+  `end_datetime` datetime NOT NULL,
+  `status` varchar(10) NOT NULL,
+  `error_message` text,
+  `error_log` text,
+  PRIMARY KEY (`id`),
+  KEY `job_id` (`job_id`),
+  CONSTRAINT `m_report_mailing_job_run_history_ibfk_1` FOREIGN KEY (`job_id`) 
REFERENCES `m_report_mailing_job` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table 
mifostenant-default.m_report_mailing_job_run_history: ~0 rows (approximately)
+/*!40000 ALTER TABLE `m_report_mailing_job_run_history` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_report_mailing_job_run_history` ENABLE KEYS */;
+
+
 -- Dumping structure for table mifostenant-default.m_role
 DROP TABLE IF EXISTS `m_role`;
 CREATE TABLE IF NOT EXISTS `m_role` (
@@ -3964,7 +4333,7 @@ CREATE TABLE IF NOT EXISTS `m_role` (
   UNIQUE KEY `unq_name` (`name`)
 ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.m_role: ~1 rows (approximately)
+-- Dumping data for table mifostenant-default.m_role: ~0 rows (approximately)
 /*!40000 ALTER TABLE `m_role` DISABLE KEYS */;
 INSERT INTO `m_role` (`id`, `name`, `description`, `is_disabled`) VALUES
        (1, 'Super user', 'This role provides all application permissions.', 0);
@@ -3983,7 +4352,7 @@ CREATE TABLE IF NOT EXISTS `m_role_permission` (
   CONSTRAINT `FK8DEDB04815CEC7AB` FOREIGN KEY (`role_id`) REFERENCES `m_role` 
(`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
--- Dumping data for table mifostenant-default.m_role_permission: ~1 rows 
(approximately)
+-- Dumping data for table mifostenant-default.m_role_permission: ~0 rows 
(approximately)
 /*!40000 ALTER TABLE `m_role_permission` DISABLE KEYS */;
 INSERT INTO `m_role_permission` (`role_id`, `permission_id`) VALUES
        (1, 1);
@@ -4001,6 +4370,7 @@ CREATE TABLE IF NOT EXISTS `m_savings_account` (
   `product_id` bigint(20) DEFAULT NULL,
   `field_officer_id` bigint(20) DEFAULT NULL,
   `status_enum` smallint(5) NOT NULL DEFAULT '300',
+  `sub_status_enum` smallint(5) NOT NULL DEFAULT '0',
   `account_type_enum` smallint(5) NOT NULL DEFAULT '1',
   `deposit_type_enum` smallint(5) NOT NULL DEFAULT '100',
   `submittedon_date` date NOT NULL,
@@ -4041,6 +4411,7 @@ CREATE TABLE IF NOT EXISTS `m_savings_account` (
   `total_interest_earned_derived` decimal(19,6) DEFAULT NULL,
   `total_interest_posted_derived` decimal(19,6) DEFAULT NULL,
   `total_overdraft_interest_derived` decimal(19,6) DEFAULT '0.000000',
+  `total_withhold_tax_derived` decimal(19,6) DEFAULT NULL,
   `account_balance_derived` decimal(19,6) NOT NULL DEFAULT '0.000000',
   `min_required_balance` decimal(19,6) DEFAULT NULL,
   `enforce_min_required_balance` tinyint(1) NOT NULL DEFAULT '0',
@@ -4048,15 +4419,20 @@ CREATE TABLE IF NOT EXISTS `m_savings_account` (
   `start_interest_calculation_date` date DEFAULT NULL,
   `on_hold_funds_derived` decimal(19,6) DEFAULT NULL,
   `version` int(15) NOT NULL DEFAULT '1',
+  `withhold_tax` tinyint(4) NOT NULL DEFAULT '0',
+  `tax_group_id` bigint(20) DEFAULT NULL,
+  `last_interest_calculation_date` date DEFAULT NULL,
   PRIMARY KEY (`id`),
   UNIQUE KEY `sa_account_no_UNIQUE` (`account_no`),
   UNIQUE KEY `sa_externalid_UNIQUE` (`external_id`),
   KEY `FKSA00000000000001` (`client_id`),
   KEY `FKSA00000000000002` (`group_id`),
   KEY `FKSA00000000000003` (`product_id`),
+  KEY `FK_savings_account_tax_group` (`tax_group_id`),
   CONSTRAINT `FKSA00000000000001` FOREIGN KEY (`client_id`) REFERENCES 
`m_client` (`id`),
   CONSTRAINT `FKSA00000000000002` FOREIGN KEY (`group_id`) REFERENCES 
`m_group` (`id`),
-  CONSTRAINT `FKSA00000000000003` FOREIGN KEY (`product_id`) REFERENCES 
`m_savings_product` (`id`)
+  CONSTRAINT `FKSA00000000000003` FOREIGN KEY (`product_id`) REFERENCES 
`m_savings_product` (`id`),
+  CONSTRAINT `FK_savings_account_tax_group` FOREIGN KEY (`tax_group_id`) 
REFERENCES `m_tax_group` (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 -- Dumping data for table mifostenant-default.m_savings_account: ~0 rows 
(approximately)
@@ -4128,6 +4504,7 @@ CREATE TABLE IF NOT EXISTS 
`m_savings_account_interest_rate_chart` (
   `description` varchar(200) DEFAULT NULL,
   `from_date` date NOT NULL,
   `end_date` date DEFAULT NULL,
+  `is_primary_grouping_by_amount` tinyint(4) NOT NULL DEFAULT '0',
   PRIMARY KEY (`id`),
   KEY `FKSAIRC00000000000001` (`savings_account_id`),
   CONSTRAINT `FKSAIRC00000000000001` FOREIGN KEY (`savings_account_id`) 
REFERENCES `m_savings_account` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION
@@ -4144,8 +4521,8 @@ CREATE TABLE IF NOT EXISTS 
`m_savings_account_interest_rate_slab` (
   `id` bigint(20) NOT NULL AUTO_INCREMENT,
   `savings_account_interest_rate_chart_id` bigint(20) NOT NULL,
   `description` varchar(200) DEFAULT NULL,
-  `period_type_enum` smallint(5) NOT NULL DEFAULT '1',
-  `from_period` int(11) NOT NULL DEFAULT '0',
+  `period_type_enum` smallint(5) DEFAULT NULL,
+  `from_period` int(11) DEFAULT NULL,
   `to_period` int(11) DEFAULT NULL,
   `amount_range_from` decimal(19,6) DEFAULT NULL,
   `amount_range_to` decimal(19,6) DEFAULT NULL,
@@ -4179,6 +4556,7 @@ CREATE TABLE IF NOT EXISTS 
`m_savings_account_transaction` (
   `cumulative_balance_derived` decimal(19,6) DEFAULT NULL,
   `created_date` datetime NOT NULL,
   `appuser_id` bigint(20) DEFAULT NULL,
+  `is_manual` tinyint(1) DEFAULT '0',
   PRIMARY KEY (`id`),
   KEY `FKSAT0000000001` (`savings_account_id`),
   KEY `FK_m_savings_account_transaction_m_payment_detail` 
(`payment_detail_id`),
@@ -4193,6 +4571,25 @@ CREATE TABLE IF NOT EXISTS 
`m_savings_account_transaction` (
 /*!40000 ALTER TABLE `m_savings_account_transaction` ENABLE KEYS */;
 
 
+-- Dumping structure for table 
mifostenant-default.m_savings_account_transaction_tax_details
+DROP TABLE IF EXISTS `m_savings_account_transaction_tax_details`;
+CREATE TABLE IF NOT EXISTS `m_savings_account_transaction_tax_details` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `savings_transaction_id` bigint(20) NOT NULL,
+  `tax_component_id` bigint(20) NOT NULL,
+  `amount` decimal(19,6) NOT NULL,
+  PRIMARY KEY (`id`),
+  KEY `FK_savings_account_transaction_tax_details_savings_transaction` 
(`savings_transaction_id`),
+  KEY `FK_savings_account_transaction_tax_details_tax_component` 
(`tax_component_id`),
+  CONSTRAINT `FK_savings_account_transaction_tax_details_savings_transaction` 
FOREIGN KEY (`savings_transaction_id`) REFERENCES 
`m_savings_account_transaction` (`id`),
+  CONSTRAINT `FK_savings_account_transaction_tax_details_tax_component` 
FOREIGN KEY (`tax_component_id`) REFERENCES `m_tax_component` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table 
mifostenant-default.m_savings_account_transaction_tax_details: ~0 rows 
(approximately)
+/*!40000 ALTER TABLE `m_savings_account_transaction_tax_details` DISABLE KEYS 
*/;
+/*!40000 ALTER TABLE `m_savings_account_transaction_tax_details` ENABLE KEYS 
*/;
+
+
 -- Dumping structure for table 
mifostenant-default.m_savings_interest_incentives
 DROP TABLE IF EXISTS `m_savings_interest_incentives`;
 CREATE TABLE IF NOT EXISTS `m_savings_interest_incentives` (
@@ -4268,9 +4665,17 @@ CREATE TABLE IF NOT EXISTS `m_savings_product` (
   `min_required_balance` decimal(19,6) DEFAULT NULL,
   `enforce_min_required_balance` tinyint(1) NOT NULL DEFAULT '0',
   `min_balance_for_interest_calculation` decimal(19,6) DEFAULT NULL,
+  `withhold_tax` tinyint(4) NOT NULL DEFAULT '0',
+  `tax_group_id` bigint(20) DEFAULT NULL,
+  `is_dormancy_tracking_active` smallint(1) DEFAULT NULL,
+  `days_to_inactive` int(11) DEFAULT NULL,
+  `days_to_dormancy` int(11) DEFAULT NULL,
+  `days_to_escheat` int(11) DEFAULT NULL,
   PRIMARY KEY (`id`),
   UNIQUE KEY `sp_unq_name` (`name`),
-  UNIQUE KEY `sp_unq_short_name` (`short_name`)
+  UNIQUE KEY `sp_unq_short_name` (`short_name`),
+  KEY `FK_savings_product_tax_group` (`tax_group_id`),
+  CONSTRAINT `FK_savings_product_tax_group` FOREIGN KEY (`tax_group_id`) 
REFERENCES `m_tax_group` (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
 -- Dumping data for table mifostenant-default.m_savings_product: ~0 rows 
(approximately)
@@ -4294,6 +4699,27 @@ CREATE TABLE IF NOT EXISTS `m_savings_product_charge` (
 /*!40000 ALTER TABLE `m_savings_product_charge` ENABLE KEYS */;
 
 
+-- Dumping structure for table 
mifostenant-default.m_selfservice_beneficiaries_tpt
+DROP TABLE IF EXISTS `m_selfservice_beneficiaries_tpt`;
+CREATE TABLE IF NOT EXISTS `m_selfservice_beneficiaries_tpt` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `app_user_id` bigint(20) NOT NULL,
+  `name` varchar(50) NOT NULL,
+  `office_id` bigint(20) NOT NULL,
+  `client_id` bigint(20) NOT NULL,
+  `account_id` bigint(20) NOT NULL,
+  `account_type` smallint(4) NOT NULL,
+  `transfer_limit` bigint(20) DEFAULT '0',
+  `is_active` bit(1) NOT NULL DEFAULT b'0',
+  PRIMARY KEY (`id`),
+  UNIQUE KEY `name` (`name`,`app_user_id`,`is_active`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_selfservice_beneficiaries_tpt: 
~0 rows (approximately)
+/*!40000 ALTER TABLE `m_selfservice_beneficiaries_tpt` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_selfservice_beneficiaries_tpt` ENABLE KEYS */;
+
+
 -- Dumping structure for table 
mifostenant-default.m_selfservice_user_client_mapping
 DROP TABLE IF EXISTS `m_selfservice_user_client_mapping`;
 CREATE TABLE IF NOT EXISTS `m_selfservice_user_client_mapping` (
@@ -4312,6 +4738,267 @@ CREATE TABLE IF NOT EXISTS 
`m_selfservice_user_client_mapping` (
 /*!40000 ALTER TABLE `m_selfservice_user_client_mapping` ENABLE KEYS */;
 
 
+-- Dumping structure for table mifostenant-default.m_share_account
+DROP TABLE IF EXISTS `m_share_account`;
+CREATE TABLE IF NOT EXISTS `m_share_account` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `account_no` varchar(50) NOT NULL,
+  `product_id` bigint(20) NOT NULL,
+  `client_id` bigint(20) NOT NULL,
+  `external_id` varchar(100) DEFAULT NULL,
+  `status_enum` smallint(5) NOT NULL DEFAULT '300',
+  `total_approved_shares` bigint(20) DEFAULT NULL,
+  `total_pending_shares` bigint(20) DEFAULT NULL,
+  `submitted_date` date NOT NULL,
+  `submitted_userid` bigint(20) DEFAULT NULL,
+  `approved_date` date DEFAULT NULL,
+  `approved_userid` bigint(20) DEFAULT NULL,
+  `rejected_date` date DEFAULT NULL,
+  `rejected_userid` bigint(20) DEFAULT NULL,
+  `activated_date` date DEFAULT NULL,
+  `activated_userid` bigint(20) DEFAULT NULL,
+  `closed_date` date DEFAULT NULL,
+  `closed_userid` bigint(20) DEFAULT NULL,
+  `currency_code` varchar(3) NOT NULL,
+  `currency_digits` smallint(5) NOT NULL,
+  `currency_multiplesof` smallint(5) DEFAULT NULL,
+  `savings_account_id` bigint(20) NOT NULL,
+  `minimum_active_period_frequency` decimal(19,6) DEFAULT NULL,
+  `minimum_active_period_frequency_enum` smallint(5) DEFAULT NULL,
+  `lockin_period_frequency` decimal(19,6) DEFAULT NULL,
+  `lockin_period_frequency_enum` smallint(5) DEFAULT NULL,
+  `allow_dividends_inactive_clients` smallint(1) DEFAULT '0',
+  `created_date` datetime DEFAULT NULL,
+  `lastmodifiedby_id` bigint(20) DEFAULT NULL,
+  `lastmodified_date` datetime DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  KEY `m_share_account_ibfk_1` (`product_id`),
+  KEY `m_share_account_ibfk_2` (`savings_account_id`),
+  KEY `m_share_account_ibfk_3` (`submitted_userid`),
+  KEY `m_share_account_ibfk_4` (`approved_userid`),
+  KEY `m_share_account_ibfk_5` (`rejected_userid`),
+  KEY `m_share_account_ibfk_6` (`activated_userid`),
+  KEY `m_share_account_ibfk_7` (`closed_userid`),
+  KEY `m_share_account_ibfk_8` (`lastmodifiedby_id`),
+  KEY `m_share_account_ibfk_9` (`client_id`),
+  CONSTRAINT `m_share_account_ibfk_1` FOREIGN KEY (`product_id`) REFERENCES 
`m_share_product` (`id`),
+  CONSTRAINT `m_share_account_ibfk_2` FOREIGN KEY (`savings_account_id`) 
REFERENCES `m_savings_account` (`id`),
+  CONSTRAINT `m_share_account_ibfk_3` FOREIGN KEY (`submitted_userid`) 
REFERENCES `m_appuser` (`id`),
+  CONSTRAINT `m_share_account_ibfk_4` FOREIGN KEY (`approved_userid`) 
REFERENCES `m_appuser` (`id`),
+  CONSTRAINT `m_share_account_ibfk_5` FOREIGN KEY (`rejected_userid`) 
REFERENCES `m_appuser` (`id`),
+  CONSTRAINT `m_share_account_ibfk_6` FOREIGN KEY (`activated_userid`) 
REFERENCES `m_appuser` (`id`),
+  CONSTRAINT `m_share_account_ibfk_7` FOREIGN KEY (`closed_userid`) REFERENCES 
`m_appuser` (`id`),
+  CONSTRAINT `m_share_account_ibfk_8` FOREIGN KEY (`lastmodifiedby_id`) 
REFERENCES `m_appuser` (`id`),
+  CONSTRAINT `m_share_account_ibfk_9` FOREIGN KEY (`client_id`) REFERENCES 
`m_client` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_share_account: ~0 rows 
(approximately)
+/*!40000 ALTER TABLE `m_share_account` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_share_account` ENABLE KEYS */;
+
+
+-- Dumping structure for table mifostenant-default.m_share_account_charge
+DROP TABLE IF EXISTS `m_share_account_charge`;
+CREATE TABLE IF NOT EXISTS `m_share_account_charge` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `account_id` bigint(20) NOT NULL,
+  `charge_id` bigint(20) NOT NULL,
+  `charge_time_enum` smallint(5) NOT NULL,
+  `charge_calculation_enum` smallint(5) NOT NULL,
+  `charge_payment_mode_enum` smallint(5) NOT NULL DEFAULT '0',
+  `calculation_percentage` decimal(19,6) DEFAULT NULL,
+  `calculation_on_amount` decimal(19,6) DEFAULT NULL,
+  `charge_amount_or_percentage` decimal(19,6) DEFAULT NULL,
+  `amount` decimal(19,6) NOT NULL,
+  `amount_paid_derived` decimal(19,6) DEFAULT NULL,
+  `amount_waived_derived` decimal(19,6) DEFAULT NULL,
+  `amount_writtenoff_derived` decimal(19,6) DEFAULT NULL,
+  `amount_outstanding_derived` decimal(19,6) NOT NULL DEFAULT '0.000000',
+  `is_paid_derived` tinyint(1) NOT NULL DEFAULT '0',
+  `waived` tinyint(1) NOT NULL DEFAULT '0',
+  `min_cap` decimal(19,6) DEFAULT NULL,
+  `max_cap` decimal(19,6) DEFAULT NULL,
+  `is_active` tinyint(1) NOT NULL DEFAULT '1',
+  PRIMARY KEY (`id`),
+  KEY `charge_id` (`charge_id`),
+  KEY `m_share_account_charge_ibfk_2` (`account_id`),
+  CONSTRAINT `m_share_account_charge_ibfk_1` FOREIGN KEY (`charge_id`) 
REFERENCES `m_charge` (`id`),
+  CONSTRAINT `m_share_account_charge_ibfk_2` FOREIGN KEY (`account_id`) 
REFERENCES `m_share_account` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_share_account_charge: ~0 rows 
(approximately)
+/*!40000 ALTER TABLE `m_share_account_charge` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_share_account_charge` ENABLE KEYS */;
+
+
+-- Dumping structure for table 
mifostenant-default.m_share_account_charge_paid_by
+DROP TABLE IF EXISTS `m_share_account_charge_paid_by`;
+CREATE TABLE IF NOT EXISTS `m_share_account_charge_paid_by` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `share_transaction_id` bigint(20) DEFAULT NULL,
+  `charge_transaction_id` bigint(20) DEFAULT NULL,
+  `amount` decimal(20,2) NOT NULL,
+  PRIMARY KEY (`id`),
+  KEY `m_share_account_transactions_charge_mapping_ibfk1` 
(`share_transaction_id`),
+  KEY `m_share_account_transactions_charge_mapping_ibfk2` 
(`charge_transaction_id`),
+  CONSTRAINT `m_share_account_transactions_charge_mapping_ibfk1` FOREIGN KEY 
(`share_transaction_id`) REFERENCES `m_share_account_transactions` (`id`),
+  CONSTRAINT `m_share_account_transactions_charge_mapping_ibfk2` FOREIGN KEY 
(`charge_transaction_id`) REFERENCES `m_share_account_charge` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_share_account_charge_paid_by: 
~0 rows (approximately)
+/*!40000 ALTER TABLE `m_share_account_charge_paid_by` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_share_account_charge_paid_by` ENABLE KEYS */;
+
+
+-- Dumping structure for table 
mifostenant-default.m_share_account_dividend_details
+DROP TABLE IF EXISTS `m_share_account_dividend_details`;
+CREATE TABLE IF NOT EXISTS `m_share_account_dividend_details` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `dividend_pay_out_id` bigint(20) NOT NULL,
+  `account_id` bigint(20) NOT NULL,
+  `amount` decimal(19,6) NOT NULL,
+  `status` smallint(3) NOT NULL,
+  `savings_transaction_id` bigint(20) DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  KEY `FK_m_share_account_dividend_details_dividend_pay_out_id` 
(`dividend_pay_out_id`),
+  KEY `FK_m_share_account_dividend_details_account_id` (`account_id`),
+  CONSTRAINT `FK_m_share_account_dividend_details_account_id` FOREIGN KEY 
(`account_id`) REFERENCES `m_share_account` (`id`),
+  CONSTRAINT `FK_m_share_account_dividend_details_dividend_pay_out_id` FOREIGN 
KEY (`dividend_pay_out_id`) REFERENCES `m_share_product_dividend_pay_out` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table 
mifostenant-default.m_share_account_dividend_details: ~0 rows (approximately)
+/*!40000 ALTER TABLE `m_share_account_dividend_details` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_share_account_dividend_details` ENABLE KEYS */;
+
+
+-- Dumping structure for table mifostenant-default.m_share_account_transactions
+DROP TABLE IF EXISTS `m_share_account_transactions`;
+CREATE TABLE IF NOT EXISTS `m_share_account_transactions` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `account_id` bigint(20) NOT NULL,
+  `transaction_date` date DEFAULT NULL,
+  `total_shares` bigint(20) DEFAULT NULL,
+  `unit_price` decimal(10,2) DEFAULT NULL,
+  `amount` decimal(20,2) DEFAULT NULL,
+  `charge_amount` decimal(20,2) DEFAULT NULL,
+  `amount_paid` decimal(20,2) DEFAULT NULL,
+  `status_enum` smallint(5) NOT NULL DEFAULT '300',
+  `type_enum` smallint(5) DEFAULT NULL,
+  `is_active` tinyint(1) NOT NULL DEFAULT '1',
+  PRIMARY KEY (`id`),
+  KEY `m_share_account_purchased_shares_ibfk_1` (`account_id`),
+  CONSTRAINT `m_share_account_purchased_shares_ibfk_1` FOREIGN KEY 
(`account_id`) REFERENCES `m_share_account` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_share_account_transactions: ~0 
rows (approximately)
+/*!40000 ALTER TABLE `m_share_account_transactions` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_share_account_transactions` ENABLE KEYS */;
+
+
+-- Dumping structure for table mifostenant-default.m_share_product
+DROP TABLE IF EXISTS `m_share_product`;
+CREATE TABLE IF NOT EXISTS `m_share_product` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `name` varchar(200) NOT NULL,
+  `short_name` varchar(4) NOT NULL,
+  `external_id` varchar(100) DEFAULT NULL,
+  `description` varchar(500) NOT NULL,
+  `start_date` datetime DEFAULT NULL,
+  `end_date` datetime DEFAULT NULL,
+  `currency_code` varchar(3) NOT NULL,
+  `currency_digits` smallint(5) NOT NULL,
+  `currency_multiplesof` smallint(5) DEFAULT NULL,
+  `total_shares` bigint(20) NOT NULL,
+  `issued_shares` bigint(20) DEFAULT NULL,
+  `totalsubscribed_shares` bigint(20) DEFAULT NULL,
+  `unit_price` decimal(10,2) NOT NULL,
+  `capital_amount` decimal(20,2) NOT NULL,
+  `minimum_client_shares` bigint(20) DEFAULT NULL,
+  `nominal_client_shares` bigint(20) NOT NULL,
+  `maximum_client_shares` bigint(20) DEFAULT NULL,
+  `minimum_active_period_frequency` decimal(19,6) DEFAULT NULL,
+  `minimum_active_period_frequency_enum` smallint(5) DEFAULT NULL,
+  `lockin_period_frequency` decimal(19,6) DEFAULT NULL,
+  `lockin_period_frequency_enum` smallint(5) DEFAULT NULL,
+  `allow_dividends_inactive_clients` smallint(1) DEFAULT '0',
+  `createdby_id` bigint(20) DEFAULT NULL,
+  `created_date` datetime DEFAULT NULL,
+  `lastmodifiedby_id` bigint(20) DEFAULT NULL,
+  `lastmodified_date` datetime DEFAULT NULL,
+  `accounting_type` smallint(2) NOT NULL,
+  PRIMARY KEY (`id`),
+  UNIQUE KEY `name` (`name`),
+  KEY `m_share_product_ibfk_1` (`createdby_id`),
+  KEY `m_share_product_ibfk_2` (`lastmodifiedby_id`),
+  CONSTRAINT `m_share_product_ibfk_1` FOREIGN KEY (`createdby_id`) REFERENCES 
`m_appuser` (`id`),
+  CONSTRAINT `m_share_product_ibfk_2` FOREIGN KEY (`lastmodifiedby_id`) 
REFERENCES `m_appuser` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_share_product: ~0 rows 
(approximately)
+/*!40000 ALTER TABLE `m_share_product` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_share_product` ENABLE KEYS */;
+
+
+-- Dumping structure for table mifostenant-default.m_share_product_charge
+DROP TABLE IF EXISTS `m_share_product_charge`;
+CREATE TABLE IF NOT EXISTS `m_share_product_charge` (
+  `product_id` bigint(20) NOT NULL,
+  `charge_id` bigint(20) NOT NULL,
+  PRIMARY KEY (`product_id`,`charge_id`),
+  KEY `m_share_product_charge_ibfk_1` (`charge_id`),
+  CONSTRAINT `m_share_product_charge_ibfk_1` FOREIGN KEY (`charge_id`) 
REFERENCES `m_charge` (`id`),
+  CONSTRAINT `m_share_product_charge_ibfk_2` FOREIGN KEY (`product_id`) 
REFERENCES `m_share_product` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_share_product_charge: ~0 rows 
(approximately)
+/*!40000 ALTER TABLE `m_share_product_charge` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_share_product_charge` ENABLE KEYS */;
+
+
+-- Dumping structure for table 
mifostenant-default.m_share_product_dividend_pay_out
+DROP TABLE IF EXISTS `m_share_product_dividend_pay_out`;
+CREATE TABLE IF NOT EXISTS `m_share_product_dividend_pay_out` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `product_id` bigint(20) NOT NULL,
+  `amount` decimal(19,6) NOT NULL,
+  `dividend_period_start_date` date NOT NULL,
+  `dividend_period_end_date` date NOT NULL,
+  `status` smallint(3) NOT NULL,
+  `createdby_id` bigint(20) DEFAULT NULL,
+  `created_date` datetime DEFAULT NULL,
+  `lastmodifiedby_id` bigint(20) DEFAULT NULL,
+  `lastmodified_date` datetime DEFAULT NULL,
+  PRIMARY KEY (`id`),
+  KEY `FK_m_share_product_dividend_pay_out_product_id` (`product_id`),
+  KEY `FK_m_share_product_dividend_pay_out_createdby_id` (`createdby_id`),
+  KEY `FK_m_share_product_dividend_pay_out_lastmodifiedby_id` 
(`lastmodifiedby_id`),
+  CONSTRAINT `FK_m_share_product_dividend_pay_out_createdby_id` FOREIGN KEY 
(`createdby_id`) REFERENCES `m_appuser` (`id`),
+  CONSTRAINT `FK_m_share_product_dividend_pay_out_lastmodifiedby_id` FOREIGN 
KEY (`lastmodifiedby_id`) REFERENCES `m_appuser` (`id`),
+  CONSTRAINT `FK_m_share_product_dividend_pay_out_product_id` FOREIGN KEY 
(`product_id`) REFERENCES `m_share_product` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table 
mifostenant-default.m_share_product_dividend_pay_out: ~0 rows (approximately)
+/*!40000 ALTER TABLE `m_share_product_dividend_pay_out` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_share_product_dividend_pay_out` ENABLE KEYS */;
+
+
+-- Dumping structure for table mifostenant-default.m_share_product_market_price
+DROP TABLE IF EXISTS `m_share_product_market_price`;
+CREATE TABLE IF NOT EXISTS `m_share_product_market_price` (
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
+  `product_id` bigint(20) NOT NULL,
+  `from_date` date DEFAULT NULL,
+  `share_value` decimal(10,2) NOT NULL,
+  PRIMARY KEY (`id`),
+  KEY `m_share_product_market_price_ibfk_1` (`product_id`),
+  CONSTRAINT `m_share_product_market_price_ibfk_1` FOREIGN KEY (`product_id`) 
REFERENCES `m_share_product` (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8;
+
+-- Dumping data for table mifostenant-default.m_share_product_market_price: ~0 
rows (approximately)
+/*!40000 ALTER TABLE `m_share_product_market_price` DISABLE KEYS */;
+/*!40000 ALTER TABLE `m_share_product_market_price` ENABLE KEYS */;
+
+
 -- Dumping structure for table mifostenant-default.m_staff
 DROP TABLE IF EXISTS `m_staff`;
 CREATE TABLE IF NOT EXISTS `m_staff` (
@@ -4482,7 +5169,7 @@ CREATE TABLE IF NOT EXISTS `m_survey_scorecards` (
   CONSTRAINT `m_survey_scorecards_ibfk_1` FOREIGN KEY (`survey_id`) REFERENCES 
`m_surveys` (`id`),
   CONSTRAINT `m_survey_scorecards_ibfk_2` FOREIGN KEY (`question_id`) 
REFERENCES `m_survey_questions` (`id`),
   CONSTRAINT `m_survey_scorecards_ibfk_3` FOREIGN KEY (`response_id`) 
REFERENCES `m_survey_responses` (`id`),
-  CONSTRAINT `m_survey_scorecards_ibfk_4` FOREIGN KEY (`user_id`) REFERENCES 
`m_appusers` (`id`),
+  CONSTRAINT `m_survey_scorecards_ibfk_4` FOREIGN KEY (`user_id`) REFERENCES 
`m_appuser` (`id`),
   CONSTRAINT `m_survey_scorecards_ibfk_5` FOREIGN KEY (`client_id`) REFERENCES 
`m_client` (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
 
@@ -4491,6 +5178,112 @@ CREATE TABLE IF NOT EXISTS `m_survey_scorecards` (
 /*!40000 ALTER TABLE `m_survey_scorecards` ENABLE KEYS */;
 
 
+-- Dumping structure for table mifostenant-default.m_tax_co

<TRUNCATED>

Reply via email to