code: func CompileSolidity(solc string, sourcefiles ...string) (map[string]*Contract, error) {
  	if len(sourcefiles) == 0 {
  		return nil, errors.New("solc: no source files")
  	}
  	source, err := slurpFiles(sourcefiles)
  	if err != nil {
  		return nil, err
  	}
  	s, err := SolidityVersion(solc)
  	if err != nil {
  		return nil, err
  	}
  	args := append(s.makeArgs(), "--")
  	cmd := exec.Command(s.Path, append(args, sourcefiles...)...)
  	return s.run(cmd, source)
  }
docs: // CompileSolidity compiles all given Solidity source files.