func DecodeCursor(s string) (Cursor, error) {
	if s == "" {
		return Cursor{&zeroCC}, nil
	}
	if n := len(s) % 4; n != 0 {
		s += strings.Repeat("=", 4-n)
	}
	b, err := base64.URLEncoding.DecodeString(s)
	if err != nil {
		return Cursor{}, err
	}
	cc := &pb.CompiledCursor{}
	if err := proto.Unmarshal(b, cc); err != nil {
		return Cursor{}, err
	}
	return Cursor{cc}, nil
}
func DecodeCursor(s string) (Cursor, error) {
	if s == "" {
		return Cursor{&zeroCC}, nil
	}
	if n := len(s) % 4; n != 0 {
		s += strings.Repeat("=", 4-n)
	}
	b, err := base64.URLEncoding.DecodeString(s)
	if err != nil {
		return Cursor{}, err
	}
	cc := &pb.CompiledCursor{}
	if err := proto.Unmarshal(b, cc); err != nil {
		return Cursor{}, err
	}
	return Cursor{cc}, nil
}
func DecodeCursor ( s string ) ( Cursor , error ) { if s == " " { return Cursor { & zeroCC } , nil } if n := len ( s ) % 4 ; n != 0 { s += strings . Repeat ( " " , 4 - n ) } b , err := base64 . URLEncoding . DecodeString ( s ) if err != nil { return Cursor { } , err } cc := & pb . CompiledCursor { } if err := proto . Unmarshal ( b , cc ) ; err != nil { return Cursor { } , err } return Cursor { cc } , nil }
// Decode decodes a cursor from its base-64 string representation.
Decode decodes a cursor from its base - 64 string representation .