```coffeescript
window.StrutBuilder ||= {}

# [
#   { #slide 1
#     start: 0,
#     end: 2.5,
#     texts: [
#              {text: 'Hum', position: 1.2},
#              {text: 'bewafaa', position: 1.7}
#            ]
#   },
#   { #slide 2
#     start: 2.5,
#     end: 4.3,
#     texts: [
#              {text: 'Hargiz', position: 3.3},
#              {text: 'na they', position: 3.8}
#            ]
#   }
# ]
StrutBuilder.build = (data) ->
  slides = for slide, i  in data
    StrutBuilder.Slide.build(slide, i)
  {
    slides: slides,
    activeSlide: slides[0],
    fileName: 'presentation-unnamed',
    customStylesheet: '',
    deckVersion: '1.0',
    customBackgrounds: { bgs: [] }
  }
```

Convert segments and their text to words in the PPT slides
user
```coffeescript
window.StrutBuilder ||= {}

# [
#   { #slide 1
#     start: 0,
#     end: 2.5,
#     texts: [
#              {text: 'Hum', position: 1.2},
#              {text: 'bewafaa', position: 1.7}
#            ]
#   },
#   { #slide 2
#     start: 2.5,
#     end: 4.3,
#     texts: [
#              {text: 'Hargiz', position: 3.3},
#              {text: 'na they', position: 3.8}
#            ]
#   }
# ]
StrutBuilder.build = (data) ->
  slidesdata = (slide for slide in data when slide.data.type == 'segment')
  itemdata = (item for item in data when item.data.type == 'segment_item')
  for slidedata in slidesdata
    items = for item in itemdata when (slidedata.start <= item.start and item.start < slidedata.end)
      text: item.data.note
      position: item.start
    slidedata.texts = items

  slides = for slide, i in slidesdata
    StrutBuilder.Slide.build(slide, i)
  {
    slides: slides,
    activeSlide: slides[0],
    fileName: 'presentation-unnamed',
    customStylesheet: '',
    deckVersion: '1.0',
    customBackgrounds: { bgs: [] }
  }
```
assistant