code: func DecodeLine(line string) *IcsNode {
  	if strings.Contains(line, keySep) == false {
  		return &IcsNode{}
  	}
  	key, val := getKeyVal(line)
  	//@todo test if val containes , multipleparams
  	if strings.Contains(key, vParamSep) == false {
  		return &IcsNode{
  			Key: key,
  			Val: val,
  		}
  	}
  	// Extract key
  	firstParam := strings.Index(key, vParamSep)
  	realkey := key[0:firstParam]
  	n := &IcsNode{
  		Key: realkey,
  		Val: val,
  	}
  	// Extract params
  	params := key[firstParam+1:]
  	n.Params = decodeParams(params)
  	return n
  }
docs: // DecodeLine extracts key, val and extra params from a line