@open-agreements/open-agreements 0.4.0 → 0.6.2
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.
- package/README.md +15 -1
- package/content/external/yc-safe-discount/metadata.yaml +1 -1
- package/content/external/yc-safe-mfn/metadata.yaml +1 -1
- package/content/external/yc-safe-pro-rata-side-letter/metadata.yaml +1 -1
- package/content/external/yc-safe-valuation-cap/metadata.yaml +1 -1
- package/content/recipes/QUALITY_TRACKER.md +35 -0
- package/content/recipes/nvca-certificate-of-incorporation/clean.json +14 -2
- package/content/recipes/nvca-certificate-of-incorporation/computed.json +99 -0
- package/content/recipes/nvca-certificate-of-incorporation/metadata.yaml +133 -2
- package/content/recipes/nvca-certificate-of-incorporation/replacements.json +95 -2
- package/content/recipes/nvca-certificate-of-incorporation/selections-roadmap.md +44 -0
- package/content/recipes/nvca-certificate-of-incorporation/selections.json +95 -0
- package/content/recipes/nvca-indemnification-agreement/metadata.yaml +9 -1
- package/content/recipes/nvca-investors-rights-agreement/clean.json +9 -1
- package/content/recipes/nvca-investors-rights-agreement/metadata.yaml +1 -1
- package/content/recipes/nvca-investors-rights-agreement/replacements.json +4 -1
- package/content/recipes/nvca-management-rights-letter/metadata.yaml +1 -1
- package/content/recipes/nvca-rofr-co-sale-agreement/clean.json +11 -1
- package/content/recipes/nvca-rofr-co-sale-agreement/metadata.yaml +5 -1
- package/content/recipes/nvca-rofr-co-sale-agreement/replacements.json +4 -1
- package/content/recipes/nvca-stock-purchase-agreement/clean.json +8 -3
- package/content/recipes/nvca-stock-purchase-agreement/computed.json +30 -0
- package/content/recipes/nvca-stock-purchase-agreement/metadata.yaml +25 -17
- package/content/recipes/nvca-stock-purchase-agreement/normalize.json +0 -16
- package/content/recipes/nvca-stock-purchase-agreement/replacements.json +22 -19
- package/content/recipes/nvca-stock-purchase-agreement/selections.json +60 -0
- package/content/recipes/nvca-voting-agreement/clean.json +11 -1
- package/content/recipes/nvca-voting-agreement/metadata.yaml +1 -1
- package/content/recipes/nvca-voting-agreement/replacements.json +2 -1
- package/content/templates/bonterms-mutual-nda/metadata.yaml +1 -1
- package/content/templates/bonterms-professional-services-agreement/metadata.yaml +1 -1
- package/content/templates/closing-checklist/metadata.yaml +1 -1
- package/content/templates/common-paper-ai-addendum/metadata.yaml +1 -1
- package/content/templates/common-paper-ai-addendum-in-app/metadata.yaml +1 -1
- package/content/templates/common-paper-amendment/metadata.yaml +1 -1
- package/content/templates/common-paper-business-associate-agreement/metadata.yaml +1 -1
- package/content/templates/common-paper-cloud-service-agreement/metadata.yaml +1 -1
- package/content/templates/common-paper-csa-click-through/metadata.yaml +1 -1
- package/content/templates/common-paper-csa-with-ai/metadata.yaml +1 -1
- package/content/templates/common-paper-csa-with-sla/metadata.yaml +1 -1
- package/content/templates/common-paper-csa-without-sla/metadata.yaml +1 -1
- package/content/templates/common-paper-data-processing-agreement/metadata.yaml +1 -1
- package/content/templates/common-paper-design-partner-agreement/metadata.yaml +1 -1
- package/content/templates/common-paper-independent-contractor-agreement/metadata.yaml +1 -1
- package/content/templates/common-paper-letter-of-intent/metadata.yaml +1 -1
- package/content/templates/common-paper-mutual-nda/metadata.yaml +1 -1
- package/content/templates/common-paper-one-way-nda/metadata.yaml +1 -1
- package/content/templates/common-paper-order-form/metadata.yaml +1 -1
- package/content/templates/common-paper-order-form-with-sla/metadata.yaml +1 -1
- package/content/templates/common-paper-partnership-agreement/metadata.yaml +1 -1
- package/content/templates/common-paper-pilot-agreement/metadata.yaml +1 -1
- package/content/templates/common-paper-professional-services-agreement/metadata.yaml +1 -1
- package/content/templates/common-paper-software-license-agreement/metadata.yaml +1 -1
- package/content/templates/common-paper-statement-of-work/metadata.yaml +1 -1
- package/content/templates/common-paper-term-sheet/metadata.yaml +1 -1
- package/content/templates/openagreements-employee-ip-inventions-assignment/metadata.yaml +1 -1
- package/content/templates/openagreements-employment-confidentiality-acknowledgement/metadata.yaml +1 -1
- package/content/templates/openagreements-employment-offer-letter/metadata.yaml +1 -1
- package/content/templates/working-group-list/metadata.yaml +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +8 -4
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/fill.js +3 -3
- package/dist/commands/fill.js.map +1 -1
- package/dist/commands/list.js +19 -15
- package/dist/commands/list.js.map +1 -1
- package/dist/core/command-generation/adapters/claude.js +4 -4
- package/dist/core/employment/memo.js +3 -3
- package/dist/core/engine.js +1 -1
- package/dist/core/external/index.js +1 -1
- package/dist/core/fill-pipeline.d.ts +3 -3
- package/dist/core/fill-pipeline.js +6 -6
- package/dist/core/fill-pipeline.js.map +1 -1
- package/dist/core/metadata.d.ts +13 -3
- package/dist/core/metadata.d.ts.map +1 -1
- package/dist/core/metadata.js +19 -11
- package/dist/core/metadata.js.map +1 -1
- package/dist/core/recipe/bracket-normalizer.d.ts +4 -5
- package/dist/core/recipe/bracket-normalizer.d.ts.map +1 -1
- package/dist/core/recipe/bracket-normalizer.js +67 -149
- package/dist/core/recipe/bracket-normalizer.js.map +1 -1
- package/dist/core/recipe/cleaner.d.ts.map +1 -1
- package/dist/core/recipe/cleaner.js +91 -7
- package/dist/core/recipe/cleaner.js.map +1 -1
- package/dist/core/recipe/computed.d.ts +1 -0
- package/dist/core/recipe/computed.d.ts.map +1 -1
- package/dist/core/recipe/computed.js +8 -0
- package/dist/core/recipe/computed.js.map +1 -1
- package/dist/core/recipe/downloader.d.ts.map +1 -1
- package/dist/core/recipe/downloader.js +8 -3
- package/dist/core/recipe/downloader.js.map +1 -1
- package/dist/core/recipe/index.d.ts +2 -1
- package/dist/core/recipe/index.d.ts.map +1 -1
- package/dist/core/recipe/index.js +13 -5
- package/dist/core/recipe/index.js.map +1 -1
- package/dist/core/recipe/patcher.d.ts +10 -5
- package/dist/core/recipe/patcher.d.ts.map +1 -1
- package/dist/core/recipe/patcher.js +186 -138
- package/dist/core/recipe/patcher.js.map +1 -1
- package/dist/core/recipe/replacement-keys.d.ts +9 -7
- package/dist/core/recipe/replacement-keys.d.ts.map +1 -1
- package/dist/core/recipe/replacement-keys.js +7 -20
- package/dist/core/recipe/replacement-keys.js.map +1 -1
- package/dist/core/recipe/source-drift.js +1 -1
- package/dist/core/recipe/source-drift.js.map +1 -1
- package/dist/core/recipe/verifier.d.ts +8 -1
- package/dist/core/recipe/verifier.d.ts.map +1 -1
- package/dist/core/recipe/verifier.js +69 -3
- package/dist/core/recipe/verifier.js.map +1 -1
- package/dist/core/selector.d.ts +4 -0
- package/dist/core/selector.d.ts.map +1 -1
- package/dist/core/selector.js +278 -7
- package/dist/core/selector.js.map +1 -1
- package/dist/core/template-listing.d.ts +3 -1
- package/dist/core/template-listing.d.ts.map +1 -1
- package/dist/core/template-listing.js +4 -3
- package/dist/core/template-listing.js.map +1 -1
- package/dist/core/unified-pipeline.d.ts +5 -2
- package/dist/core/unified-pipeline.d.ts.map +1 -1
- package/dist/core/unified-pipeline.js +71 -3
- package/dist/core/unified-pipeline.js.map +1 -1
- package/dist/core/validation/external.d.ts.map +1 -1
- package/dist/core/validation/external.js +0 -2
- package/dist/core/validation/external.js.map +1 -1
- package/dist/core/validation/recipe.d.ts.map +1 -1
- package/dist/core/validation/recipe.js +34 -6
- package/dist/core/validation/recipe.js.map +1 -1
- package/dist/core/validation/scan-metadata.d.ts +2 -1
- package/dist/core/validation/scan-metadata.d.ts.map +1 -1
- package/dist/core/validation/scan-metadata.js +20 -3
- package/dist/core/validation/scan-metadata.js.map +1 -1
- package/dist/core/validation/template.js +5 -5
- package/package.json +5 -4
- package/server.json +31 -0
- package/skills/client-email/SKILL.md +143 -0
- package/skills/cloud-service-agreement/SKILL.md +8 -99
- package/skills/data-privacy-agreement/SKILL.md +10 -97
- package/skills/delaware-franchise-tax/SKILL.md +7 -1
- package/skills/edit-docx-agreement/SKILL.md +10 -3
- package/skills/employment-contract/SKILL.md +10 -95
- package/skills/iso-27001-evidence-collection/SKILL.md +7 -1
- package/skills/iso-27001-internal-audit/SKILL.md +6 -0
- package/skills/nda/SKILL.md +7 -99
- package/skills/open-agreements/CONNECTORS.md +1 -1
- package/skills/open-agreements/SKILL.md +17 -104
- package/skills/recipe-quality-audit/SKILL.md +116 -0
- package/skills/safe/SKILL.md +12 -97
- package/skills/services-agreement/SKILL.md +8 -99
- package/skills/shared/template-filling-execution.md +92 -0
- package/skills/soc2-readiness/SKILL.md +7 -1
- package/skills/unit-test-philosophy/SKILL.md +12 -1
- package/skills/venture-financing/SKILL.md +11 -96
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
{
|
|
2
|
+
"groups": [
|
|
3
|
+
{
|
|
4
|
+
"id": "dividends",
|
|
5
|
+
"type": "radio",
|
|
6
|
+
"markerless": true,
|
|
7
|
+
"subClauseStopPatterns": ["^Liquidation"],
|
|
8
|
+
"options": [
|
|
9
|
+
{
|
|
10
|
+
"marker": "highest Preferred Stock dividend for the applicable series",
|
|
11
|
+
"trigger": "default"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"marker": "The holders of then outstanding shares of Preferred Stock shall be entitled to receive, only when, as and if declared",
|
|
15
|
+
"trigger": { "field": "dividend_type", "equals": "non_cumulative_fixed" }
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"marker": "From and after the date of the issuance of any shares of Preferred Stock, dividends at the rate per annum",
|
|
19
|
+
"trigger": { "field": "dividend_type", "equals": "cumulative" }
|
|
20
|
+
}
|
|
21
|
+
]
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"id": "liquidation_section_2_1",
|
|
25
|
+
"type": "radio",
|
|
26
|
+
"markerless": true,
|
|
27
|
+
"subClauseStopPatterns": ["^2\\.1Preferential", "^Payments to Holders of Common Stock", "^2\\.2Distribution", "^Deemed Liquidation Events"],
|
|
28
|
+
"options": [
|
|
29
|
+
{
|
|
30
|
+
"marker": "such amount per share as would have been payable had all shares",
|
|
31
|
+
"trigger": "default"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"marker": "2.1Preferential Payments",
|
|
35
|
+
"trigger": { "field": "liquidation_participation", "equals": "participating" }
|
|
36
|
+
}
|
|
37
|
+
]
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"id": "liquidation_section_2_2",
|
|
41
|
+
"type": "radio",
|
|
42
|
+
"markerless": true,
|
|
43
|
+
"subClauseStopPatterns": ["^Deemed Liquidation Events"],
|
|
44
|
+
"options": [
|
|
45
|
+
{
|
|
46
|
+
"marker": "Payments to Holders of Common Stock",
|
|
47
|
+
"trigger": "default"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"marker": "Distribution of Remaining Assets",
|
|
51
|
+
"trigger": { "field": "liquidation_participation", "equals": "participating" }
|
|
52
|
+
}
|
|
53
|
+
]
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"id": "anti_dilution",
|
|
57
|
+
"type": "radio",
|
|
58
|
+
"markerless": true,
|
|
59
|
+
"subClauseStopPatterns": ["^Determination of Consideration"],
|
|
60
|
+
"options": [
|
|
61
|
+
{
|
|
62
|
+
"marker": "determined in accordance with the following formula",
|
|
63
|
+
"trigger": "default"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"marker": "4.4.4Adjustment of Conversion Price",
|
|
67
|
+
"trigger": { "field": "anti_dilution_type", "equals": "full_ratchet" }
|
|
68
|
+
}
|
|
69
|
+
]
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"id": "pay_to_play",
|
|
73
|
+
"type": "checkbox",
|
|
74
|
+
"markerless": true,
|
|
75
|
+
"subClauseStopPatterns": ["^Redemption"],
|
|
76
|
+
"options": [
|
|
77
|
+
{
|
|
78
|
+
"marker": "Special Mandatory Conversion.,",
|
|
79
|
+
"trigger": { "field": "include_pay_to_play" }
|
|
80
|
+
}
|
|
81
|
+
]
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"id": "redemption_provisions",
|
|
85
|
+
"type": "checkbox",
|
|
86
|
+
"markerless": true,
|
|
87
|
+
"options": [
|
|
88
|
+
{
|
|
89
|
+
"marker": "General. Unless prohibited by Delaware law",
|
|
90
|
+
"trigger": { "field": "include_redemption" }
|
|
91
|
+
}
|
|
92
|
+
]
|
|
93
|
+
}
|
|
94
|
+
]
|
|
95
|
+
}
|
|
@@ -19,6 +19,9 @@ fields:
|
|
|
19
19
|
- name: company_name
|
|
20
20
|
type: string
|
|
21
21
|
description: Name of the corporation providing indemnification
|
|
22
|
+
- name: agreement_effective_date
|
|
23
|
+
type: string
|
|
24
|
+
description: Effective date in the opening clause (e.g., March 20, 2026)
|
|
22
25
|
- name: fund_sponsor_name
|
|
23
26
|
type: string
|
|
24
27
|
description: Name of the sponsoring fund or entity appointing the indemnitee
|
|
@@ -58,6 +61,10 @@ fields:
|
|
|
58
61
|
type: string
|
|
59
62
|
description: Optional additional party text or empty string
|
|
60
63
|
default: ''
|
|
64
|
+
- name: appointing_stockholder_ipo_termination_clause
|
|
65
|
+
type: string
|
|
66
|
+
description: Optional clause text that terminates Appointing Stockholder rights at IPO closing
|
|
67
|
+
default: ''
|
|
61
68
|
- name: indemnification_section_letter
|
|
62
69
|
type: string
|
|
63
70
|
description: Section reference letter for indemnification provisions in the certificate
|
|
@@ -66,10 +73,11 @@ fields:
|
|
|
66
73
|
type: string
|
|
67
74
|
description: Signature page marker text
|
|
68
75
|
default: Signature Page Follows
|
|
69
|
-
|
|
76
|
+
priority_fields:
|
|
70
77
|
- indemnitee_name
|
|
71
78
|
- indemnitee_address
|
|
72
79
|
- company_name
|
|
80
|
+
- agreement_effective_date
|
|
73
81
|
- indemnitee_role
|
|
74
82
|
- indemnitee_role_plural
|
|
75
83
|
- indemnitee_pronoun_possessive
|
|
@@ -1,12 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"removeFootnotes": true,
|
|
3
3
|
"removeParagraphPatterns": [
|
|
4
|
+
"^An Investors['\u2019] Rights Agreement can cover many different subjects",
|
|
4
5
|
"^Note to Drafter:",
|
|
5
6
|
"^Preliminary Note\\b",
|
|
6
7
|
"^Alternative 1:",
|
|
7
8
|
"^Alternative 2:",
|
|
8
9
|
"^Alternative:",
|
|
9
10
|
"^\\[Alternative",
|
|
10
|
-
"^Annex 2"
|
|
11
|
+
"^Annex 2",
|
|
12
|
+
"^Last [Uu]pdated"
|
|
13
|
+
],
|
|
14
|
+
"removeRanges": [
|
|
15
|
+
{
|
|
16
|
+
"start": "^This sample document is the work product",
|
|
17
|
+
"end": "are flagged as .Revised."
|
|
18
|
+
}
|
|
11
19
|
]
|
|
12
20
|
}
|
|
@@ -14,5 +14,8 @@
|
|
|
14
14
|
"[description of business]": "{business_description}",
|
|
15
15
|
"[Signature Page Follows]": "{signature_page_marker}",
|
|
16
16
|
"[_________ __, 20__]": "{effective_date}",
|
|
17
|
-
"[Date checklist is being delivered]": "{checklist_delivery_date}"
|
|
17
|
+
"[Date checklist is being delivered]": "{checklist_delivery_date}",
|
|
18
|
+
"[________], 20[__]": "{effective_date}",
|
|
19
|
+
"among [____________], a Delaware": "among {company_name}, a Delaware",
|
|
20
|
+
"U.S. District Court for the District of [_____]": "U.S. District Court for the {judicial_district}"
|
|
18
21
|
}
|
|
@@ -2,6 +2,16 @@
|
|
|
2
2
|
"removeFootnotes": true,
|
|
3
3
|
"removeParagraphPatterns": [
|
|
4
4
|
"^Note to Drafter:",
|
|
5
|
-
"^Preliminary Note\\b"
|
|
5
|
+
"^Preliminary Note\\b",
|
|
6
|
+
"^\\[?Alternative 1:",
|
|
7
|
+
"^\\[?Alternative 2:",
|
|
8
|
+
"^\\[Alternative",
|
|
9
|
+
"^Last [Uu]pdated"
|
|
10
|
+
],
|
|
11
|
+
"removeRanges": [
|
|
12
|
+
{
|
|
13
|
+
"start": "^This sample document is the work product",
|
|
14
|
+
"end": "are flagged as .Revised."
|
|
15
|
+
}
|
|
6
16
|
]
|
|
7
17
|
}
|
|
@@ -26,6 +26,10 @@ fields:
|
|
|
26
26
|
type: string
|
|
27
27
|
description: Additional counsel to CC on notices, or empty string if none
|
|
28
28
|
default: ''
|
|
29
|
+
- name: optional_blank_value
|
|
30
|
+
type: string
|
|
31
|
+
description: Empty-value replacement used to clear optional bracketed drafting text and formatting artifacts
|
|
32
|
+
default: ''
|
|
29
33
|
- name: amended_restated_upper
|
|
30
34
|
type: string
|
|
31
35
|
description: Uppercase prefix if amending a prior agreement (e.g. AMENDED AND RESTATED) or empty string
|
|
@@ -63,7 +67,7 @@ fields:
|
|
|
63
67
|
type: string
|
|
64
68
|
description: Label for the key holders group (e.g. Key Holders or Founders)
|
|
65
69
|
default: Key Holders
|
|
66
|
-
|
|
70
|
+
priority_fields:
|
|
67
71
|
- company_name
|
|
68
72
|
- investor_name
|
|
69
73
|
- key_holder_name
|
|
@@ -13,5 +13,8 @@
|
|
|
13
13
|
"[_____ __, 20___]": "{effective_date}",
|
|
14
14
|
"[specify percentage]": "{specify_percentage}",
|
|
15
15
|
"[45]": "{rofr_response_days}",
|
|
16
|
-
"[Key Holders]": "{key_holders_label}"
|
|
16
|
+
"[Key Holders]": "{key_holders_label}",
|
|
17
|
+
"[________], 20[__]": "{effective_date}",
|
|
18
|
+
"among [____________], a Delaware": "among {company_name}, a Delaware",
|
|
19
|
+
"U.S. District Court for the District of [_____]": "U.S. District Court for the {judicial_district}"
|
|
17
20
|
}
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"removeFootnotes": true,
|
|
3
3
|
"removeParagraphPatterns": [
|
|
4
|
-
"^This sample document is the work product of a national coalition of attorneys",
|
|
5
|
-
"^For those who will redline this against prior NVCA versions",
|
|
6
4
|
"^The Stock Purchase Agreement sets forth the basic terms of the purchase and sale of the preferred stock",
|
|
7
5
|
"^Note to Drafter:",
|
|
8
6
|
"^Preliminary Note\\b",
|
|
9
7
|
"^Alternative 1:",
|
|
10
8
|
"^Alternative 2:",
|
|
11
|
-
"^\\[Alternative"
|
|
9
|
+
"^\\[Alternative",
|
|
10
|
+
"^Last [Uu]pdated"
|
|
11
|
+
],
|
|
12
|
+
"removeRanges": [
|
|
13
|
+
{
|
|
14
|
+
"start": "^This sample document is the work product",
|
|
15
|
+
"end": "are flagged as .Revised."
|
|
16
|
+
}
|
|
12
17
|
]
|
|
13
18
|
}
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": "1.0",
|
|
3
3
|
"max_passes": 4,
|
|
4
|
+
"defaults": {
|
|
5
|
+
"initial_word_lower": "",
|
|
6
|
+
"initial_word_title": "",
|
|
7
|
+
"closing_heading": "Closing.",
|
|
8
|
+
"optional_plural_suffix": "",
|
|
9
|
+
"purchaser_scope": "all"
|
|
10
|
+
},
|
|
4
11
|
"rules": [
|
|
5
12
|
{
|
|
6
13
|
"id": "derive-dispute-resolution-track-arbitration",
|
|
@@ -70,6 +77,29 @@
|
|
|
70
77
|
"judicial_district": "District of Delaware"
|
|
71
78
|
}
|
|
72
79
|
},
|
|
80
|
+
{
|
|
81
|
+
"id": "derive-purchaser-scope-narrow",
|
|
82
|
+
"description": "Narrow consent: each purchaser binds only their own convertible securities.",
|
|
83
|
+
"when_all": [
|
|
84
|
+
{ "field": "bind_all_convertible_holders_to_convert", "op": "eq", "value": "false" }
|
|
85
|
+
],
|
|
86
|
+
"set_fill": {
|
|
87
|
+
"purchaser_scope": "such"
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"id": "derive-closing-type-additional",
|
|
92
|
+
"description": "When closing_type is additional, populate Initial qualifier fields.",
|
|
93
|
+
"when_all": [
|
|
94
|
+
{ "field": "closing_type", "op": "eq", "value": "additional" }
|
|
95
|
+
],
|
|
96
|
+
"set_fill": {
|
|
97
|
+
"initial_word_lower": "initial ",
|
|
98
|
+
"initial_word_title": "Initial ",
|
|
99
|
+
"closing_heading": "Initial Closing.",
|
|
100
|
+
"optional_plural_suffix": "s"
|
|
101
|
+
}
|
|
102
|
+
},
|
|
73
103
|
{
|
|
74
104
|
"id": "derive-governing-law-baseline",
|
|
75
105
|
"description": "NVCA SPA governing law clause is fixed to Delaware.",
|
|
@@ -52,30 +52,38 @@ fields:
|
|
|
52
52
|
type: string
|
|
53
53
|
description: Optional word inserted before Closing in bracketed templates
|
|
54
54
|
default: ""
|
|
55
|
-
- name:
|
|
56
|
-
type:
|
|
57
|
-
description:
|
|
58
|
-
default: ""
|
|
59
|
-
- name:
|
|
60
|
-
type:
|
|
61
|
-
description:
|
|
62
|
-
default: ""
|
|
55
|
+
- name: include_convertible_securities
|
|
56
|
+
type: boolean
|
|
57
|
+
description: Include convertible securities conversion clause in Section 1.1(b)
|
|
58
|
+
default: "false"
|
|
59
|
+
- name: include_closing_reference
|
|
60
|
+
type: boolean
|
|
61
|
+
description: Include "with respect to such Closing" bracket in purchase clause
|
|
62
|
+
default: "false"
|
|
63
|
+
- name: purchaser_scope
|
|
64
|
+
type: string
|
|
65
|
+
description: Convertible securities consent scope word — set by computed.json from bind_all_convertible_holders_to_convert
|
|
63
66
|
- name: optional_plural_suffix
|
|
64
67
|
type: string
|
|
65
|
-
description: Optional plural suffix
|
|
66
|
-
default: ""
|
|
68
|
+
description: Optional plural suffix — set by computed.json defaults
|
|
67
69
|
- name: closing_heading
|
|
68
70
|
type: string
|
|
69
|
-
description: Heading text
|
|
70
|
-
default: Initial Closing.
|
|
71
|
+
description: Heading text — set by computed.json defaults
|
|
71
72
|
- name: initial_word_lower
|
|
72
73
|
type: string
|
|
73
|
-
description: Lowercase
|
|
74
|
-
default: initial
|
|
74
|
+
description: Lowercase qualifier — set by computed.json defaults and rules
|
|
75
75
|
- name: initial_word_title
|
|
76
76
|
type: string
|
|
77
|
-
description: Titlecase
|
|
78
|
-
|
|
77
|
+
description: Titlecase qualifier — set by computed.json defaults and rules
|
|
78
|
+
- name: bind_all_convertible_holders_to_convert
|
|
79
|
+
type: boolean
|
|
80
|
+
description: Purchasers agree on behalf of all convertible security holders to convert (not just their own)
|
|
81
|
+
default: "true"
|
|
82
|
+
- name: closing_type
|
|
83
|
+
type: enum
|
|
84
|
+
description: Single closing or additional closings
|
|
85
|
+
options: [single, additional]
|
|
86
|
+
default: single
|
|
79
87
|
- name: dispute_resolution_mode
|
|
80
88
|
type: enum
|
|
81
89
|
description: Dispute resolution alternative in SPA (Alternative 1 arbitration or Alternative 2 courts)
|
|
@@ -121,7 +129,7 @@ fields:
|
|
|
121
129
|
- name: applicable_purchasers
|
|
122
130
|
type: string
|
|
123
131
|
description: Names of the applicable purchasers
|
|
124
|
-
|
|
132
|
+
priority_fields:
|
|
125
133
|
- company_name
|
|
126
134
|
- investor_name
|
|
127
135
|
- company_counsel
|
|
@@ -12,22 +12,6 @@
|
|
|
12
12
|
"trim_unmatched_trailing_bracket": true,
|
|
13
13
|
"expected_min_matches": 1
|
|
14
14
|
},
|
|
15
|
-
{
|
|
16
|
-
"id": "fill-initial-closing-minimum-shares",
|
|
17
|
-
"section_heading": "Conditions of the Purchasers’ Obligations at Closing",
|
|
18
|
-
"section_heading_any": [
|
|
19
|
-
"Proceedings and Documents",
|
|
20
|
-
"Voting Agreement"
|
|
21
|
-
],
|
|
22
|
-
"paragraph_contains": "A minimum of",
|
|
23
|
-
"paragraph_end_contains": "Shares must be sold at the [Initial] Closing.]",
|
|
24
|
-
"replacements": {
|
|
25
|
-
"[_________]": "{minimum_shares_initial_closing}",
|
|
26
|
-
"[_______]": "{minimum_shares_initial_closing}"
|
|
27
|
-
},
|
|
28
|
-
"trim_unmatched_trailing_bracket": true,
|
|
29
|
-
"expected_min_matches": 1
|
|
30
|
-
},
|
|
31
15
|
{
|
|
32
16
|
"id": "fill-company-counsel-name",
|
|
33
17
|
"section_heading": "Conditions of the Purchasers’ Obligations at Closing",
|
|
@@ -8,25 +8,22 @@
|
|
|
8
8
|
"[name of Investor's counsel]": "{investor_counsel}",
|
|
9
9
|
"[insert name of Company counsel]": "{company_counsel_name}",
|
|
10
10
|
"[name of lead Purchaser]": "{lead_purchaser_name}",
|
|
11
|
-
"[___]
|
|
12
|
-
"[___]
|
|
13
|
-
"[
|
|
14
|
-
"[
|
|
15
|
-
"[
|
|
16
|
-
"[
|
|
17
|
-
"[__]
|
|
18
|
-
"[__]#2": "{par_value_per_share}",
|
|
19
|
-
"[__]#3": "{purchase_price_per_share}",
|
|
20
|
-
"[__]#4": "{series_designation}",
|
|
11
|
+
"SERIES > [___]": "{series_designation}",
|
|
12
|
+
"Series > [___]": "{series_designation}",
|
|
13
|
+
"is made as of > [________]": "{agreement_date_month_day}",
|
|
14
|
+
", 20 > [__]": "{agreement_year_two_digits}",
|
|
15
|
+
"Stock, $ > [__]": "{par_value_per_share}",
|
|
16
|
+
"purchase price of $ > [__]": "{purchase_price_per_share}",
|
|
17
|
+
"such Series > [__]": "{series_designation}",
|
|
21
18
|
"[applicable]": "{applicable_word}",
|
|
22
|
-
"[
|
|
23
|
-
"
|
|
24
|
-
"[
|
|
25
|
-
"[
|
|
26
|
-
"[
|
|
27
|
-
"[Initial]": "{initial_word_title}",
|
|
28
|
-
"[Initial
|
|
29
|
-
"[
|
|
19
|
+
"[such/all]": "{purchaser_scope}",
|
|
20
|
+
"Closing > [s]": "{optional_plural_suffix}",
|
|
21
|
+
"[Initial Closing.]": { "value": "{closing_heading}", "format": { "underline": true } },
|
|
22
|
+
"[initial] ": "{initial_word_lower}",
|
|
23
|
+
"[Initial] ": "{initial_word_title}",
|
|
24
|
+
"[Initial/applicable] ": "{initial_word_title}",
|
|
25
|
+
"[applicable/Initial] ": "{initial_word_title}",
|
|
26
|
+
"[Initial][applicable] ": "{initial_word_title}",
|
|
30
27
|
"[location]": "{arbitration_location}",
|
|
31
28
|
"[judicial district]": "{judicial_district}",
|
|
32
29
|
"[Balance Sheet Date]": "{balance_sheet_date}",
|
|
@@ -37,5 +34,11 @@
|
|
|
37
34
|
"[specify percentage]": "{specify_percentage}",
|
|
38
35
|
"[monthly]": "{financial_reporting_period}",
|
|
39
36
|
"[list the individual director names]": "{director_names}",
|
|
40
|
-
"[name the applicable Purchasers]": "{applicable_purchasers}"
|
|
37
|
+
"[name the applicable Purchasers]": "{applicable_purchasers}",
|
|
38
|
+
"A minimum of > [_________]": "{minimum_shares_initial_closing}",
|
|
39
|
+
"A minimum of > [_______]": "{minimum_shares_initial_closing}",
|
|
40
|
+
"expenses of > [_______]": "{investor_counsel}",
|
|
41
|
+
"U.S. District Court for the District of [_____]": "U.S. District Court for the {judicial_district}",
|
|
42
|
+
"\u201cSeries > [___]": "{series_designation}",
|
|
43
|
+
"\"Series > [___]": "{series_designation}"
|
|
41
44
|
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
{
|
|
2
|
+
"groups": [
|
|
3
|
+
{
|
|
4
|
+
"id": "additional_closings",
|
|
5
|
+
"type": "checkbox",
|
|
6
|
+
"standalone": true,
|
|
7
|
+
"markerless": true,
|
|
8
|
+
"subClauseStopPatterns": ["^Closing Deliverables", "^Defined Terms"],
|
|
9
|
+
"options": [
|
|
10
|
+
{
|
|
11
|
+
"marker": "Additional Closings",
|
|
12
|
+
"trigger": { "field": "closing_type", "equals": "additional" },
|
|
13
|
+
"replaceWith": "[Reserved]"
|
|
14
|
+
}
|
|
15
|
+
]
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"id": "tranche_closing_clause",
|
|
19
|
+
"type": "checkbox",
|
|
20
|
+
"standalone": true,
|
|
21
|
+
"markerless": true,
|
|
22
|
+
"inline": true,
|
|
23
|
+
"options": [
|
|
24
|
+
{
|
|
25
|
+
"marker": ", [Each Purchaser at the Initial Closing shall be obligated to purchase that number of Tranche Closing Shares (as defined below) as is set forth opposite such Purchaser's name on Exhibit A under the heading \"Tranche Closing Shares\" (as to any Purchaser, its \"Tranche Closing Shares\"), as provided in Section [1.2(c)] below.]",
|
|
26
|
+
"trigger": { "field": "include_tranche_closing", "equals": true },
|
|
27
|
+
"replaceWith": ""
|
|
28
|
+
}
|
|
29
|
+
]
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"id": "convertible_securities_clause",
|
|
33
|
+
"type": "checkbox",
|
|
34
|
+
"standalone": true,
|
|
35
|
+
"markerless": true,
|
|
36
|
+
"inline": true,
|
|
37
|
+
"options": [
|
|
38
|
+
{
|
|
39
|
+
"marker": "[or, as applicable, a purchase price of $[___] per share with respect to the shares of Series [____] Preferred Stock being issued [in the Initial Closing] pursuant to any cancellation or conversion of Convertible Securities (as defined below) as set forth in Section 1.3 below]",
|
|
40
|
+
"trigger": { "field": "include_convertible_securities", "equals": true },
|
|
41
|
+
"replaceWith": ""
|
|
42
|
+
}
|
|
43
|
+
]
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"id": "closing_reference_bracket",
|
|
47
|
+
"type": "checkbox",
|
|
48
|
+
"standalone": true,
|
|
49
|
+
"markerless": true,
|
|
50
|
+
"inline": true,
|
|
51
|
+
"options": [
|
|
52
|
+
{
|
|
53
|
+
"marker": "[with respect to such Closing]",
|
|
54
|
+
"trigger": { "field": "include_closing_reference", "equals": true },
|
|
55
|
+
"replaceWith": ""
|
|
56
|
+
}
|
|
57
|
+
]
|
|
58
|
+
}
|
|
59
|
+
]
|
|
60
|
+
}
|
|
@@ -2,6 +2,16 @@
|
|
|
2
2
|
"removeFootnotes": true,
|
|
3
3
|
"removeParagraphPatterns": [
|
|
4
4
|
"^Note to Drafter:",
|
|
5
|
-
"^Preliminary Note\\b"
|
|
5
|
+
"^Preliminary Note\\b",
|
|
6
|
+
"^\\[?Alternative 1:",
|
|
7
|
+
"^\\[?Alternative 2:",
|
|
8
|
+
"^\\[Alternative",
|
|
9
|
+
"^Last [Uu]pdated"
|
|
10
|
+
],
|
|
11
|
+
"removeRanges": [
|
|
12
|
+
{
|
|
13
|
+
"start": "^This sample document is the work product",
|
|
14
|
+
"end": "are flagged as .Revised."
|
|
15
|
+
}
|
|
6
16
|
]
|
|
7
17
|
}
|
|
@@ -14,5 +14,6 @@
|
|
|
14
14
|
"[judicial district]": "{judicial_district}",
|
|
15
15
|
"[state]": "{state_of_incorporation_lower}",
|
|
16
16
|
"[specify percentage]": "{specify_percentage}",
|
|
17
|
-
"[Signature Page Follows]": "{signature_page_marker}"
|
|
17
|
+
"[Signature Page Follows]": "{signature_page_marker}",
|
|
18
|
+
"U.S. District Court for the District of [_____]": "U.S. District Court for the {judicial_district}"
|
|
18
19
|
}
|