Ann Arbor Adult Hockey Powered by Goalline Sports Administration Software

Joseph Horgea #81

GatesN/A
NUMBER:81POSITION:N/A

Skater Stats

FALL 2024 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1000000
Click here to see game by game stats

SUMMER 2022 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Bearshark!13044000
Click here to see game by game stats

SUMMER 2014 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Goaldiggers5134000
Click here to see game by game stats

SUMMER 2014 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Bearshark!2000000
Click here to see game by game stats
Goaldiggers10549100
Click here to see game by game stats

WINTER 2014 WINTER 2014 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1011000
Click here to see game by game stats

WINTER 2014 WINTER 2014 STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates18162541013
Click here to see game by game stats

FALL 2024 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott FK20101121000
Click here to see game by game stats

FALL 2024 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates10033000
Click here to see game by game stats

SUMMER 2024 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Bearshark!2000000
Click here to see game by game stats

SUMMER 2024 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Creamie's Angels2303000
Click here to see game by game stats

SUMMER 2024 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Bearshark!10033000
Click here to see game by game stats

SPRING 2024 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates2000000
Click here to see game by game stats

SPRING 2024 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott FK3112000
Click here to see game by game stats

SPRING 2024 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Creamie's Angels7022000
Click here to see game by game stats

SPRING 2024 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates6303000
Click here to see game by game stats

SPRING 2024 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott FK137411003
Click here to see game by game stats

WINTER 2024 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott FK1000000
Click here to see game by game stats

WINTER 2024 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates2011000
Click here to see game by game stats

FALL 2023 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott FK4112000
Click here to see game by game stats

FALL 2023 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates8325000
Click here to see game by game stats

SPRING 2023 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott FK1000000
Click here to see game by game stats

WINTER 2023 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott FK2000000
Click here to see game by game stats

WINTER 2023 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates2000000
Click here to see game by game stats

FALL 2022 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1000000
Click here to see game by game stats

FALL 2022 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates3000003
Click here to see game by game stats

SPRING 2022 D2 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott FK1000000
Click here to see game by game stats

SPRING 2022 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott FK9011000
Click here to see game by game stats

SPRING 2022 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates7000000
Click here to see game by game stats

WINTER 2022 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates17167000
Click here to see game by game stats

FALL 2021 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1000000
Click here to see game by game stats

FALL 2021 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates19527000
Click here to see game by game stats

SUMMER 2021 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Bearshark!1000000
Click here to see game by game stats

SUMMER 2021 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Bearshark!143811003
Click here to see game by game stats

SPRING 2021 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1000000
Click here to see game by game stats

SPRING 2021 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates12011000
Click here to see game by game stats

WINTER 2021 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1000000
Click here to see game by game stats

WINTER 2021 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates155611003
Click here to see game by game stats

FALL 2020 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates147512000
Click here to see game by game stats

WINTER 2020 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1771421000
Click here to see game by game stats

FALL 2019 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates2112000
Click here to see game by game stats

FALL 2019 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates18101222200
Click here to see game by game stats

SUMMER 2019 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Bearshark!2000003
Click here to see game by game stats

SUMMER 2019 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Bearshark!8268100
Click here to see game by game stats

SPRING 2019 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates113811000
Click here to see game by game stats

WINTER 2019 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1000000
Click here to see game by game stats

WINTER 2019 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates184812003
Click here to see game by game stats

FALL 2018 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1011000
Click here to see game by game stats

FALL 2018 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1531013000
Click here to see game by game stats

SUMMER 2018 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Goaldiggers1000000
Click here to see game by game stats
Bearshark!2011003
Click here to see game by game stats

SUMMER 2018 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Goaldiggers9123000
Click here to see game by game stats
Bearshark!114913000
Click here to see game by game stats

SPRING 2018 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1441418000
Click here to see game by game stats

WINTER 2018 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates164812000
Click here to see game by game stats

FALL 2017 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates22121426209
Click here to see game by game stats

SUMMER 2017 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Goaldiggers1000000
Click here to see game by game stats
Bearshark!2123000
Click here to see game by game stats

SUMMER 2017 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Goaldiggers92810000
Click here to see game by game stats
Bearshark!46410000
Click here to see game by game stats

SPRING 2017 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1011000
Click here to see game by game stats

SPRING 2017 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1413114200
Click here to see game by game stats

WINTER 2017 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott C1101000
Click here to see game by game stats
Gates1101000
Click here to see game by game stats

WINTER 2017 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates22235109
Click here to see game by game stats
Mott C135510010
Click here to see game by game stats

