finapps 2.0.21 → 2.0.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/finapps/rest/base_client.rb +9 -10
- data/lib/finapps/rest/institutions.rb +0 -1
- data/lib/finapps/rest/institutions_forms.rb +0 -1
- data/lib/finapps/rest/sessions.rb +0 -2
- data/lib/finapps/rest/user_institutions.rb +0 -2
- data/lib/finapps/rest/user_institutions_forms.rb +0 -1
- data/lib/finapps/rest/user_institutions_statuses.rb +1 -3
- data/lib/finapps/rest/users.rb +0 -2
- data/lib/finapps/version.rb +1 -1
- data/spec/rest/client_spec.rb +4 -2
- data/spec/rest/orders_spec.rb +4 -5
- data/spec/rest/user_institutions_statuses_spec.rb +1 -1
- data/spec/support/fake_api.rb +1 -1
- data/spec/support/fixtures/orders.json +1 -8
- data/spec/support/fixtures/user_institution_refresh.json +74 -0
- metadata +2 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6e7a13dcc72709dbb7f506225ab60f81c6fff823
|
|
4
|
+
data.tar.gz: 24fe49d526c5c7e4d3f26fa3b9f550338499eecd
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 5e8371cef6f4f43074e58edc6e6929187214f1d0e3b8e853915c0fcfae27b12dac9887889917fb4898df9828c8599ab9c4b7c9a197cc656d493aaddc1cd16e1c
|
|
7
|
+
data.tar.gz: 1ee1d1761b9e7494ec27789e203e693830ed2b957bcee6e4fafc8a7615236e3379bcabe36d69c341150ee76de4e532cc66f52d30f5dc1766edb64d222572e05e
|
|
@@ -58,14 +58,14 @@ module FinApps
|
|
|
58
58
|
error_messages = []
|
|
59
59
|
begin
|
|
60
60
|
response = execute_method path, method, params
|
|
61
|
-
rescue FinApps::InvalidArgumentsError
|
|
62
|
-
|
|
63
|
-
|
|
61
|
+
rescue FinApps::InvalidArgumentsError => error
|
|
62
|
+
handle_error error
|
|
63
|
+
rescue FinApps::MissingArgumentsError => error
|
|
64
|
+
handle_error error
|
|
65
|
+
rescue Faraday::Error::ConnectionFailed => error
|
|
64
66
|
handle_error error
|
|
65
67
|
rescue Faraday::Error::ClientError => error
|
|
66
68
|
error_messages = handle_client_error error
|
|
67
|
-
rescue StandardError => error
|
|
68
|
-
error_messages = handle_standard_error error
|
|
69
69
|
end
|
|
70
70
|
|
|
71
71
|
[response, error_messages]
|
|
@@ -81,11 +81,6 @@ module FinApps
|
|
|
81
81
|
error.response[:error_messages] || [error.message]
|
|
82
82
|
end
|
|
83
83
|
|
|
84
|
-
def handle_standard_error(error)
|
|
85
|
-
logger.error "#{self.class}##{__method__} => StandardError, #{error}"
|
|
86
|
-
['Unexpected error.']
|
|
87
|
-
end
|
|
88
|
-
|
|
89
84
|
def execute_method(path, method, params)
|
|
90
85
|
case method
|
|
91
86
|
when :get
|
|
@@ -114,6 +109,10 @@ module FinApps
|
|
|
114
109
|
super
|
|
115
110
|
end
|
|
116
111
|
end
|
|
112
|
+
|
|
113
|
+
def respond_to_missing?(method_name, include_private=false)
|
|
114
|
+
%i(get post put delete).include? method_name ? true : super
|
|
115
|
+
end
|
|
117
116
|
end
|
|
118
117
|
end
|
|
119
118
|
end
|
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
module FinApps
|
|
3
3
|
module REST
|
|
4
4
|
class UserInstitutionsStatuses < FinApps::REST::Resources # :nodoc:
|
|
5
|
-
require 'erb'
|
|
6
|
-
|
|
7
5
|
using ObjectExtensions
|
|
8
6
|
using StringExtensions
|
|
9
7
|
|
|
@@ -15,7 +13,7 @@ module FinApps
|
|
|
15
13
|
end
|
|
16
14
|
|
|
17
15
|
def update
|
|
18
|
-
path = 'institutions/
|
|
16
|
+
path = 'institutions/refresh'
|
|
19
17
|
super nil, path
|
|
20
18
|
end
|
|
21
19
|
end
|
data/lib/finapps/rest/users.rb
CHANGED
data/lib/finapps/version.rb
CHANGED
data/spec/rest/client_spec.rb
CHANGED
|
@@ -13,7 +13,8 @@ RSpec.describe FinApps::REST::Client do
|
|
|
13
13
|
context 'an instance of Client' do
|
|
14
14
|
subject { FinApps::REST::Client.new(:company_identifier, :company_token) }
|
|
15
15
|
|
|
16
|
-
%i(users sessions orders order_tokens institutions institutions_forms user_institutions_statuses user_institutions
|
|
16
|
+
%i(users sessions orders order_tokens institutions institutions_forms user_institutions_statuses user_institutions
|
|
17
|
+
user_institutions_forms).each do |method|
|
|
17
18
|
it "responds to #{method}" do
|
|
18
19
|
expect(subject).to respond_to(method)
|
|
19
20
|
end
|
|
@@ -58,7 +59,8 @@ RSpec.describe FinApps::REST::Client do
|
|
|
58
59
|
# [:users, :institutions, :user_institutions, :transactions, :categories,
|
|
59
60
|
# :budget_models, :budget_calculation, :budgets, :cashflows,
|
|
60
61
|
# :alert, :alert_definition, :alert_preferences, :alert_settings, :rule_sets]
|
|
61
|
-
%i(users sessions orders order_tokens institutions institutions_forms user_institutions_statuses user_institutions
|
|
62
|
+
%i(users sessions orders order_tokens institutions institutions_forms user_institutions_statuses user_institutions
|
|
63
|
+
user_institutions_forms).each do |method|
|
|
62
64
|
it "memoizes the result of #{method}" do
|
|
63
65
|
first = subject.send(method)
|
|
64
66
|
second = subject.send(method)
|
data/spec/rest/orders_spec.rb
CHANGED
|
@@ -35,16 +35,16 @@ RSpec.describe FinApps::REST::Orders do
|
|
|
35
35
|
|
|
36
36
|
context 'when missing id' do
|
|
37
37
|
let(:update) { subject.update(nil, :params) }
|
|
38
|
-
it
|
|
38
|
+
it('returns missing argument error') { expect { update }.to raise_error(FinApps::MissingArgumentsError) }
|
|
39
39
|
end
|
|
40
40
|
|
|
41
41
|
context 'when missing params' do
|
|
42
42
|
let(:update) { subject.update(:id, nil) }
|
|
43
|
-
it
|
|
43
|
+
it('returns missing argument error') { expect { update }.to raise_error(FinApps::MissingArgumentsError) }
|
|
44
44
|
end
|
|
45
45
|
|
|
46
46
|
context 'when valid id and params are provided' do
|
|
47
|
-
let(:update) { subject.update('valid_id',
|
|
47
|
+
let(:update) { subject.update('valid_id', accounts: 'valid_account') } # how to stub params
|
|
48
48
|
let(:results) { update[0] }
|
|
49
49
|
let(:error_messages) { update[1] }
|
|
50
50
|
|
|
@@ -64,14 +64,13 @@ RSpec.describe FinApps::REST::Orders do
|
|
|
64
64
|
end
|
|
65
65
|
|
|
66
66
|
context 'when invalid params are provided' do
|
|
67
|
-
let(:update) { subject.update('valid_id',
|
|
67
|
+
let(:update) { subject.update('valid_id', accounts: 'invalid_account') }
|
|
68
68
|
let(:results) { update[0] }
|
|
69
69
|
let(:error_messages) { update[1] }
|
|
70
70
|
|
|
71
71
|
it { expect { update }.not_to raise_error }
|
|
72
72
|
it('results is nil') { expect(results).to be_nil }
|
|
73
73
|
it('error messages array is populated') { expect(error_messages.first.downcase).to eq('invalid request body') }
|
|
74
|
-
|
|
75
74
|
end
|
|
76
75
|
end
|
|
77
76
|
end
|
|
@@ -27,7 +27,7 @@ RSpec.describe FinApps::REST::UserInstitutionsStatuses do
|
|
|
27
27
|
|
|
28
28
|
describe '#update' do
|
|
29
29
|
context 'when successful' do
|
|
30
|
-
subject { FinApps::REST::
|
|
30
|
+
subject { FinApps::REST::UserInstitutionsStatuses.new(client).update }
|
|
31
31
|
|
|
32
32
|
it('returns an array') { expect(subject).to be_a(Array) }
|
|
33
33
|
it('performs a get and returns array of user institutions statuses') { expect(subject[0]).to be_a(Array) }
|
data/spec/support/fake_api.rb
CHANGED
|
@@ -26,7 +26,6 @@ class FakeApi < Sinatra::Base
|
|
|
26
26
|
end
|
|
27
27
|
end
|
|
28
28
|
|
|
29
|
-
|
|
30
29
|
# institutions
|
|
31
30
|
get('/v2/institutions/site/valid_site_id/form') { json_response 200, 'institution_login_form.json' }
|
|
32
31
|
get('/v2/institutions/site/invalid_site_id/form') { json_response 400, 'invalid_institution_id.json' }
|
|
@@ -49,6 +48,7 @@ class FakeApi < Sinatra::Base
|
|
|
49
48
|
delete('/v2/institutions/user/invalid_id') { json_response 400, 'invalid_user_institution_id.json' }
|
|
50
49
|
get('/v2/institutions/user/valid_id/form') { json_response 200, 'institution_login_form.json' }
|
|
51
50
|
get('/v2/institutions/user/invalid_id/form') { json_response 400, 'invalid_institution_id.json' }
|
|
51
|
+
put('/v2/institutions/refresh') { json_response 200, 'user_institution_refresh.json' }
|
|
52
52
|
|
|
53
53
|
# users
|
|
54
54
|
get('/v2/users/valid_public_id') { json_response 200, 'user.json' }
|
|
@@ -53,14 +53,7 @@
|
|
|
53
53
|
],
|
|
54
54
|
"product": {
|
|
55
55
|
"public_id": "77777777-6ac6-4183-a671-6e75ca5989a5",
|
|
56
|
-
"code": "PROD2"
|
|
57
|
-
"rule_name": "00_sample",
|
|
58
|
-
"html_template": "<!doctype html>\n<html class=\"no-js\" lang=\"\">\n\n<head>\n <meta charset=\"utf-8\">\n <meta http-equiv=\"x-ua-compatible\" content=\"ie=edge\">\n <title>Enhanced AV</title>\n <meta name=\"description\" content=\"\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n\n <link rel=\"apple-touch-icon\" href=\"apple-touch-icon.png\">\n <style>\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: 1px dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box;\n padding: 0;\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n box-sizing: content-box;\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #ffffff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: thin dotted;\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #ffffff;\n border: 1px solid #dddddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role=\"button\"] {\n cursor: pointer;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-family: inherit;\n font-weight: 500;\n line-height: 1.1;\n color: inherit;\n}\nh1 small,\nh2 small,\nh3 small,\nh4 small,\nh5 small,\nh6 small,\n.h1 small,\n.h2 small,\n.h3 small,\n.h4 small,\n.h5 small,\n.h6 small,\nh1 .small,\nh2 .small,\nh3 .small,\nh4 .small,\nh5 .small,\nh6 .small,\n.h1 .small,\n.h2 .small,\n.h3 .small,\n.h4 .small,\n.h5 .small,\n.h6 .small {\n font-weight: normal;\n line-height: 1;\n color: #777777;\n}\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: 20px;\n margin-bottom: 10px;\n}\nh1 small,\n.h1 small,\nh2 small,\n.h2 small,\nh3 small,\n.h3 small,\nh1 .small,\n.h1 .small,\nh2 .small,\n.h2 .small,\nh3 .small,\n.h3 .small {\n font-size: 65%;\n}\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: 10px;\n margin-bottom: 10px;\n}\nh4 small,\n.h4 small,\nh5 small,\n.h5 small,\nh6 small,\n.h6 small,\nh4 .small,\n.h4 .small,\nh5 .small,\n.h5 .small,\nh6 .small,\n.h6 .small {\n font-size: 75%;\n}\nh1,\n.h1 {\n font-size: 36px;\n}\nh2,\n.h2 {\n font-size: 30px;\n}\nh3,\n.h3 {\n font-size: 24px;\n}\nh4,\n.h4 {\n font-size: 18px;\n}\nh5,\n.h5 {\n font-size: 14px;\n}\nh6,\n.h6 {\n font-size: 12px;\n}\np {\n margin: 0 0 10px;\n}\n.lead {\n margin-bottom: 20px;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n}\n@media (min-width: 768px) {\n .lead {\n font-size: 21px;\n }\n}\nsmall,\n.small {\n font-size: 85%;\n}\nmark,\n.mark {\n background-color: #fcf8e3;\n padding: .2em;\n}\n.text-left {\n text-align: left;\n}\n.text-right {\n text-align: right;\n}\n.text-center {\n text-align: center;\n}\n.text-justify {\n text-align: justify;\n}\n.text-nowrap {\n white-space: nowrap;\n}\n.text-lowercase {\n text-transform: lowercase;\n}\n.text-uppercase {\n text-transform: uppercase;\n}\n.text-capitalize {\n text-transform: capitalize;\n}\n.text-muted {\n color: #777777;\n}\n.text-primary {\n color: #337ab7;\n}\na.text-primary:hover,\na.text-primary:focus {\n color: #286090;\n}\n.text-success {\n color: #3c763d;\n}\na.text-success:hover,\na.text-success:focus {\n color: #2b542c;\n}\n.text-info {\n color: #31708f;\n}\na.text-info:hover,\na.text-info:focus {\n color: #245269;\n}\n.text-warning {\n color: #8a6d3b;\n}\na.text-warning:hover,\na.text-warning:focus {\n color: #66512c;\n}\n.text-danger {\n color: #a94442;\n}\na.text-danger:hover,\na.text-danger:focus {\n color: #843534;\n}\n.bg-primary {\n color: #fff;\n background-color: #337ab7;\n}\na.bg-primary:hover,\na.bg-primary:focus {\n background-color: #286090;\n}\n.bg-success {\n background-color: #dff0d8;\n}\na.bg-success:hover,\na.bg-success:focus {\n background-color: #c1e2b3;\n}\n.bg-info {\n background-color: #d9edf7;\n}\na.bg-info:hover,\na.bg-info:focus {\n background-color: #afd9ee;\n}\n.bg-warning {\n background-color: #fcf8e3;\n}\na.bg-warning:hover,\na.bg-warning:focus {\n background-color: #f7ecb5;\n}\n.bg-danger {\n background-color: #f2dede;\n}\na.bg-danger:hover,\na.bg-danger:focus {\n background-color: #e4b9b9;\n}\n.page-header {\n padding-bottom: 9px;\n margin: 40px 0 20px;\n border-bottom: 1px solid #eeeeee;\n}\nul,\nol {\n margin-top: 0;\n margin-bottom: 10px;\n}\nul ul,\nol ul,\nul ol,\nol ol {\n margin-bottom: 0;\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n margin-left: -5px;\n}\n.list-inline > li {\n display: inline-block;\n padding-left: 5px;\n padding-right: 5px;\n}\ndl {\n margin-top: 0;\n margin-bottom: 20px;\n}\ndt,\ndd {\n line-height: 1.42857143;\n}\ndt {\n font-weight: bold;\n}\ndd {\n margin-left: 0;\n}\n@media (min-width: 768px) {\n .dl-horizontal dt {\n float: left;\n width: 160px;\n clear: left;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .dl-horizontal dd {\n margin-left: 180px;\n }\n}\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n border-bottom: 1px dotted #777777;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\nblockquote {\n padding: 10px 20px;\n margin: 0 0 20px;\n font-size: 17.5px;\n border-left: 5px solid #eeeeee;\n}\nblockquote p:last-child,\nblockquote ul:last-child,\nblockquote ol:last-child {\n margin-bottom: 0;\n}\nblockquote footer,\nblockquote small,\nblockquote .small {\n display: block;\n font-size: 80%;\n line-height: 1.42857143;\n color: #777777;\n}\nblockquote footer:before,\nblockquote small:before,\nblockquote .small:before {\n content: '\\2014 \\00A0';\n}\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n border-right: 5px solid #eeeeee;\n border-left: 0;\n text-align: right;\n}\n.blockquote-reverse footer:before,\nblockquote.pull-right footer:before,\n.blockquote-reverse small:before,\nblockquote.pull-right small:before,\n.blockquote-reverse .small:before,\nblockquote.pull-right .small:before {\n content: '';\n}\n.blockquote-reverse footer:after,\nblockquote.pull-right footer:after,\n.blockquote-reverse small:after,\nblockquote.pull-right small:after,\n.blockquote-reverse .small:after,\nblockquote.pull-right .small:after {\n content: '\\00A0 \\2014';\n}\naddress {\n margin-bottom: 20px;\n font-style: normal;\n line-height: 1.42857143;\n}\n.container {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n margin-right: auto;\n margin-left: auto;\n padding-left: 15px;\n padding-right: 15px;\n}\n.row {\n margin-left: -15px;\n margin-right: -15px;\n}\n.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {\n position: relative;\n min-height: 1px;\n padding-left: 15px;\n padding-right: 15px;\n}\n.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {\n float: left;\n}\n.col-xs-12 {\n width: 100%;\n}\n.col-xs-11 {\n width: 91.66666667%;\n}\n.col-xs-10 {\n width: 83.33333333%;\n}\n.col-xs-9 {\n width: 75%;\n}\n.col-xs-8 {\n width: 66.66666667%;\n}\n.col-xs-7 {\n width: 58.33333333%;\n}\n.col-xs-6 {\n width: 50%;\n}\n.col-xs-5 {\n width: 41.66666667%;\n}\n.col-xs-4 {\n width: 33.33333333%;\n}\n.col-xs-3 {\n width: 25%;\n}\n.col-xs-2 {\n width: 16.66666667%;\n}\n.col-xs-1 {\n width: 8.33333333%;\n}\n.col-xs-pull-12 {\n right: 100%;\n}\n.col-xs-pull-11 {\n right: 91.66666667%;\n}\n.col-xs-pull-10 {\n right: 83.33333333%;\n}\n.col-xs-pull-9 {\n right: 75%;\n}\n.col-xs-pull-8 {\n right: 66.66666667%;\n}\n.col-xs-pull-7 {\n right: 58.33333333%;\n}\n.col-xs-pull-6 {\n right: 50%;\n}\n.col-xs-pull-5 {\n right: 41.66666667%;\n}\n.col-xs-pull-4 {\n right: 33.33333333%;\n}\n.col-xs-pull-3 {\n right: 25%;\n}\n.col-xs-pull-2 {\n right: 16.66666667%;\n}\n.col-xs-pull-1 {\n right: 8.33333333%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-12 {\n left: 100%;\n}\n.col-xs-push-11 {\n left: 91.66666667%;\n}\n.col-xs-push-10 {\n left: 83.33333333%;\n}\n.col-xs-push-9 {\n left: 75%;\n}\n.col-xs-push-8 {\n left: 66.66666667%;\n}\n.col-xs-push-7 {\n left: 58.33333333%;\n}\n.col-xs-push-6 {\n left: 50%;\n}\n.col-xs-push-5 {\n left: 41.66666667%;\n}\n.col-xs-push-4 {\n left: 33.33333333%;\n}\n.col-xs-push-3 {\n left: 25%;\n}\n.col-xs-push-2 {\n left: 16.66666667%;\n}\n.col-xs-push-1 {\n left: 8.33333333%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-12 {\n margin-left: 100%;\n}\n.col-xs-offset-11 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-10 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-9 {\n margin-left: 75%;\n}\n.col-xs-offset-8 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-7 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-6 {\n margin-left: 50%;\n}\n.col-xs-offset-5 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-4 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-3 {\n margin-left: 25%;\n}\n.col-xs-offset-2 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-1 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {\n float: left;\n }\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666667%;\n }\n .col-sm-10 {\n width: 83.33333333%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666667%;\n }\n .col-sm-7 {\n width: 58.33333333%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666667%;\n }\n .col-sm-4 {\n width: 33.33333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.66666667%;\n }\n .col-sm-1 {\n width: 8.33333333%;\n }\n .col-sm-pull-12 {\n right: 100%;\n }\n .col-sm-pull-11 {\n right: 91.66666667%;\n }\n .col-sm-pull-10 {\n right: 83.33333333%;\n }\n .col-sm-pull-9 {\n right: 75%;\n }\n .col-sm-pull-8 {\n right: 66.66666667%;\n }\n .col-sm-pull-7 {\n right: 58.33333333%;\n }\n .col-sm-pull-6 {\n right: 50%;\n }\n .col-sm-pull-5 {\n right: 41.66666667%;\n }\n .col-sm-pull-4 {\n right: 33.33333333%;\n }\n .col-sm-pull-3 {\n right: 25%;\n }\n .col-sm-pull-2 {\n right: 16.66666667%;\n }\n .col-sm-pull-1 {\n right: 8.33333333%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-12 {\n left: 100%;\n }\n .col-sm-push-11 {\n left: 91.66666667%;\n }\n .col-sm-push-10 {\n left: 83.33333333%;\n }\n .col-sm-push-9 {\n left: 75%;\n }\n .col-sm-push-8 {\n left: 66.66666667%;\n }\n .col-sm-push-7 {\n left: 58.33333333%;\n }\n .col-sm-push-6 {\n left: 50%;\n }\n .col-sm-push-5 {\n left: 41.66666667%;\n }\n .col-sm-push-4 {\n left: 33.33333333%;\n }\n .col-sm-push-3 {\n left: 25%;\n }\n .col-sm-push-2 {\n left: 16.66666667%;\n }\n .col-sm-push-1 {\n left: 8.33333333%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-12 {\n margin-left: 100%;\n }\n .col-sm-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-9 {\n margin-left: 75%;\n }\n .col-sm-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-6 {\n margin-left: 50%;\n }\n .col-sm-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-3 {\n margin-left: 25%;\n }\n .col-sm-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {\n float: left;\n }\n .col-md-12 {\n width: 100%;\n }\n .col-md-11 {\n width: 91.66666667%;\n }\n .col-md-10 {\n width: 83.33333333%;\n }\n .col-md-9 {\n width: 75%;\n }\n .col-md-8 {\n width: 66.66666667%;\n }\n .col-md-7 {\n width: 58.33333333%;\n }\n .col-md-6 {\n width: 50%;\n }\n .col-md-5 {\n width: 41.66666667%;\n }\n .col-md-4 {\n width: 33.33333333%;\n }\n .col-md-3 {\n width: 25%;\n }\n .col-md-2 {\n width: 16.66666667%;\n }\n .col-md-1 {\n width: 8.33333333%;\n }\n .col-md-pull-12 {\n right: 100%;\n }\n .col-md-pull-11 {\n right: 91.66666667%;\n }\n .col-md-pull-10 {\n right: 83.33333333%;\n }\n .col-md-pull-9 {\n right: 75%;\n }\n .col-md-pull-8 {\n right: 66.66666667%;\n }\n .col-md-pull-7 {\n right: 58.33333333%;\n }\n .col-md-pull-6 {\n right: 50%;\n }\n .col-md-pull-5 {\n right: 41.66666667%;\n }\n .col-md-pull-4 {\n right: 33.33333333%;\n }\n .col-md-pull-3 {\n right: 25%;\n }\n .col-md-pull-2 {\n right: 16.66666667%;\n }\n .col-md-pull-1 {\n right: 8.33333333%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-12 {\n left: 100%;\n }\n .col-md-push-11 {\n left: 91.66666667%;\n }\n .col-md-push-10 {\n left: 83.33333333%;\n }\n .col-md-push-9 {\n left: 75%;\n }\n .col-md-push-8 {\n left: 66.66666667%;\n }\n .col-md-push-7 {\n left: 58.33333333%;\n }\n .col-md-push-6 {\n left: 50%;\n }\n .col-md-push-5 {\n left: 41.66666667%;\n }\n .col-md-push-4 {\n left: 33.33333333%;\n }\n .col-md-push-3 {\n left: 25%;\n }\n .col-md-push-2 {\n left: 16.66666667%;\n }\n .col-md-push-1 {\n left: 8.33333333%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-12 {\n margin-left: 100%;\n }\n .col-md-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-9 {\n margin-left: 75%;\n }\n .col-md-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-6 {\n margin-left: 50%;\n }\n .col-md-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-3 {\n margin-left: 25%;\n }\n .col-md-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {\n float: left;\n }\n .col-lg-12 {\n width: 100%;\n }\n .col-lg-11 {\n width: 91.66666667%;\n }\n .col-lg-10 {\n width: 83.33333333%;\n }\n .col-lg-9 {\n width: 75%;\n }\n .col-lg-8 {\n width: 66.66666667%;\n }\n .col-lg-7 {\n width: 58.33333333%;\n }\n .col-lg-6 {\n width: 50%;\n }\n .col-lg-5 {\n width: 41.66666667%;\n }\n .col-lg-4 {\n width: 33.33333333%;\n }\n .col-lg-3 {\n width: 25%;\n }\n .col-lg-2 {\n width: 16.66666667%;\n }\n .col-lg-1 {\n width: 8.33333333%;\n }\n .col-lg-pull-12 {\n right: 100%;\n }\n .col-lg-pull-11 {\n right: 91.66666667%;\n }\n .col-lg-pull-10 {\n right: 83.33333333%;\n }\n .col-lg-pull-9 {\n right: 75%;\n }\n .col-lg-pull-8 {\n right: 66.66666667%;\n }\n .col-lg-pull-7 {\n right: 58.33333333%;\n }\n .col-lg-pull-6 {\n right: 50%;\n }\n .col-lg-pull-5 {\n right: 41.66666667%;\n }\n .col-lg-pull-4 {\n right: 33.33333333%;\n }\n .col-lg-pull-3 {\n right: 25%;\n }\n .col-lg-pull-2 {\n right: 16.66666667%;\n }\n .col-lg-pull-1 {\n right: 8.33333333%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-12 {\n left: 100%;\n }\n .col-lg-push-11 {\n left: 91.66666667%;\n }\n .col-lg-push-10 {\n left: 83.33333333%;\n }\n .col-lg-push-9 {\n left: 75%;\n }\n .col-lg-push-8 {\n left: 66.66666667%;\n }\n .col-lg-push-7 {\n left: 58.33333333%;\n }\n .col-lg-push-6 {\n left: 50%;\n }\n .col-lg-push-5 {\n left: 41.66666667%;\n }\n .col-lg-push-4 {\n left: 33.33333333%;\n }\n .col-lg-push-3 {\n left: 25%;\n }\n .col-lg-push-2 {\n left: 16.66666667%;\n }\n .col-lg-push-1 {\n left: 8.33333333%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-12 {\n margin-left: 100%;\n }\n .col-lg-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-9 {\n margin-left: 75%;\n }\n .col-lg-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-6 {\n margin-left: 50%;\n }\n .col-lg-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-3 {\n margin-left: 25%;\n }\n .col-lg-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #dddddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #dddddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #dddddd;\n}\n.table .table {\n background-color: #ffffff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #dddddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #dddddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\ntable col[class*=\"col-\"] {\n position: static;\n float: none;\n display: table-column;\n}\ntable td[class*=\"col-\"],\ntable th[class*=\"col-\"] {\n position: static;\n float: none;\n display: table-cell;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n overflow-x: auto;\n min-height: 0.01%;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #dddddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\n.label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: bold;\n line-height: 1;\n color: #ffffff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n}\na.label:hover,\na.label:focus {\n color: #ffffff;\n text-decoration: none;\n cursor: pointer;\n}\n.label:empty {\n display: none;\n}\n.btn .label {\n position: relative;\n top: -1px;\n}\n.label-default {\n background-color: #777777;\n}\n.label-default[href]:hover,\n.label-default[href]:focus {\n background-color: #5e5e5e;\n}\n.label-primary {\n background-color: #337ab7;\n}\n.label-primary[href]:hover,\n.label-primary[href]:focus {\n background-color: #286090;\n}\n.label-success {\n background-color: #5cb85c;\n}\n.label-success[href]:hover,\n.label-success[href]:focus {\n background-color: #449d44;\n}\n.label-info {\n background-color: #5bc0de;\n}\n.label-info[href]:hover,\n.label-info[href]:focus {\n background-color: #31b0d5;\n}\n.label-warning {\n background-color: #f0ad4e;\n}\n.label-warning[href]:hover,\n.label-warning[href]:focus {\n background-color: #ec971f;\n}\n.label-danger {\n background-color: #d9534f;\n}\n.label-danger[href]:hover,\n.label-danger[href]:focus {\n background-color: #c9302c;\n}\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: 12px;\n font-weight: bold;\n color: #ffffff;\n line-height: 1;\n vertical-align: middle;\n white-space: nowrap;\n text-align: center;\n background-color: #777777;\n border-radius: 10px;\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.btn-xs .badge,\n.btn-group-xs > .btn .badge {\n top: 0;\n padding: 1px 5px;\n}\na.badge:hover,\na.badge:focus {\n color: #ffffff;\n text-decoration: none;\n cursor: pointer;\n}\n.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: #337ab7;\n background-color: #ffffff;\n}\n.list-group-item > .badge {\n float: right;\n}\n.list-group-item > .badge + .badge {\n margin-right: 5px;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n.clearfix:before,\n.clearfix:after,\n.dl-horizontal dd:before,\n.dl-horizontal dd:after,\n.container:before,\n.container:after,\n.container-fluid:before,\n.container-fluid:after,\n.row:before,\n.row:after {\n content: \" \";\n display: table;\n}\n.clearfix:after,\n.dl-horizontal dd:after,\n.container:after,\n.container-fluid:after,\n.row:after {\n clear: both;\n}\n.center-block {\n display: block;\n margin-left: auto;\n margin-right: auto;\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n.hidden {\n display: none !important;\n}\n.affix {\n position: fixed;\n}\n@-ms-viewport {\n width: device-width;\n}\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n display: none !important;\n}\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n@media (max-width: 767px) {\n .visible-xs {\n display: block !important;\n }\n table.visible-xs {\n display: table !important;\n }\n tr.visible-xs {\n display: table-row !important;\n }\n th.visible-xs,\n td.visible-xs {\n display: table-cell !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-block {\n display: block !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline {\n display: inline !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm {\n display: block !important;\n }\n table.visible-sm {\n display: table !important;\n }\n tr.visible-sm {\n display: table-row !important;\n }\n th.visible-sm,\n td.visible-sm {\n display: table-cell !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-block {\n display: block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline {\n display: inline !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md {\n display: block !important;\n }\n table.visible-md {\n display: table !important;\n }\n tr.visible-md {\n display: table-row !important;\n }\n th.visible-md,\n td.visible-md {\n display: table-cell !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-block {\n display: block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline {\n display: inline !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg {\n display: block !important;\n }\n table.visible-lg {\n display: table !important;\n }\n tr.visible-lg {\n display: table-row !important;\n }\n th.visible-lg,\n td.visible-lg {\n display: table-cell !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-block {\n display: block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline {\n display: inline !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline-block {\n display: inline-block !important;\n }\n}\n@media (max-width: 767px) {\n .hidden-xs {\n display: none !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .hidden-sm {\n display: none !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .hidden-md {\n display: none !important;\n }\n}\n@media (min-width: 1200px) {\n .hidden-lg {\n display: none !important;\n }\n}\n.visible-print {\n display: none !important;\n}\n@media print {\n .visible-print {\n display: block !important;\n }\n table.visible-print {\n display: table !important;\n }\n tr.visible-print {\n display: table-row !important;\n }\n th.visible-print,\n td.visible-print {\n display: table-cell !important;\n }\n}\n.visible-print-block {\n display: none !important;\n}\n@media print {\n .visible-print-block {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n}\n@media print {\n .visible-print-inline {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n}\n@media print {\n .visible-print-inline-block {\n display: inline-block !important;\n }\n}\n@media print {\n .hidden-print {\n display: none !important;\n }\n}\nbody {\n padding: 50px;\n color: #464646;\n padding-bottom: 100px;\n font-family: sans-serif;\n}\nh3 {\n color: #36455c;\n font-weight: lighter;\n}\n.purple {\n color: #a86fb5;\n}\n.green {\n color: #129b7d;\n}\n.comment {\n opacity: 0.7;\n filter: alpha(opacity=70);\n font-size: 80%;\n}\n.triangle-up.green {\n width: 0;\n height: 0;\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-bottom: 10px solid #129b7d;\n display: inline-block;\n margin-right: 3px;\n}\n.triangle-down.purple {\n width: 0;\n height: 0;\n border-left: 6px solid transparent;\n border-right: 6px solid transparent;\n border-top: 10px solid #a86fb5;\n display: inline-block;\n margin-right: 3px;\n}\n.data-unit {\n text-align: right;\n}\n.data-unit .label {\n font-size: 11px;\n color: #777777;\n margin-bottom: 4px;\n font-weight: normal;\n letter-spacing: 1px;\n padding: 0;\n text-transform: uppercase;\n opacity: 0.75;\n filter: alpha(opacity=75);\n}\n.data-unit .value {\n font-size: 20px;\n}\n.data-unit .email {\n font-size: 14px;\n text-decoration: underline;\n opacity: 0.8;\n filter: alpha(opacity=80);\n}\n.data-unit .name {\n font-size: 30px;\n color: #36455c;\n}\n.data-unit .phone {\n font-size: 18px;\n}\n.data-unit.name-small {\n font-size: 15px;\n}\n.page-top-bar {\n background-color: #36455c;\n width: calc(100% +100px);\n height: 80px;\n margin-left: -50px;\n margin-right: -50px;\n margin-top: -50px;\n padding: 10px 50px;\n color: #ffffff;\n margin-bottom: 20px;\n}\n.page-top-bar .data-unit {\n float: right;\n width: 250px;\n}\n.page-top-bar .data-unit .label {\n color: #ffffff;\n padding: 0;\n}\nh1 {\n text-transform: uppercase;\n font-size: 25px;\n color: #ffffff;\n background: #36455c;\n padding: 10px 50px;\n font-weight: lighter;\n letter-spacing: 1px;\n}\nh1 .comment {\n font-size: 18px;\n text-transform: none;\n opacity: 0.7;\n filter: alpha(opacity=70);\n}\n.logo {\n width: 60px;\n height: 60px;\n margin-top: 25px;\n float: left;\n display: inline-block;\n margin-right: 20px;\n background-repeat: no-repeat;\n background-size: contain;\n background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNi4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iMzAwcHgiIGhlaWdodD0iMzAwcHgiIHZpZXdCb3g9IjAgMCAzMDAgMzAwIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAzMDAgMzAwIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxnPg0KCTxwb2x5Z29uIGZpbGw9IiMxMjlCN0QiIHBvaW50cz0iMTEwLjM4OCwxMjAgMTUwLjQ1NSw1MCAxNzIuNDQyLDUwIDE0OS41NDUsMTMgNTIuMjQyLDEzIDMuNTg5LDk1LjQ1NiAzOS45NzksMTU3Ljg4OSA2Mi4wNjIsMTIwIAkNCgkJIi8+DQoJPHBvbHlnb24gZmlsbD0iI0Q3RTEwMCIgcG9pbnRzPSIyOTYuNDEsMTM0IDI0Ny43NTQsNTAgMTcyLjQ0Miw1MCAxOTguMTk1LDk0LjMxMyAxNzEuNjI5LDEzOS45NjkgMjA4LjAxNiwyMDIuODQgMTk5LjQzNCwyMTggDQoJCTI0Ny43NTQsMjE4IAkiLz4NCgk8cG9seWdvbiBmaWxsPSIjMUM5NTM4IiBwb2ludHM9IjExMC4zODgsMTIwIDE1OS4zNjcsMTIwIDE3MS42MjksMTQwLjUzNSAxOTguMTk1LDk0LjU2OSAxNzIuNDQyLDUwIDE1MC40NTUsNTAgCSIvPg0KCTxwb2x5Z29uIGZpbGw9IiMxNEE5RTMiIHBvaW50cz0iMTI3LjU2MiwxNzcgNTIuMjQyLDE3NyAzOS45NzksMTU2LjQxNCAxMy40MTIsMjAzLjI2NCA2Mi4wNjIsMjg4IDE1OS4zNjcsMjg4IDE5OS40MzQsMjE4IA0KCQkxNTAuNDU1LDIxOCAJIi8+DQoJPHBvbHlnb24gZmlsbD0iIzAwODA3NiIgcG9pbnRzPSIxMjcuNTYyLDE3NyAxMDEuODA1LDEzMy43NjggMTEwLjM4OCwxMjAgNjIuMDYyLDEyMCAzOS45NzksMTU2LjkyMiA1Mi4yNDIsMTc3IAkiLz4NCgk8cG9seWdvbiBmaWxsPSIjMDA5RDQ2IiBwb2ludHM9IjE3MS42MjksMTM5LjU3IDE0OS41NDUsMTc3IDEyNy41NjIsMTc3IDE1MC40NTUsMjE4IDE5OS40MzQsMjE4IDIwOC4wMTYsMjAyLjY0IAkiLz4NCgk8cG9seWdvbiBmaWxsPSIjMDQ1OTUxIiBwb2ludHM9IjExMC4zODgsMTIwIDEwMS44MDUsMTMzLjc2OCAxMjcuNTYyLDE3NyAxNDkuNTQ1LDE3NyAxNzEuNjI5LDE0MC4wNzkgMTU5LjM2NywxMjAgCSIvPg0KPC9nPg0KPC9zdmc+DQo=);\n}\n.icon {\n width: 24px;\n height: 24px;\n float: left;\n display: inline-block;\n background-repeat: no-repeat;\n background-size: contain;\n}\n.ok {\n background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNi4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iMzAwcHgiIGhlaWdodD0iMzAwcHgiIHZpZXdCb3g9IjAgMCAzMDAgMzAwIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAzMDAgMzAwIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiMxMjlCN0QiIGQ9Ik0yOTcuNSw1MS40MjZMOTEuODI1LDIwMC41ODljLTkuNjM3LTkuMDQyLTQ3LjA1OS00Ni45MjktNTguNDc1LTQ1LjE3Mw0KCWMtMTQuMzcxLDIuMjA3LTMyLjA0MiwxOC44NTQtMjguMzY1LDI0Ljg2OGMwLDAsMzUuODk5LDIxLjg5Niw4Ni43NjUsNjguOTczTDI5Ny41LDUxLjQyNnoiLz4NCjwvc3ZnPg0K);\n}\n.negative {\n background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNi4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iMzAwcHgiIGhlaWdodD0iMzAwcHgiIHZpZXdCb3g9IjAgMCAzMDAgMzAwIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAzMDAgMzAwIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiNDMTI3MkQiIGQ9Ik0yNzEuNTY0LDI0Ny41MzlDMjc2LjExLDI1Mi4wODQsMTk4LDIyMC4wNywxOTgsMjIwLjA3TDUzLjIxOCw3NS4yOQ0KCWMtNC41NDUtNC41NDUtMy4wNzEtMTMuMzkxLDMuMjkzLTE5Ljc1NWwwLDBjNi4zNjUtNi4zNjUsMTUuMjEtNy44MzksMTkuNzU1LTMuMjkzTDI3MS41NjQsMjQ3LjUzOXoiLz4NCjxwYXRoIGZpbGw9IiNDMTI3MkQiIGQ9Ik02My4xMzMsMjQ4Ljg0MmMtNC42OTcsNC42OTctMTQuNzk1LDIuMjE1LTIyLjU1NC01LjU0NWwwLDBjLTcuNzU5LTcuNzU4LTEwLjI0MS0xNy44NTUtNS41NDMtMjIuNTUzDQoJYzAsMCwyMzQuNTk5LTE3OC40MDYsMjI5LjkwMi0xNzMuNzA4TDYzLjEzMywyNDguODQyeiIvPg0KPC9zdmc+DQo=);\n}\n.company-name {\n display: inline-block;\n text-transform: uppercase;\n font-size: 40px;\n color: #36455c;\n width: 400px;\n line-height: 115px;\n float: left;\n}\n.top-data-container {\n width: 500px;\n float: right;\n display: inline-block;\n}\n.top-data-container .data-unit {\n float: left;\n width: 250px;\n}\n.left-column {\n width: 300px;\n float: left;\n}\n.left-column .data-unit {\n text-align: left;\n margin-bottom: 10px;\n}\n.right-column {\n width: calc(100% - 300px);\n float: left;\n padding-left: 10px;\n}\n.right-column .data-unit {\n text-align: left;\n margin-bottom: 10px;\n float: right;\n margin-left: 40px;\n}\n.right-column .data-unit .value {\n font-size: 25px;\n}\n.right-column .data-unit .icon {\n margin-top: 5px;\n}\n.left-column.summary {\n background-color: #e6e6e6;\n padding: 30px;\n}\n.asset-top {\n margin-bottom: 50px;\n}\n.asset-top .value.account-name {\n font-size: 30px;\n text-transform: uppercase;\n}\n.asset-top .left-column .data-unit.last-refresh {\n margin-top: 10px;\n}\n.asset-top .left-column .data-unit.last-refresh div {\n float: left;\n display: inline;\n width: 50%;\n font-size: 14px;\n margin-bottom: 0;\n line-height: inherit;\n}\n.asset-top .left-column .data-unit.last-refresh div.label {\n text-align: left;\n}\n.asset-top .left-column .data-unit.last-refresh div.value {\n text-align: left;\n}\n.asset-top .right-column .data-unit {\n float: right;\n margin-top: 30px;\n}\n.asset-top .right-column .data-unit .icon {\n margin-top: 5px;\n}\n.left-column.asset {\n text-align: left;\n}\n.left-column.asset .data-unit {\n text-align: left;\n}\n.left-column.asset h4 {\n font-weight: bold;\n color: #129b7d;\n border-bottom: 2px solid #129b7d;\n width: 75%;\n float: left;\n}\n.right-column.asset h3:first-child {\n margin-top: 0;\n}\n.table.table-striped thead tr th {\n background: #bac6d7;\n letter-spacing: 1px;\n font-weight: normal;\n text-transform: uppercase;\n font-color: #2d394c;\n}\n.table.table-striped thead tr th:last-child,\n.table.table-striped tr td:last-child {\n text-align: right;\n}\n.table.table-striped.summary-asset td:first-child,\n.table.table-striped.summary-asset th:first-child {\n text-align: left;\n width: 150px;\n}\n.table.table-striped.summary-asset.verification td,\n.table.table-striped.summary-asset.verification th {\n text-align: center;\n}\n.table.table-striped.summary-asset.verification td .icon,\n.table.table-striped.summary-asset.verification th .icon {\n float: none;\n}\n.table.table-striped.summary-asset.verification td:first-child,\n.table.table-striped.summary-asset.verification th:first-child {\n width: 200px;\n}\n.table.table-striped.summary-asset.verification td:first-child,\n.table.table-striped.summary-asset.verification th:first-child,\n.table.table-striped.summary-asset.verification td:nth-child(2),\n.table.table-striped.summary-asset.verification th:nth-child(2) {\n text-align: left;\n}\n.table.table-striped.summary-asset.atr td:first-child,\n.table.table-striped.summary-asset.atr th:first-child {\n width: 40%;\n text-align: left;\n}\n.table.table-striped.summary-asset.atr td,\n.table.table-striped.summary-asset.atr th {\n text-align: right;\n width: 15%;\n}\n.table.table-striped.asset td,\n.table.table-striped.asset th {\n text-align: right;\n}\n.table.table-striped.asset td:first-child,\n.table.table-striped.asset th:first-child {\n text-align: left;\n width: 100px;\n}\n.table.table-striped.transactions tr.large-deposit td {\n background-color: rgba(0, 128, 0, 0.2);\n}\n.table.table-striped.transactions.history tr.alert td {\n background: rgba(18, 155, 125, 0.2);\n}\n.table.table-striped.transactions.history td:nth-child(1),\n.table.table-striped.transactions.history th:nth-child(1) {\n width: 200px;\n}\n.table.table-striped.transactions.history td td:nth-child(3),\n.table.table-striped.transactions.history th td:nth-child(3),\n.table.table-striped.transactions.history td th:nth-child(3),\n.table.table-striped.transactions.history th th:nth-child(3),\n.table.table-striped.transactions.history td td:nth-child(4),\n.table.table-striped.transactions.history th td:nth-child(4),\n.table.table-striped.transactions.history td th:nth-child(4),\n.table.table-striped.transactions.history th th:nth-child(4) {\n text-align: right;\n}\n.table.table-striped.investment td,\n.table.table-striped.investment th {\n width: 20%;\n text-align: right;\n}\n.table.table-striped.investment td:nth-child(1),\n.table.table-striped.investment th:nth-child(1),\n.table.table-striped.investment td:nth-child(2),\n.table.table-striped.investment th:nth-child(2) {\n text-align: left;\n}\n\n</style>\n</head>\n<body>\n <div class=\"page-top-bar\">\n <div class=\"data-unit\">\n <div class=\"label\">End Date Requested</div>\n <div class=\"value\">{{ .EndDateRequested }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Loan Number</div>\n <div class=\"value\">{{ .LoanNumber }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Order ID</div>\n <div class=\"value\">{{ .OrderID }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Order ID</div>\n <div class=\"value\">{{ .OrderID }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Product Name</div>\n <div class=\"value\">{{ .ProductName }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Refresh Period Days</div>\n <div class=\"value\">{{ .RefreshPeriodDays }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Report Date</div>\n <div class=\"value\">{{ .ReportDate }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Currency</div>\n <div class=\"value\">{{ .Currency }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Days Requested</div>\n <div class=\"value\">{{ .DaysRequested }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Start Date Requested</div>\n <div class=\"value\">{{ .StartDateRequested }}</div>\n </div>\n </div>\n\n <div class=\"logo\"></div>\n <div class=\"clearfix\"></div>\n\n <div class=\"requested-by\">\n <h1>Requested By</h1>\n <section>\n <div class=\"data-unit\">\n <div class=\"label\">Email</div>\n <div class=\"value\">{{ .RequestedBy.Email }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Name</div>\n <div class=\"value\">{{ .RequestedBy.Name }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Phone Number</div>\n <div class=\"value\">{{ .RequestedBy.PhoneNumber }}</div>\n </div>\n </section>\n </div>\n\n <div class=\"clearfix\"></div>\n <div class=\"ability-to-repay\">\n <h1>Ability To Repay</h1>\n\n <div class=\"data-unit adj-left-over-cashflow\">\n <div class=\"data-unit\">\n <div class=\"label\">One0</div>\n <div class=\"value\">{{ .AbilityToRepay.AdjLeftoverCashflow.One0 }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">One0</div>\n <div class=\"value\">{{ .AbilityToRepay.AdjLeftoverCashflow.One5 }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Three0</div>\n <div class=\"value\">{{ .AbilityToRepay.AdjLeftoverCashflow.Three0 }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Five</div>\n <div class=\"value\">{{ .AbilityToRepay.AdjLeftoverCashflow.Five }}</div>\n </div>\n </div>\n\n <div class=\"data-unit adj-monthly-income-cashflow\">\n <div class=\"data-unit\">\n <div class=\"label\">One0</div>\n <div class=\"value\">{{ .AbilityToRepay.AvgMonthlyIncome.One0 }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">One0</div>\n <div class=\"value\">{{ .AbilityToRepay.AvgMonthlyIncome.One5 }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Three0</div>\n <div class=\"value\">{{ .AbilityToRepay.AvgMonthlyIncome.Three0 }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Five</div>\n <div class=\"value\">{{ .AbilityToRepay.AvgMonthlyIncome.Five }}</div>\n </div>\n </div>\n\n <div class=\"data-unit left-over-cash-flow\">\n <div class=\"data-unit\">\n <div class=\"label\">One0</div>\n <div class=\"value\">{{ .AbilityToRepay.AvgMonthlyIncome.One0 }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">One0</div>\n <div class=\"value\">{{ .AbilityToRepay.AvgMonthlyIncome.One5 }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Three0</div>\n <div class=\"value\">{{ .AbilityToRepay.AvgMonthlyIncome.Three0 }}</div>\n </div>\n <div class=\"data-unit\">\n <div class=\"label\">Five</div>\n <div class=\"value\">{{ .AbilityToRepay.AvgMonthlyIncome.Five }}</div>\n </div>\n </div>\n\n </div>\n\n <div class=\"clearfix\"></div>\n <div class=\"assets-analysis\">\n <h1> Assets Analysis </h1>\n\n {{ range .AssetAnalysis }}\n <div class=\"anaylysis-item\">\n\n <section class=\"account-summary\">\n <div class=\"data-unit account-name\">\n <div class=\"label\">Account Name</div>\n <div class=\"value\">{{ .AccountSummary.AccountName }}</div>\n </div>\n <div class=\"data-unit account-type\">\n <div class=\"label\">Account Type</div>\n <div class=\"value\">{{ .AccountSummary.AccountType }}</div>\n </div>\n <div class=\"data-unit current-balance\">\n <div class=\"label\">Current Balance</div>\n <div class=\"value\">{{ .AccountSummary.CurrentBalance }}</div>\n </div>\n <div class=\"data-unit negative-occurences\">\n <div class=\"label\">Negative Occurrences</div>\n <div class=\"value\">{{ .AccountSummary.NegativeOccurrences }}</div>\n </div>\n <div class=\"data-unit nsf-occurrences\">\n <div class=\"label\">NSF Occurrences</div>\n <div class=\"value\">{{ .AccountSummary.NsfOccurrences }}</div>\n </div>\n </section>\n\n <section class=\"arch-in\">\n <h1> Ach In </h1>\n <div class=\"arch-in-table\">\n <table class=\"table table-striped arch-in-records\">\n <thead>\n <tr>\n <th class=\"account-name\">Date</th>\n <th class=\"account-name\">AccountName</th>\n <th class=\"account-number\">Description</th>\n <th class=\"account-type\">Amount</th>\n <th class=\"balance\">TransactionID</th>\n </tr>\n </thead>\n {{ range .AchIn }}\n <tr>\n <td>{{ .Date.Format \"2006-01-02\" }}</td>\n <td>{{ .AccountName }}</td>\n <td>{{ .Description }}</td>\n <td>{{ .Amount }}</td>\n <td>{{ .TransactionID }}</td>\n </tr>\n {{ end }}\n </table>\n </div>\n </section>\n\n <section class=\"arch-out\">\n <h1> Ach Out </h1>\n <div class=\"arch-out-table\">\n <table class=\"table table-striped arch-out-records\">\n <thead>\n <tr>\n <th class=\"account-name\">Date</th>\n <th class=\"account-name\">AccountName</th>\n <th class=\"account-number\">Description</th>\n <th class=\"account-type\">Amount</th>\n <th class=\"balance\">TransactionID</th>\n </tr>\n </thead>\n {{ range .AchOut }}\n <tr>\n <td>{{ .Date.Format \"2006-01-02\" }}</td>\n <td>{{ .AccountName }}</td>\n <td>{{ .Description }}</td>\n <td>{{ .Amount }}</td>\n <td>{{ .TransactionID }}</td>\n </tr>\n {{ end }}\n </table>\n </div>\n </section>\n\n <section class=\"cashflow-matrix\">\n <h1> Adjusted CashFlow Matrix </h1>\n <div class=\"data-unit last-70-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last07Days.Inflow }}</div>\n </div>\n <div class=\"data-unit count\">\n <div class=\"label\">Leftover</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last07Days.Leftover }}</div>\n </div>\n <div class=\"data-unit count\">\n <div class=\"label\">Outflow</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last07Days.Outflow }}</div>\n </div>\n </div>\n <div class=\"data-unit last-14-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last14Days.Inflow }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Leftover</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last14Days.Leftover }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Outflow</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last14Days.Outflow }}</div>\n </div>\n </div>\n <div class=\"data-unit last-30-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last30Days.Inflow }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Leftover</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last30Days.Leftover }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Outflow</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last30Days.Outflow }}</div>\n </div>\n </div>\n <div class=\"data-unit last-60-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last60Days.Inflow }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Leftover</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last60Days.Leftover }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Outflow</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last60Days.Outflow }}</div>\n </div>\n </div>\n <div class=\"data-unit last-90-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last90Days.Inflow }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Leftover</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last90Days.Leftover }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Outflow</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.Last90Days.Outflow }}</div>\n </div>\n </div>\n <div class=\"data-unit total-activity\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.TotalActivity.Inflow }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Leftover</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.TotalActivity.Leftover }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Outflow</div>\n <div class=\"value\">{{ .AdjustedCashflowMatrix.TotalActivity.Outflow }}</div>\n </div>\n </div>\n </section>\n\n <section class=\"average-balance-matrix\">\n <h1> Average Balance Matrix </h1>\n <div class=\"data-unit last-70-days\">\n <div class=\"label\">Last 07 Days Average</div>\n <div class=\"value\">{{ .AverageBalanceMatrix.Last07DaysAvg }}</div> </div>\n <div class=\"data-unit last-14-days\">\n <div class=\"label\">Last 14 Days Average</div>\n <div class=\"value\">{{ .AverageBalanceMatrix.Last14DaysAvg }}</div>\n </div>\n <div class=\"data-unit last-30-days\">\n <div class=\"label\">Last 30 Days Average</div>\n <div class=\"value\">{{ .AverageBalanceMatrix.Last30DaysAvg }}</div>\n </div>\n <div class=\"data-unit last-60-days\">\n <div class=\"label\">Last 60 Days Average</div>\n <div class=\"value\">{{ .AverageBalanceMatrix.Last60DaysAvg }}</div>\n </div>\n <div class=\"data-unit last-90-days\">\n <div class=\"label\">Last 90 Days Average</div>\n <div class=\"value\">{{ .AverageBalanceMatrix.Last90DaysAvg }}</div>\n </div>\n <div class=\"data-unit total-activity\">\n <div class=\"label\">Total Activity Average</div>\n <div class=\"value\">{{ .AverageBalanceMatrix.TotalActivityAvg }}</div>\n </div>\n </section>\n\n <section class=\"balance-trends\">\n <h1> Balance Trends </h1>\n <div class=\"data-unit occurrences-below-0\">\n <div class=\"data-unit last-70-days\">\n <div class=\"label\">Last 07 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow0.Last07Days }}</div>\n </div>\n <div class=\"data-unit last-14-days\">\n <div class=\"label\">Last 14 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow0.Last14Days }}</div>\n </div>\n <div class=\"data-unit last-30-days\">\n <div class=\"label\">Last 30 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow0.Last30Days }}</div>\n </div>\n <div class=\"data-unit last-60-days\">\n <div class=\"label\">Last 60 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow0.Last60Days }}</div>\n </div>\n <div class=\"data-unit last-90-days\">\n <div class=\"label\">Last 90 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow0.Last90Days }}</div>\n </div>\n <div class=\"data-unit total-activity\">\n <div class=\"label\">Total Activity</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow0.TotalActivity }}</div>\n </div>\n </div>\n\n <div class=\"data-unit occurrences-below-100\">\n <div class=\"data-unit last-70-days\">\n <div class=\"label\">Last 07 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow100.Last07Days }}</div>\n </div>\n <div class=\"data-unit last-14-days\">\n <div class=\"label\">Last 14 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow100.Last14Days }}</div>\n </div>\n <div class=\"data-unit last-30-days\">\n <div class=\"label\">Last 30 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow100.Last30Days }}</div>\n </div>\n <div class=\"data-unit last-60-days\">\n <div class=\"label\">Last 60 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow100.Last60Days }}</div>\n </div>\n <div class=\"data-unit last-90-days\">\n <div class=\"label\">Last 90 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow100.Last90Days }}</div>\n </div>\n <div class=\"data-unit total-activity\">\n <div class=\"label\">Total Activity</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow100.TotalActivity }}</div>\n </div>\n </div>\n\n\n <div class=\"data-unit occurrences-below-250\">\n <div class=\"data-unit last-70-days\">\n <div class=\"label\">Last 07 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow250.Last07Days }}</div>\n </div>\n <div class=\"data-unit last-14-days\">\n <div class=\"label\">Last 14 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow250.Last14Days }}</div>\n </div>\n <div class=\"data-unit last-30-days\">\n <div class=\"label\">Last 30 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow250.Last30Days }}</div>\n </div>\n <div class=\"data-unit last-60-days\">\n <div class=\"label\">Last 60 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow250.Last60Days }}</div>\n </div>\n <div class=\"data-unit last-90-days\">\n <div class=\"label\">Last 90 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow250.Last90Days }}</div>\n </div>\n <div class=\"data-unit total-activity\">\n <div class=\"label\">Total Activity</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow250.TotalActivity }}</div>\n </div>\n </div>\n\n <div class=\"data-unit occurrences-below-500\">\n <div class=\"data-unit last-70-days\">\n <div class=\"label\">Last 07 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow500.Last07Days }}</div>\n </div>\n <div class=\"data-unit last-14-days\">\n <div class=\"label\">Last 14 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow500.Last14Days }}</div>\n </div>\n <div class=\"data-unit last-30-days\">\n <div class=\"label\">Last 30 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow500.Last30Days }}</div>\n </div>\n <div class=\"data-unit last-60-days\">\n <div class=\"label\">Last 60 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow500.Last60Days }}</div>\n </div>\n <div class=\"data-unit last-90-days\">\n <div class=\"label\">Last 90 Days</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow500.Last90Days }}</div>\n </div>\n <div class=\"data-unit total-activity\">\n <div class=\"label\">Total Activity</div>\n <div class=\"value\">{{ .BalanceTrends.OccurrencesBelow500.TotalActivity }}</div>\n </div>\n </div>\n </section>\n\n <section class=\"depletion-matrix\">\n <div class=\"data-unit last-70-depletion\">\n <div class=\"label\">Last 70 Depletion</div>\n <div class=\"value\">{{ .DepletionMatrix.Last07Depletion }}</div>\n </div>\n <div class=\"data-unit last-14-depletion\">\n <div class=\"label\">Last 14 Depletion</div>\n <div class=\"value\">{{ .DepletionMatrix.Last14Depletion }}</div>\n </div>\n <div class=\"data-unit last-30-depletion\">\n <div class=\"label\">Last 30 Depletion</div>\n <div class=\"value\">{{ .DepletionMatrix.Last30Depletion }}</div>\n </div>\n <div class=\"data-unit last-60-depletion\">\n <div class=\"label\">Last 60 Depletion</div>\n <div class=\"value\">{{ .DepletionMatrix.Last60Depletion }}</div>\n </div>\n <div class=\"data-unit last-90-depletion\">\n <div class=\"label\">Last 90 Depletion</div>\n <div class=\"value\">{{ .DepletionMatrix.Last90Depletion }}</div>\n </div>\n <div class=\"data-unit total-activity\">\n <div class=\"label\">Last Activity Depletion</div>\n <div class=\"value\">{{ .DepletionMatrix.LastActivityDepletion }}</div>\n </div>\n </section>\n\n <section class=\"cashflow-matrix\">\n <h1> Cashflow Matrix </h1>\n <div class=\"data-unit last-70-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Inflow</div>\n <div class=\"value\">{{ .CashflowMatrix.Last07Days.Inflow }}</div>\n </div>\n <div class=\"data-unit count\">\n <div class=\"label\">Leftover</div>\n <div class=\"value\">{{ .CashflowMatrix.Last07Days.Leftover }}</div>\n </div>\n <div class=\"data-unit count\">\n <div class=\"label\">Outflow</div>\n <div class=\"value\">{{ .CashflowMatrix.Last07Days.Outflow }}</div>\n </div>\n </div>\n <div class=\"data-unit last-14-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Inflow</div>\n <div class=\"value\">{{ .CashflowMatrix.Last14Days.Inflow }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Leftover</div>\n <div class=\"value\">{{ .CashflowMatrix.Last14Days.Leftover }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Outflow</div>\n <div class=\"value\">{{ .CashflowMatrix.Last14Days.Outflow }}</div>\n </div>\n </div>\n <div class=\"data-unit last-30-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Inflow</div>\n <div class=\"value\">{{ .CashflowMatrix.Last30Days.Inflow }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Leftover</div>\n <div class=\"value\">{{ .CashflowMatrix.Last30Days.Leftover }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Outflow</div>\n <div class=\"value\">{{ .CashflowMatrix.Last30Days.Outflow }}</div>\n </div>\n </div>\n <div class=\"data-unit last-60-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Inflow</div>\n <div class=\"value\">{{ .CashflowMatrix.Last60Days.Inflow }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Leftover</div>\n <div class=\"value\">{{ .CashflowMatrix.Last60Days.Leftover }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Outflow</div>\n <div class=\"value\">{{ .CashflowMatrix.Last60Days.Outflow }}</div>\n </div>\n </div>\n <div class=\"data-unit last-90-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Inflow</div>\n <div class=\"value\">{{ .CashflowMatrix.Last90Days.Inflow }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Leftover</div>\n <div class=\"value\">{{ .CashflowMatrix.Last90Days.Leftover }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Outflow</div>\n <div class=\"value\">{{ .CashflowMatrix.Last90Days.Outflow }}</div>\n </div>\n </div>\n <div class=\"data-unit total-activity\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Inflow</div>\n <div class=\"value\">{{ .CashflowMatrix.TotalActivity.Inflow }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Leftover</div>\n <div class=\"value\">{{ .CashflowMatrix.TotalActivity.Leftover }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Outflow</div>\n <div class=\"value\">{{ .CashflowMatrix.TotalActivity.Outflow }}</div>\n </div>\n </div>\n </section>\n\n <section class=\"deposit-matrix\">\n <h1> Deposit Matrix </h1>\n <div class=\"data-unit last-70-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .DepositMatrix.Last07Days.Avg }}</div>\n </div>\n <div class=\"data-unit count\">\n <div class=\"label\">Count</div>\n <div class=\"value\">{{ .DepositMatrix.Last07Days.Count }}</div>\n </div>\n <div class=\"data-unit count\">\n <div class=\"label\">Total</div>\n <div class=\"value\">{{ .DepositMatrix.Last07Days.Total }}</div>\n </div>\n </div>\n <div class=\"data-unit last-14-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .DepositMatrix.Last14Days.Avg }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Count</div>\n <div class=\"value\">{{ .DepositMatrix.Last14Days.Count }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Total</div>\n <div class=\"value\">{{ .DepositMatrix.Last14Days.Total }}</div>\n </div>\n </div>\n <div class=\"data-unit last-30-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .DepositMatrix.Last30Days.Avg }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Count</div>\n <div class=\"value\">{{ .DepositMatrix.Last30Days.Count }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Total</div>\n <div class=\"value\">{{ .DepositMatrix.Last30Days.Total }}</div>\n </div>\n </div>\n <div class=\"data-unit last-60-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .DepositMatrix.Last60Days.Avg }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Count</div>\n <div class=\"value\">{{ .DepositMatrix.Last60Days.Count }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Total</div>\n <div class=\"value\">{{ .DepositMatrix.Last60Days.Total }}</div>\n </div>\n </div>\n <div class=\"data-unit last-90-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .DepositMatrix.Last90Days.Avg }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Count</div>\n <div class=\"value\">{{ .DepositMatrix.Last90Days.Count }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Total</div>\n <div class=\"value\">{{ .DepositMatrix.Last90Days.Total }}</div>\n </div>\n </div>\n <div class=\"data-unit total-activity\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .DepositMatrix.TotalActivity.Avg }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Count</div>\n <div class=\"value\">{{ .DepositMatrix.TotalActivity.Count }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Total</div>\n <div class=\"value\">{{ .DepositMatrix.TotalActivity.Total }}</div>\n </div>\n </div>\n </section>\n\n <section class=\"pay-check-summary\">\n <div class=\"average\">\n <div class=\"data-unit date\">\n <div class=\"label\">Date</div>\n <div class=\"value\">{{ .DepositSummary.Average.Date }}</div>\n </div>\n <div class=\"data-unit amount\">\n <div class=\"label\">Amount</div>\n <div class=\"value\">{{ .DepositSummary.Average.Amount }}</div>\n </div>\n </div>\n\n <div class=\"highest\">\n <div class=\"data-unit date\">\n <div class=\"label\">Date</div>\n <div class=\"value\">{{ .DepositSummary.Highest.Date }}</div>\n </div>\n <div class=\"data-unit amount\">\n <div class=\"label\">Amount</div>\n <div class=\"value\">{{ .DepositSummary.Highest.Amount }}</div>\n </div>\n </div>\n\n <div class=\"lowest\">\n <div class=\"data-unit date\">\n <div class=\"label\">Date</div>\n <div class=\"value\">{{ .DepositSummary.Lowest.Date }}</div>\n </div>\n <div class=\"data-unit amount\">\n <div class=\"label\">Amount</div>\n <div class=\"value\">{{ .DepositSummary.Lowest.Amount }}</div>\n </div>\n </div>\n </section>\n\n <section class=\"negative-occurences-matrix\">\n <h1> Negative Occurrences Matrix </h1>\n <div class=\"data-unit last-70-days\">\n <div class=\"label\">Last 07 Days</div>\n <div class=\"value\">{{ .NegativeOccurrencesMatrix.Last07Days }}</div>\n </div>\n <div class=\"data-unit last-14-days\">\n <div class=\"label\">Last 14 Days</div>\n <div class=\"value\">{{ .NegativeOccurrencesMatrix.Last14Days }}</div>\n </div>\n <div class=\"data-unit last-30-days\">\n <div class=\"label\">Last 30 Days</div>\n <div class=\"value\">{{ .NegativeOccurrencesMatrix.Last30Days }}</div>\n </div>\n <div class=\"data-unit last-60-days\">\n <div class=\"label\">Last 60 Days</div>\n <div class=\"value\">{{ .NegativeOccurrencesMatrix.Last60Days }}</div>\n </div>\n <div class=\"data-unit last-90-days\">\n <div class=\"label\">Last 90 Days</div>\n <div class=\"value\">{{ .NegativeOccurrencesMatrix.Last90Days }}</div>\n </div>\n <div class=\"data-unit total-activity\">\n <div class=\"label\">Total Activity</div>\n <div class=\"value\">{{ .NegativeOccurrencesMatrix.TotalActivity }}</div>\n </div>\n </section>\n\n <section class=\"pay-check-summary\">\n <h1> Paycheck Summary </h1>\n <div class=\"data-unit avg-paycheck-amount\">\n <div class=\"label\">Average Paycheck Amount</div>\n <div class=\"value\">{{ .PaycheckSummary.AveragePaycheckAmount }}</div>\n </div>\n <div class=\"data-unit total-paycheck-amount\">\n <div class=\"label\">Total PayCheck Amount</div>\n <div class=\"value\">{{ .PaycheckSummary.TotalPaycheckAmount }}</div>\n </div>\n\n <div class=\"most-recent-paycheck\">\n\n <div class=\"data-unit date\">\n <div class=\"label\">Date</div>\n <div class=\"value\">{{ .PaycheckSummary.MostRecentPaycheck.Date.Format \"2006/01/02\" }}</div>\n </div>\n\n <div class=\"data-unit amount\">\n <div class=\"label\">Amount</div>\n <div class=\"value\">{{ .PaycheckSummary.MostRecentPaycheck.Amount }}</div>\n </div>\n\n </div>\n </section>\n\n <section class=\"payroll-matrix\">\n <h1> Payroll Matrix </h1>\n <div class=\"data-unit last-70-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .PayrollMatrix.Last07Days.Avg }}</div>\n </div>\n <div class=\"data-unit count\">\n <div class=\"label\">Count</div>\n <div class=\"value\">{{ .PayrollMatrix.Last07Days.Count }}</div>\n </div>\n <div class=\"data-unit count\">\n <div class=\"label\">Total</div>\n <div class=\"value\">{{ .PayrollMatrix.Last07Days.Total }}</div>\n </div>\n </div>\n <div class=\"data-unit last-14-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .PayrollMatrix.Last14Days.Avg }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Count</div>\n <div class=\"value\">{{ .PayrollMatrix.Last14Days.Count }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Total</div>\n <div class=\"value\">{{ .PayrollMatrix.Last14Days.Total }}</div>\n </div>\n </div>\n <div class=\"data-unit last-30-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .PayrollMatrix.Last30Days.Avg }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Count</div>\n <div class=\"value\">{{ .PayrollMatrix.Last30Days.Count }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Total</div>\n <div class=\"value\">{{ .PayrollMatrix.Last30Days.Total }}</div>\n </div>\n </div>\n <div class=\"data-unit last-60-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .PayrollMatrix.Last60Days.Avg }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Count</div>\n <div class=\"value\">{{ .PayrollMatrix.Last60Days.Count }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Total</div>\n <div class=\"value\">{{ .PayrollMatrix.Last60Days.Total }}</div>\n </div>\n </div>\n <div class=\"data-unit last-90-days\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .PayrollMatrix.Last90Days.Avg }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Count</div>\n <div class=\"value\">{{ .PayrollMatrix.Last90Days.Count }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Total</div>\n <div class=\"value\">{{ .PayrollMatrix.Last90Days.Total }}</div>\n </div>\n </div>\n <div class=\"data-unit total-activity\">\n <div class=\"data-unit avg\">\n <div class=\"label\">Average</div>\n <div class=\"value\">{{ .PayrollMatrix.TotalActivity.Avg }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Count</div>\n <div class=\"value\">{{ .PayrollMatrix.TotalActivity.Count }}</div>\n </div>\n\n <div class=\"data-unit count\">\n <div class=\"label\">Total</div>\n <div class=\"value\">{{ .PayrollMatrix.TotalActivity.Total }}</div>\n </div>\n </div>\n </section>\n\n\n <section class=\"process-summary\">\n <h1> Process Summary </h1>\n <div class=\"data-unit days-processed\">\n <div class=\"label\">Days Processed</div>\n <div class=\"value\">{{ .ProcessSummary.DaysProcessed }}</div>\n </div>\n <div class=\"data-unit start-date-processed\">\n <div class=\"label\">Start Date Processed</div>\n <div class=\"value\">{{ .ProcessSummary.StartDateProcessed }}</div>\n </div>\n <div class=\"data-unit end-date-processed\">\n <div class=\"label\">End Date Processed</div>\n <div class=\"value\">{{ .ProcessSummary.EndDateProcessed }}</div>\n </div>\n </section>\n\n <section class=\"transaction-history\">\n <h1> Transaction History </h1>\n <div class=\"transaction-history-table\">\n <table class=\"table table-striped transaction-history\">\n <thead>\n <tr>\n <th class=\"account-name\">Date</th>\n <th class=\"account-name\">AccountName</th>\n <th class=\"account-number\">Description</th>\n <th class=\"account-type\">Amount</th>\n <th class=\"balance\">TransactionID</th>\n <th class=\"routing-number\">Type</th>\n </tr>\n </thead>\n {{ range .TransactionHistory }}\n <tr>\n <td>{{ .Date.Format \"2006-01-02\" }}</td>\n <td>{{ .AccountName }}</td>\n <td>{{ .Description }}</td>\n <td>{{ .Amount }}</td>\n <td>{{ .TransactionID }}</td>\n <td>{{ .Type }}</td>\n </tr>\n {{ end }}\n </table>\n </div>\n </section>\n\n <section class=\"investment-holdings\">\n <h1> Investment Holdings </h1>\n <div class=\"analysis-table\">\n <table class=\"table table-striped analysis\">\n <thead>\n <tr>\n <th class=\"symbol\">Symbol</th>\n <th class=\"description\">Description</th>\n <th class=\"price-per-share\">Price Per Share</th>\n <th class=\"number-of-shares\">Number Of Shares</th>\n <th class=\"market-value\">Market Value</th>\n </tr>\n </thead>\n {{ range .InvestmentHoldings }}\n <tr>\n <td>{{ .Symbol }}</td>\n <td>{{ .Description }}</td>\n <td>{{ .PricePerShare }}</td>\n <td>{{ .NumberOfShares }}</td>\n <td>{{ .MarketValue }}</td>\n </tr>\n {{ end }}\n </table>\n </div>\n </section>\n </div>\n {{ end }}\n </div>\n\n\n <div class=\"clearfix\"></div>\n <div class=\"assets-summary\">\n <h1> Assets Summary </h1>\n\n <div class=\"data-unit\">\n <div class=\"label\">Total Balance</div>\n <div class=\"value\">{{ .AssetsSummary.TotalBalance }}</div>\n </div>\n\n <div class=\"data-unit\">\n <div class=\"label\">Total Negative Occurrences</div>\n <div class=\"value\">{{ .AssetsSummary.TotalNegativeOccurrences }}</div>\n </div>\n\n <div class=\"data-unit\">\n <div class=\"label\">Total NSF Occurrences</div>\n <div class=\"value\">{{ .AssetsSummary.TotalNsfOccurrences }}</div>\n </div>\n\n <section class=\"assets-table\">\n <table class=\"table table-striped assets\">\n <thead>\n <tr>\n <th class=\"account-name\">Account Name</th>\n <th class=\"account-number\">Account Number</th>\n <th class=\"account-type\">Account Type</th>\n <th class=\"balance\">Balance</th>\n <th class=\"routing-number\">Routing Number</th>\n </tr>\n </thead>\n {{ range .AssetsSummary.Assets }}\n <tr>\n <td>{{ .AccountName }}</td>\n <td>{{ .AccountNumber }}</td>\n <td>{{ .AccountType }}</td>\n <td>{{ .Balance }}</td>\n <td>{{ .RoutingNumber }}</td>\n </tr>\n {{ end}}\n </table>\n </section>\n </div>\n\n <div class=\"clearfix\"></div>\n <div class=\"applicants\">\n <h1> Applicants </h1>\n\n <section class=\"applicants-table\">\n <table class=\"table table-striped\">\n <thead>\n <tr>\n <th class=\"email\"> Email</th>\n <th class=\"employer\"> Employer</th>\n <th class=\"name\">Name</th>\n </tr>\n </thead>\n {{ range .Applicant }}\n <tr>\n <td>{{ .Email }}</td>\n <td>{{ .Employer }}</td>\n <td>{{ .Name }}</td>\n </tr>\n {{ end}}\n </table>\n\n </section>\n </div>\n\n <div class=\"clearfix\"></div>\n <div class=\"co-applicant\">\n <h1> CoApplicants </h1>\n\n <section class=\"co-applicant-table\">\n <table class=\"table table-striped applicants\">\n <thead>\n <tr>\n <th class=\"email\"> Email</th>\n <th class=\"employer\"> Employer</th>\n <th class=\"name\"> Name</th>\n </tr>\n </thead>\n {{ range .CoApplicant }}\n <tr>\n <td>{{ .Email }}</td>\n <td>{{ .Employer }}</td>\n <td>{{ .Name }}</td>\n </tr>\n {{ end}}\n </table>\n\n </section>\n </div>\n\n <div class=\"clearfix\"></div>\n <div class=\"deposit-history\">\n <h1> Deposit History </h1>\n\n <section class=\"deposit-history-table\">\n <table class=\"table table-striped transactions\">\n <thead>\n <tr>\n <th class=\"date\"> Date</th>\n <th class=\"description\"> Description</th>\n <th class=\"account-name\"> Account Name</th>\n <th class=\"account-amount\"> Amount</th>\n <th class=\"largest-deposit\"> Largest Deposit</th>\n </tr>\n </thead>\n {{ range .DepositHistory }}\n <tr>\n <td>{{ .Date.Format \"2006-01-02\" }}</td>\n <td>{{ .Description }}</td>\n <td>{{ .AccountName }}</td>\n <td>{{ .Amount }}</td>\n <td>{{ if .LargeDeposit }} Yes {{ else }} No {{ end }}</td>\n </tr>\n {{ end}}\n </table>\n\n </section>\n </div>\n\n <div class=\"clearfix\"></div>\n <div class=\"verification-of-assets\">\n <h1> Verification Of Assets </h1>\n\n <section class=\"verification-of-assets-table\">\n <table class=\"table table-striped assets\">\n <thead>\n <tr>\n <th class=\"archIn\"> AchIn</th>\n <th class=\"archOut\"> AchOut</th>\n <th class=\"assets-requested\"> Asset Requested</th>\n <th class=\"assets-returned\"> Asset Returned</th>\n <th class=\"direct-deposit\"> Direct Deposit</th>\n <th class=\"linked\"> Linked</th>\n </tr>\n </thead>\n {{ range .VerificationOfAssets }}\n <tr>\n <td>{{ if .AchIn }} Yes {{ else }} No {{ end }}</td>\n <td>{{ if .AchOut }} Yes {{ else }} No {{ end }}</td>\n <td>{{ .AssetRequested }}</td>\n <td>{{ .AssetReturned }}</td>\n <td>{{ if .DirectDeposit }} Yes {{ else }} No {{ end }}</td>\n <td>{{ if .Linked }} Yes {{ else }} No {{ end }}</td>\n </tr>\n {{ end}}\n </table>\n\n </section>\n </div>\n</body>\n</html>",
|
|
59
|
-
"xml_template": "<?xml><product><code>34ZUY8HG</code></product>",
|
|
60
|
-
"email_template": "Hello {{ .Applicant.FirstName }},\n\n\n\nTo complete your {{ .Requestor.CompanyName }} loan application please follow the below link or copy and paste the link into your browser's window.\n\n\n\nAfter following the link, please follow the on-screen instructions. You will need to connect your account/s to be considered for approval. \n\n\n\nFollow this link to complete your loan application.\n\n{{ .Link }}",
|
|
61
|
-
"email_html_template": "<html><body>Hello {{ .Applicant.FirstName }},<br/><br/>To complete your {{ .Requestor.CompanyName }} loan application please follow the link below or copy and paste the link into your browser's window. <br/><br/>After following the link, please follow the on-screen instructions. You will need to connect your account/s to be considered for approval. <br/><br/>Follow this link to complete your loan application.<br/>{{ .Link }}<br/></body></html>",
|
|
62
|
-
"email_subject_template": "Additional steps needed to complete your {{ .Requestor.CompanyName }} loan application.",
|
|
63
|
-
"sms_template": "Additional steps needed to complete your {{ .Requestor.CompanyName }} loan application."
|
|
56
|
+
"code": "PROD2"
|
|
64
57
|
},
|
|
65
58
|
"requestor": {
|
|
66
59
|
"company_id": "",
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"_id": "57ab7ade83ccfc000172d252",
|
|
4
|
+
"name": "Dag Site (US)",
|
|
5
|
+
"status": 3,
|
|
6
|
+
"status_message": "queued",
|
|
7
|
+
"last_refreshed": "2016-08-15T20:41:17.812Z"
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
"_id": "57ab7bb083ccfc000172d25a",
|
|
11
|
+
"name": "Dag Site (US)",
|
|
12
|
+
"status": 3,
|
|
13
|
+
"status_message": "queued",
|
|
14
|
+
"last_refreshed": "2016-08-15T20:39:38.983Z"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"_id": "57ade499b0ac9800012b29fc",
|
|
18
|
+
"name": "Dag Site (US)",
|
|
19
|
+
"status": 3,
|
|
20
|
+
"status_message": "queued",
|
|
21
|
+
"last_refreshed": "2016-08-15T20:39:43.52Z"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"_id": "57ae1ed4b0ac9800012b2a16",
|
|
25
|
+
"name": "Dag Site (US)",
|
|
26
|
+
"status": 3,
|
|
27
|
+
"status_message": "queued",
|
|
28
|
+
"last_refreshed": "2016-08-15T20:40:02.339Z"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"_id": "57b32a6124fb4800013043f4",
|
|
32
|
+
"name": "Dag Site SecurityQA (US)",
|
|
33
|
+
"status": 3,
|
|
34
|
+
"status_message": "queued",
|
|
35
|
+
"last_refreshed": "2016-08-16T15:12:06.145Z"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"_id": "57b32e6024fb48000130444f",
|
|
39
|
+
"name": "Dag Site SecurityQA (US)",
|
|
40
|
+
"status": 3,
|
|
41
|
+
"status_message": "queued",
|
|
42
|
+
"last_refreshed": "2016-08-16T15:18:33.672Z"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"_id": "57b32f6924fb480001304454",
|
|
46
|
+
"name": "Dag Site SecurityQA (US)",
|
|
47
|
+
"status": 3,
|
|
48
|
+
"status_message": "queued",
|
|
49
|
+
"last_refreshed": "2016-08-16T15:22:15.003Z"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"_id": "57ae146124fb480001304317",
|
|
53
|
+
"name": "DagBank",
|
|
54
|
+
"status": 6,
|
|
55
|
+
"status_message": "login failure",
|
|
56
|
+
"last_refreshed": "2016-08-12T18:24:38.013Z",
|
|
57
|
+
"reason": "login failure"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"_id": "57ae1e13b0ac9800012b2a11",
|
|
61
|
+
"name": "DagBank",
|
|
62
|
+
"status": 6,
|
|
63
|
+
"status_message": "login failure",
|
|
64
|
+
"last_refreshed": "2016-08-12T19:05:59.592Z",
|
|
65
|
+
"reason": "login failure"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"_id": "57b1ccd0b0ac9800012b2a2f",
|
|
69
|
+
"name": "DagBank",
|
|
70
|
+
"status": 3,
|
|
71
|
+
"status_message": "queued",
|
|
72
|
+
"last_refreshed": "2016-08-15T20:39:54.938Z"
|
|
73
|
+
}
|
|
74
|
+
]
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: finapps
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.0.
|
|
4
|
+
version: 2.0.22
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Erich Quintero
|
|
@@ -312,6 +312,7 @@ files:
|
|
|
312
312
|
- spec/support/fixtures/resources.json
|
|
313
313
|
- spec/support/fixtures/unauthorized.json
|
|
314
314
|
- spec/support/fixtures/user.json
|
|
315
|
+
- spec/support/fixtures/user_institution_refresh.json
|
|
315
316
|
- spec/support/fixtures/user_institution_refresh_all.json
|
|
316
317
|
- spec/support/fixtures/user_institution_status.json
|
|
317
318
|
- spec/support/fixtures/user_institutions_list.json
|