A Workaround for some "Protocol can only be used as a generic constraint" error situations
MIT LicenseMIT