Files
plexgo/models/operations/getsectionimage.go
speakeasybot 3ae6d27c3c ## Go SDK Changes:
* `PlexApi.LibraryPlaylists.AddPlaylistItems()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetMetadataHubs()`: 
  *  `request.Request.OnlyTransient` **Changed**
  *  `response.MediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryCollections.MoveCollectionItem()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryCollections.DeleteCollectionItem()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryCollections.AddCollectionItems()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetSonicallySimilar()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Butler.StopTask()`:  `request.Request` **Changed** **Breaking** ⚠️
* `PlexApi.Butler.StartTask()`:  `request.Request` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetSonicPath()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.DownloadQueue.GetItemDecision()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetAllHubs()`: 
  *  `request.Request.OnlyTransient` **Changed**
  *  `response.MediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetContinueWatching()`:  `response.MediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetPromotedHubs()`:  `response.MediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetAllLeaves()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetPostplayHubs()`: 
  *  `request.Request.OnlyTransient` **Changed**
  *  `response.MediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetRelatedHubs()`: 
  *  `request.Request.OnlyTransient` **Changed**
  *  `response.MediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Hubs.GetSectionHubs()`: 
  *  `request.Request.OnlyTransient` **Changed**
  *  `response.MediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.ListContent()`: 
  *  `request.Request` **Changed**
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetAlbums()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Search.SearchHubs()`:  `response.MediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Search.VoiceSearchHubs()`: 
  *  `request.Request.Type` **Changed** **Breaking** ⚠️
  *  `response.MediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetLibraryItems()`: 
  *  `request.Request.MediaQuery` **Changed**
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.IngestTransientItem()`: 
  *  `request.Request` **Changed**
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetLibraryMatches()`: 
  *  `request.Request` **Changed** **Breaking** ⚠️
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetMetadataItem()`: 
  *  `request.Request` **Changed**
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetSections()`:  `response.MediaContainer.Directory.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.AddSection()`: 
  *  `request.Request` **Changed**
  *  `response.MediaContainer.Directory.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetTags()`: 
  *  `request.Request.Type` **Changed** **Breaking** ⚠️
