package grains import "errors" func Square(n int) (uint64, error) { if n < 1 || n > 64 { return 0, errors.New("out of range") } return 1 << uint(n-1), nil } func Total() uint64 { var n uint64 for i := 0; i < 64; i++ { s, _ := Square(i + 1) n += s } return n }