FALL 2016 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott C1000000
Click here to see game by game stats
Gates1101000
Click here to see game by game stats

FALL 2016 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates166511003
Click here to see game by game stats
Mott C15459003
Click here to see game by game stats

SUMMER 2016 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Goaldiggers2000000
Click here to see game by game stats

SUMMER 2016 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Goaldiggers135611100
Click here to see game by game stats

SPRING 2016 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates3022000
Click here to see game by game stats

SPRING 2016 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1789172016
Click here to see game by game stats

WINTER 2016 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1101000
Click here to see game by game stats
Mott C Men1000000
Click here to see game by game stats

WINTER 2016 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott C Men9202000
Click here to see game by game stats
Gates169514003
Click here to see game by game stats

FALL 2015 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott C Men1000000
Click here to see game by game stats
Gates1123000
Click here to see game by game stats

FALL 2015 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott C Men7527000
Click here to see game by game stats
Gates16161329303
Click here to see game by game stats

SUMMER 2015 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Goaldiggers2101000
Click here to see game by game stats

SUMMER 2015 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Bearshark!1011000
Click here to see game by game stats
Goaldiggers10369100
Click here to see game by game stats

SPRING 2015 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates156915103
Click here to see game by game stats

WINTER 2015 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott1000000
Click here to see game by game stats
Gates1000000
Click here to see game by game stats

WINTER 2015 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates177916003
Click here to see game by game stats
Mott6235003
Click here to see game by game stats

FALL 2014 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott1011003
Click here to see game by game stats
Gates1101000
Click here to see game by game stats

FALL 2014 REGULAR SEASON STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott10437103
Click here to see game by game stats
Gates1671219000
Click here to see game by game stats

SPRING 2014 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Mott1000000
Click here to see game by game stats

SPRING 2014 2014 SPRING STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates159716116
Click here to see game by game stats
Mott4134000
Click here to see game by game stats

WINTER 2014 WINTER 2014 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Goaldiggers2101000
Click here to see game by game stats

WINTER 2014 WINTER 2014 STATISTICS

TeamGPGAPTSPPGSHGPIMS
Goaldiggers1510616209
Click here to see game by game stats

FALL 2013 FALL 2013 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Goaldiggers4325010
Click here to see game by game stats

FALL 2013 FALL 2013 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates1000000
Click here to see game by game stats

FALL 2013 FALL 2013 STATISTICS

TeamGPGAPTSPPGSHGPIMS
Goaldiggers19151025113
Click here to see game by game stats

FALL 2013 FALL 2013 STATISTICS

TeamGPGAPTSPPGSHGPIMS
Gates198917009
Click here to see game by game stats

SUMMER 2013 SUMMER 2013 PLAYOFFS STATISTICS

TeamGPGAPTSPPGSHGPIMS
Bearshark!2000000
Click here to see game by game stats

SUMMER 2013 SUMMER 2013 STATISTICS

TeamGPGAPTSPPGSHGPIMS
Goaldiggers1033000
Click here to see game by game stats
Bearshark!1011314410
Click here to see game by game stats

LAST 5 GAMES

Team G A PTS PIMPPGSHG
Dec 1 '24 Bombs @ Mott FK101000
Nov 26 '24 Stags HC @ Gates000000
Nov 24 '24 Mott FK @ Yaks D2000000
Nov 17 '24 Mott FK @ Bombs000000
Nov 13 '24 Yaks D2 @ Mott FK123000

CAREER REGULAR SEASON STATISTICS