* `PlexApi.Content.GetCollectionItems()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetAllItemLeaves()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Status.ListSessions()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.MovePlayQueueItem()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetExtras()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.DeletePlayQueueItem()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.Unshuffle()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.ListMatches()`: 
  *  `request.Request.Manual` **Changed**
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.ListSonicallySimilar()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.ResetPlayQueue()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetRelatedItems()`:  `response.MediaContainer.Hub.[].Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.ListSimilar()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.ClearPlayQueue()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetItemTree()`:  `response.MediaContainer.MetadataItem.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.AddToPlayQueue()`: 
  *  `request.Request.Next` **Changed**
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.GetPlayQueue()`: 
  *  `request.Request` **Changed**
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.MovePlaylistItem()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetPerson()`:  `response.MediaContainer.Directory.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.ListPersonMedia()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.GetPlaylistGeneratorItems()`:  `response.MediaContainer.Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetLibraryDetails()`: 
  *  `request.Request.IncludeDetails` **Changed**
  *  `response.MediaContainer.Directory.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.ModifyPlaylistGenerator()`: 
  *  `request.Request.Item` **Changed**
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.Autocomplete()`: 
  *  `request.Request.MediaQuery` **Changed**
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetCollections()`: 
  *  `request.Request.MediaQuery` **Changed**
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.GetCommon()`: 
  *  `request.Request.MediaQuery` **Changed**
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.DeletePlaylistItem()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.ClearPlaylistItems()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.PlayQueue.Shuffle()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LibraryPlaylists.CreatePlaylist()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Playlist.GetPlaylistItems()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Playlist.GetPlaylist()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Collections.CreateCollection()`: 
  *  `request.Request.Type` **Changed** **Breaking** ⚠️
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.DvRs.TuneChannel()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LiveTv.GetSessions()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.LiveTv.GetLiveTvSession()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Playlist.ListPlaylists()`:  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.GetAllSubscriptions()`: 
  *  `request.Request` **Changed**
  *  `response.MediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.CreateSubscription()`:  `response.MediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.GetScheduledRecordings()`:  `response.MediaContainer.MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.GetTemplate()`:  `response.MediaContainer.SubscriptionTemplate.[].MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.GetSubscription()`: 
  *  `request.Request` **Changed**
  *  `response.MediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.EditSubscriptionPreferences()`:  `response.MediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Subscriptions.ReorderSubscription()`:  `response.MediaContainer.MediaSubscription.[].MediaGrabOperation.[].Metadata` **Changed** **Breaking** ⚠️
* `PlexApi.Transcoder.MakeDecision()`: 
  *  `request.Request` **Changed**
  *  `response.MediaContainer.Metadata.[]` **Changed** **Breaking** ⚠️
* `PlexApi.Library.RefreshItemsMetadata()`: 
  *  `request.Request.MarkUpdated` **Changed**
* `PlexApi.Authentication.Post-Users-Sign-In-Data()`: **Added**
* `PlexApi.Transcoder.StartTranscodeSession()`:  `request.Request` **Changed**
* `PlexApi.Devices.ModifyDevice()`: 
  *  `request.Request.Enabled` **Changed**
* `PlexApi.Library.GetMediaPart()`: 
  *  `request.Request.Download` **Changed**
* `PlexApi.Library.DetectIntros()`: 
  *  `request.Request.Force` **Changed**
* `PlexApi.Library.RefreshSection()`: 
  *  `request.Request.Force` **Changed**
* `PlexApi.LibraryPlaylists.UploadPlaylist()`: 
  *  `request.Request.Force` **Changed**
* `PlexApi.Library.DeleteMediaItem()`: 
  *  `request.Request.Proxy` **Changed**
* `PlexApi.Authentication.GetTokenDetails()`: **Added**
* `PlexApi.Library.GetFirstCharacters()`: 
  *  `request.Request.MediaQuery` **Changed**
* `PlexApi.Library.UpdateItems()`: 
  *  `request.Request.Field.locked` **Changed**
* `PlexApi.Library.DeleteLibrarySection()`: 
  *  `request.Request.Async` **Changed**
* `PlexApi.Library.SetStreamSelection()`: 
  *  `request.Request.AllParts` **Changed**
* `PlexApi.PlayQueue.CreatePlayQueue()`:  `request.Request` **Changed**
* `PlexApi.Library.GetAugmentationStatus()`: 
  *  `request.Request.Wait` **Changed**
* `PlexApi.Library.DetectVoiceActivity()`:  `request.Request` **Changed**
* `PlexApi.Transcoder.TranscodeImage()`:  `request.Request` **Changed**
* `PlexApi.Transcoder.TranscodeSubtitles()`:  `request.Request` **Changed**
* `PlexApi.Library.AddSubtitles()`:  `request.Request` **Changed**
* `PlexApi.Library.GetStream()`: 
  *  `request.Request.AutoAdjustSubtitle` **Changed**
* `PlexApi.Library.StartBifGeneration()`: 
  *  `request.Request.Force` **Changed**
* `PlexApi.Library.DetectCredits()`:  `request.Request` **Changed**
* `PlexApi.UltraBlur.GetImage()`: 
  *  `request.Request.Noise` **Changed**
* `PlexApi.Library.GenerateThumbs()`: 
  *  `request.Request.Force` **Changed**
* `PlexApi.Updater.ApplyUpdates()`:  `request.Request` **Changed**
* `PlexApi.Updater.CheckUpdates()`: 
  *  `request.Request.Download` **Changed**
* `PlexApi.Library.DeleteMetadataItem()`: 
  *  `request.Request.Proxy` **Changed**
* `PlexApi.Library.OptimizeDatabase()`: 
  *  `request.Request.Async` **Changed**
* `PlexApi.Hubs.UpdateHubVisibility()`:  `request.Request` **Changed**
* `PlexApi.Hubs.CreateCustomHub()`:  `request.Request` **Changed**
* `PlexApi.Library.GetSectionImage()`: 
  *  `request.Request.MediaQuery` **Changed**
* `PlexApi.DownloadQueue.AddDownloadQueueItems()`:  `request.Request` **Changed**
* `PlexApi.Timeline.Report()`:  `request.Request` **Changed**
* `PlexApi.General.GetSourceConnectionInformation()`: 
  *  `request.Request.Refresh` **Changed**
* `PlexApi.Plex.Get-Server-Resources()`: **Added**
* `PlexApi.Users.Get-Users()`: **Added**
2025-12-01 00:15:28 +00:00

317 lines
8.5 KiB
Go

// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
package operations
import (
"github.com/LukeHagar/plexgo/internal/utils"
"github.com/LukeHagar/plexgo/models/components"
"net/http"
)
type GetSectionImageGlobals struct {
// Indicates the client accepts the indicated media types
Accepts *components.Accepts `default:"application/xml" header:"style=simple,explode=false,name=accepts"`
// An opaque identifier unique to the client
ClientIdentifier *string `header:"style=simple,explode=false,name=X-Plex-Client-Identifier"`
// The name of the client product
Product *string `header:"style=simple,explode=false,name=X-Plex-Product"`
// The version of the client application
Version *string `header:"style=simple,explode=false,name=X-Plex-Version"`
// The platform of the client
Platform *string `header:"style=simple,explode=false,name=X-Plex-Platform"`
// The version of the platform
PlatformVersion *string `header:"style=simple,explode=false,name=X-Plex-Platform-Version"`
// A relatively friendly name for the client device
Device *string `header:"style=simple,explode=false,name=X-Plex-Device"`
// A potentially less friendly identifier for the device model
Model *string `header:"style=simple,explode=false,name=X-Plex-Model"`
// The device vendor
DeviceVendor *string `header:"style=simple,explode=false,name=X-Plex-Device-Vendor"`
// A friendly name for the client
DeviceName *string `header:"style=simple,explode=false,name=X-Plex-Device-Name"`
// The marketplace on which the client application is distributed
Marketplace *string `header:"style=simple,explode=false,name=X-Plex-Marketplace"`
}
func (g GetSectionImageGlobals) MarshalJSON() ([]byte, error) {
return utils.MarshalJSON(g, "", false)
}
func (g *GetSectionImageGlobals) UnmarshalJSON(data []byte) error {
if err := utils.UnmarshalJSON(data, &g, "", false, nil); err != nil {
return err
}
return nil
}
func (g *GetSectionImageGlobals) GetAccepts() *components.Accepts {
if g == nil {
return nil
}
return g.Accepts
}
func (g *GetSectionImageGlobals) GetClientIdentifier() *string {
if g == nil {
return nil
}
return g.ClientIdentifier
}
func (g *GetSectionImageGlobals) GetProduct() *string {
if g == nil {
return nil
}
return g.Product
}
func (g *GetSectionImageGlobals) GetVersion() *string {
if g == nil {
return nil
}
return g.Version
}
func (g *GetSectionImageGlobals) GetPlatform() *string {
if g == nil {
return nil
}
return g.Platform
}
func (g *GetSectionImageGlobals) GetPlatformVersion() *string {
if g == nil {
return nil
}
return g.PlatformVersion
}
func (g *GetSectionImageGlobals) GetDevice() *string {
if g == nil {
return nil
}
return g.Device
}
func (g *GetSectionImageGlobals) GetModel() *string {
if g == nil {
return nil
}
return g.Model
}
func (g *GetSectionImageGlobals) GetDeviceVendor() *string {
if g == nil {
return nil
}
return g.DeviceVendor
}
func (g *GetSectionImageGlobals) GetDeviceName() *string {
if g == nil {
return nil
}
return g.DeviceName
}
func (g *GetSectionImageGlobals) GetMarketplace() *string {
if g == nil {
return nil
}
return g.Marketplace
}
type GetSectionImageRequest struct {
// Indicates the client accepts the indicated media types
Accepts *components.Accepts `default:"application/xml" header:"style=simple,explode=false,name=accepts"`
// An opaque identifier unique to the client
ClientIdentifier *string `header:"style=simple,explode=false,name=X-Plex-Client-Identifier"`
// The name of the client product
Product *string `header:"style=simple,explode=false,name=X-Plex-Product"`
// The version of the client application
Version *string `header:"style=simple,explode=false,name=X-Plex-Version"`
// The platform of the client
Platform *string `header:"style=simple,explode=false,name=X-Plex-Platform"`
// The version of the platform
PlatformVersion *string `header:"style=simple,explode=false,name=X-Plex-Platform-Version"`
// A relatively friendly name for the client device
Device *string `header:"style=simple,explode=false,name=X-Plex-Device"`
// A potentially less friendly identifier for the device model
Model *string `header:"style=simple,explode=false,name=X-Plex-Model"`
// The device vendor
DeviceVendor *string `header:"style=simple,explode=false,name=X-Plex-Device-Vendor"`
// A friendly name for the client
DeviceName *string `header:"style=simple,explode=false,name=X-Plex-Device-Name"`
// The marketplace on which the client application is distributed
Marketplace *string `header:"style=simple,explode=false,name=X-Plex-Marketplace"`
// Section identifier
SectionID int64 `pathParam:"style=simple,explode=false,name=sectionId"`
// The update time of the image. Used for busting cache.
UpdatedAt int64 `pathParam:"style=simple,explode=false,name=updatedAt"`
// A querystring-based filtering language used to select subsets of media. Can be provided as an object with typed properties for type safety, or as a string for complex queries with operators and boolean logic.
//
// The query supports:
// - Fields: integer, boolean, tag, string, date, language
// - Operators: =, !=, ==, !==, <=, >=, >>=, <<= (varies by field type)
// - Boolean operators: & (AND), , (OR), push/pop (parentheses), or=1 (explicit OR)
// - Sorting: sort parameter with :desc, :nullsLast modifiers
// - Grouping: group parameter
// - Limits: limit parameter
//
// Examples:
// - Object format: `{type: 4, sourceType: 2, title: "24"}` → `type=4&sourceType=2&title=24`
// - String format: `type=4&sourceType=2&title==24` - type = 4 AND sourceType = 2 AND title = "24"
// - Complex: `push=1&index=1&or=1&rating=2&pop=1&duration=10` - (index = 1 OR rating = 2) AND duration = 10
//
// See [API Info section](#section/API-Info/Media-Queries) for detailed information on building media queries.
//
MediaQuery *components.MediaQuery `queryParam:"style=form,explode=true,name=mediaQuery"`
Composite *components.Composite `queryParam:"style=form,explode=true,name=composite"`
}
func (g GetSectionImageRequest) MarshalJSON() ([]byte, error) {
return utils.MarshalJSON(g, "", false)
}
func (g *GetSectionImageRequest) UnmarshalJSON(data []byte) error {
if err := utils.UnmarshalJSON(data, &g, "", false, []string{"sectionId", "updatedAt"}); err != nil {
return err
}
return nil
}
func (g *GetSectionImageRequest) GetAccepts() *components.Accepts {
if g == nil {
return nil
}
return g.Accepts
}
func (g *GetSectionImageRequest) GetClientIdentifier() *string {
if g == nil {
return nil
}
return g.ClientIdentifier
}
func (g *GetSectionImageRequest) GetProduct() *string {
if g == nil {
return nil
}
return g.Product
}
func (g *GetSectionImageRequest) GetVersion() *string {
if g == nil {
return nil
}
return g.Version
}
func (g *GetSectionImageRequest) GetPlatform() *string {
if g == nil {
return nil
}
return g.Platform
}
func (g *GetSectionImageRequest) GetPlatformVersion() *string {
if g == nil {
return nil
}
return g.PlatformVersion
}
func (g *GetSectionImageRequest) GetDevice() *string {
if g == nil {
return nil
}
return g.Device
}
func (g *GetSectionImageRequest) GetModel() *string {
if g == nil {
return nil
}
return g.Model
}
func (g *GetSectionImageRequest) GetDeviceVendor() *string {
if g == nil {
return nil
}
return g.DeviceVendor
}
func (g *GetSectionImageRequest) GetDeviceName() *string {
if g == nil {
return nil
}
return g.DeviceName
}
func (g *GetSectionImageRequest) GetMarketplace() *string {
if g == nil {
return nil
}
return g.Marketplace
}
func (g *GetSectionImageRequest) GetSectionID() int64 {
if g == nil {
return 0
}
return g.SectionID
}
func (g *GetSectionImageRequest) GetUpdatedAt() int64 {
if g == nil {
return 0
}
return g.UpdatedAt
}
func (g *GetSectionImageRequest) GetMediaQuery() *components.MediaQuery {
if g == nil {
return nil
}
return g.MediaQuery
}
func (g *GetSectionImageRequest) GetComposite() *components.Composite {
if g == nil {
return nil
}
return g.Composite
}
type GetSectionImageResponse struct {
// HTTP response content type for this operation
ContentType string
// HTTP response status code for this operation
StatusCode int
// Raw HTTP response; suitable for custom response parsing
RawResponse *http.Response
}
func (g *GetSectionImageResponse) GetContentType() string {
if g == nil {
return ""
}
return g.ContentType
}
func (g *GetSectionImageResponse) GetStatusCode() int {
if g == nil {
return 0
}
return g.StatusCode
}
func (g *GetSectionImageResponse) GetRawResponse() *http.Response {
if g == nil {
return nil
}
return g.RawResponse
}