#!/usr/bin/env python3 """Generated OfficeCLI script for payflow-pitch.pptx""" import json, subprocess, tempfile, os FILE = "payflow-pitch.pptx" def batch(commands): with tempfile.NamedTemporaryFile(mode="w", suffix=".json", delete=False) as f: json.dump(commands, f) f.flush() result = subprocess.run( ["officecli", "batch", FILE, "--input", f.name], capture_output=True, text=True ) os.unlink(f.name) if result.returncode != 0: print(result.stderr or result.stdout) raise RuntimeError(f"Batch failed: {result.returncode}") print(result.stdout, end="") subprocess.run(["officecli", "create", FILE], check=True) # Turn 1: pitch-slides batch(json.loads('[\n {\n "op": "add",\n "path": "/",\n "type": "slide",\n "props": {\n "layout": "blank",\n "background": "0A0F2E-0D1845-135"\n }\n },\n {\n "op": "add",\n "path": "/",\n "type": "slide",\n "props": {\n "layout": "blank",\n "background": "0A0F2E-0D1845-135"\n }\n },\n {\n "op": "add",\n "path": "/",\n "type": "slide",\n "props": {\n "layout": "blank",\n "background": "0A0F2E-0D1845-135"\n }\n },\n {\n "op": "add",\n "path": "/",\n "type": "slide",\n "props": {\n "layout": "blank",\n "background": "0A0F2E-0D1845-135"\n }\n },\n {\n "op": "add",\n "path": "/",\n "type": "slide",\n "props": {\n "layout": "blank",\n "background": "0A0F2E-0D1845-135"\n }\n },\n {\n "op": "add",\n "path": "/",\n "type": "slide",\n "props": {\n "layout": "blank",\n "background": "0A0F2E-0D1845-135"\n }\n },\n {\n "op": "add",\n "path": "/",\n "type": "slide",\n "props": {\n "layout": "blank",\n "background": "0A0F2E-0D1845-135"\n }\n }\n]')) # Turn 2: pitch-slide1-title batch(json.loads('[\n {\n "op": "add",\n "path": "/slide[1]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "0cm",\n "y": "0cm",\n "width": "33.87cm",\n "height": "0.6cm",\n "fill": "3B82F6",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[1]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "0cm",\n "y": "18.45cm",\n "width": "33.87cm",\n "height": "0.6cm",\n "fill": "3B82F6",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[1]",\n "type": "shape",\n "props": {\n "preset": "ellipse",\n "x": "-4cm",\n "y": "-4cm",\n "width": "20cm",\n "height": "20cm",\n "fill": "none",\n "gradient": "1E3A8A@0-0A0F2E@100",\n "opacity": "0.4",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[1]",\n "type": "shape",\n "props": {\n "preset": "ellipse",\n "x": "22cm",\n "y": "8cm",\n "width": "15cm",\n "height": "15cm",\n "fill": "none",\n "gradient": "1D4ED8@0-0A0F2E@100",\n "opacity": "0.3",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[1]",\n "type": "shape",\n "props": {\n "text": "PayFlow",\n "x": "3cm",\n "y": "3.5cm",\n "width": "28cm",\n "height": "3.5cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "60",\n "bold": "true",\n "align": "center",\n "font": "Segoe UI",\n "textGradient": "FFFFFF-3B82F6",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[1]",\n "type": "shape",\n "props": {\n "text": "The Future of B2B Payments",\n "x": "3cm",\n "y": "7cm",\n "width": "28cm",\n "height": "2cm",\n "fill": "none",\n "color": "93C5FD",\n "size": "28",\n "bold": "false",\n "align": "center",\n "font": "Segoe UI Light",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[1]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "11cm",\n "y": "9.5cm",\n "width": "12cm",\n "height": "0.1cm",\n "fill": "3B82F6",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[1]",\n "type": "shape",\n "props": {\n "text": "Fast. Secure. Scalable.",\n "x": "3cm",\n "y": "10cm",\n "width": "28cm",\n "height": "1.8cm",\n "fill": "none",\n "color": "60A5FA",\n "size": "22",\n "bold": "true",\n "align": "center",\n "font": "Segoe UI",\n "spacing": "4",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[1]",\n "type": "shape",\n "props": {\n "text": "Series B \\u00b7 $25M Raise \\u00b7 2024",\n "x": "3cm",\n "y": "15.5cm",\n "width": "28cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "475569",\n "size": "13",\n "align": "center",\n "font": "Segoe UI",\n "line": "none"\n }\n }\n]')) # Turn 3: pitch-slide2-problem batch(json.loads('[\n {\n "op": "add",\n "path": "/slide[2]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "0cm",\n "y": "0cm",\n "width": "33.87cm",\n "height": "0.6cm",\n "fill": "3B82F6",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[2]",\n "type": "shape",\n "props": {\n "text": "02",\n "x": "2cm",\n "y": "1.2cm",\n "width": "2cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "14",\n "bold": "true",\n "font": "Segoe UI",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[2]",\n "type": "shape",\n "props": {\n "text": "The Problem",\n "x": "2cm",\n "y": "2cm",\n "width": "22cm",\n "height": "2cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "40",\n "bold": "true",\n "font": "Segoe UI",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[2]",\n "type": "shape",\n "props": {\n "text": "B2B payments are broken \\u2014 slow, manual, and costly.",\n "x": "2cm",\n "y": "4cm",\n "width": "25cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "93C5FD",\n "size": "16",\n "font": "Segoe UI Light",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[2]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "2cm",\n "y": "5.5cm",\n "width": "9cm",\n "height": "9cm",\n "gradient": "1E3A8A-162C6A-135",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[2]",\n "type": "shape",\n "props": {\n "text": "73%",\n "x": "2.5cm",\n "y": "6.5cm",\n "width": "8cm",\n "height": "2.5cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "54",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[2]",\n "type": "shape",\n "props": {\n "text": "of B2B invoices are still\\npaid manually",\n "x": "2.5cm",\n "y": "9.2cm",\n "width": "8cm",\n "height": "2.5cm",\n "fill": "none",\n "color": "CBD5E1",\n "size": "14",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[2]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "12.5cm",\n "y": "5.5cm",\n "width": "9cm",\n "height": "9cm",\n "gradient": "1E3A8A-162C6A-135",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[2]",\n "type": "shape",\n "props": {\n "text": "47 Days",\n "x": "13cm",\n "y": "6.5cm",\n "width": "8cm",\n "height": "2.5cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "44",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[2]",\n "type": "shape",\n "props": {\n "text": "average Days Sales\\nOutstanding (DSO)",\n "x": "13cm",\n "y": "9.2cm",\n "width": "8cm",\n "height": "2.5cm",\n "fill": "none",\n "color": "CBD5E1",\n "size": "14",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[2]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "23cm",\n "y": "5.5cm",\n "width": "9cm",\n "height": "9cm",\n "gradient": "1E3A8A-162C6A-135",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[2]",\n "type": "shape",\n "props": {\n "text": "$2.1T",\n "x": "23.5cm",\n "y": "6.5cm",\n "width": "8cm",\n "height": "2.5cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "48",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[2]",\n "type": "shape",\n "props": {\n "text": "in delayed payments\\nannually",\n "x": "23.5cm",\n "y": "9.2cm",\n "width": "8cm",\n "height": "2.5cm",\n "fill": "none",\n "color": "CBD5E1",\n "size": "14",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n }\n]')) # Turn 4: pitch-slide3-solution batch(json.loads('[\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "0cm",\n "y": "0cm",\n "width": "33.87cm",\n "height": "0.6cm",\n "fill": "3B82F6",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "text": "03",\n "x": "2cm",\n "y": "1.2cm",\n "width": "2cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "14",\n "bold": "true",\n "font": "Segoe UI",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "text": "Our Solution",\n "x": "2cm",\n "y": "2cm",\n "width": "22cm",\n "height": "2cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "40",\n "bold": "true",\n "font": "Segoe UI",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "text": "PayFlow reinvents B2B payments \\u2014 intelligent, instant, integrated.",\n "x": "2cm",\n "y": "4cm",\n "width": "28cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "93C5FD",\n "size": "16",\n "font": "Segoe UI Light",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "preset": "roundRect",\n "x": "2cm",\n "y": "6cm",\n "width": "9.5cm",\n "height": "9cm",\n "gradient": "1E3A8A-0F2055-160",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "text": "\\u26a1",\n "x": "2.5cm",\n "y": "6.5cm",\n "width": "2cm",\n "height": "2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "30",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "text": "Real-Time Payments",\n "x": "2.5cm",\n "y": "8.7cm",\n "width": "8.5cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "18",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "text": "Instant settlement via RTP and FedNow rails. Zero float, zero friction.",\n "x": "2.5cm",\n "y": "10cm",\n "width": "8.5cm",\n "height": "3cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "13",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "preset": "roundRect",\n "x": "12.5cm",\n "y": "6cm",\n "width": "9.5cm",\n "height": "9cm",\n "gradient": "1E3A8A-0F2055-160",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "text": "\\ud83e\\udd16",\n "x": "13cm",\n "y": "6.5cm",\n "width": "2cm",\n "height": "2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "28",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "text": "AI Reconciliation",\n "x": "13cm",\n "y": "8.7cm",\n "width": "8.5cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "18",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "text": "ML-powered matching reduces reconciliation time by 94%. Auto-posts to GL.",\n "x": "13cm",\n "y": "10cm",\n "width": "8.5cm",\n "height": "3cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "13",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "preset": "roundRect",\n "x": "23cm",\n "y": "6cm",\n "width": "9cm",\n "height": "9cm",\n "gradient": "1E3A8A-0F2055-160",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "text": "\\ud83d\\udd17",\n "x": "23.5cm",\n "y": "6.5cm",\n "width": "2cm",\n "height": "2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "28",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "text": "1-Click ERP Integration",\n "x": "23.5cm",\n "y": "8.7cm",\n "width": "8cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "18",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[3]",\n "type": "shape",\n "props": {\n "text": "Native connectors for SAP, Oracle, NetSuite, and QuickBooks. Live in minutes.",\n "x": "23.5cm",\n "y": "10cm",\n "width": "8cm",\n "height": "3cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "13",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n }\n]')) # Turn 5: pitch-slide4-traction batch(json.loads('[\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "0cm",\n "y": "0cm",\n "width": "33.87cm",\n "height": "0.6cm",\n "fill": "3B82F6",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "text": "04",\n "x": "2cm",\n "y": "1.2cm",\n "width": "2cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "14",\n "bold": "true",\n "font": "Segoe UI",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "text": "Traction",\n "x": "2cm",\n "y": "2cm",\n "width": "22cm",\n "height": "2cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "40",\n "bold": "true",\n "font": "Segoe UI",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "text": "Strong, repeatable growth backed by enterprise love.",\n "x": "2cm",\n "y": "4cm",\n "width": "25cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "93C5FD",\n "size": "16",\n "font": "Segoe UI Light",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "2cm",\n "y": "5.8cm",\n "width": "14cm",\n "height": "5.5cm",\n "gradient": "1E3A8A-162C6A-135",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "text": "$4.2M ARR",\n "x": "2.5cm",\n "y": "6.3cm",\n "width": "13cm",\n "height": "2.2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "40",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "text": "Annual Recurring Revenue",\n "x": "2.5cm",\n "y": "8.6cm",\n "width": "13cm",\n "height": "1cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "13",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "17.5cm",\n "y": "5.8cm",\n "width": "14cm",\n "height": "5.5cm",\n "gradient": "1E3A8A-162C6A-135",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "text": "340% YoY",\n "x": "18cm",\n "y": "6.3cm",\n "width": "13cm",\n "height": "2.2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "40",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "text": "Year-over-Year Growth",\n "x": "18cm",\n "y": "8.6cm",\n "width": "13cm",\n "height": "1cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "13",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "2cm",\n "y": "12.5cm",\n "width": "14cm",\n "height": "5.5cm",\n "gradient": "1E3A8A-162C6A-135",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "text": "85",\n "x": "2.5cm",\n "y": "13cm",\n "width": "13cm",\n "height": "2.2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "40",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "text": "Enterprise Customers",\n "x": "2.5cm",\n "y": "15.3cm",\n "width": "13cm",\n "height": "1cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "13",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "17.5cm",\n "y": "12.5cm",\n "width": "14cm",\n "height": "5.5cm",\n "gradient": "1E3A8A-162C6A-135",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "text": "NPS 72",\n "x": "18cm",\n "y": "13cm",\n "width": "13cm",\n "height": "2.2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "40",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[4]",\n "type": "shape",\n "props": {\n "text": "Net Promoter Score",\n "x": "18cm",\n "y": "15.3cm",\n "width": "13cm",\n "height": "1cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "13",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n }\n]')) # Turn 6: pitch-slide5-market batch(json.loads('[\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "0cm",\n "y": "0cm",\n "width": "33.87cm",\n "height": "0.6cm",\n "fill": "3B82F6",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "shape",\n "props": {\n "text": "05",\n "x": "2cm",\n "y": "1.2cm",\n "width": "2cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "14",\n "bold": "true",\n "font": "Segoe UI",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "shape",\n "props": {\n "text": "Market Opportunity",\n "x": "2cm",\n "y": "2cm",\n "width": "22cm",\n "height": "2cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "40",\n "bold": "true",\n "font": "Segoe UI",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "shape",\n "props": {\n "text": "Massive and underpenetrated \\u2014 we\'re going after the right slice.",\n "x": "2cm",\n "y": "4cm",\n "width": "28cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "93C5FD",\n "size": "16",\n "font": "Segoe UI Light",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "chart",\n "props": {\n "chartType": "bar",\n "x": "2cm",\n "y": "5.5cm",\n "width": "20cm",\n "height": "12cm",\n "categories": "TAM (Global B2B Payments),SAM (Addressable),SOM (Target)",\n "series1": "Market Size ($T): 14.7, 0.42, 0.084",\n "colors": "1D4ED8,3B82F6,60A5FA",\n "chartFill": "0A0F2E",\n "plotFill": "0D1845",\n "legend": "none",\n "dataLabels": "true",\n "labelPos": "outside",\n "labelFont": "12:FFFFFF:true",\n "gridlines": "1E3A8A:0.5",\n "axisfont": "11:94A3B8:Segoe UI",\n "titlecolor": "FFFFFF",\n "titlesize": "14",\n "seriesoutline": "none",\n "gapwidth": "60"\n }\n },\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "23.5cm",\n "y": "5.5cm",\n "width": "9cm",\n "height": "3.5cm",\n "gradient": "1E3A8A-162C6A-135",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "shape",\n "props": {\n "text": "$14.7T",\n "x": "23.8cm",\n "y": "5.8cm",\n "width": "8.4cm",\n "height": "1.5cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "30",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "shape",\n "props": {\n "text": "Total Addressable Market",\n "x": "23.8cm",\n "y": "7.2cm",\n "width": "8.4cm",\n "height": "0.9cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "12",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "23.5cm",\n "y": "9.8cm",\n "width": "9cm",\n "height": "3.5cm",\n "gradient": "1E3A8A-162C6A-135",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "shape",\n "props": {\n "text": "$420B",\n "x": "23.8cm",\n "y": "10.1cm",\n "width": "8.4cm",\n "height": "1.5cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "30",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "shape",\n "props": {\n "text": "Serviceable Addressable Market",\n "x": "23.8cm",\n "y": "11.5cm",\n "width": "8.4cm",\n "height": "0.9cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "12",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "23.5cm",\n "y": "14.1cm",\n "width": "9cm",\n "height": "3.5cm",\n "gradient": "1E3A8A-162C6A-135",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "shape",\n "props": {\n "text": "$8.4B",\n "x": "23.8cm",\n "y": "14.4cm",\n "width": "8.4cm",\n "height": "1.5cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "30",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[5]",\n "type": "shape",\n "props": {\n "text": "Serviceable Obtainable Market",\n "x": "23.8cm",\n "y": "15.8cm",\n "width": "8.4cm",\n "height": "0.9cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "12",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n }\n]')) # Turn 7: pitch-slide6-team batch(json.loads('[\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "0cm",\n "y": "0cm",\n "width": "33.87cm",\n "height": "0.6cm",\n "fill": "3B82F6",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "06",\n "x": "2cm",\n "y": "1.2cm",\n "width": "2cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "14",\n "bold": "true",\n "font": "Segoe UI",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "World-Class Team",\n "x": "2cm",\n "y": "2cm",\n "width": "22cm",\n "height": "2cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "40",\n "bold": "true",\n "font": "Segoe UI",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "Built by operators who have done this at scale.",\n "x": "2cm",\n "y": "4cm",\n "width": "25cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "93C5FD",\n "size": "16",\n "font": "Segoe UI Light",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "preset": "roundRect",\n "x": "2cm",\n "y": "5.8cm",\n "width": "9.5cm",\n "height": "10cm",\n "gradient": "1E3A8A-0F2055-160",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "preset": "ellipse",\n "x": "5.25cm",\n "y": "6.3cm",\n "width": "3cm",\n "height": "3cm",\n "fill": "3B82F6",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "SC",\n "x": "5.25cm",\n "y": "6.3cm",\n "width": "3cm",\n "height": "3cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "22",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "valign": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "Sarah Chen",\n "x": "2.5cm",\n "y": "9.7cm",\n "width": "8.5cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "20",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "CEO & Co-Founder",\n "x": "2.5cm",\n "y": "11cm",\n "width": "8.5cm",\n "height": "0.9cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "13",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "ex-Stripe \\u00b7 10+ years in fintech\\nFormer Head of Payments",\n "x": "2.5cm",\n "y": "12cm",\n "width": "8.5cm",\n "height": "2cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "12",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "preset": "roundRect",\n "x": "12.5cm",\n "y": "5.8cm",\n "width": "9.5cm",\n "height": "10cm",\n "gradient": "1E3A8A-0F2055-160",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "preset": "ellipse",\n "x": "15.75cm",\n "y": "6.3cm",\n "width": "3cm",\n "height": "3cm",\n "fill": "1D4ED8",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "MW",\n "x": "15.75cm",\n "y": "6.3cm",\n "width": "3cm",\n "height": "3cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "22",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "valign": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "Marcus Webb",\n "x": "13cm",\n "y": "9.7cm",\n "width": "8.5cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "20",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "CTO & Co-Founder",\n "x": "13cm",\n "y": "11cm",\n "width": "8.5cm",\n "height": "0.9cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "13",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "ex-Plaid \\u00b7 Infrastructure architect\\nBuilt core data pipeline",\n "x": "13cm",\n "y": "12cm",\n "width": "8.5cm",\n "height": "2cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "12",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "preset": "roundRect",\n "x": "23cm",\n "y": "5.8cm",\n "width": "9cm",\n "height": "10cm",\n "gradient": "1E3A8A-0F2055-160",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "preset": "ellipse",\n "x": "26cm",\n "y": "6.3cm",\n "width": "3cm",\n "height": "3cm",\n "fill": "2563EB",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "JL",\n "x": "26cm",\n "y": "6.3cm",\n "width": "3cm",\n "height": "3cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "22",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "valign": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "Jordan Lee",\n "x": "23.5cm",\n "y": "9.7cm",\n "width": "8cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "20",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "VP Sales",\n "x": "23.5cm",\n "y": "11cm",\n "width": "8cm",\n "height": "0.9cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "13",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[6]",\n "type": "shape",\n "props": {\n "text": "ex-Brex \\u00b7 $50M+ ARR track record\\nEnterprise GTM specialist",\n "x": "23.5cm",\n "y": "12cm",\n "width": "8cm",\n "height": "2cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "12",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n }\n]')) # Turn 8: pitch-slide7-ask batch(json.loads('[\n {\n "op": "add",\n "path": "/slide[7]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "0cm",\n "y": "0cm",\n "width": "33.87cm",\n "height": "0.6cm",\n "fill": "3B82F6",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[7]",\n "type": "shape",\n "props": {\n "text": "07",\n "x": "2cm",\n "y": "1.2cm",\n "width": "2cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "14",\n "bold": "true",\n "font": "Segoe UI",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[7]",\n "type": "shape",\n "props": {\n "text": "The Ask",\n "x": "2cm",\n "y": "2cm",\n "width": "22cm",\n "height": "2cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "40",\n "bold": "true",\n "font": "Segoe UI",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[7]",\n "type": "shape",\n "props": {\n "text": "Join us in building the payments infrastructure for the next decade.",\n "x": "2cm",\n "y": "4cm",\n "width": "28cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "93C5FD",\n "size": "16",\n "font": "Segoe UI Light",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[7]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "2cm",\n "y": "5.8cm",\n "width": "14cm",\n "height": "5.5cm",\n "gradient": "1E3A8A-0F2055-160",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[7]",\n "type": "shape",\n "props": {\n "text": "Raising $25M",\n "x": "2.5cm",\n "y": "6.3cm",\n "width": "13cm",\n "height": "2cm",\n "fill": "none",\n "color": "3B82F6",\n "size": "36",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[7]",\n "type": "shape",\n "props": {\n "text": "Series B \\u00b7 $180M Valuation",\n "x": "2.5cm",\n "y": "8.5cm",\n "width": "13cm",\n "height": "1.2cm",\n "fill": "none",\n "color": "94A3B8",\n "size": "14",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[7]",\n "type": "shape",\n "props": {\n "text": "Use of Funds",\n "x": "2cm",\n "y": "11.4cm",\n "width": "14cm",\n "height": "0.8cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "14",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[7]",\n "type": "chart",\n "props": {\n "chartType": "bar",\n "x": "2cm",\n "y": "12cm",\n "width": "14cm",\n "height": "6cm",\n "categories": "Engineering,Sales & GTM,Marketing,Operations",\n "series1": "Use of Funds (%): 40, 30, 20, 10",\n "colors": "3B82F6,1D4ED8,60A5FA,93C5FD",\n "chartFill": "0A0F2E",\n "plotFill": "0D1845",\n "legend": "none",\n "dataLabels": "true",\n "labelPos": "outside",\n "labelFont": "11:FFFFFF:true",\n "gridlines": "none",\n "axisfont": "11:94A3B8:Segoe UI",\n "seriesoutline": "none",\n "gapwidth": "50"\n }\n },\n {\n "op": "add",\n "path": "/slide[7]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "17.5cm",\n "y": "5.8cm",\n "width": "14.5cm",\n "height": "12.5cm",\n "gradient": "1E3A8A-0F2055-160",\n "line": "3B82F6",\n "lineWidth": "1.5"\n }\n },\n {\n "op": "add",\n "path": "/slide[7]",\n "type": "shape",\n "props": {\n "text": "Investment Highlights",\n "x": "18cm",\n "y": "6.2cm",\n "width": "13.5cm",\n "height": "1cm",\n "fill": "none",\n "color": "FFFFFF",\n "size": "16",\n "bold": "true",\n "font": "Segoe UI",\n "align": "center",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[7]",\n "type": "shape",\n "props": {\n "preset": "rect",\n "x": "18cm",\n "y": "7.4cm",\n "width": "13cm",\n "height": "0.05cm",\n "fill": "3B82F6",\n "line": "none"\n }\n },\n {\n "op": "add",\n "path": "/slide[7]",\n "type": "shape",\n "props": {\n "text": "\\u25b6 $4.2M ARR growing 340% YoY\\n\\u25b6 85 enterprise logos signed\\n\\u25b6 NPS of 72 \\u2014 best-in-class retention\\n\\u25b6 Defensible IP: 3 patents filed\\n\\u25b6 Clear path to $50M ARR in 24 months\\n\\u25b6 Led by operators from Stripe, Plaid, Brex",\n "x": "18cm",\n "y": "7.8cm",\n "width": "13cm",\n "height": "8.5cm",\n "fill": "none",\n "color": "CBD5E1",\n "size": "14",\n "font": "Segoe UI",\n "lineSpacing": "22",\n "line": "none"\n }\n }\n]')) subprocess.run(["officecli", "validate", FILE], check=True) print(f"\nDone: {FILE}")