SEASON TEAM GP G A PTS PIMPPGSHG
Fall 2024 - Regular SeasonMott FK20101121000
Fall 2024 - Regular SeasonBearshark!10033000
Fall 2024 - Regular SeasonGates10033000
Summer 2024 - Regular SeasonCreamie\'s Angels2303000
Summer 2024 - Regular SeasonGates10033000
Summer 2024 - Regular SeasonBearshark!10033000
Spring 2024 - Regular SeasonCreamie\'s Angels7022000
Spring 2024 - Regular SeasonMott FK137411300
Spring 2024 - Regular SeasonGates6303000
Winter 2024 - Regular SeasonGates2011000
Winter 2024 - Regular SeasonMott FK1000000
Fall 2023 - Regular SeasonGates8325000
Fall 2023 - Regular SeasonMott FK4112000
Spring 2023 - Regular SeasonMott FK1000000
Winter 2023 - Regular SeasonMott FK2000000
Winter 2023 - Regular SeasonGates2000000
Fall 2022 - Regular SeasonMott FK0000000
Fall 2022 - Regular SeasonGates3000300
Summer 2022 - Regular SeasonBearshark!13044000
Spring 2022 - Regular SeasonMott FK9011000
Spring 2022 - Regular SeasonGates7000000
Winter 2022 - Regular SeasonGates17167000
Fall 2021 - Regular SeasonGates19527000
Summer 2021 - Regular SeasonBearshark!143811300
Spring 2021 - Regular SeasonGates12011000
Winter 2021 - Regular SeasonGates155611300
Fall 2020 - Regular SeasonGates147512000
Fall 2020 - Regular SeasonGates147512000
Winter 2020 - Regular SeasonGates1771421000
Fall 2019 - Regular SeasonGates18101222020
Summer 2019 - Regular SeasonBearshark!8268010
Spring 2019 - Regular SeasonGates113811000
Winter 2019 - Regular SeasonGates184812300
Fall 2018 - Regular SeasonGates1531013000
Summer 2018 - Regular SeasonBearshark!114913000
Summer 2018 - Regular SeasonBearshark!114913000
Summer 2018 - Regular SeasonGoaldiggers114913000
Summer 2018 - Regular SeasonBearshark!9123000
Summer 2018 - Regular SeasonBearshark!9123000
Summer 2018 - Regular SeasonGoaldiggers9123000
Spring 2018 - Regular SeasonGates1441418000
Winter 2018 - Regular SeasonGates164812000
Fall 2017 - Regular SeasonMott C22121426920
Fall 2017 - Regular SeasonGates22121426920
Summer 2017 - Regular SeasonBearshark!46410000
Summer 2017 - Regular SeasonGoaldiggers46410000
Summer 2017 - Regular SeasonBearshark!92810000
Summer 2017 - Regular SeasonGoaldiggers92810000
Spring 2017 - Regular SeasonMott C1413114020
Spring 2017 - Regular SeasonGates1413114020
Winter 2017 - Regular SeasonMott C135510001
Winter 2017 - Regular SeasonGates135510001
Winter 2017 - Regular SeasonMott C22235910
Winter 2017 - Regular SeasonGates22235910
Fall 2016 - Regular SeasonMott C15459300
Fall 2016 - Regular SeasonGates15459300
Fall 2016 - Regular SeasonMott C166511300
Fall 2016 - Regular SeasonGates166511300
Summer 2016 - Regular SeasonBearshark!135611010
Summer 2016 - Regular SeasonBearshark!135611010
Summer 2016 - Regular SeasonGoaldiggers135611010
Spring 2016 - Regular SeasonMott C Men1789171620
Spring 2016 - Regular SeasonGates1789171620
Winter 2016 - Regular SeasonMott C Men169514300
Winter 2016 - Regular SeasonGates169514300
Winter 2016 - Regular SeasonMott C Men9202000
Winter 2016 - Regular SeasonGates9202000
Fall 2015 - Regular SeasonMott C Men16161329330
Fall 2015 - Regular SeasonGates16161329330
Fall 2015 - Regular SeasonMott C Men7527000
Fall 2015 - Regular SeasonGates7527000
Summer 2015 - Regular SeasonBearshark!10369010
Summer 2015 - Regular SeasonGoaldiggers10369010
Summer 2015 - Regular SeasonBearshark!1011000
Summer 2015 - Regular SeasonGoaldiggers1011000
Winter 2015 - Regular SeasonMott6235300
Winter 2015 - Regular SeasonGates6235300
Winter 2015 - Regular SeasonMott177916300
Winter 2015 - Regular SeasonGates177916300
Spring 2015 - Regular SeasonMott156915310
Spring 2015 - Regular SeasonGates156915310
Fall 2014 - Regular SeasonMott1671219000
Fall 2014 - Regular SeasonGates1671219000
Fall 2014 - Regular SeasonMott10437310
Fall 2014 - Regular SeasonGates10437310
Summer 2014 - Regular SeasonBearshark!10549010
Summer 2014 - Regular SeasonBearshark!10549010
Summer 2014 - Regular SeasonGoaldiggers10549010
Summer 2014 - Regular SeasonBearshark!2000000
Summer 2014 - Regular SeasonBearshark!2000000
Summer 2014 - Regular SeasonGoaldiggers2000000
Spring 2014 - 2014 SpringMott4134000
Spring 2014 - 2014 SpringGates4134000
Spring 2014 - 2014 SpringMott159716611
Spring 2014 - 2014 SpringGates159716611
Winter 2014 - Winter 2014Goaldiggers1510616920
Winter 2014 - Winter 2014Gates18162541301
Fall 2013 - Fall 2013Gates198917900
Fall 2013 - Fall 2013Goaldiggers19151025311
Summer 2013 - Summer 2013Bearshark!1011314041
Summer 2013 - Summer 2013Goaldiggers1011314041
Summer 2013 - Summer 2013Bearshark!1033000
Summer 2013 - Summer 2013Goaldiggers1033000

