<?xml version="1.0"?>
<informationTable xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.sec.gov/edgar/document/thirteenf/informationtable">
  <infoTable>
    <nameOfIssuer>ABBVIE INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>00287Y109</cusip>
    <value>549922</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2102</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1881</Sole>
      <Shared>0</Shared>
      <None>221</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ADOBE INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>00724F101</cusip>
    <value>324159</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1351</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1351</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ALLY FINL INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>02005N100</cusip>
    <value>543517</value>
    <shrsOrPrnAmt>
      <sshPrnamt>14448</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>11705</Sole>
      <Shared>0</Shared>
      <None>2743</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ALPHABET INC</nameOfIssuer>
    <titleOfClass>CAP STK CL C</titleOfClass>
    <cusip>02079K107</cusip>
    <value>9616756</value>
    <shrsOrPrnAmt>
      <sshPrnamt>28223</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>11720</Sole>
      <Shared>0</Shared>
      <None>16503</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ALPHABET INC</nameOfIssuer>
    <titleOfClass>CAP STK CL A</titleOfClass>
    <cusip>02079K305</cusip>
    <value>1033850</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3005</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2750</Sole>
      <Shared>0</Shared>
      <None>255</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>AMAZON COM INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>023135106</cusip>
    <value>3428055</value>
    <shrsOrPrnAmt>
      <sshPrnamt>13759</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>9282</Sole>
      <Shared>0</Shared>
      <None>4477</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>AMERICAN TOWER CORP</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>03027X100</cusip>
    <value>873450</value>
    <shrsOrPrnAmt>
      <sshPrnamt>5336</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1236</Sole>
      <Shared>0</Shared>
      <None>4100</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>APPLE INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>037833100</cusip>
    <value>16436116</value>
    <shrsOrPrnAmt>
      <sshPrnamt>49355</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>17617</Sole>
      <Shared>0</Shared>
      <None>31738</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>BANK OF AMER CORP</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>060505104</cusip>
    <value>318287</value>
    <shrsOrPrnAmt>
      <sshPrnamt>5848</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>4863</Sole>
      <Shared>0</Shared>
      <None>985</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>BERKSHIRE HATHAWAY INC DEL</nameOfIssuer>
    <titleOfClass>CL B NEW</titleOfClass>
    <cusip>084670702</cusip>
    <value>2244261</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4507</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2144</Sole>
      <Shared>0</Shared>
      <None>2363</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>BIOGEN INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>09062X103</cusip>
    <value>408165</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1807</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>407</Sole>
      <Shared>0</Shared>
      <None>1400</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>BLACKROCK ETF TRUST</nameOfIssuer>
    <titleOfClass>ISHARES US EQUIT</titleOfClass>
    <cusip>09290C103</cusip>
    <value>243657</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3518</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>966</Sole>
      <Shared>0</Shared>
      <None>2552</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>BLACKROCK INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>09290D101</cusip>
    <value>1825550</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1725</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>91</Sole>
      <Shared>0</Shared>
      <None>1634</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>BROADCOM INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>11135F101</cusip>
    <value>1513320</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4309</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>3898</Sole>
      <Shared>0</Shared>
      <None>411</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>CACI INTL INC</nameOfIssuer>
    <titleOfClass>CL A</titleOfClass>
    <cusip>127190304</cusip>
    <value>1254157</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2059</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1731</Sole>
      <Shared>0</Shared>
      <None>328</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>CARDINAL HEALTH INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>14149Y108</cusip>
    <value>1644108</value>
    <shrsOrPrnAmt>
      <sshPrnamt>7389</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>5893</Sole>
      <Shared>0</Shared>
      <None>1496</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>CHEFS WHSE INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>163086101</cusip>
    <value>504765</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4500</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2802</Sole>
      <Shared>0</Shared>
      <None>1698</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>CISCO SYS INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>17275R102</cusip>
    <value>290063</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2695</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2582</Sole>
      <Shared>0</Shared>
      <None>113</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>COCA COLA CO</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>191216100</cusip>
    <value>372664</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4329</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>3715</Sole>
      <Shared>0</Shared>
      <None>614</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>CONSOLIDATED EDISON INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>209115104</cusip>
    <value>204420</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2000</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>0</Sole>
      <Shared>0</Shared>
      <None>2000</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>COOPER COS INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>216648501</cusip>
    <value>593565</value>
    <shrsOrPrnAmt>
      <sshPrnamt>10500</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2700</Sole>
      <Shared>0</Shared>
      <None>7800</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>COSTCO WHOLESALE CORPORATION</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>22160K105</cusip>
    <value>3594945</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3949</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1428</Sole>
      <Shared>0</Shared>
      <None>2521</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>COVISTA INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>00737L103</cusip>
    <value>1049331</value>
    <shrsOrPrnAmt>
      <sshPrnamt>8587</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>7019</Sole>
      <Shared>0</Shared>
      <None>1568</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>CURTISS WRIGHT CORP</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>231561101</cusip>
    <value>780386</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1435</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1145</Sole>
      <Shared>0</Shared>
      <None>290</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>EATON CORP PLC</nameOfIssuer>
    <titleOfClass>SHS</titleOfClass>
    <cusip>G29183103</cusip>
    <value>4763335</value>
    <shrsOrPrnAmt>
      <sshPrnamt>11085</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2775</Sole>
      <Shared>0</Shared>
      <None>8310</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ELI LILLY &amp; CO</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>532457108</cusip>
    <value>1638454</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1416</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>926</Sole>
      <Shared>0</Shared>
      <None>490</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>EVERPURE INC</nameOfIssuer>
    <titleOfClass>CL A</titleOfClass>
    <cusip>74624M102</cusip>
    <value>735638</value>
    <shrsOrPrnAmt>
      <sshPrnamt>5625</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>5475</Sole>
      <Shared>0</Shared>
      <None>150</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>EXXONMOBIL HOLDINGS CORP</nameOfIssuer>
    <titleOfClass>COM SHS</titleOfClass>
    <cusip>30233Q108</cusip>
    <value>609499</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3745</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>3745</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>FEDERAL SIGNAL CORP</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>313855108</cusip>
    <value>2279306</value>
    <shrsOrPrnAmt>
      <sshPrnamt>20573</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>9443</Sole>
      <Shared>0</Shared>
      <None>11130</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>FIDELITY COVINGTON TRUST</nameOfIssuer>
    <titleOfClass>MSCI ENERGY IDX</titleOfClass>
    <cusip>316092402</cusip>
    <value>2990472</value>
    <shrsOrPrnAmt>
      <sshPrnamt>88215</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>35027</Sole>
      <Shared>0</Shared>
      <None>53188</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>FIDELITY COVINGTON TRUST</nameOfIssuer>
    <titleOfClass>MSCI INDL INDX</titleOfClass>
    <cusip>316092709</cusip>
    <value>1490921</value>
    <shrsOrPrnAmt>
      <sshPrnamt>16831</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>13604</Sole>
      <Shared>0</Shared>
      <None>3227</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>FIDELITY COVINGTON TRUST</nameOfIssuer>
    <titleOfClass>MSCI MATLS INDEX</titleOfClass>
    <cusip>316092881</cusip>
    <value>1001897</value>
    <shrsOrPrnAmt>
      <sshPrnamt>17974</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>15267</Sole>
      <Shared>0</Shared>
      <None>2707</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>FIRST TR EXCHNG TRADED FD VI</nameOfIssuer>
    <titleOfClass>FT LADD BUFF ETF</titleOfClass>
    <cusip>33740F755</cusip>
    <value>3089139</value>
    <shrsOrPrnAmt>
      <sshPrnamt>82443</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>67432</Sole>
      <Shared>0</Shared>
      <None>15011</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>FIRST UTD CORP</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>33741H107</cusip>
    <value>343054</value>
    <shrsOrPrnAmt>
      <sshPrnamt>8021</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>4942</Sole>
      <Shared>0</Shared>
      <None>3079</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>GOLDMAN SACHS ETF TR</nameOfIssuer>
    <titleOfClass>ACTIVEBETA INT</titleOfClass>
    <cusip>381430107</cusip>
    <value>25525535</value>
    <shrsOrPrnAmt>
      <sshPrnamt>556840</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>374107</Sole>
      <Shared>0</Shared>
      <None>182733</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>HARMONY BIOSCIENCES HLDGS IN</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>413197104</cusip>
    <value>347137</value>
    <shrsOrPrnAmt>
      <sshPrnamt>8842</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>6275</Sole>
      <Shared>0</Shared>
      <None>2567</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>HEALTHCARE SVCS GROUP INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>421906108</cusip>
    <value>510984</value>
    <shrsOrPrnAmt>
      <sshPrnamt>24987</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>20162</Sole>
      <Shared>0</Shared>
      <None>4825</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>HOME DEPOT INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>437076102</cusip>
    <value>1149389</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4040</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2563</Sole>
      <Shared>0</Shared>
      <None>1477</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>INVESCO EXCHANGE TRADED FD T</nameOfIssuer>
    <titleOfClass>S&amp;P500 EQL WGT</titleOfClass>
    <cusip>46137V357</cusip>
    <value>1792167</value>
    <shrsOrPrnAmt>
      <sshPrnamt>8615</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>6861</Sole>
      <Shared>0</Shared>
      <None>1754</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES INC</nameOfIssuer>
    <titleOfClass>MSCI EMRG CHN</titleOfClass>
    <cusip>46434G764</cusip>
    <value>26583807</value>
    <shrsOrPrnAmt>
      <sshPrnamt>268306</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>188674</Sole>
      <Shared>0</Shared>
      <None>79632</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>0-5YR INVT GR CP</titleOfClass>
    <cusip>46434V100</cusip>
    <value>4252623</value>
    <shrsOrPrnAmt>
      <sshPrnamt>85954</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>78048</Sole>
      <Shared>0</Shared>
      <None>7906</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>S&amp;P 100 ETF</titleOfClass>
    <cusip>464287101</cusip>
    <value>2868657</value>
    <shrsOrPrnAmt>
      <sshPrnamt>7508</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>7508</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>MSCI EMG MKT ETF</titleOfClass>
    <cusip>464287234</cusip>
    <value>874148</value>
    <shrsOrPrnAmt>
      <sshPrnamt>13088</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>12603</Sole>
      <Shared>0</Shared>
      <None>485</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>MSCI ACWI EX US</titleOfClass>
    <cusip>464288240</cusip>
    <value>269207</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3560</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>515</Sole>
      <Shared>0</Shared>
      <None>3045</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>IBOXX HI YD ETF</titleOfClass>
    <cusip>464288513</cusip>
    <value>505648</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6549</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>6549</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>NATIONAL MUN ETF</titleOfClass>
    <cusip>464288414</cusip>
    <value>276104</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2731</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2731</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>INTRM GOV CR ETF</titleOfClass>
    <cusip>464288612</cusip>
    <value>5316217</value>
    <shrsOrPrnAmt>
      <sshPrnamt>51579</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>46532</Sole>
      <Shared>0</Shared>
      <None>5046</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>RUS MID CAP ETF</titleOfClass>
    <cusip>464287499</cusip>
    <value>282035</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2643</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2643</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>RUS MD CP GR ETF</titleOfClass>
    <cusip>464287481</cusip>
    <value>587068</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4264</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>4264</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>RUS 2000 GRW ETF</titleOfClass>
    <cusip>464287648</cusip>
    <value>224847</value>
    <shrsOrPrnAmt>
      <sshPrnamt>630</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>630</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>MSCI EAFE ETF</titleOfClass>
    <cusip>464287465</cusip>
    <value>2095669</value>
    <shrsOrPrnAmt>
      <sshPrnamt>20172</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>7770</Sole>
      <Shared>0</Shared>
      <None>12402</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>S&amp;P MC 400VL ETF</titleOfClass>
    <cusip>464287705</cusip>
    <value>4134618</value>
    <shrsOrPrnAmt>
      <sshPrnamt>30024</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>23507</Sole>
      <Shared>0</Shared>
      <None>6517</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>S&amp;P MC 400GR ETF</titleOfClass>
    <cusip>464287606</cusip>
    <value>3955138</value>
    <shrsOrPrnAmt>
      <sshPrnamt>36084</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>30805</Sole>
      <Shared>0</Shared>
      <None>5279</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>CORE S&amp;P SCP ETF</titleOfClass>
    <cusip>464287804</cusip>
    <value>325680</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2394</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2200</Sole>
      <Shared>0</Shared>
      <None>194</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>SP SMCP600VL ETF</titleOfClass>
    <cusip>464287879</cusip>
    <value>505867</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3949</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1127</Sole>
      <Shared>0</Shared>
      <None>2822</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>S&amp;P SML 600 GWT</titleOfClass>
    <cusip>464287887</cusip>
    <value>2721499</value>
    <shrsOrPrnAmt>
      <sshPrnamt>16974</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>14473</Sole>
      <Shared>0</Shared>
      <None>2501</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>S&amp;P 500 VAL ETF</titleOfClass>
    <cusip>464287408</cusip>
    <value>3631110</value>
    <shrsOrPrnAmt>
      <sshPrnamt>15906</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>12897</Sole>
      <Shared>0</Shared>
      <None>3009</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>CORE S&amp;P500 ETF</titleOfClass>
    <cusip>464287200</cusip>
    <value>13514335</value>
    <shrsOrPrnAmt>
      <sshPrnamt>17646</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>15122</Sole>
      <Shared>0</Shared>
      <None>2524</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>ISHARES TR</nameOfIssuer>
    <titleOfClass>S&amp;P 500 GRWT ETF</titleOfClass>
    <cusip>464287309</cusip>
    <value>520672</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3660</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>503</Sole>
      <Shared>0</Shared>
      <None>3157</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>JABIL INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>466313103</cusip>
    <value>1896728</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6612</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>3919</Sole>
      <Shared>0</Shared>
      <None>2693</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>JANUS DETROIT STR TR</nameOfIssuer>
    <titleOfClass>HENDRSN SHRT ETF</titleOfClass>
    <cusip>47103U886</cusip>
    <value>13224801</value>
    <shrsOrPrnAmt>
      <sshPrnamt>272339</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>238325</Sole>
      <Shared>0</Shared>
      <None>34014</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>JOHNSON &amp; JOHNSON</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>478160104</cusip>
    <value>1707654</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6450</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2997</Sole>
      <Shared>0</Shared>
      <None>3453</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>JPMORGAN CHASE &amp; CO</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>46625H100</cusip>
    <value>3255750</value>
    <shrsOrPrnAmt>
      <sshPrnamt>9841</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>6672</Sole>
      <Shared>0</Shared>
      <None>3169</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>MAMAS CREATIONS INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>56146T103</cusip>
    <value>960202</value>
    <shrsOrPrnAmt>
      <sshPrnamt>74492</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>60769</Sole>
      <Shared>0</Shared>
      <None>13723</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>MASTERCARD INCORPORATED</nameOfIssuer>
    <titleOfClass>CL A</titleOfClass>
    <cusip>57636Q104</cusip>
    <value>3061219</value>
    <shrsOrPrnAmt>
      <sshPrnamt>5551</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2492</Sole>
      <Shared>0</Shared>
      <None>3059</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>MERCK &amp; CO INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>58933Y105</cusip>
    <value>810722</value>
    <shrsOrPrnAmt>
      <sshPrnamt>5579</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1373</Sole>
      <Shared>0</Shared>
      <None>4206</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>META PLATFORMS INC</nameOfIssuer>
    <titleOfClass>CL A</titleOfClass>
    <cusip>30303M102</cusip>
    <value>229882</value>
    <shrsOrPrnAmt>
      <sshPrnamt>317</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>317</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>MICROSOFT CORP</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>594918104</cusip>
    <value>5507144</value>
    <shrsOrPrnAmt>
      <sshPrnamt>10737</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>7418</Sole>
      <Shared>0</Shared>
      <None>3319</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>NEXTERA ENERGY INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>65339F101</cusip>
    <value>1529734</value>
    <shrsOrPrnAmt>
      <sshPrnamt>20197</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>9714</Sole>
      <Shared>0</Shared>
      <None>10483</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>NVIDIA CORPORATION</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>67066G104</cusip>
    <value>8736027</value>
    <shrsOrPrnAmt>
      <sshPrnamt>38252</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>15936</Sole>
      <Shared>0</Shared>
      <None>22316</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>PITNEY BOWES INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>724479100</cusip>
    <value>314689</value>
    <shrsOrPrnAmt>
      <sshPrnamt>19282</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>13794</Sole>
      <Shared>0</Shared>
      <None>5488</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>PROCTER &amp; GAMBLE CO</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>742718109</cusip>
    <value>585381</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4029</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2141</Sole>
      <Shared>0</Shared>
      <None>1888</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>PROGRESSIVE CORP</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>743315103</cusip>
    <value>707139</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3411</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2851</Sole>
      <Shared>0</Shared>
      <None>560</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>PULTE GROUP INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>745867101</cusip>
    <value>208096</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1793</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1793</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>QUALCOMM INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>747525103</cusip>
    <value>279189</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1517</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1517</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>SANMINA CORP</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>801056102</cusip>
    <value>733703</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3414</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2758</Sole>
      <Shared>0</Shared>
      <None>656</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>SELECT SECTOR SPDR TR</nameOfIssuer>
    <titleOfClass>ST STR ENERG ETF</titleOfClass>
    <cusip>81369Y506</cusip>
    <value>220785</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3590</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>3590</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>SELECT SECTOR SPDR TR</nameOfIssuer>
    <titleOfClass>ST STR TECHN ETF</titleOfClass>
    <cusip>81369Y803</cusip>
    <value>820388</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4191</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2219</Sole>
      <Shared>0</Shared>
      <None>1972</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>SOUTHSTATE BK CORP</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>84472E102</cusip>
    <value>242130</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2432</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2432</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>SPDR SERIES TRUST</nameOfIssuer>
    <titleOfClass>ST STR P500ETF</titleOfClass>
    <cusip>78464A854</cusip>
    <value>564142</value>
    <shrsOrPrnAmt>
      <sshPrnamt>6285</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1375</Sole>
      <Shared>0</Shared>
      <None>4910</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>SPDR SERIES TRUST</nameOfIssuer>
    <titleOfClass>ST STR SP400GRW</titleOfClass>
    <cusip>78464A821</cusip>
    <value>361674</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3460</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>3460</Sole>
      <Shared>0</Shared>
      <None>0</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>SPDR SERIES TRUST</nameOfIssuer>
    <titleOfClass>ST SHOR CORP ETF</titleOfClass>
    <cusip>78464A474</cusip>
    <value>673498</value>
    <shrsOrPrnAmt>
      <sshPrnamt>22761</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>21074</Sole>
      <Shared>0</Shared>
      <None>1687</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>STATE STR SPDR S&amp;P 500 ETF T</nameOfIssuer>
    <titleOfClass>TR UNIT</titleOfClass>
    <cusip>78462F103</cusip>
    <value>2229167</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2923</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1909</Sole>
      <Shared>0</Shared>
      <None>1014</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>STATE STR SPDR S&amp;P MIDCAP 40</nameOfIssuer>
    <titleOfClass>UTSER1 S&amp;PDCRP</titleOfClass>
    <cusip>78467Y107</cusip>
    <value>365131</value>
    <shrsOrPrnAmt>
      <sshPrnamt>556</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>131</Sole>
      <Shared>0</Shared>
      <None>425</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>STRIDE INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>86333M108</cusip>
    <value>362139</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4644</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2892</Sole>
      <Shared>0</Shared>
      <None>1752</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>THERMO FISHER SCIENTIFIC INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>883556102</cusip>
    <value>2387652</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3537</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1253</Sole>
      <Shared>0</Shared>
      <None>2284</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>TOLL BROTHERS INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>889478103</cusip>
    <value>3489108</value>
    <shrsOrPrnAmt>
      <sshPrnamt>25893</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>6991</Sole>
      <Shared>0</Shared>
      <None>18902</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>UNION PAC CORP</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>907818108</cusip>
    <value>1204175</value>
    <shrsOrPrnAmt>
      <sshPrnamt>4425</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1129</Sole>
      <Shared>0</Shared>
      <None>3296</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>UNITED THERAPEUTICS CORP DEL</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>91307C102</cusip>
    <value>1237677</value>
    <shrsOrPrnAmt>
      <sshPrnamt>2284</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1840</Sole>
      <Shared>0</Shared>
      <None>444</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>VANGUARD ADMIRAL FDS INC</nameOfIssuer>
    <titleOfClass>MIDCP 400 VAL</titleOfClass>
    <cusip>921932844</cusip>
    <value>545836</value>
    <shrsOrPrnAmt>
      <sshPrnamt>5107</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>3882</Sole>
      <Shared>0</Shared>
      <None>1225</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>VANGUARD ADMIRAL FDS INC</nameOfIssuer>
    <titleOfClass>SMLCP 600 GRTH</titleOfClass>
    <cusip>921932794</cusip>
    <value>214098</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1552</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1368</Sole>
      <Shared>0</Shared>
      <None>184</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>VANGUARD INDEX FDS</nameOfIssuer>
    <titleOfClass>MRNGSTR VAL ETF</titleOfClass>
    <cusip>922908744</cusip>
    <value>802953</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3716</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>2153</Sole>
      <Shared>0</Shared>
      <None>1563</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>VANGUARD INDEX FDS</nameOfIssuer>
    <titleOfClass>MRNGSTR TTL STK</titleOfClass>
    <cusip>922908769</cusip>
    <value>4165723</value>
    <shrsOrPrnAmt>
      <sshPrnamt>11131</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>9739</Sole>
      <Shared>0</Shared>
      <None>1392</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>VISA INC</nameOfIssuer>
    <titleOfClass>COM CL A</titleOfClass>
    <cusip>92826C839</cusip>
    <value>637843</value>
    <shrsOrPrnAmt>
      <sshPrnamt>1775</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>1487</Sole>
      <Shared>0</Shared>
      <None>288</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>VISHAY INTERTECHNOLOGY INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>928298108</cusip>
    <value>355940</value>
    <shrsOrPrnAmt>
      <sshPrnamt>10935</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>10544</Sole>
      <Shared>0</Shared>
      <None>391</None>
    </votingAuthority>
  </infoTable>
  <infoTable>
    <nameOfIssuer>WALMART INC</nameOfIssuer>
    <titleOfClass>COM</titleOfClass>
    <cusip>931142103</cusip>
    <value>365711</value>
    <shrsOrPrnAmt>
      <sshPrnamt>3519</sshPrnamt>
      <sshPrnamtType>SH</sshPrnamtType>
    </shrsOrPrnAmt>
    <investmentDiscretion>SOLE</investmentDiscretion>
    <otherManager>0</otherManager>
    <votingAuthority>
      <Sole>3030</Sole>
      <Shared>0</Shared>
      <None>489</None>
    </votingAuthority>
  </infoTable>
</informationTable>
