Yeah this header file is kind of necessary