code: func (ss *StringSlice) Scan(src interface{}) error {
  	buf, ok := src.([]byte)
  	if !ok {
  		return errors.New("invalid StringSlice")
  	}
  
  	// change quote escapes for csv parser
  	str := quoteEscapeRegex.ReplaceAllString(string(buf), `$1""`)
  	str = strings.Replace(str, `\\`, `\`, -1)
  
  	// remove braces
  	str = str[1 : len(str)-1]
  
  	// bail if only one
  	if len(str) == 0 {
  		*ss = StringSlice([]string{})
  		return nil
  	}
  
  	// parse with csv reader
  	cr := csv.NewReader(strings.NewReader(str))
  	slice, err := cr.Read()
  	if err != nil {
  		fmt.Printf("exiting!: %v\n", err)
  		return err
  	}
  
  	*ss = StringSlice(slice)
  
  	return nil
  }
docs: // Scan satisfies the sql.Scanner interface for StringSlice.