Removed "#pragma once" for compiler compatibility reasons.