contract-redliner
Reads a contract and generates redline suggestions with replacement language. Identifies unfavorable terms, missing protections, ambiguous language, liability exposure, IP risks, termination traps, and auto-renewal gotchas. Produces a contract-review.md with clause-by-clause anal
Install
npx skills add https://github.com/OneWave-AI/claude-skills/tree/main/contract-redliner
claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install onewave-ai-claude-skills@llmmart
git clone https://github.com/OneWave-AI/claude-skills.git
The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole onewave-ai/claude-skills collection as a plugin from our marketplace. Git is the plain clone.
Skill manifest
Contract Redliner
Read a contract and produce a contract-review.md with clause-by-clause analysis, risk ratings, replacement language in tracked-changes format, and negotiation talking points. Unlike contract-analyzer (which only flags issues), produce specific, drop-in replacement language for every problematic clause, ready for negotiation.
Contents
references/risk-categories.md-- the seven risk categories, what to look for in each, and the risk-rating system.references/redline-format.md-- per-issue redline entry format and tracked-changes conventions.references/output-template.md-- the fullcontract-review.mdstructure to generate.references/contract-types.md-- per-contract-type focus areas and worked examples.
Workflow
Ingest the contract. Accept pasted text, a file path (
.txt,.md,.pdf,.docx), or a URL. Load files with the Read tool; for PDFs use the pdf skill or Read PDF support. Parse the full text and identify all numbered sections, clauses, and subclauses.Identify type and parties. Determine contract type, Party A (drafter/company), Party B (signer), governing law, effective date, and term. Apply the matching focus area from
references/contract-types.md.Analyze every section. Evaluate each section against the seven risk categories in
references/risk-categories.md. Assign each section a rating (CRITICAL / HIGH / MEDIUM / LOW / ACCEPTABLE). Mark fair sections as ACCEPTABLE with a brief note -- do not skip them.Generate redlines. For every issue, produce a redline entry per the format and tracked-changes conventions in
references/redline-format.md. Provide complete, standalone replacement language plus a clean accepted version.Write
contract-review.md. Generate the file in the working directory (or the directory the user specifies) followingreferences/output-template.mdexactly and in order.
Mandatory Rules
Open every output with this disclaimer verbatim:
LEGAL DISCLAIMER: This analysis is informational only and does not constitute legal advice. Contract interpretation is jurisdiction-specific and fact-dependent. Always consult a qualified attorney before signing or modifying any legal agreement. This tool is designed to surface potential issues and suggest alternative language for discussion purposes only.
Never provide incomplete replacement language; every redline includes a full, usable clause.
Never present analysis without quoting the specific contract language being discussed.
Never assume jurisdiction-specific enforceability; note when a provision's enforceability varies by jurisdiction.
Always produce
contract-review.mdas the primary deliverable.Always use tracked-changes format (
[-deletion-]/[+insertion+]) for every suggested change.Always include negotiation talking points for every issue rated MEDIUM or above.
Always analyze from the signing party's perspective unless told otherwise.
Quality Standards
- Be exhaustive. Review every section, not just the obviously problematic ones.
- Be specific. Quote exact language, reference exact section numbers, provide complete replacement text.
- Be practical. Frame suggestions a reasonable counterparty would accept; extreme positions undermine credibility.
- Be balanced. Note favorable provisions too -- this builds credibility for the items that need changing.
- Quantify where possible. Estimate liability exposure and calculate penalties when the contract permits.
- Reference market standards. When calling something non-standard, state what the market standard actually is.
Files (claude-skills)
-
references
-
contract-types.md 3.3 KB
# Contract-Type Focus Areas Adjust analysis focus based on contract type. ## SaaS / Software Agreements Prioritize: SLA terms, uptime guarantees, data ownership, data portability, API access post-termination, escrow provisions, security obligations, SOC 2 / compliance certifications, subscription auto-renewal, price escalation caps, usage-based pricing ambiguity. ## Employment Agreements Prioritize: Non-compete scope and duration, invention assignment breadth, clawback provisions, equity vesting on termination, garden leave provisions, severance triggers, restrictive covenant enforceability by jurisdiction, at-will vs. for-cause termination. ## Independent Contractor Agreements Prioritize: IP assignment scope, work-for-hire classification, tax liability, indemnification, misclassification risk, exclusivity, payment terms, scope creep provisions, change order process, deliverable acceptance criteria. ## NDAs / Confidentiality Agreements Prioritize: Definition breadth of "confidential information," residual knowledge clauses, term duration, mutual vs. one-way obligations, carve-outs for required disclosures, injunctive relief provisions, return/destruction of information. ## Master Service Agreements Prioritize: SOW incorporation, change management, acceptance testing, warranty periods, liability allocation across SOWs, subcontracting rights, key personnel provisions, benchmark clauses. ## Partnership / Joint Venture Agreements Prioritize: Capital contributions, profit/loss allocation, management authority, deadlock resolution, buy-sell provisions, non-compete among partners, dissolution triggers, fiduciary duty provisions. ## Real Estate / Lease Agreements Prioritize: CAM charges and escalation, renewal option terms, assignment and subletting rights, maintenance obligations, insurance requirements, casualty and condemnation provisions, estoppel certificates, subordination. ## Licensing Agreements Prioritize: Grant scope, field-of-use restrictions, territory, sublicensing rights, royalty calculations and audits, minimum royalties, improvement ownership, most-favored-licensee, reversion rights. # Worked Examples **User**: "Redline this SaaS agreement" **Response**: Read the agreement, identify it as a SaaS subscription contract, analyze all sections, flag the unlimited liability clause as CRITICAL, note the missing data portability provision, identify the 180-day auto-renewal notice as an AUTO-RENEWAL GOTCHA, produce replacement language for every issue, generate contract-review.md with full tracked changes and negotiation strategy. **User**: "Here's my employment contract, mark it up" **Response**: Read the agreement, identify broad invention assignment covering all work including personal projects as CRITICAL IP RISK, flag the 24-month nationwide non-compete as CRITICAL UNFAVORABLE TERMS, note missing severance provisions as MISSING PROTECTION, draft narrowed replacement language for each, generate contract-review.md. **User**: "Review and redline this vendor MSA" **Response**: Read the MSA, identify one-sided indemnification as HIGH LIABILITY EXPOSURE, flag the absence of a change order process as MISSING PROTECTION, note vague acceptance criteria as AMBIGUOUS LANGUAGE, highlight the cross-default provision linking all SOWs as a TERMINATION TRAP, produce redline for every section, generate contract-review.md with tiered negotiation strategy. -
output-template.md 8.5 KB
# contract-review.md Output Template Generate `contract-review.md` containing ALL of the following sections in this order. Favor thoroughness over brevity. ```markdown # Contract Redline Review LEGAL DISCLAIMER: This analysis is informational only and does not constitute legal advice. Contract interpretation is jurisdiction-specific and fact-dependent. Always consult a qualified attorney before signing or modifying any legal agreement. This tool is designed to surface potential issues and suggest alternative language for discussion purposes only. --- ## Contract Overview | Field | Details | |-------|---------| | Contract Type | [Type] | | Party A (Drafter) | [Name and role] | | Party B (Signer) | [Name and role] | | Effective Date | [Date or "Upon execution"] | | Initial Term | [Duration] | | Renewal Terms | [Auto-renewal details or "None"] | | Governing Law | [Jurisdiction] | | Dispute Resolution | [Method and forum] | | Total Contract Value | [If determinable] | --- ## Executive Summary ### Overall Risk Assessment: [CRITICAL / HIGH / MEDIUM / LOW] [3-5 paragraph summary of the contract's overall posture. Who does it favor? What are the most significant issues? What is the recommended course of action? Is this contract within market norms for its type, or does it deviate significantly?] ### Risk Distribution | Rating | Count | |--------|-------| | CRITICAL | [N] | | HIGH | [N] | | MEDIUM | [N] | | LOW | [N] | | ACCEPTABLE | [N] | ### Top 5 Priority Issues 1. **[Issue name]** (Section [X]) -- [One-line description]. Rating: [RATING] 2. **[Issue name]** (Section [X]) -- [One-line description]. Rating: [RATING] 3. **[Issue name]** (Section [X]) -- [One-line description]. Rating: [RATING] 4. **[Issue name]** (Section [X]) -- [One-line description]. Rating: [RATING] 5. **[Issue name]** (Section [X]) -- [One-line description]. Rating: [RATING] --- ## Clause-by-Clause Analysis [For EVERY section of the contract, include an entry. Sections with no issues still get listed with an ACCEPTABLE rating and brief note.] ### Section [Number]: [Title] **Risk Rating: [RATING]** **Risk Categories Triggered:** [List applicable categories, or "None" if acceptable] #### Current Language > "[Exact quote from the contract]" #### Analysis [Detailed analysis of the clause. What does it mean in practice? What are the legal implications? How does it compare to market standard? Who benefits and who is at risk?] #### Issues Identified [Numbered list of specific problems, each tagged with its risk category] 1. **[Category]**: [Description of issue] 2. **[Category]**: [Description of issue] #### Redline CURRENT: > "[Original text]" TRACKED CHANGES: > "[-deleted text-] [+replacement text+]" CLEAN: > "[Final suggested text after all changes accepted]" #### Negotiation Talking Point [How to raise this issue with the counterparty. Frame as mutual benefit where possible. Include fallback positions and compromise language.] --- [Repeat for every section] --- ## Missing Provisions The following standard provisions are absent from this contract and should be added: ### [Missing Provision Name] **Risk Category:** Missing Standard Protections **Risk Rating:** [RATING] **Why This Matters:** [Explanation of why this provision is important and what risk its absence creates] **Suggested Language to Add:** > "[Complete draft language for the missing provision]" **Placement:** [Where in the contract this should be inserted] --- [Repeat for every missing provision] --- ## Defined Terms Audit The following terms are used in the contract but not defined, or are defined ambiguously: | Term | Where Used | Problem | Suggested Definition | |------|-----------|---------|---------------------| | [Term] | Section [X] | [Not defined / Ambiguous / Circular] | "[Suggested definition]" | --- ## Cross-Reference Issues [Identify any internal inconsistencies, conflicting provisions, or broken cross-references within the contract] | Section A | Section B | Conflict Description | Recommended Resolution | |-----------|-----------|---------------------|----------------------| | [Ref] | [Ref] | [Description] | [Fix] | --- ## Compliance Checklist Verify the contract addresses the following regulatory and compliance requirements (mark as Present, Absent, or Insufficient): | Requirement | Status | Section | Notes | |------------|--------|---------|-------| | Data protection / privacy | [Status] | [Ref] | [Notes] | | GDPR compliance (if EU data) | [Status] | [Ref] | [Notes] | | CCPA compliance (if CA data) | [Status] | [Ref] | [Notes] | | Anti-bribery / FCPA | [Status] | [Ref] | [Notes] | | Export controls | [Status] | [Ref] | [Notes] | | Accessibility requirements | [Status] | [Ref] | [Notes] | | Insurance requirements | [Status] | [Ref] | [Notes] | | Background check provisions | [Status] | [Ref] | [Notes] | | Subcontractor flow-down | [Status] | [Ref] | [Notes] | | Record retention | [Status] | [Ref] | [Notes] | --- ## Financial Impact Analysis | Clause | Best Case | Worst Case | Expected | Notes | |--------|-----------|------------|----------|-------| | Liability exposure | [Amount] | [Amount] | [Amount] | [Notes] | | Termination penalties | [Amount] | [Amount] | [Amount] | [Notes] | | Auto-renewal cost | [Amount] | [Amount] | [Amount] | [Notes] | | Indemnification exposure | [Amount] | [Amount] | [Amount] | [Notes] | | IP value at risk | [Qualitative] | [Qualitative] | [Qualitative] | [Notes] | --- ## Negotiation Strategy ### Tier 1: Must-Have Changes (Non-Negotiable) [List changes that should be treated as conditions of signing. These are CRITICAL-rated issues. For each, provide the specific ask and the walk-away position.] 1. **[Change]** - Ask: [What to request] - Justification: [Why it is reasonable] - Walk-away: [At what point this becomes a deal-breaker] ### Tier 2: Strong Requests (High Priority) [List changes that should be pushed hard in negotiation. These are HIGH-rated issues. For each, provide the ask, justification, and compromise position.] 1. **[Change]** - Ask: [What to request] - Justification: [Why it is reasonable] - Compromise: [Acceptable middle ground] ### Tier 3: Improvement Requests (Medium Priority) [List changes that improve the contract but can be traded away for concessions on higher-priority items. These are MEDIUM-rated issues.] 1. **[Change]** - Ask: [What to request] - Trade value: [What concession this could be exchanged for] ### Tier 4: Cleanup Items (Low Priority) [List minor clarifications and improvements. These are LOW-rated issues that can be raised as "housekeeping" items.] 1. **[Change]** -- [Brief description] --- ## Recommended Negotiation Sequence [Provide a recommended order for raising redline items with the counterparty. Group related issues together. Suggest which items to lead with and which to hold in reserve as trading chips.] 1. **Open with**: [Items to raise first -- typically mutual benefit items that build goodwill] 2. **Core asks**: [The critical and high-priority changes] 3. **Trading chips**: [Medium items to concede in exchange for core asks] 4. **Cleanup round**: [Low-priority items to sweep up at the end] --- ## Pre-Signature Checklist Before signing, confirm: - [ ] All CRITICAL issues have been resolved or accepted with eyes open - [ ] All HIGH issues have been negotiated or consciously accepted - [ ] Defined terms are clear and consistent - [ ] Cross-references are accurate - [ ] Exhibits, schedules, and attachments are complete and attached - [ ] Signature blocks are correct (proper entity names, authority) - [ ] Governing law and venue are acceptable - [ ] Insurance requirements can be met - [ ] Compliance obligations can be satisfied - [ ] Internal approvals have been obtained - [ ] Effective date and term are correct - [ ] Payment terms and amounts are verified - [ ] All negotiated changes are reflected in the final version - [ ] Legal counsel has reviewed the final version --- ## Appendix A: Full Redline Summary Table | # | Section | Issue | Category | Rating | Current | Suggested Change | |---|---------|-------|----------|--------|---------|-----------------| | 1 | [Ref] | [Brief] | [Cat] | [Rating] | [Key phrase] | [Key change] | | 2 | [Ref] | [Brief] | [Cat] | [Rating] | [Key phrase] | [Key change] | [Continue for all identified issues] --- ## Appendix B: Tracked Changes Quick Reference For easy copy-paste into negotiation markup: ### Change 1: [Section Ref] -- [Brief Title] DELETE: "[Text to remove]" INSERT: "[Text to add]" ### Change 2: [Section Ref] -- [Brief Title] DELETE: "[Text to remove]" INSERT: "[Text to add]" [Continue for all changes] ``` -
redline-format.md 1.8 KB
# Redline Entry Format and Tracked-Changes Conventions ## Per-Issue Redline Entry For EVERY issue identified, produce a redline entry in this exact format: ``` SECTION [number]: [Section Title] RISK CATEGORY: [One of the seven categories] RISK RATING: [CRITICAL / HIGH / MEDIUM / LOW] CURRENT LANGUAGE: > "[Exact quote of the problematic clause from the contract]" PROBLEM: [2-4 sentence explanation of why this language is problematic, what risk it creates, and who it disadvantages. Reference specific legal concepts or industry standards.] SUGGESTED REPLACEMENT: > "[-Deleted text shown with strikethrough markers-] [+Added text shown with insertion markers+]" CLEAN VERSION: > "[The final suggested language as it would read after accepting all changes]" NEGOTIATION TALKING POINT: [1-2 sentences framing why this change is reasonable and how to present it to the other party. Include leverage points and compromise positions.] ``` ## Tracked-Changes Formatting Rules Follow these conventions strictly: 1. **Deletions**: Wrap removed text in `[-` and `-]` markers - Example: `[-The Company shall have sole discretion-]` 2. **Insertions**: Wrap added text in `[+` and `+]` markers - Example: `[+Both parties shall mutually agree+]` 3. **Combined edits**: Show deletion immediately followed by insertion - Example: `[-sole discretion-] [+mutual written agreement+]` 4. **Preserve context**: Include 5-10 words of unchanged text before and after each edit so the reader can locate the change in the original document. 5. **One change at a time**: If a clause has multiple issues, show each edit separately and then show the fully revised clause at the end. 6. **Clean version**: Always provide a "clean" version showing how the clause reads after all changes are accepted. -
risk-categories.md 6 KB
# Risk Categories Evaluate every section against these seven categories during clause-by-clause analysis (Step 3). Use the exact tags below when categorizing issues. Tags: - `UNFAVORABLE TERMS` -- One-sided or disproportionate obligations - `MISSING PROTECTION` -- Standard safeguard not present - `AMBIGUOUS LANGUAGE` -- Vague, undefined, or inconsistent terms - `LIABILITY EXPOSURE` -- Uncapped or excessive liability risk - `IP RISK` -- Intellectual property assignment or licensing concerns - `TERMINATION TRAP` -- Problematic termination or exit provisions - `AUTO-RENEWAL GOTCHA` -- Renewal terms that lock in or escalate ## Category 1: Unfavorable Terms Look for: - One-sided obligations that benefit only the drafter - Disproportionate penalties or remedies - Unreasonable performance standards or SLAs with no reciprocal commitment - Payment terms that disadvantage the signer (Net 90+, pay-when-paid) - Unreasonable warranty disclaimers or limitations - Broad representations and warranties required of only one party - Fee escalation clauses with no cap or ceiling - Most-favored-nation clauses that restrict pricing flexibility - Exclusive dealing requirements with no reciprocal commitment - Minimum purchase or volume commitments with no flexibility ## Category 2: Missing Standard Protections Look for the absence of: - Liability caps (both aggregate and per-incident) - Mutual indemnification (one-sided indemnification only) - Force majeure clause - Data protection and privacy provisions - Insurance requirements - Warranty of authority / capacity to contract - Severability clause - Entire agreement / integration clause - Notice provisions with specific methods and addresses - Survival clause specifying which obligations continue post-termination - Anti-assignment protections (or one-sided assignment rights) - Governing law and venue selection - Dispute resolution escalation procedures - Confidentiality obligations (or mutual confidentiality) - Change order / amendment procedures requiring mutual written consent - Right to cure before termination for breach - Data return or destruction obligations upon termination - Audit rights - Compliance with laws provision - Counterparts clause - Waiver clause (no waiver by conduct) ## Category 3: Ambiguous Language Look for: - Undefined key terms used throughout the contract - Vague modifiers: "reasonable," "material," "substantial," "timely," "promptly" without defined timeframes - Circular definitions or self-referencing clauses - Conflicting provisions between different sections - "Including but not limited to" used to expand scope unpredictably - "Best efforts" vs. "commercially reasonable efforts" vs. "reasonable efforts" -- each carries different legal weight - "May" vs. "shall" vs. "will" inconsistency - References to external documents not attached or defined - Catch-all phrases like "and/or," "etc.," "among other things" - Pronouns with unclear antecedents in complex clauses - Time references without specifying business days vs. calendar days - "Discretion" or "sole discretion" granted to one party without standards ## Category 4: Liability Exposure Look for: - Unlimited liability (no aggregate cap) - Consequential damages not excluded or waived - Broad indemnification obligations (defend, indemnify, and hold harmless) - Indemnification for third-party claims without limitation - Liability for acts of subcontractors or agents without recourse - Joint and several liability provisions - Personal guarantees embedded in business contracts - No cap on indemnification obligations - Liquidated damages clauses that function as penalties - Representations and warranties that create strict liability - Insurance requirements without corresponding liability limits - "Gross negligence" and "willful misconduct" carve-outs that swallow the liability cap ## Category 5: IP Risks Look for: - Overly broad IP assignment (all work product, including pre-existing IP) - Work-for-hire provisions that capture background IP - No carve-out for pre-existing intellectual property - License grants that are irrevocable, perpetual, worldwide, and sublicensable - No restrictions on derivative works from your deliverables - Residual knowledge clauses that permit use of your proprietary methods - No IP indemnification from the other party - Moral rights waivers (relevant in some jurisdictions) - Assignment of inventions not related to the contract scope - No license-back for assigned IP needed to operate your business - Background IP contamination risk (no clean-room provisions) - Open source obligations that could infect proprietary work ## Category 6: Termination Traps Look for: - Termination for convenience by one party only - No right to cure before termination for cause - Unreasonably short cure periods (less than 15 days for non-monetary, less than 5 days for monetary) - Survival clauses that extend obligations indefinitely post-termination - No pro-rata refund upon early termination - Termination triggers that are vague or subjective ("dissatisfaction") - Post-termination non-compete or non-solicitation that is overly broad - Termination without notice provisions - Wind-down obligations that are undefined or one-sided - No transition assistance obligations - Retention of deliverables or data by the other party post-termination - Termination fees or penalties that exceed actual damages - Cross-default provisions linking unrelated agreements - Change of control termination rights for one party only ## Category 7: Auto-Renewal Gotchas Look for: - Auto-renewal with no opt-out notice period - Opt-out notice periods longer than 60 days before renewal date - Renewal at increased rates without cap or notice - Renewal term equal to original term (multi-year lock-in) - Price escalation upon renewal with no cap - Renewal terms that reset termination notice requirements - Auto-renewal buried in boilerplate rather than highlighted - No ability to modify terms upon renewal - Renewal that resets minimum commitments or volume requirements - Evergreen clauses with no termination mechanism
-
-
SKILL.md 4.1 KB
--- name: contract-redliner description: Reads a contract and generates redline suggestions with replacement language. Identifies unfavorable terms, missing protections, ambiguous language, liability exposure, IP risks, termination traps, and auto-renewal gotchas. Produces a contract-review.md with clause-by-clause analysis, risk ratings, tracked changes format, and negotiation talking points. Use when the user wants redline markup, contract markup, or suggested contract edits. tools: Read, Write, Glob, Grep, Bash model: inherit --- # Contract Redliner Read a contract and produce a `contract-review.md` with clause-by-clause analysis, risk ratings, replacement language in tracked-changes format, and negotiation talking points. Unlike contract-analyzer (which only flags issues), produce specific, drop-in replacement language for every problematic clause, ready for negotiation. ## Contents - `references/risk-categories.md` -- the seven risk categories, what to look for in each, and the risk-rating system. - `references/redline-format.md` -- per-issue redline entry format and tracked-changes conventions. - `references/output-template.md` -- the full `contract-review.md` structure to generate. - `references/contract-types.md` -- per-contract-type focus areas and worked examples. ## Workflow 1. **Ingest the contract.** Accept pasted text, a file path (`.txt`, `.md`, `.pdf`, `.docx`), or a URL. Load files with the Read tool; for PDFs use the pdf skill or Read PDF support. Parse the full text and identify all numbered sections, clauses, and subclauses. 2. **Identify type and parties.** Determine contract type, Party A (drafter/company), Party B (signer), governing law, effective date, and term. Apply the matching focus area from `references/contract-types.md`. 3. **Analyze every section.** Evaluate each section against the seven risk categories in `references/risk-categories.md`. Assign each section a rating (CRITICAL / HIGH / MEDIUM / LOW / ACCEPTABLE). Mark fair sections as ACCEPTABLE with a brief note -- do not skip them. 4. **Generate redlines.** For every issue, produce a redline entry per the format and tracked-changes conventions in `references/redline-format.md`. Provide complete, standalone replacement language plus a clean accepted version. 5. **Write `contract-review.md`.** Generate the file in the working directory (or the directory the user specifies) following `references/output-template.md` exactly and in order. ## Mandatory Rules - Open every output with this disclaimer verbatim: > LEGAL DISCLAIMER: This analysis is informational only and does not constitute legal advice. Contract interpretation is jurisdiction-specific and fact-dependent. Always consult a qualified attorney before signing or modifying any legal agreement. This tool is designed to surface potential issues and suggest alternative language for discussion purposes only. - Never provide incomplete replacement language; every redline includes a full, usable clause. - Never present analysis without quoting the specific contract language being discussed. - Never assume jurisdiction-specific enforceability; note when a provision's enforceability varies by jurisdiction. - Always produce `contract-review.md` as the primary deliverable. - Always use tracked-changes format (`[-deletion-]` / `[+insertion+]`) for every suggested change. - Always include negotiation talking points for every issue rated MEDIUM or above. - Always analyze from the signing party's perspective unless told otherwise. ## Quality Standards - **Be exhaustive.** Review every section, not just the obviously problematic ones. - **Be specific.** Quote exact language, reference exact section numbers, provide complete replacement text. - **Be practical.** Frame suggestions a reasonable counterparty would accept; extreme positions undermine credibility. - **Be balanced.** Note favorable provisions too -- this builds credibility for the items that need changing. - **Quantify where possible.** Estimate liability exposure and calculate penalties when the contract permits. - **Reference market standards.** When calling something non-standard, state what the market standard actually is.
Comments (0)
Sign in to join the conversation.
Reviews (0)
No reviews yet.
No comments yet.