(kicad_symbol_lib (version 20211014) (generator kicad_symbol_editor)
  (symbol "1SS294" (pin_numbers hide) (pin_names (offset 1.016) hide) (in_bom yes) (on_board yes)
    (property "Reference" "D" (id 0) (at 0 2.54 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Value" "1SS294" (id 1) (at 0 -2.54 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Footprint" "Package_TO_SOT_SMD:SOT-23" (id 2) (at 0 -4.445 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "https://toshiba.semicon-storage.com/info/docget.jsp?did=3290&prodName=1SS294" (id 3) (at 0 -6.35 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_keywords" "diode Schottky" (id 4) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_description" "40V 0.1A Small signal Schottky diode, SOT-23" (id 5) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_fp_filters" "SOT?23*" (id 6) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (symbol "1SS294_0_1"
      (polyline
        (pts
          (xy 1.27 0)
          (xy -1.27 0)
        )
        (stroke (width 0) (type default) (color 0 0 0 0))
        (fill (type none))
      )
      (polyline
        (pts
          (xy 1.27 1.27)
          (xy 1.27 -1.27)
          (xy -1.27 0)
          (xy 1.27 1.27)
        )
        (stroke (width 0.254) (type default) (color 0 0 0 0))
        (fill (type none))
      )
      (polyline
        (pts
          (xy -1.905 0.635)
          (xy -1.905 1.27)
          (xy -1.27 1.27)
          (xy -1.27 -1.27)
          (xy -0.635 -1.27)
          (xy -0.635 -0.635)
        )
        (stroke (width 0.254) (type default) (color 0 0 0 0))
        (fill (type none))
      )
    )
    (symbol "1SS294_1_1"
      (pin passive line (at 3.81 0 180) (length 2.54)
        (name "A" (effects (font (size 1.27 1.27))))
        (number "1" (effects (font (size 1.27 1.27))))
      )
      (pin no_connect line (at 3.81 2.54 180) (length 2.54) hide
        (name "NC" (effects (font (size 1.27 1.27))))
        (number "2" (effects (font (size 1.27 1.27))))
      )
      (pin passive line (at -3.81 0 0) (length 2.54)
        (name "K" (effects (font (size 1.27 1.27))))
        (number "3" (effects (font (size 1.27 1.27))))
      )
    )
  )
  (symbol "FMN1" (pin_names (offset 1.016) hide) (in_bom yes) (on_board yes)
    (property "Reference" "D" (id 0) (at 0 2.54 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Value" "FMN1" (id 1) (at 0 -2.54 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Footprint" "Package_TO_SOT_SMD:SOT-23-5" (id 2) (at 0 -5.08 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "https://fscdn.rohm.com/en/products/databook/datasheet/discrete/diode/switching/fmn1t148-e.pdf" (id 3) (at 0 -7.62 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_keywords" "diode" (id 4) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_description" "High-speed switching diodes 2 pair Com K, SOT-23-5" (id 5) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_fp_filters" "SOT?23*" (id 6) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (symbol "FMN1_0_1"
      (polyline
        (pts
          (xy -1.27 1.27)
          (xy -1.27 -1.27)
        )
        (stroke (width 0.1524) (type default) (color 0 0 0 0))
        (fill (type none))
      )
      (polyline
        (pts
          (xy 1.27 -1.27)
          (xy 1.27 1.27)
        )
        (stroke (width 0) (type default) (color 0 0 0 0))
        (fill (type none))
      )
      (polyline
        (pts
          (xy 1.27 0)
          (xy -1.27 0)
        )
        (stroke (width 0) (type default) (color 0 0 0 0))
        (fill (type none))
      )
      (polyline
        (pts
          (xy 1.27 1.27)
          (xy -1.27 0)
          (xy 1.27 -1.27)
        )
        (stroke (width 0) (type default) (color 0 0 0 0))
        (fill (type none))
      )
    )
    (symbol "FMN1_1_1"
      (pin passive line (at 3.81 0 180) (length 2.54)
        (name "A" (effects (font (size 1.27 1.27))))
        (number "1" (effects (font (size 1.27 1.27))))
      )
      (pin passive line (at -3.81 0 0) (length 2.54)
        (name "K" (effects (font (size 1.27 1.27))))
        (number "2" (effects (font (size 1.27 1.27))))
      )
    )
    (symbol "FMN1_2_1"
      (pin passive line (at -3.81 0 0) (length 2.54)
        (name "K" (effects (font (size 1.27 1.27))))
        (number "2" (effects (font (size 1.27 1.27))))
      )
      (pin passive line (at 3.81 0 180) (length 2.54)
        (name "A" (effects (font (size 1.27 1.27))))
        (number "3" (effects (font (size 1.27 1.27))))
      )
    )
    (symbol "FMN1_3_1"
      (pin passive line (at -3.81 0 0) (length 2.54)
        (name "K" (effects (font (size 1.27 1.27))))
        (number "2" (effects (font (size 1.27 1.27))))
      )
      (pin passive line (at 3.81 0 180) (length 2.54)
        (name "A" (effects (font (size 1.27 1.27))))
        (number "4" (effects (font (size 1.27 1.27))))
      )
    )
    (symbol "FMN1_4_1"
      (pin passive line (at -3.81 0 0) (length 2.54)
        (name "K" (effects (font (size 1.27 1.27))))
        (number "2" (effects (font (size 1.27 1.27))))
      )
      (pin passive line (at 3.81 0 180) (length 2.54)
        (name "A" (effects (font (size 1.27 1.27))))
        (number "5" (effects (font (size 1.27 1.27))))
      )
    )
  )
  (symbol "NSR0530H" (pin_numbers hide) (pin_names hide) (in_bom yes) (on_board yes)
    (property "Reference" "D" (id 0) (at 0 2.54 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Value" "NSR0530H" (id 1) (at 0 -2.54 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Footprint" "Diode_SMD:D_SOD-323" (id 2) (at 0 -5.08 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "http://www.onsemi.com/pub/Collateral/NSR0530H-D.PDF" (id 3) (at 0 -7.62 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_keywords" "diode Schottky" (id 4) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_description" "30V 500mA Schottky diode, SOD-323" (id 5) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_fp_filters" "D?SOD?323*" (id 6) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (symbol "NSR0530H_0_1"
      (polyline
        (pts
          (xy 1.27 0)
          (xy -1.27 0)
        )
        (stroke (width 0) (type default) (color 0 0 0 0))
        (fill (type none))
      )
      (polyline
        (pts
          (xy 1.27 1.27)
          (xy 1.27 -1.27)
          (xy -1.27 0)
          (xy 1.27 1.27)
        )
        (stroke (width 0.2032) (type default) (color 0 0 0 0))
        (fill (type none))
      )
      (polyline
        (pts
          (xy -1.905 0.635)
          (xy -1.905 1.27)
          (xy -1.27 1.27)
          (xy -1.27 -1.27)
          (xy -0.635 -1.27)
          (xy -0.635 -0.635)
        )
        (stroke (width 0.2032) (type default) (color 0 0 0 0))
        (fill (type none))
      )
    )
    (symbol "NSR0530H_1_1"
      (pin passive line (at -3.81 0 0) (length 2.54)
        (name "K" (effects (font (size 1.27 1.27))))
        (number "1" (effects (font (size 1.27 1.27))))
      )
      (pin passive line (at 3.81 0 180) (length 2.54)
        (name "A" (effects (font (size 1.27 1.27))))
        (number "2" (effects (font (size 1.27 1.27))))
      )
    )
  )
  (symbol "UMP1N" (pin_names (offset 1.016) hide) (in_bom yes) (on_board yes)
    (property "Reference" "D" (id 0) (at 0 2.54 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Value" "UMP1N" (id 1) (at 0 -2.54 0)
      (effects (font (size 1.27 1.27)))
    )
    (property "Footprint" "Package_TO_SOT_SMD:SOT-353_SC-70-5" (id 2) (at 0 -5.08 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "https://fscdn.rohm.com/en/products/databook/datasheet/discrete/diode/switching/ump1ntr-e.pdf" (id 3) (at 0 -7.62 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_keywords" "diode" (id 4) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_description" "High-speed switching diodes 2 pair Com A, SC-70-5" (id 5) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "ki_fp_filters" "SOT?353*" (id 6) (at 0 0 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (symbol "UMP1N_0_1"
      (polyline
        (pts
          (xy -1.27 1.27)
          (xy -1.27 -1.27)
        )
        (stroke (width 0.1524) (type default) (color 0 0 0 0))
        (fill (type none))
      )
      (polyline
        (pts
          (xy 1.27 -1.27)
          (xy 1.27 1.27)
        )
        (stroke (width 0) (type default) (color 0 0 0 0))
        (fill (type none))
      )
      (polyline
        (pts
          (xy 1.27 0)
          (xy -1.27 0)
        )
        (stroke (width 0) (type default) (color 0 0 0 0))
        (fill (type none))
      )
      (polyline
        (pts
          (xy 1.27 1.27)
          (xy -1.27 0)
          (xy 1.27 -1.27)
        )
        (stroke (width 0) (type default) (color 0 0 0 0))
        (fill (type none))
      )
    )
    (symbol "UMP1N_1_1"
      (pin passive line (at -3.81 0 0) (length 2.54)
        (name "K" (effects (font (size 1.27 1.27))))
        (number "1" (effects (font (size 1.27 1.27))))
      )
      (pin passive line (at 3.81 0 180) (length 2.54)
        (name "A" (effects (font (size 1.27 1.27))))
        (number "2" (effects (font (size 1.27 1.27))))
      )
    )
    (symbol "UMP1N_2_1"
      (pin passive line (at 3.81 0 180) (length 2.54)
        (name "A" (effects (font (size 1.27 1.27))))
        (number "2" (effects (font (size 1.27 1.27))))
      )
      (pin passive line (at -3.81 0 0) (length 2.54)
        (name "K" (effects (font (size 1.27 1.27))))
        (number "3" (effects (font (size 1.27 1.27))))
      )
    )
    (symbol "UMP1N_3_1"
      (pin passive line (at 3.81 0 180) (length 2.54)
        (name "A" (effects (font (size 1.27 1.27))))
        (number "2" (effects (font (size 1.27 1.27))))
      )
      (pin passive line (at -3.81 0 0) (length 2.54)
        (name "K" (effects (font (size 1.27 1.27))))
        (number "4" (effects (font (size 1.27 1.27))))
      )
    )
    (symbol "UMP1N_4_1"
      (pin passive line (at 3.81 0 180) (length 2.54)
        (name "A" (effects (font (size 1.27 1.27))))
        (number "2" (effects (font (size 1.27 1.27))))
      )
      (pin passive line (at -3.81 0 0) (length 2.54)
        (name "K" (effects (font (size 1.27 1.27))))
        (number "5" (effects (font (size 1.27 1.27))))
      )
    )
  )
)
