https://devlovepub.booth.pm/items/4383 のgolang写経