code: func (c *Component) Write(w *ICalEncode) {
  	w.WriteLine("BEGIN:" + c.Tipo + CRLF)
  
  	// Iterate over component properites
  	var keys []string
  	for k := range c.Properties {
  		keys = append(keys, k)
  	}
  	sort.Strings(keys)
  	for _, key := range keys {
  		val := c.Properties[key]
  		w.WriteLine(WriteStringField(key, val))
  	}
  
  	for _, xc := range c.Elements {
  		xc.Write(w)
  	}
  
  	w.WriteLine("END:" + c.Tipo + CRLF)
  }
docs: // Writes the component to the Writer