code: func (obj *object) MarshalJSON() ([]byte, error) {
  	sl := make([][2]*Term, obj.Len())
  	for i := range obj.keys {
  		k := obj.keys[i]
  		sl[i] = Item(k, obj.get(k).value)
  	}
  	return json.Marshal(sl)
  }
docs: // MarshalJSON returns JSON encoded bytes representing obj.