<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/76416>76416</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            After 0e46b49de433, Assertion failed: ((PDiffI->getUnitInc() >= 0) == (PNew >= POld) && "PSet overflow/underflow"), function getUpwardPressureDelta, file llvm/lib/CodeGen/RegisterPressure.cpp, line 1180.
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
            arsenm
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          DimitryAndric
      </td>
    </tr>
</table>

<pre>
    After 0e46b49de43349f8cbb2a7d4c6badef6d16e31ae ("Reapply "RegisterCoalescer: Add implicit-def of super register when coalescing SUBREG_TO_REG") I am seeing an assertion failure when building https://github.com/freebsd/freebsd-src/blob/main/sys/dev/fb/vga.c:

```
Assertion failed: ((PDiffI->getUnitInc() >= 0) == (PNew >= POld) && "PSet overflow/underflow"), function getUpwardPressureDelta, file /share/dim/src/llvm/llvm-project/llvm/lib/CodeGen/RegisterPressure.cpp, line 1180.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0. Program arguments: /home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang -cc1 -triple x86_64-unknown-freebsd15.0 -S -disable-free -clear-ast-before-backend -mrelocation-model static -mframe-pointer=all -relaxed-aliasing -ffp-contract=on -fno-rounding-math -mconstructor-aliases -ffreestanding -mcmodel=kernel -target-cpu x86-64 -target-feature -mmx -target-feature -sse -target-feature -aes -target-feature -avx -disable-red-zone -no-implicit-float -tune-cpu generic -O2 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wcast-qual -Wundef -Wmissing-include-dirs -Werror -std=gnu99 -fwrapv -stack-protector 1 -fgnuc-version=4.2.1 -vectorize-loops -vectorize-slp -faddrsig vga-0959df.i
1.      <eof> parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module 'vga-0959df.c'.
4.      Running pass 'Machine Instruction Scheduler' on function '@vga_save_state'
 #0 0x0000000004248fd8 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x4248fd8)
 #1 0x0000000004246d19 llvm::sys::RunSignalHandlers() (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x4246d19)
 #2 0x0000000004249796 SignalHandler(int) Signals.cpp:0:0
 #3 0x0000000829aa050f handle_signal /usr/src/lib/libthr/thread/thr_sig.c:0:3
 #4 0x0000000829a9facb thr_sighandler /usr/src/lib/libthr/thread/thr_sig.c:245:1
 #5 0x0000000828adb2d3 ([vdso]+0x2d3)
 #6 0x000000082f52a05a _thr_kill /usr/obj/usr/src/amd64.amd64/lib/libc/thr_kill.S:4:0
 #7 0x000000082f4a3b34 __raise /usr/src/lib/libc/gen/raise.c:0:10
 #8 0x000000082f5558f9 abort /usr/src/lib/libc/stdlib/abort.c:67:17
 #9 0x000000082f486e01 (/lib/libc.so.7+0x98e01)
#10 0x00000000039cbcdb (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x39cbcdb)
#11 0x000000000386f4e2 llvm::GenericScheduler::initCandidate(llvm::GenericSchedulerBase::SchedCandidate&, llvm::SUnit*, bool, llvm::RegPressureTracker const&, llvm::RegPressureTracker&) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x386f4e2)
#12 0x000000000386fc61 llvm::GenericScheduler::pickNodeFromQueue(llvm::SchedBoundary&, llvm::GenericSchedulerBase::CandPolicy const&, llvm::RegPressureTracker const&, llvm::GenericSchedulerBase::SchedCandidate&) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x386fc61)
#13 0x000000000387070d llvm::GenericScheduler::pickNode(bool&) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x387070d)
#14 0x0000000003866b11 llvm::ScheduleDAGMILive::schedule() (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x3866b11)
#15 0x0000000003873157 (anonymous namespace)::MachineSchedulerBase::scheduleRegions(llvm::ScheduleDAGInstrs&, bool) MachineScheduler.cpp:0:0
#16 0x00000000038729cf (anonymous namespace)::MachineScheduler::runOnMachineFunction(llvm::MachineFunction&) MachineScheduler.cpp:0:0
#17 0x00000000037c9018 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x37c9018)
#18 0x0000000003d70405 llvm::FPPassManager::runOnFunction(llvm::Function&) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x3d70405)
#19 0x0000000003d789e4 llvm::FPPassManager::runOnModule(llvm::Module&) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x3d789e4)
#20 0x0000000003d70ff2 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x3d70ff2)
#21 0x00000000049af1c1 clang::EmitBackendOutput(clang::DiagnosticsEngine&, clang::HeaderSearchOptions const&, clang::CodeGenOptions const&, clang::TargetOptions const&, clang::LangOptions const&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, std::__1::unique_ptr<llvm::raw_pwrite_stream, std::__1::default_delete<llvm::raw_pwrite_stream>>, clang::BackendConsumer*) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x49af1c1)
#22 0x00000000049cf912 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x49cf912)
#23 0x000000000664bdb6 clang::ParseAST(clang::Sema&, bool, bool) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x664bdb6)
#24 0x0000000004d95803 clang::FrontendAction::Execute() (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x4d95803)
#25 0x0000000004d0b3ad clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x4d0b3ad)
#26 0x0000000004e6e35c clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x4e6e35c)
#27 0x00000000026d7e1a cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x26d7e1a)
#28 0x00000000026d5073 ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, llvm::ToolContext const&) driver.cpp:0:0
#29 0x00000000026d406a clang_main(int, char**, llvm::ToolContext const&) (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x26d406a)
#30 0x00000000026e2d64 main (/home/dim/obj/llvmorg-18-init-15692-g007ed0dccd6a-freebsd15-amd64-ninja-clang-rel-1/bin/clang+0x26e2d64)
#31 0x000000082f4785ca __libc_start1 /usr/src/lib/libc/csu/libc_start1.c:157:2
Abort trap
```

Reduced test case (C):

```c
// clang -cc1 -triple x86_64-- -S -tune-cpu generic -O2 -std=gnu99 vga-min.c
int outb_port, biosadapters, probe_adapters___trans_tmp_1;
typedef int vi_probe_t(int, int **, void *, int);
typedef int vi_init_t(int, int *, int);
typedef int vi_show_font_t(int *, int);
typedef int vi_save_palette_t(int *, unsigned char *);
typedef int vi_load_palette_t(int *, unsigned char *);
typedef int vi_set_border_t(int *, int);
typedef int vi_save_state_t(int *, void *, unsigned long);
typedef int vi_set_win_org_t(int *, long);
typedef int vi_read_hw_cursor_t(int *, int *, int *);
typedef int vi_set_hw_cursor_t(int *, int, int);
typedef int vi_set_hw_cursor_shape_t(int *, int, int, int, int);
typedef int vi_blank_display_t(int *, int);
typedef int vi_mmap_t(int *, unsigned long, unsigned long *, int, char *);
typedef int vi_fill_rect_t(int *, int, int, int, int, int);
typedef int vi_bitblt_t(int *, ...);
typedef struct {
  vi_init_t *init;
  vi_show_font_t *show_font;
 vi_save_palette_t *save_palette;
  vi_load_palette_t *load_palette;
 vi_set_border_t *set_border;
  vi_save_state_t *save_state;
 vi_set_win_org_t *set_win_org;
  vi_read_hw_cursor_t *read_hw_cursor;
 vi_set_hw_cursor_t *set_hw_cursor;
  vi_set_hw_cursor_shape_t *set_hw_cursor_shape;
  vi_blank_display_t *blank_display;
  vi_mmap_t *mmap;
  vi_fill_rect_t *fill_rect;
  vi_bitblt_t *bitblt;
  int (*reserved2)(void);
} video_switch_t;
struct video_driver {
  int (*configure)(int);
};
struct {
  char regs[4];
} *vga_load_state_p;
char vga_load_state_data;
static int vga_configure(int flags) { return biosadapters; }
static int vga_error(void) { return 9; }
vi_probe_t vga_probe;
static int vga_init(int unit, int *adp, int flags) { return 0; }
static int vga_show_font(int *adp, int page) { return 0; }
static int vga_save_palette(int *adp, unsigned char *palette) { return 0; }
static int vga_load_palette(int *adp, unsigned char *palette) { return 0; }
static int vga_set_border(int *adp, int color) { return 0; }
static int vga_save_state(int *adp, void *p, unsigned long size) { return 0; }
static int vga_load_state(void) {
  int i;
  for (i = 0; i < 4; ++i) {
    char data = 0;
    __asm("" : : "a"(data));
  }
 for (i = 0; i < 20; ++i) {
    __asm("" : : "Nd"(outb_port));
 vga_load_state_data = vga_load_state_p->regs[i];
    __asm("");
 }
  return 0;
}
static int vga_set_origin(int *adp, long offset) { return 9; }
static int vga_read_hw_cursor(int *adp, int *col, int *row) { return 0; }
static int vga_set_hw_cursor(int *adp, int col, int row) { return 0; }
static int vga_set_hw_cursor_shape(int *adp, int base, int height, int celsize,
                                   int blink) {
 return 0;
}
static int vga_blank_display(int *adp, int mode) { return 0; }
static int vga_mmap_buf(int *adp, unsigned long offset, unsigned long *paddr,
                        int prot, char *memattr) {
  return 0;
}
static int vga_fill_rect(int *adp, int val, int x, int y, int cx, int cy) {
  return 9;
}
static int vga_bitblt(int *adp, ...) { return 9; }
video_switch_t vgavidsw = {vga_init, vga_show_font,
                           vga_save_palette, vga_load_palette,
                           vga_set_border, vga_save_state,
                           vga_set_origin, vga_read_hw_cursor,
                           vga_set_hw_cursor, vga_set_hw_cursor_shape,
                           vga_blank_display, vga_mmap_buf,
                           vga_fill_rect, vga_bitblt,
                           vga_error};
struct video_driver vga_driver = {vga_configure};
static void clear_mode_map(void) {}
static int map_bios_mode_num(void) { return 1; }
static int probe_adapters(void) {
  map_bios_mode_num();
  switch (probe_adapters___trans_tmp_1)
    clear_mode_map;
  return biosadapters;
}
static void fill(void) {}
static void filll_io(void) {}
int vga_probe(int unit, int **adpp, void *arg, int flags) {
 probe_adapters();
  vga_load_state();
  return 0;
  fill;
 filll_io;
}
```

Further reduced with bugpoint:

```ll
; ModuleID = 'bugpoint-reduced-simplified.bc'
source_filename = "vga-min.c"
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-freebsd15.0"

%struct.video_switch_t.3.26.76.97.147.117 = type { ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr }
%struct.video_driver.4.27.77.98.148.118 = type { ptr }
%struct.anon.5.28.78.99.149.119 = type { [4 x i8] }

@vgavidsw = external dso_local global %struct.video_switch_t.3.26.76.97.147.117, align 8
@vga_driver = external dso_local global %struct.video_driver.4.27.77.98.148.118, align 8
@outb_port = external dso_local global i32, align 4
@biosadapters = external dso_local global i32, align 4
@probe_adapters___trans_tmp_1 = external dso_local global i32, align 4
@vga_load_state_p = external dso_local global ptr, align 8
@vga_load_state_data = external dso_local global i8, align 1

declare dso_local void @vga_init() #0

declare dso_local void @vga_show_font() #0

declare dso_local void @vga_save_palette() #0

declare dso_local void @vga_load_palette() #0

declare dso_local void @vga_set_border() #0

declare dso_local void @vga_save_state() #0

declare dso_local void @vga_set_origin() #0

declare dso_local void @vga_read_hw_cursor() #0

declare dso_local void @vga_set_hw_cursor() #0

declare dso_local void @vga_set_hw_cursor_shape() #0

declare dso_local void @vga_blank_display() #0

declare dso_local void @vga_mmap_buf() #0

declare dso_local void @vga_fill_rect() #0

declare dso_local void @vga_bitblt(ptr, ...) #0

declare dso_local void @vga_error() #0

declare dso_local void @vga_configure() #0

declare dso_local void @vga_probe() #0

declare dso_local void @probe_adapters() #0

define dso_local void @vga_load_state() #0 {
entry:
  %i = alloca i32, align 4
  store i32 0, ptr %i, align 4
  br label %for.cond

for.cond:                                         ; preds = %for.body, %entry
  %0 = load i32, ptr %i, align 4
  %cmp = icmp slt i32 %0, 4
  br i1 %cmp, label %for.body, label %for.end

for.body: ; preds = %for.cond
  call void asm sideeffect "", "{ax},~{dirflag},~{fpsr},~{flags}"(i8 0) #2
  %1 = load i32, ptr %i, align 4
  %inc = add nsw i32 %1, 1
  store i32 %inc, ptr %i, align 4
  br label %for.cond

for.end: ; preds = %for.cond
  store i32 0, ptr %i, align 4
  br label %for.cond1

for.cond1:                                        ; preds = %for.cond1, %for.end
  call void asm sideeffect "", "N{dx},~{dirflag},~{fpsr},~{flags}"(i32 poison) #2
  %2 = load ptr, ptr @vga_load_state_p, align 8
  %regs = getelementptr inbounds %struct.anon.5.28.78.99.149.119, ptr %2, i32 0, i32 0
  %3 = load i32, ptr %i, align 4
  %idxprom = sext i32 %3 to i64
  %arrayidx = getelementptr inbounds [4 x i8], ptr %regs, i64 0, i64 %idxprom
  %4 = load i8, ptr %arrayidx, align 1
  store i8 %4, ptr @vga_load_state_data, align 1
 %5 = load i32, ptr %i, align 4
  %inc5 = add nsw i32 %5, 1
  store i32 %inc5, ptr %i, align 4
  br label %for.cond1, !llvm.loop !1
}

declare dso_local void @map_bios_mode_num() #0

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #1

attributes #0 = { "tune-cpu"="generic" }
attributes #1 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #2 = { nounwind }

!llvm.ident = !{!0}

!0 = !{!"clang version 18.0.0git (https://github.com/llvm/llvm-project.git 007ed0dccd6a3d19f331eb7cd91438d792754439)"}
!1 = distinct !{!1, !2}
!2 = !{!"llvm.loop.mustprogress"}
```


</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzUfF1zozjW8K-hb1RQILCBi75wnM5sV-1M5-30vnPpEkhgbYPESsJJ9uL57U9J4ts4cbKzk3lSM24hzrfOOTo6YCMpackI-exsbhwIkZCE1Q6Ezub2E2rVkYvPt7SmSjzvGBY0_5Rx_Px5VygigE-ibRalmERhGKVFkmcZRDGO8m2GMCm2ONiSMEAEODBxIPxOUNNUz8AMSyoVEXuOKiJzIpxwB3YYA1o3Fc2pcjEpAC-AbBsigOjAweORMJBbJMpK8PCPm-9ffjn8-Hb4_uUXLTVMwVeAaiAJ0fcRA0hKIhTlDBSIVq0glkjW0gprkKNSjXTCnQPvHHhXUnVsMy_ntQPvCkFIJvE4cqXIHXiXVTxz4F2NKHPgnXyWDrzD5KTh9PypRF6uKfq3jt9_bv3uP3O5mwlFsFbfGCm5v6VF8dV1wi8lUf9gVH1lubmTAif84oS3wLfjWz3WCL-Rx_7W_bcKm7tw68CtNvT9A1GAn4goKv7owLuW4X6sjeXAPShalhtRNMPmEQl8L4iUrSC3pFLIgNBKL-KdPCJBtLJUm8cao6pOdfeP2wj-T5KrySzVBtlzTH4h2lb9uvccvLxpNIOKMgKCIPE9a5_7v3_ZPXwBss1qqgACWVsCQRouFFD8pSVbl4ZK2RK9SgAxDCjLqxYToI4E5ALJI8hQ_lMJlBMtSyNII3hOpCQYSN4KO60xkZQ8p0gRDETLgMwFbVQn8oNC-U-A27oZlt73wL3gpUA1QKJsa8KUtCt9d-T1aEie_bOTmYvSDRKXMqrcYLNNoVv6fkywj_Mcb5Hb-WGwcVGNt5HLKPsncvMKsdIVpHID7Z3GK80ccPM8AK4StKkIeEq2h23ktuwn449spOX5wH0ALqYSZRUx88DNK4KEi6RyM1JwQVxtI8IwcGtBKp4j7TJuzTGpgFRI0Ry4dSFQTdyGU6Z0SN-iqgJaLvREsIsqiqSOOLcoGjfnTFtcOeEtZ8AtGHcFb5kOSbdG6gjcOudMKtHmiguLTKTGFYRIhQykBjIiOOHtTyIYqYCrkCiJcvOm1Qq722iYKghSOv7dun46n5SSnE8izfJs8vQ0WksQ7P6bMwJcxt0hexUVRwq4qmXESFISRoQ20TcI3N-NWX6XStBcaS9VXD03mtPvNZXaRPPJzp4uElTb5fdcr8q_WqSJ6HguJoidb7uYCo1KhOACuFJhJ7wtWZumwC0eBWpOehLlPw0nok0MAuAWJWtz90SEpJw54W3kQS8A7skA0H8Tt-K8kdMJWTXALRDGQtISnErk-ukmxYVHbQgEHjB_TrgnvHDCL6DRW4wASAHtTbwwycUCww5Y5wtrMuNl9mbY3fzeMqaXvkFSAgfGd336utcTvyKGSiIcGAPOQM1xazJXPJEsd2DcxWx0geavKD_qjPS1c0BN_iE_Ek2tpz2kTQfGTuSfSnSQ6EQOOhiInjMcgANDH_hPfv8XwSgpcAJMogp3TrjT-4cZ3AvKlEkjP2wuSkYggR4PXCpBUG2S-x5QpmyqT_60dOLAG_-pU0BvHoOGwULDLQ7SNQ2_t-yBlgxVf0MMV0TIfmf7ACW0jDMl4EKJNE63YCauA5PO6nZamu0r3Pnm_4FQOBJKYIqQv_ELcDQkDtIg6h2glWLcQ802WdFMHfWkOgqCsB1oDFNNaCbhyCSaM0kLlGegg7e8xHu4wGjjhLtg5LOZ8kkQziAOzXptbk5YcmdzawwKcTgz5naKVmwg8jcIHDSnn7Sa6G-XeSqlWUTPfE5lzjtBNbr34IS7aG70eMYwQmEWRuBwEIhKctEQ-qI0hYmBG-wcTAgnc002m6RIAcp0KfISWamwvTaghvI21qQniSGdy5xsiR90sTDS8iT3YmPjNCF-MFhZh90ss4RpnuU4-_ODqWM8k2yWEcJkW0QETjLCL3Y_HHOqmdVS7fXOjk0KTS7D3yBJ7B0zNUEyuXFEfNAltAN3ejbjvJrf_U7KvhLVKfcnEcAUHWdkzgENyAdkrs6WM2PDpbHzbfCqsRua__yNY3IneP3_WtLODW6Ab3RBhsTzmTkuL4deiXte0fz5akteAHzTkn_QQuTbeTyG84WI_djHVy-EAxProR-ljxF3pk-0cKxtFkwdq1fkdvfLr1__Tk_d-shu-qM2907QmSabxcqEwSbWkiHG2XPNWwkYqolsTN2VWj26KnDFA3sN9XGWM3keOdYopnyUnWfbtU3Bkup5DaHl3S7khWlevFXernJs2TfW3epr5ZnAZ_e214sZz8SM89QPpqXtgrSu0CdCrUqzEOPPdx6rxMx5kpmWOPYjfzPR8u5eK9afPP7q-lnxZ_qlC_2SlERX6Pcr76J8suDd1IfppkWf6gb95doVxbQQqUiJ8ufu_DVq-bVuqkHTv5aGWoGZhvPDV4qKIA-ARTESf6mpurHNm2-talrlwGRy-5aiknGpaC6_sJKyvoaagPyNIEzEA0EiP35rtPfK2aY9Ae1afa9A_TAdlVeA_o5YuQYySbVKUFZ-J8V8ul-i3YJgZ4RdF39TlK9MiVbSE_lOij1T90o44X68fSq6vHVHK_LwLBWpnfCLJmE6K_rO4RDYQcvov1pyaBYk9AG-eRRUkUN_jF_DxqRAbaUOmFREkVcohF86Kc6V3HMm21qXqbuPOWBbP5w56vyAneZFGsCXRLe-Z86yPwRisjLdIFvQTz149_Bjz5kiT-qjwrJTZqbtrBbcbqMMZ9uptvdISLJ7-DHX5YHUaFYwjIXDn65VJ_RMq1lFGOF0k_jhVKs7oVdiCDKbgJ5I3qoPKwc7KWdqbOZq-FmI8DyN1Q2tiNAVHGI5mSnSJ5Dkst4f5YdWk5mqs0oyIlsSbvLZ9mCVGjU-dc39uYJnFvmoxGI1mKk4q0LhFsckQCDPg4N9QjfZvXdCoGe9YYT7_IiGo-euz6OzObgHJ07xR2naKTLTNFlouvHjEPQruA9-mFQxPYzUqKr-v-nW25JmRe3FpqppdOl0su2mAAt6unAMgOlCrMjfIutj_RKYvqk1sLHn7jqmH2F0LfzU6PP-PdwSiLcR0Hp9hHiG-0y8YN5FjJNNjsDhUNEsP0iFhApebFTmsu0uOmjTqww2sRPuYPe02nQ7lUDN6sNs-_md4DYnGCgiFciR6bom--5wuvYkPO9VuHPgHbj8vNI1TyfXH6VNH2ydSuTWlHkdXcoU4K3KDg0XxvcyyiXCqFHmucMeNIJn5NDPHA4HpYuMg6obXYzdWCrquSGYFEBTO9GDxVGjQ-v50aF1ugDd2D4puERIe8UqndcQ5ZE_HgrOBuwr0dCJHBpUEaXIErNl5hUQbNOfTXeX6FQc4T-CjiTqkHGBiXiHHuYR2xJvavtBkorrwHlRikfKDlyUS3KvYAqC8OH4eMhbIfmaDmfDF4V4idIVRplRkEfUnFlnSudKqlmF2M8DprKp0PPbVqmuUXPRO6xlFxMLOa_woIJW1UGQfD0Q3qcxVVl1Rs_zvDUc-2QYOHE3D8aw1ph6NOCAReRqgOFyhDqLUwM3mZkTnMeihp3OzMlOws0QHa4XMk7Ca2Bun2gvyQ1x09PrJuYEl3GigedzZ4QX0LOphbRrfn-GY2_MMRe-rXFmU3No684aSI_m9yZuqAGGywW_zrMMIzOe3Le-lhjLSCJOBNtXsxJbfY6u58S34EQx4Qf5SFV-PIxUOm-0d22pNnXNkUXOWUHLVhDLYhEQTny7JDmhYqJSkFI6m5vI2dzOBHPg7lQi65TWg0ZLGcTFXYwUmvAybxCZOCzRYSKkicSiQqU09WB8AwRRrWDz7Ty8AVr0NVrmFZjRmFMS6Qxv3N4NnhlfEpDaJoS-bM1wSPQIN_3VmtT-S6KOKWFIQBNyDSrJm6hNE8eS4NlePQBez2CWbf4bDCZZas0gOa_0yr7RIt37OQt6ffXQnO9Mkv777WbpuUy8bhqLdBL-Bdf2SSiwL3eGN0AP9yAyTOCNA2_ogkQXijqEBqzx3uGAZG1fuXUgBOaNQ_PWIURmKjGhB9Np4INRnYsCQf8liS5z_Q1btpNqfM57JTMY3st84jrhly790Gn6OWc_Iz9qNl2_MeFdcj0uaNkfXieuYpyCF4Uk6sV8sqC42PXWHNqk52pyJfjjW-PlZQ4T8v8J7W5LXeOQIUn68ZHQ8jgkx5xUNpT246q98mcIVpT9nHvb1as439PXxK3Ng_frzWBKgawtLue7mXusVLkNwli8agST8AWfFcM1qZFSYhF5VxtjLE3WDHFCg2c89YPnYemGqfx5nX36-lrYsmfJ21bXL-3K03pHUzpRLB9NfnDim3Ez3i-30Nfd7HyX3K9sbFfSmexV-7Pd5noafdLZryaN6-lMkS4H8HX0FmG0X0TCdUQm7refOcR16LaMOy9PZxWvBuyL39E_xmpyhm680-z75l33g04FB13fz3ftFXc2mlMuLQpr6_XyMriUSOadp_UqYY3HfMO2MaF36hc7WcNbmbpqmCsaLqN4UVOvB7QxmV7Nlw01gFUHyi-A9rnB1tqr9bTNFLMaDYlyrcTudDkz7txqZxXa_PZZNgVW1eFy0OjMPKtd0btWqKP5BpPtjj5SdQRZW5p3-i91RquqmwhvgH2Y_fXWOjSMe1y3o-hK86WDghLsZfnw3rn93ooOOsJQTTpsOPZIYdfbtV9uMKVkhZ55q3pQ4tZOuCNuA2Pz6jE0H_oymF_q0TYyHy4dBgFMnHAXwMQtEr8bMTO17dG3kfsQ2IptKkrX_e3EuPyllQGv7yNvbErw5luGF3pw68VbL429IIq9IIgNbfXcEBOtjTI58r_7z5gHlnJ2z1UiD8ZeHHtp4gVR4gVBciblGg3EOPM2Hky8OPHS1Aui1AuCdI6rj-vgCdDE2dxOiNhP89WFcU8lT4oIhiqAJT9UPEcVKCuemXfWrzaw-b5URUsGkimXaW6-ns9FA61xGc4YrzChIRzRowF9mgDfR-GlXPw-istT0CtUOp9bM__aGesFcSYGDqYug0leIUEmGDYzWyZda8Q-vQv96xGn3Y93YM-7HW8nsOhmvEOCabfinQpMNqV3cB8OrG9HPzudvk-CP5DCcMZ8O53lse_tFCbHvLcjTw9a7xC-Pyd1gdwfkN5EpG96vh1z2np9O3ZfyL0Nc61kW0EvKHsxeJfBMxaFhCnxPFRbQG8xtruFKk1rNfMCIBUXRN8D_rCLww1dgcwEqFBGzN5VcOHlnOGp7MNceE3Xw_7p4q8RBMuuEjKEM47NAcyBG6vTqJBv4LQhenVeENiBm7y2OwnVA1kpo6imo8GnmtGgAzfNr6mavTSzSXKuuoEz_cAVlUZbAZCjqltXJGsgKSakKEiuDwK2q7c3o_gGPekyBu7_x4lvMBX6GDBOFI0UkytzRNCXUJ8wku778zCEE2MEbzQeZbn1H4wBk4-97QINHZz7j8X4A5yIWB961ZD_mesGa74bvMF5L8oXdM47c5Rr1_03vdjvXvgQgoZTydnK8sNx-acl-3ntdVZZGXRBSqtpSRSpSE2Y0viUZbxl2givleuTNTLKDgtnByOn8K1-ip8awWuDJcnTEOQhUBzow9oIioRAzxQ_vajI5CAxYW568lrabdSJvY0m3CdMoon8yYRCz_ys4hxcOTHol5fGPtNYYjtws3l7aG_WYnvzYmxv3hVmxq-DqjrVXsV5oy-CZVfhlb3zQp_obPvUITl8VX6nlDC_RME0rSpD-U_AuPnhB8blM8sB4y17pAyDR1pVXVOkJjUXup5CoqxJrfF12WheSR_aTL2kvXxWOVoQRWvimTfMvMbXAbmNAK3rrpmjTaeFaZR9NG2-Vf7Xk58w_C7pkVKCZq0isqtMbHdSZ7X-xTadpkKdrLoX3MxDtN4L5vjBgP9H6n-JG5xw64guewidD1NMWN8_CnTxBQP_HNSfQzgQ2nf_up-dAEHi-Z5fUvPGwtt-6sXTWNOXLEMcpEUYBiSLc5wGUZjgOIXxJopC8whSFxNDTyWwdsVUKsrM5tOJ2AfqDBieqTHEsVe3UjWCl4JIOeOx1iL8hD-HOA1T9Il8DmI_3IZhmMafjp-zeJNtcJyQJPC3KCY-SYsgCVGIMcZRHHyin6EPwwDCLQxhuok9lORxinESFTiGKNw4kU9qRCvPiMZF-cn8Es7neBsF208mIcnuh58YeQTmZvfbT-KzMWzWllJHAZVKjlQUVRVZ-REobaf_iz9t9O5fK_rUiurz-3-OyKzD_wYAAP__WunSxg">