| Ticker | Owner | Relationship | Date | Transaction | Cost | #Shares | Value ($) | #Shares Total | SEC Form 4 |
|---|---|---|---|---|---|---|---|---|---|
| NWPX | Wilkins Aaron | CFO | Mar 31 '26 | Option Exercise | 0.00 | 19,020 | 0 | 27,438 | Apr 02 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Jan 15 '26 | Option Exercise | 0.00 | 5,792 | 0 | 20,451 | Jan 20 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Dec 15 '25 | Sale | 63.50 | 35 | 2,223 | 18,477 | Dec 16 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Dec 09 '25 | Sale | 60.10 | 1,241 | 74,588 | 18,512 | Dec 10 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Dec 08 '25 | Sale | 59.90 | 5,009 | 300,032 | 19,753 | Dec 10 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Sep 02 '25 | Sale | 52.24 | 2,000 | 104,490 | 24,762 | Sep 03 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Aug 29 '25 | Sale | 54.02 | 500 | 27,010 | 26,762 | Sep 03 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Aug 22 '25 | Sale | 50.89 | 2,500 | 127,225 | 27,262 | Aug 26 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Mar 31 '25 | Option Exercise | 0.00 | 18,994 | 0 | 31,270 | Apr 02 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Mar 24 '25 | Sale | 44.00 | 1,000 | 44,000 | 23,467 | Mar 25 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Jan 15 '25 | Option Exercise | 0.00 | 5,744 | 0 | 24,902 | Jan 17 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Nov 19 '24 | Sale | 53.60 | 2,200 | 117,920 | 22,895 | Nov 20 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Nov 18 '24 | Sale | 53.10 | 300 | 15,930 | 25,095 | Nov 20 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Apr 01 '24 | Option Exercise | 0.00 | 15,741 | 0 | 26,549 | Apr 03 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Jan 15 '24 | Option Exercise | 0.00 | 5,120 | 0 | 21,036 | Jan 17 12:00 AM |
| NWPX | Wilkins Aaron | CFO | Mar 31 '23 | Option Exercise | 0.00 | 16,548 | 0 | 20,728 | Apr 04 12:00 AM |