CAREER PLAYOFF STATISTICS

SEASON TEAM GP G A PTS PIMPPGSHG
Fall 2024 - PlayoffsGates1000000
Spring 2022 - D2 PlayoffsMott FK1000000
Summer 2016 - PlayoffsGoaldiggers2000000
Summer 2014 - PlayoffsGoaldiggers5134000
Winter 2014 - Winter 2014 PlayoffsGoaldiggers2101000
Summer 2013 - Summer 2013 PlayoffsGoaldiggers2000000
Fall 2013 - Fall 2013 PlayoffsGoaldiggers4325001
Summer 2018 - PlayoffsGoaldiggers1000000
Summer 2018 - PlayoffsGoaldiggers2011300
Summer 2017 - PlayoffsGoaldiggers1000000
Summer 2017 - PlayoffsGoaldiggers2123000
Summer 2015 - PlayoffsGoaldiggers2101000
Fall 2024 - PlayoffsBearshark!1000000
Summer 2024 - PlayoffsBearshark!2000000
Summer 2024 - PlayoffsGates2000000
Spring 2024 - PlayoffsMott FK3112000
Spring 2024 - PlayoffsGates2000000
Fall 2022 - PlayoffsGates1000000
Fall 2021 - PlayoffsGates1000000
Spring 2021 - PlayoffsGates1000000
Winter 2021 - PlayoffsGates1000000
Fall 2016 - PlayoffsGates1000000
Fall 2016 - PlayoffsGates1101000
Spring 2016 - PlayoffsGates3022000
Winter 2016 - PlayoffsGates1101000
Winter 2016 - PlayoffsGates1000000
Fall 2015 - PlayoffsGates1000000
Fall 2015 - PlayoffsGates1123000
Spring 2015 - PlayoffsGates0000000
Winter 2015 - PlayoffsGates1000000
Winter 2015 - PlayoffsGates1000000
Winter 2017 - PlayoffsGates1101000
Winter 2017 - PlayoffsGates1101000
Spring 2014 - PlayoffsGates1000000
Winter 2014 - Winter 2014 PlayoffsGates1011000
Fall 2013 - Fall 2013 PlayoffsGates1000000
Spring 2017 - PlayoffsGates1011000
Fall 2019 - PlayoffsGates2112000
Winter 2019 - PlayoffsGates1000000
Fall 2018 - PlayoffsGates1011000
Fall 2014 - PlayoffsGates1011300
Fall 2014 - PlayoffsGates1101000
Summer 2021 - PlayoffsBearshark!1000000
Summer 2014 - PlayoffsBearshark!5134000
Summer 2017 - PlayoffsBearshark!1000000
Summer 2017 - PlayoffsBearshark!2123000
Summer 2015 - PlayoffsBearshark!2101000
Summer 2016 - PlayoffsBearshark!2000000
Summer 2018 - PlayoffsBearshark!1000000
Summer 2018 - PlayoffsBearshark!2011300
Summer 2019 - PlayoffsBearshark!2000300
Summer 2018 - PlayoffsBearshark!1000000
Summer 2018 - PlayoffsBearshark!2011300
Summer 2016 - PlayoffsBearshark!2000000
Spring 2017 - PlayoffsMott C1011000
Winter 2017 - PlayoffsMott C1101000
Winter 2017 - PlayoffsMott C1101000
Winter 2015 - PlayoffsMott1000000
Winter 2015 - PlayoffsMott1000000
Spring 2015 - PlayoffsMott0000000
Spring 2014 - PlayoffsMott1000000
Summer 2013 - Summer 2013 PlayoffsBearshark!2000000
Summer 2014 - PlayoffsBearshark!5134000
Fall 2014 - PlayoffsMott1011300
Fall 2014 - PlayoffsMott1101000
Spring 2016 - PlayoffsMott C Men3022000
Winter 2016 - PlayoffsMott C Men1101000
Winter 2016 - PlayoffsMott C Men1000000
Fall 2015 - PlayoffsMott C Men1000000
Fall 2015 - PlayoffsMott C Men1123000
Fall 2016 - PlayoffsMott C1000000
Fall 2016 - PlayoffsMott C1101000

Goalline Sports Administration Systems
Powered by Stack Sports Hockey Software