refactor, use the unofficial gl sdk, protobufs