1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7085],{75063:function(t,e,l){(window.__NEXT_P=window.__NEXT_P||[]).push(["/softball-plays/print",function(){return l(56948)}])},67516:function(t,e,l){"use strict";l.d(e,{Z:function(){return s}});var i=l(67294),n=l(28964),a=l(44085);function s(){let{shouldBlockAnalytics:t,isLoading:e}=(0,a.U)();(0,i.useEffect)(()=>{if(e)return;let l=async()=>{try{await (0,n.B)(t)}catch(t){console.error("Failed to load analytics:",t)}};if("complete"===document.readyState){l();return}return window.addEventListener("load",l),()=>window.removeEventListener("load",l)},[t,e])}},24356:function(t,e,l){"use strict";l.d(e,{Z:function(){return c}});var i=l(85893),n=l(67294),a=l(92716),s=l(8919),r=l(48999),o=l.n(r);function c(t){let{play:e,progress:l=0,position:r="all",routes:c=!0,playerRoutes:d=!0}=t,f=(0,n.useId)().replace(/:/g,""),_=(0,s.RA)(e,l),h=e.phases[Math.floor(l)],p=[e.phases[0].positions.ball,e.hit,e.phases[2].positions.ball,...e.phases[3].via||[],e.phases[3].positions.ball],u=(0,s.Aq)(p),b=e.roles[r],m=(null==b?void 0:b.action.startsWith("backup-"))?a.gh[b.action.slice(7)]:null;return(0,i.jsxs)("svg",{className:o().field,viewBox:"0 0 900 900",role:"img","aria-labelledby":"".concat(f,"-title ").concat(f,"-desc"),children:[(0,i.jsx)("title",{id:"".concat(f,"-title"),children:"".concat(e.title,": ").concat(h.title)}),(0,i.jsxs)("desc",{id:"".concat(f,"-desc"),children:[h.description," ","all"!==r?"".concat(r,": ").concat(e.roles[r].instruction):"All nine defensive positions are shown."," Yellow shows the ball; coral squares show runners."]}),(0,i.jsx)("image",{href:"/images/playmaker/softball-field.webp",width:"900",height:"900"}),c&&l>0&&u&&(0,i.jsxs)("g",{fill:"none",stroke:"#ffdc58",strokeWidth:"3",opacity:".8",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("polyline",{points:u.points,strokeDasharray:"9 8"}),(0,i.jsx)("path",{d:u.arrow})]}),c&&l>0&&m&&(0,i.jsx)("path",{"data-backup-alignment":r,d:"M".concat(m.join(",")," L").concat(b.target.join(",")),fill:"none",stroke:"#b1dcff",strokeWidth:"3",strokeDasharray:"5 7",children:(0,i.jsx)("title",{children:"Overthrow coverage: beyond the receiver on the incoming throw line"})}),c&&d&&a.m7.filter(t=>"all"===r||t.id===r).map(t=>{let l=(0,s.Aq)(e.phases.map(e=>e.positions[t.id]));return l&&(0,i.jsxs)("g",{"data-position-route":t.id,fill:"none",stroke:"#b1dcff",strokeWidth:r===t.id?4:2,opacity:r===t.id?1:.45,strokeLinecap:"round",strokeLinejoin:"round",children:[(0,i.jsx)("polyline",{points:l.points}),(0,i.jsx)("path",{d:l.arrow})]},t.id)}),Object.entries(_).filter(t=>{let[e]=t;return"batter"===e||e.startsWith("runner")}).map(t=>{let[e,l]=t;return(0,i.jsxs)("g",{transform:"translate(".concat(l[0]+34," ").concat(l[1]+28,")"),children:[(0,i.jsx)("rect",{x:"-19",y:"-19",width:"38",height:"38",rx:"7",fill:"#f26b77",stroke:"#fff",strokeWidth:"3"}),(0,i.jsx)("text",{textAnchor:"middle",dominantBaseline:"central",fill:"#391221",fontSize:"20",fontWeight:"800",children:"batter"===e?"B":"R"})]},e)}),a.m7.map(t=>(0,i.jsxs)("g",{transform:"translate(".concat(_[t.id].join(" "),")"),opacity:"all"===r||r===t.id?1:.55,children:[r===t.id&&(0,i.jsx)("circle",{r:"35",fill:"#56c7b8",opacity:".4"}),(0,i.jsx)("circle",{r:"25",fill:r===t.id?"#b1dcff":"#fff",stroke:"#293440",strokeWidth:"3"}),(0,i.jsx)("text",{textAnchor:"middle",dominantBaseline:"central",fill:"#22323d",fontSize:"22",fontWeight:"800",children:t.id})]},t.id)),(0,i.jsxs)("g",{transform:"translate(".concat(_.ball[0]+14," ").concat(_.ball[1]-27,")"),children:[(0,i.jsx)("circle",{r:"13",fill:"#ffdc58",stroke:"#382a04",strokeWidth:"2"}),(0,i.jsx)("path",{d:"M-8,-9 Q0,0 -8,9 M8,-9 Q0,0 8,9",stroke:"#ab403e",strokeWidth:"1.5",fill:"none"})]})]})}},52329:function(t,e,l){"use strict";l.d(e,{Z:function(){return d}});var i=l(85893),n=l(41664),a=l.n(n),s=l(11163),r=l(67516),o=l(48999),c=l.n(o);function d(t){let{children:e,tool:l=!1}=t;(0,r.Z)();let{pathname:n}=(0,s.useRouter)();return(0,i.jsxs)("div",{className:c().page,children:[(0,i.jsx)("a",{className:c().skipLink,href:"#play-content",children:"Skip to content"}),(0,i.jsxs)("header",{className:c().header,children:[(0,i.jsxs)(a(),{href:"/softball-playmaker",className:c().brand,children:[(0,i.jsx)("img",{src:"/images/logo-white.png",alt:"Bravara",width:"124",height:"27"}),(0,i.jsx)("span",{children:"Softball Playmaker"})]}),(0,i.jsxs)("nav",{"aria-label":"Softball tools",children:[(0,i.jsx)(a(),{href:"/softball-plays","aria-current":"/softball-plays"===n?"page":void 0,children:"Play library"}),(0,i.jsx)(a(),{href:"/tools/softball-playmaker","aria-current":l?"page":void 0,children:"Playmaker"}),(0,i.jsx)(a(),{href:"/softball-plays/print","aria-current":"/softball-plays/print"===n?"page":void 0,children:"Print plays"})]})]}),(0,i.jsx)("main",{id:"play-content",children:e}),(0,i.jsxs)("footer",{className:c().footer,children:[(0,i.jsx)("span",{children:"Nine-player fastpitch softball"}),(0,i.jsxs)("nav",{"aria-label":"Bravara",className:c().footerLinks,children:[(0,i.jsx)(a(),{href:"/softball-coaching-tools",children:"Softball coaching tools"}),(0,i.jsx)(a(),{href:"/free-tools",children:"More free tools"}),(0,i.jsx)(a(),{href:"/",children:"Bravara home"})]})]})]})}},20475:function(t,e,l){"use strict";l.d(e,{Z:function(){return c}});var i=l(85893),n=l(92716),a=l(24356),s=l(8919),r=l(48999),o=l.n(r);function c(t){let{play:e,number:l}=t;return(0,i.jsxs)("article",{className:o().printSheet,children:[(0,i.jsxs)("div",{className:o().printMasthead,children:["Softball Playmaker ",(0,i.jsxs)("span",{children:["Nine-player fastpitch",l?" / Play ".concat(l):""]})]}),(0,i.jsx)("h2",{className:o().printTitle,children:e.title}),(0,i.jsx)("p",{children:e.objective}),(0,i.jsxs)("div",{className:o().printColumns,children:[(0,i.jsxs)("div",{children:[(0,i.jsx)(a.Z,{play:e,progress:3,routes:!0,playerRoutes:!1}),(0,i.jsxs)("p",{className:o().printCaption,children:[(0,s.Sg)(e),". ",e.outs," out. Positions shown at the finish. Yellow shows the ball. Coral squares show runners."]}),(0,i.jsx)("h2",{children:"How it works"}),(0,i.jsx)("ol",{children:e.phases.map(t=>(0,i.jsxs)("li",{children:[(0,i.jsxs)("strong",{children:[t.title,"."]})," ",t.description]},t.id))})]}),(0,i.jsxs)("div",{children:[(0,i.jsx)("h2",{children:"Every position has a job"}),n.m7.map(t=>(0,i.jsxs)("div",{className:o().printRole,children:[(0,i.jsxs)("strong",{children:[t.id," \xb7 ",t.name]}),(0,i.jsx)("p",{children:e.roles[t.id].instruction})]},t.id))]})]}),(0,i.jsx)("p",{className:o().printNote,children:"Bravara standard defense. Adapt to your coachâs coverage calls. Diagrams illustrate responsibilities and are not to scale."}),(0,i.jsx)("p",{className:o().printUrl,children:(0,i.jsxs)("a",{href:"https://bravara.com/softball-plays/".concat(e.slug),style:{color:"inherit",textDecoration:"none"},children:["bravara.com/softball-plays/",e.slug]})})]})}},8919:function(t,e,l){"use strict";function i(t){let e=t.filter((e,l)=>0===l||e.some((e,i)=>e!==t[l-1][i]));if(e.length<2)return null;let l=e[e.length-1],i=e[e.length-2],n=Math.hypot(l[0]-i[0],l[1]-i[1]),a=(l[0]-i[0])/n,s=(l[1]-i[1])/n,r=Math.min(18,.6*n);return{points:e.map(t=>t.join(",")).join(" "),arrow:"M".concat(l[0]-r*a-.55*r*s,",").concat(l[1]-r*s+.55*r*a," L").concat(l.join(",")," L").concat(l[0]-r*a+.55*r*s,",").concat(l[1]-r*s-.55*r*a)}}function n(t,e){let l=Math.max(0,Math.min(t.phases.length-1,e)),i=Math.floor(l),n=t.phases[i],a=t.phases[Math.min(i+1,t.phases.length-1)],s="extra-base"===t.category&&0===i,r=t=>Math.max(0,Math.min(1,t));return Object.fromEntries(Object.entries(n.positions).map(e=>{var n,o;let[c,d]=e,f="ball"===c?a.via||[]:(null===(n=a.runnerVia)||void 0===n?void 0:n[c])||[],_=s&&"ball"===c?.97*(1-(1-r(l/.66))**1.6)+.03*r((l-.66)/.16):s&&(null===(o=t.roles[c])||void 0===o?void 0:o.action)==="field-ball"?r((l-.1)/.86):l-i;return[c,function(t,e){let l=t.slice(1).map((e,l)=>Math.hypot(e[0]-t[l][0],e[1]-t[l][1])),i=l.reduce((t,e)=>t+e,0),n=Math.max(0,Math.min(1,e))*i;if(!i)return t[t.length-1];for(let e=0;e<l.length;e+=1){if(n<=l[e]||e===l.length-1){let i=l[e]?n/l[e]:1;return t[e].map((l,n)=>l+(t[e+1][n]-l)*i)}n-=l[e]}return t[t.length-1]}([d,...f,a.positions[c]],_)]}))}function a(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return{tokens:Object.entries(t.phases[e].positions).map(t=>{let[e,[l,i]]=t;return{id:"ball"===e||"batter"===e?e:e.startsWith("runner")?"runner-".concat(e.slice(6)):"defender-".concat(e.toLowerCase()),kind:"ball"===e||"batter"===e?e:e.startsWith("runner")?"runner":"defender",label:e.startsWith("runner")?"R":"batter"===e?"B":e,x:l,y:i}}),drawings:[]}}function s(t){return t.runners.length?"Runner".concat(t.runners.length>
11?"s":""," on ").concat(t.runners.join(" and ")):"Bases empty"}l.d(e,{Aq:function(){return i},RA:function(){return n},Sg:function(){return s},Vc:function(){return a}})},56948:function(t,e,l){"use strict";l.r(e),l.d(e,{default:function(){return u}});var i=l(85893),n=l(67294),a=l(41664),s=l.n(a),r=l(75119),o=l(52329),c=l(20475),d=l(92716),f=l(61153),_=l(48999),h=l.n(_),p=l(95127);function u(){let[t,e]=(0,n.useState)("all"),l=p.v.filter(e=>"all"===t||e.category===t);return(0,i.jsxs)(o.Z,{children:[(0,i.jsx)(r.Z,{headTitle:"Print Softball Plays | Free Fastpitch Playbook",metaDescription:"Print the fastpitch softball playbook with field diagrams and responsibilities for all nine players, or save it as a PDF.",canonicalUrl:(0,f.GR)("/softball-plays/print"),robots:"noindex,follow"}),(0,i.jsxs)("div",{className:h().container,children:[(0,i.jsxs)("div",{className:h().noPrint,children:[(0,i.jsxs)("div",{className:h().intro,children:[(0,i.jsx)("h1",{children:"Take the plays to practice."}),(0,i.jsx)("p",{children:"One play per sheet, with every defenderâs job. Choose a group, then print or choose âSave as PDFâ in your browserâs print window."})]}),(0,i.jsxs)("div",{className:h().playSelect,children:[(0,i.jsx)("label",{htmlFor:"print-category",children:"Plays to print"}),(0,i.jsxs)("select",{id:"print-category",value:t,onChange:t=>e(t.target.value),children:[(0,i.jsxs)("option",{value:"all",children:["All ",p.v.length," plays"]}),d.bd.map(t=>(0,i.jsx)("option",{value:t.id,children:t.name},t.id))]})]}),(0,i.jsxs)("div",{className:h().actions,children:[(0,i.jsxs)("button",{type:"button",className:h().primaryButton,onClick:()=>window.print(),children:["Print ",l.length," plays"]}),(0,i.jsx)(s(),{href:"/softball-plays",children:"Back to the library"})]})]}),l.map((t,e)=>(0,i.jsx)(c.Z,{play:t,number:e+1},t.id))]})]})}},28964:function(t,e,l){"use strict";l.d(e,{B:function(){return n},L:function(){return s}});let i=!1;async function n(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(i||t)return;i=!0;let e="GTM-PH5PZQH8",l=document.createElement("script");l.innerHTML="\n (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':\n new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],\n j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;
1j.src=\n 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);\n })(window,document,'script','dataLayer','".concat(e,"');\n "),document.head.appendChild(l);let n=document.createElement("noscript");n.innerHTML='<iframe src="https://www.googletagmanager.com/ns.html?id='.concat(e,'" height="0" width="0" style="display:none;visibility:hidden"></iframe>'),document.body.appendChild(n)}let a=["play","action","format","kind","level","muted","grade","score","schedule_grader_action","percent","seconds_watched","furthest_seconds","percent_watched","duration","end_reason"];function s(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=String(t).trim().toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"").slice(0,40),i=Object.fromEntries(a.map(t=>[t,void 0]));window.dataLayer=window.dataLayer||[],window.dataLayer.push({...i,...e,event:"ga4_event",ga4_event_name:l})}},48999:function(t){t.exports={page:"softball-iq_page__b0nFr",header:"softball-iq_header__lRM0_",brand:"softball-iq_brand__4PCfN",footer:"softball-iq_footer__nZKkr",footerLinks:"softball-iq_footerLinks__wmMd0",skipLink:"softball-iq_skipLink__1UgYW",srOnly:"softball-iq_srOnly__pbRIK",container:"softball-iq_container__oeTG8",intro:"softball-iq_intro__dQ1ZA",crumb:"softball-iq_crumb__G8X_O",actions:"softball-iq_actions__Iehtu",primaryButton:"softball-iq_primaryButton__xkdgF",secondaryButton:"softball-iq_secondaryButton__WCDrR",viewer:"softball-iq_viewer__t1Pqe",fieldSide:"softball-iq_fieldSide__RG8HC",situation:"softball-iq_situation__9EIo2",field:"softball-iq_field__ZgPSO",legend:"softball-iq_legend__DYTKS",defenderDot:"softball-iq_defenderDot__04eTn",runnerDot:"softball-iq_runnerDot__lYbY9",ballDot:"softball-iq_ballDot__fn_ba",transport:"softball-iq_transport__oamZB",playButton:"softball-iq_playButton__nLylh",scrubber:"softball-iq_scrubber__2iKAl",quietDark:"softball-iq_quietDark__Xkpt8",lessonSide:"softball-iq_lessonSide__sTrTt",stepHeading:"softball-iq_stepHeading__WH_8r",phaseCopy:"softball-iq_phaseCopy__MLYsh",stepButtons:"softball-iq_stepButtons__yXEg9",followHeading:"softball-iq_followHeading__ufvJv",positions:"softball-iq_positions__80PXE",positionCopy:"softball-iq_positionCopy__aL_TO",muted:"softball-iq_muted__HyRIV",systemNote:"softball-iq_systemNote___xO8A",filterBar:"softball-iq_filterBar__AHUyP",filterTabs:"softball-iq_filterTabs__IbkwZ",search:"softball-iq_search__AxwSe",librarySection:"softball-iq_librarySection__hkTr1",playGrid:"softball-iq_playGrid__aQNOU",playLink:"softball-iq_playLink__AqG8d",empty:"softball-iq_empty__Mhau9",guideGrid:"softball-iq_guideGrid__TDxNi",guideCopy:"softball-iq_guideCopy__fywJB",responsibilities:"softball-iq_responsibilities__1Lzrw",rolesTable:"softball-iq_rolesTable__63ClR",withAd:"softball-iq_withAd__1g9jc",guideHead:"softball-iq_guideHead__eiKYA",guideBody:"softball-iq_guideBody__3SSrr",adSlot:"softball-iq_adSlot__VpIaR",libraryHero:"softball-iq_libraryHero__PGSiX",related:"softball-iq_related___Gv1D",toolIntro:"softball-iq_toolIntro___lp7a",playSelect:"softball-iq_playSelect__dvv9I",playNavigation:"softball-iq_playNavigation__403vd",drawBar:"softball-iq_drawBar__4l_82",printOnly:"softball-iq_printOnly__2WW21",printSheet:"softball-iq_printSheet__wck8O",printMasthead:"softball-iq_printMasthead__BVbJ9",printTitle:"softball-iq_printTitle__jttLR",printColumns:"softball-iq_printColumns__4cRLq",printCaption:"softball-iq_printCaption__J3ENt",printRole:"softball-iq_printRole__hchxG",printNote:"softball-iq_printNote__pSsFf",printUrl:"softball-iq_printUrl__dMTL0",testEntry:"softball-iq_testEntry__fXtW_",appEntryBox:"softball-iq_appEntryBox__FgTH9",noPrint:"softball-iq_noPrint__VcXTA"}},11163:function(t,e,l){t.exports=l(96885)}},function(t){t.O(0,[3996,5119,5127,2354,9774,2888,179],function(){return t(t.s=75063)}),_N_E=t.O()}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.