From 156e02ff3a1bd3a96402aa686627c6f12046fd4c Mon Sep 17 00:00:00 2001 From: Cheng Zhou Date: Tue, 16 Dec 2025 19:35:26 +0800 Subject: [PATCH] =?UTF-8?q?Step=2010=EF=BC=9A=E8=B4=B9=E7=94=A8=E7=AE=A1?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/app/api/v1/finance.py | 190 ++++++++++++++++++++++++ backend/app/api/v1/finance_dashboard.py | 32 ++++ backend/app/api/v1/router.py | 4 +- backend/app/crud/finance.py | 174 ++++++++++++++++++++++ backend/app/db/base.py | 1 + backend/app/models/finance.py | 37 +++++ backend/app/schemas/finance.py | 72 +++++++++ pg_data/base/16384/1247 | Bin 131072 -> 131072 bytes pg_data/base/16384/1249 | Bin 548864 -> 557056 bytes pg_data/base/16384/1259 | Bin 131072 -> 139264 bytes pg_data/base/16384/1259_fsm | Bin 24576 -> 24576 bytes pg_data/base/16384/24576 | Bin 8192 -> 8192 bytes pg_data/base/16384/24581 | Bin 16384 -> 16384 bytes pg_data/base/16384/24583 | Bin 16384 -> 16384 bytes pg_data/base/16384/24584 | Bin 8192 -> 8192 bytes pg_data/base/16384/24590 | Bin 16384 -> 16384 bytes pg_data/base/16384/24597 | Bin 16384 -> 16384 bytes pg_data/base/16384/24598 | Bin 8192 -> 8192 bytes pg_data/base/16384/24605 | Bin 16384 -> 16384 bytes pg_data/base/16384/24612 | Bin 16384 -> 16384 bytes pg_data/base/16384/24613 | Bin 8192 -> 8192 bytes pg_data/base/16384/24618 | Bin 16384 -> 16384 bytes pg_data/base/16384/24620 | Bin 16384 -> 16384 bytes pg_data/base/16384/24632 | Bin 16384 -> 16384 bytes pg_data/base/16384/24672 | Bin 8192 -> 8192 bytes pg_data/base/16384/24678 | Bin 16384 -> 16384 bytes pg_data/base/16384/24740 | Bin 8192 -> 8192 bytes pg_data/base/16384/24747 | Bin 16384 -> 16384 bytes pg_data/base/16384/24749 | Bin 16384 -> 16384 bytes pg_data/base/16384/24761 | Bin 16384 -> 16384 bytes pg_data/base/16384/24762 | Bin 16384 -> 16384 bytes pg_data/base/16384/24763 | Bin 8192 -> 8192 bytes pg_data/base/16384/24770 | Bin 16384 -> 16384 bytes pg_data/base/16384/24782 | Bin 16384 -> 16384 bytes pg_data/base/16384/24924 | Bin 8192 -> 8192 bytes pg_data/base/16384/24931 | Bin 16384 -> 16384 bytes pg_data/base/16384/24933 | Bin 16384 -> 16384 bytes pg_data/base/16384/24940 | Bin 16384 -> 16384 bytes pg_data/base/16384/24941 | Bin 8192 -> 8192 bytes pg_data/base/16384/24946 | Bin 16384 -> 16384 bytes pg_data/base/16384/24948 | Bin 16384 -> 16384 bytes pg_data/base/16384/24960 | Bin 16384 -> 16384 bytes pg_data/base/16384/24961 | Bin 16384 -> 16384 bytes pg_data/base/16384/24962 | Bin 8192 -> 8192 bytes pg_data/base/16384/24966 | Bin 16384 -> 16384 bytes pg_data/base/16384/24968 | Bin 16384 -> 16384 bytes pg_data/base/16384/24985 | Bin 16384 -> 16384 bytes pg_data/base/16384/24986 | Bin 16384 -> 16384 bytes pg_data/base/16384/24987 | Bin 16384 -> 16384 bytes pg_data/base/16384/24988 | Bin 8192 -> 8192 bytes pg_data/base/16384/24994 | Bin 16384 -> 16384 bytes pg_data/base/16384/25021 | Bin 16384 -> 16384 bytes pg_data/base/16384/25022 | Bin 16384 -> 16384 bytes pg_data/base/16384/25023 | Bin 16384 -> 16384 bytes pg_data/base/16384/25024 | Bin 0 -> 8192 bytes pg_data/base/16384/25029 | 0 pg_data/base/16384/25030 | Bin 0 -> 8192 bytes pg_data/base/16384/25031 | Bin 0 -> 16384 bytes pg_data/base/16384/25063 | Bin 0 -> 16384 bytes pg_data/base/16384/25064 | Bin 0 -> 16384 bytes pg_data/base/16384/25065 | Bin 0 -> 16384 bytes pg_data/base/16384/2579 | Bin 16384 -> 16384 bytes pg_data/base/16384/2604 | Bin 8192 -> 8192 bytes pg_data/base/16384/2606 | Bin 40960 -> 40960 bytes pg_data/base/16384/2608 | Bin 147456 -> 155648 bytes pg_data/base/16384/2610 | Bin 49152 -> 49152 bytes pg_data/base/16384/2619 | Bin 204800 -> 212992 bytes pg_data/base/16384/2619_fsm | Bin 24576 -> 24576 bytes pg_data/base/16384/2620 | Bin 32768 -> 40960 bytes pg_data/base/16384/2620_fsm | Bin 24576 -> 24576 bytes pg_data/base/16384/2656 | Bin 16384 -> 16384 bytes pg_data/base/16384/2657 | Bin 16384 -> 16384 bytes pg_data/base/16384/2658 | Bin 139264 -> 139264 bytes pg_data/base/16384/2659 | Bin 98304 -> 98304 bytes pg_data/base/16384/2662 | Bin 32768 -> 32768 bytes pg_data/base/16384/2663 | Bin 40960 -> 40960 bytes pg_data/base/16384/2664 | Bin 32768 -> 32768 bytes pg_data/base/16384/2665 | Bin 32768 -> 32768 bytes pg_data/base/16384/2666 | Bin 16384 -> 16384 bytes pg_data/base/16384/2667 | Bin 16384 -> 16384 bytes pg_data/base/16384/2673 | Bin 114688 -> 122880 bytes pg_data/base/16384/2674 | Bin 81920 -> 81920 bytes pg_data/base/16384/2678 | Bin 16384 -> 16384 bytes pg_data/base/16384/2679 | Bin 16384 -> 16384 bytes pg_data/base/16384/2696 | Bin 40960 -> 40960 bytes pg_data/base/16384/2699 | Bin 16384 -> 16384 bytes pg_data/base/16384/2701 | Bin 32768 -> 40960 bytes pg_data/base/16384/2702 | Bin 16384 -> 16384 bytes pg_data/base/16384/2703 | Bin 32768 -> 32768 bytes pg_data/base/16384/2704 | Bin 49152 -> 49152 bytes pg_data/base/16384/3455 | Bin 16384 -> 16384 bytes pg_data/base/16384/pg_internal.init | Bin 160044 -> 160044 bytes pg_data/global/pg_control | Bin 8192 -> 8192 bytes pg_data/global/pg_internal.init | Bin 27484 -> 27484 bytes pg_data/pg_subtrans/0000 | Bin 8192 -> 8192 bytes pg_data/pg_wal/000000010000000000000001 | Bin 16777216 -> 16777216 bytes pg_data/pg_xact/0000 | Bin 8192 -> 8192 bytes 97 files changed, 509 insertions(+), 1 deletion(-) create mode 100644 backend/app/api/v1/finance.py create mode 100644 backend/app/api/v1/finance_dashboard.py create mode 100644 backend/app/crud/finance.py create mode 100644 backend/app/models/finance.py create mode 100644 backend/app/schemas/finance.py create mode 100644 pg_data/base/16384/25024 create mode 100644 pg_data/base/16384/25029 create mode 100644 pg_data/base/16384/25030 create mode 100644 pg_data/base/16384/25031 create mode 100644 pg_data/base/16384/25063 create mode 100644 pg_data/base/16384/25064 create mode 100644 pg_data/base/16384/25065 diff --git a/backend/app/api/v1/finance.py b/backend/app/api/v1/finance.py new file mode 100644 index 00000000..2ece9cd3 --- /dev/null +++ b/backend/app/api/v1/finance.py @@ -0,0 +1,190 @@ +import uuid +from datetime import date + +from fastapi import APIRouter, Depends, HTTPException, status +from sqlalchemy.ext.asyncio import AsyncSession + +from app.core.deps import get_current_user, get_db_session, require_study_member, require_study_roles +from app.crud import audit as audit_crud +from app.crud import finance as finance_crud +from app.crud import study as study_crud +from app.schemas.finance import FinanceCreate, FinanceRead, FinanceStatusUpdate, FinanceUpdate + +router = APIRouter() + + +async def _ensure_study_exists(db: AsyncSession, study_id: uuid.UUID): + study = await study_crud.get(db, study_id) + if not study: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="Study not found") + return study + + +def _with_month(item: FinanceRead) -> FinanceRead: + item.month = item.occur_date.strftime("%Y-%m") + return item + + +@router.post( + "/items", + response_model=FinanceRead, + status_code=status.HTTP_201_CREATED, + dependencies=[Depends(require_study_roles(["PM", "CRA"]))], +) +async def create_finance_item( + study_id: uuid.UUID, + item_in: FinanceCreate, + db: AsyncSession = Depends(get_db_session), + current_user=Depends(get_current_user), +) -> FinanceRead: + await _ensure_study_exists(db, study_id) + try: + item = await finance_crud.create_item(db, study_id, item_in, created_by=current_user.id) + except ValueError as exc: + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(exc)) from exc + await audit_crud.log_action( + db, + study_id=study_id, + entity_type="finance", + entity_id=item.id, + action="CREATE_FINANCE_ITEM", + detail=f"Finance {item.id} created", + operator_id=current_user.id, + operator_role=current_user.role, + ) + return _with_month(FinanceRead.model_validate(item)) + + +@router.get( + "/items", + response_model=list[FinanceRead], + dependencies=[Depends(require_study_member())], +) +async def list_finance_items( + study_id: uuid.UUID, + status_filter: str | None = None, + category: str | None = None, + site_id: uuid.UUID | None = None, + subject_id: uuid.UUID | None = None, + date_from: date | None = None, + date_to: date | None = None, + skip: int = 0, + limit: int = 100, + db: AsyncSession = Depends(get_db_session), +) -> list[FinanceRead]: + await _ensure_study_exists(db, study_id) + items = await finance_crud.list_items( + db, + study_id, + status=status_filter, + category=category, + site_id=site_id, + subject_id=subject_id, + date_from=date_from, + date_to=date_to, + skip=skip, + limit=limit, + ) + return [_with_month(FinanceRead.model_validate(i)) for i in items] + + +@router.get( + "/items/{item_id}", + response_model=FinanceRead, + dependencies=[Depends(require_study_member())], +) +async def get_finance_item( + study_id: uuid.UUID, + item_id: uuid.UUID, + db: AsyncSession = Depends(get_db_session), +) -> FinanceRead: + await _ensure_study_exists(db, study_id) + item = await finance_crud.get_item(db, item_id) + if not item or item.study_id != study_id: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="Finance item not found") + return _with_month(FinanceRead.model_validate(item)) + + +@router.patch( + "/items/{item_id}", + response_model=FinanceRead, + dependencies=[Depends(require_study_roles(["PM", "CRA"]))], +) +async def update_finance_item( + study_id: uuid.UUID, + item_id: uuid.UUID, + item_in: FinanceUpdate, + db: AsyncSession = Depends(get_db_session), + current_user=Depends(get_current_user), +) -> FinanceRead: + await _ensure_study_exists(db, study_id) + item = await finance_crud.get_item(db, item_id) + if not item or item.study_id != study_id: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="Finance item not found") + try: + updated = await finance_crud.update_item_draft(db, item, item_in) + except ValueError as exc: + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(exc)) from exc + await audit_crud.log_action( + db, + study_id=study_id, + entity_type="finance", + entity_id=item_id, + action="UPDATE_FINANCE_ITEM", + detail=f"Finance {item_id} updated", + operator_id=current_user.id, + operator_role=current_user.role, + ) + return _with_month(FinanceRead.model_validate(updated)) + + +@router.post( + "/items/{item_id}/status", + response_model=FinanceRead, + dependencies=[Depends(require_study_member())], +) +async def change_finance_status( + study_id: uuid.UUID, + item_id: uuid.UUID, + status_in: FinanceStatusUpdate, + db: AsyncSession = Depends(get_db_session), + current_user=Depends(get_current_user), +) -> FinanceRead: + await _ensure_study_exists(db, study_id) + item = await finance_crud.get_item(db, item_id) + if not item or item.study_id != study_id: + raise HTTPException(status_code=status.HTTP_404_NOT_FOUND, detail="Finance item not found") + + # permission by status target + from app.crud import member as member_crud + member = await member_crud.get_member(db, study_id, current_user.id) + member_role = member.role_in_study if member else None + + target = status_in.status + if target in {"SUBMITTED"}: + if current_user.role != "ADMIN" and member_role not in {"PM", "CRA"}: + raise HTTPException(status_code=status.HTTP_403_FORBIDDEN, detail="Insufficient permissions") + elif target in {"APPROVED", "REJECTED", "PAID"}: + if current_user.role != "ADMIN" and member_role not in {"PM"}: + raise HTTPException(status_code=status.HTTP_403_FORBIDDEN, detail="Insufficient permissions") + else: + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="Unsupported status") + + old_status = item.status + try: + updated = await finance_crud.change_status(db, item, status_in, operator_id=current_user.id) + except ValueError as exc: + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=str(exc)) from exc + detail = f"Finance {item_id} {old_status} -> {status_in.status}" + action = "FINANCE_STATUS_CHANGE" + await audit_crud.log_action( + db, + study_id=study_id, + entity_type="finance", + entity_id=item_id, + action=action, + detail=detail, + operator_id=current_user.id, + operator_role=current_user.role, + ) + return _with_month(FinanceRead.model_validate(updated)) diff --git a/backend/app/api/v1/finance_dashboard.py b/backend/app/api/v1/finance_dashboard.py new file mode 100644 index 00000000..6e7ecaa6 --- /dev/null +++ b/backend/app/api/v1/finance_dashboard.py @@ -0,0 +1,32 @@ +import uuid +from datetime import date + +from fastapi import APIRouter, Depends +from sqlalchemy.ext.asyncio import AsyncSession + +from app.core.deps import get_db_session, require_study_member +from app.crud import finance as finance_crud +from app.crud import study as study_crud +from app.schemas.finance import FinanceSummaryRead + +router = APIRouter() + + +@router.get("/summary", response_model=FinanceSummaryRead, dependencies=[Depends(require_study_member())]) +async def finance_summary( + study_id: uuid.UUID, + date_from: date | None = None, + date_to: date | None = None, + db: AsyncSession = Depends(get_db_session), +) -> FinanceSummaryRead: + # ensure study exists + await study_crud.get(db, study_id) + row = await finance_crud.summary(db, study_id, date_from=date_from, date_to=date_to) + return FinanceSummaryRead( + total_amount=row.total_amount, + paid_amount=row.paid_amount, + approved_amount=row.approved_amount, + submitted_amount=row.submitted_amount, + count_total=row.count_total, + count_paid=row.count_paid, + ) diff --git a/backend/app/api/v1/router.py b/backend/app/api/v1/router.py index 27b2d420..4a068472 100644 --- a/backend/app/api/v1/router.py +++ b/backend/app/api/v1/router.py @@ -1,6 +1,6 @@ from fastapi import APIRouter -from app.api.v1 import auth, users, studies, sites, members, comments, attachments, audit_logs, milestones, tasks, dashboard, subjects, visits, aes, issues, data_queries, verifications, imp_products, imp_batches, imp_inventory, imp_transactions +from app.api.v1 import auth, users, studies, sites, members, comments, attachments, audit_logs, milestones, tasks, dashboard, subjects, visits, aes, issues, data_queries, verifications, imp_products, imp_batches, imp_inventory, imp_transactions, finance, finance_dashboard api_router = APIRouter() api_router.include_router(auth.router, prefix="/auth", tags=["auth"]) @@ -24,3 +24,5 @@ api_router.include_router(imp_products.router, prefix="/studies/{study_id}/imp/p api_router.include_router(imp_batches.router, prefix="/studies/{study_id}/imp/batches", tags=["imp-batches"]) api_router.include_router(imp_inventory.router, prefix="/studies/{study_id}/imp/inventory", tags=["imp-inventory"]) api_router.include_router(imp_transactions.router, prefix="/studies/{study_id}/imp/transactions", tags=["imp-transactions"]) +api_router.include_router(finance.router, prefix="/studies/{study_id}/finance", tags=["finance"]) +api_router.include_router(finance_dashboard.router, prefix="/studies/{study_id}/finance", tags=["finance"]) diff --git a/backend/app/crud/finance.py b/backend/app/crud/finance.py new file mode 100644 index 00000000..aab82b5f --- /dev/null +++ b/backend/app/crud/finance.py @@ -0,0 +1,174 @@ +import uuid +from datetime import date, datetime, timezone +from decimal import Decimal +from typing import Sequence + +from sqlalchemy import Numeric, func, select, update as sa_update, case +from sqlalchemy.ext.asyncio import AsyncSession + +from app.models.finance import FinanceItem +from app.models.site import Site +from app.models.subject import Subject +from app.schemas.finance import FinanceCreate, FinanceStatusUpdate, FinanceUpdate + +VALID_TRANSITIONS = { + "DRAFT": {"SUBMITTED"}, + "SUBMITTED": {"APPROVED", "REJECTED"}, + "APPROVED": {"PAID"}, + "REJECTED": set(), + "PAID": set(), +} + + +async def _validate_site_subject(db: AsyncSession, study_id: uuid.UUID, site_id: uuid.UUID | None, subject_id: uuid.UUID | None): + subj_site = None + if site_id: + result = await db.execute(select(Site).where(Site.id == site_id)) + site = result.scalar_one_or_none() + if not site or site.study_id != study_id: + raise ValueError("Site not found in study") + if subject_id: + result = await db.execute(select(Subject).where(Subject.id == subject_id)) + subj = result.scalar_one_or_none() + if not subj or subj.study_id != study_id: + raise ValueError("Subject not found in study") + subj_site = subj.site_id + if site_id and subj_site and site_id != subj_site: + raise ValueError("Site and subject mismatch") + + +async def create_item(db: AsyncSession, study_id: uuid.UUID, item_in: FinanceCreate, *, created_by: uuid.UUID) -> FinanceItem: + await _validate_site_subject(db, study_id, item_in.site_id, item_in.subject_id) + item = FinanceItem( + study_id=study_id, + site_id=item_in.site_id, + subject_id=item_in.subject_id, + visit_id=item_in.visit_id, + category=item_in.category, + title=item_in.title, + description=item_in.description, + currency=item_in.currency, + amount=item_in.amount, + occur_date=item_in.occur_date, + status="DRAFT", + created_by=created_by, + ) + db.add(item) + await db.commit() + await db.refresh(item) + return item + + +async def get_item(db: AsyncSession, item_id: uuid.UUID) -> FinanceItem | None: + result = await db.execute(select(FinanceItem).where(FinanceItem.id == item_id)) + return result.scalar_one_or_none() + + +async def list_items( + db: AsyncSession, + study_id: uuid.UUID, + *, + status: str | None = None, + category: str | None = None, + site_id: uuid.UUID | None = None, + subject_id: uuid.UUID | None = None, + date_from: date | None = None, + date_to: date | None = None, + skip: int = 0, + limit: int = 100, +) -> Sequence[FinanceItem]: + stmt = select(FinanceItem).where(FinanceItem.study_id == study_id) + if status: + stmt = stmt.where(FinanceItem.status == status) + if category: + stmt = stmt.where(FinanceItem.category == category) + if site_id: + stmt = stmt.where(FinanceItem.site_id == site_id) + if subject_id: + stmt = stmt.where(FinanceItem.subject_id == subject_id) + if date_from: + stmt = stmt.where(FinanceItem.occur_date >= date_from) + if date_to: + stmt = stmt.where(FinanceItem.occur_date <= date_to) + stmt = stmt.offset(skip).limit(limit) + result = await db.execute(stmt) + return result.scalars().all() + + +async def update_item_draft(db: AsyncSession, item: FinanceItem, item_in: FinanceUpdate) -> FinanceItem: + if item.status != "DRAFT": + raise ValueError("Only DRAFT items can be edited") + update_data = item_in.model_dump(exclude_unset=True) + if update_data: + await db.execute( + sa_update(FinanceItem) + .where(FinanceItem.id == item.id) + .values(**update_data) + ) + await db.commit() + await db.refresh(item) + return item + + +async def change_status(db: AsyncSession, item: FinanceItem, status_in: FinanceStatusUpdate, *, operator_id: uuid.UUID) -> FinanceItem: + target = status_in.status + allowed = VALID_TRANSITIONS.get(item.status, set()) + if target not in allowed: + raise ValueError(f"Invalid status transition {item.status} -> {target}") + update_data = {"status": target} + now = datetime.now(timezone.utc) + if target == "SUBMITTED": + update_data["submitted_at"] = now + if target == "APPROVED": + update_data["approved_at"] = now + update_data["approver_id"] = operator_id + update_data["reject_reason"] = None + if target == "REJECTED": + if not status_in.reject_reason: + raise ValueError("reject_reason required") + update_data["rejected_at"] = now + update_data["approver_id"] = operator_id + update_data["reject_reason"] = status_in.reject_reason + if target == "PAID": + if item.status != "APPROVED": + raise ValueError("Only APPROVED can transition to PAID") + update_data["paid_at"] = now + update_data["payer_id"] = operator_id + + await db.execute( + sa_update(FinanceItem) + .where(FinanceItem.id == item.id) + .values(**update_data) + ) + await db.commit() + await db.refresh(item) + return item + + +async def summary( + db: AsyncSession, + study_id: uuid.UUID, + *, + date_from: date | None = None, + date_to: date | None = None, +): + stmt = select( + func.coalesce(func.sum(FinanceItem.amount), 0).label("total_amount"), + func.coalesce(func.sum(case((FinanceItem.status == "PAID", FinanceItem.amount), else_=0)), 0).label( + "paid_amount" + ), + func.coalesce(func.sum(case((FinanceItem.status == "APPROVED", FinanceItem.amount), else_=0)), 0).label( + "approved_amount" + ), + func.coalesce(func.sum(case((FinanceItem.status == "SUBMITTED", FinanceItem.amount), else_=0)), 0).label( + "submitted_amount" + ), + func.count().label("count_total"), + func.coalesce(func.sum(case((FinanceItem.status == "PAID", 1), else_=0)), 0).label("count_paid"), + ).where(FinanceItem.study_id == study_id) + if date_from: + stmt = stmt.where(FinanceItem.occur_date >= date_from) + if date_to: + stmt = stmt.where(FinanceItem.occur_date <= date_to) + result = await db.execute(stmt) + return result.one() diff --git a/backend/app/db/base.py b/backend/app/db/base.py index 400b6871..d726c9e3 100644 --- a/backend/app/db/base.py +++ b/backend/app/db/base.py @@ -20,3 +20,4 @@ from app.models.imp_product import ImpProduct # noqa: F401 from app.models.imp_batch import ImpBatch # noqa: F401 from app.models.imp_inventory import ImpInventory # noqa: F401 from app.models.imp_transaction import ImpTransaction # noqa: F401 +from app.models.finance import FinanceItem # noqa: F401 diff --git a/backend/app/models/finance.py b/backend/app/models/finance.py new file mode 100644 index 00000000..0799d935 --- /dev/null +++ b/backend/app/models/finance.py @@ -0,0 +1,37 @@ +import uuid +from datetime import datetime, date + +from sqlalchemy import Date, DateTime, ForeignKey, Numeric, String, Text, func +from sqlalchemy.dialects.postgresql import UUID +from sqlalchemy.orm import Mapped, mapped_column + +from app.db.base_class import Base + + +class FinanceItem(Base): + __tablename__ = "finance_items" + + id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), primary_key=True, default=uuid.uuid4) + study_id: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("studies.id"), index=True, nullable=False) + site_id: Mapped[uuid.UUID | None] = mapped_column(UUID(as_uuid=True), ForeignKey("sites.id"), index=True, nullable=True) + subject_id: Mapped[uuid.UUID | None] = mapped_column(UUID(as_uuid=True), ForeignKey("subjects.id"), index=True, nullable=True) + visit_id: Mapped[uuid.UUID | None] = mapped_column(UUID(as_uuid=True), nullable=True) + category: Mapped[str] = mapped_column(String(50), nullable=False) + title: Mapped[str] = mapped_column(String(255), nullable=False) + description: Mapped[str | None] = mapped_column(Text, nullable=True) + currency: Mapped[str] = mapped_column(String(10), nullable=False, default="CNY") + amount: Mapped[float] = mapped_column(Numeric(12, 2), nullable=False) + occur_date: Mapped[date] = mapped_column(Date, nullable=False) + status: Mapped[str] = mapped_column(String(20), nullable=False, default="DRAFT") + submitted_at: Mapped[datetime | None] = mapped_column(DateTime(timezone=True), nullable=True) + approved_at: Mapped[datetime | None] = mapped_column(DateTime(timezone=True), nullable=True) + rejected_at: Mapped[datetime | None] = mapped_column(DateTime(timezone=True), nullable=True) + paid_at: Mapped[datetime | None] = mapped_column(DateTime(timezone=True), nullable=True) + approver_id: Mapped[uuid.UUID | None] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id"), nullable=True) + payer_id: Mapped[uuid.UUID | None] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id"), nullable=True) + reject_reason: Mapped[str | None] = mapped_column(Text, nullable=True) + created_by: Mapped[uuid.UUID] = mapped_column(UUID(as_uuid=True), ForeignKey("users.id"), nullable=False) + created_at: Mapped[datetime] = mapped_column(DateTime(timezone=True), nullable=False, server_default=func.now()) + updated_at: Mapped[datetime] = mapped_column( + DateTime(timezone=True), nullable=False, server_default=func.now(), onupdate=func.now() + ) diff --git a/backend/app/schemas/finance.py b/backend/app/schemas/finance.py new file mode 100644 index 00000000..9f85239e --- /dev/null +++ b/backend/app/schemas/finance.py @@ -0,0 +1,72 @@ +import uuid +from datetime import date, datetime +from decimal import Decimal +from typing import Optional + +from pydantic import BaseModel, ConfigDict, Field + + +class FinanceCreate(BaseModel): + site_id: Optional[uuid.UUID] = None + subject_id: Optional[uuid.UUID] = None + visit_id: Optional[uuid.UUID] = None + category: str + title: str + description: Optional[str] = None + currency: str = "CNY" + amount: Decimal = Field(gt=0) + occur_date: date + + +class FinanceUpdate(BaseModel): + site_id: Optional[uuid.UUID] = None + subject_id: Optional[uuid.UUID] = None + visit_id: Optional[uuid.UUID] = None + category: Optional[str] = None + title: Optional[str] = None + description: Optional[str] = None + currency: Optional[str] = None + amount: Optional[Decimal] = Field(default=None, gt=0) + occur_date: Optional[date] = None + + +class FinanceStatusUpdate(BaseModel): + status: str + reject_reason: Optional[str] = None + + +class FinanceRead(BaseModel): + id: uuid.UUID + study_id: uuid.UUID + site_id: Optional[uuid.UUID] + subject_id: Optional[uuid.UUID] + visit_id: Optional[uuid.UUID] + category: str + title: str + description: Optional[str] + currency: str + amount: Decimal + occur_date: date + status: str + submitted_at: Optional[datetime] + approved_at: Optional[datetime] + rejected_at: Optional[datetime] + paid_at: Optional[datetime] + approver_id: Optional[uuid.UUID] + payer_id: Optional[uuid.UUID] + reject_reason: Optional[str] + created_by: uuid.UUID + created_at: datetime + updated_at: datetime + month: Optional[str] = None + + model_config = ConfigDict(from_attributes=True) + + +class FinanceSummaryRead(BaseModel): + total_amount: Decimal + paid_amount: Decimal + approved_amount: Decimal + submitted_amount: Decimal + count_total: int + count_paid: int diff --git a/pg_data/base/16384/1247 b/pg_data/base/16384/1247 index 72fafe1567466c15c7d0c81e5559eff2f1e87d43..03075762b6642771cad2211b661b2f23f9a9151c 100644 GIT binary patch delta 565 zcmZo@;AjA%EsQJ=cwXr3U}OLS1BMOK69p6|2Ze}Dd|)w(1|kH63?rC9aRCGT3~USv z42&EK|NsA&2MZodWMGI-%gjs6OHPf?EJ@9sZg`T>ZhHS;MqZ{viIe@3tPIeNU_~?H r5YPw|6AqqXG?{Mmk5Pd408k1B4o(j|#ArYL!Cyv>?FN4tFE9ZBzMTSu delta 438 zcmZo@;AjA%EsQJ=cq~G;Ffssv27`j^L;;D(K_OxjA6Sf{K@tMful;2d+HUZd@d6V7 D%|_@v diff --git a/pg_data/base/16384/1249 b/pg_data/base/16384/1249 index bce073166bb404d65ba5457acec9123e9185356d..8458b67f0fcfeb676422cc6993260f0240c1f7c8 100644 GIT binary patch delta 3907 zcmeH}%TF6e9LHz<*j9{;!pfPK??|ZM8pcIgh<*Tx$S@qA|OM`AwmkIA|j?jk{y6F z!dC?;%i*WNYCxXDK_gB;36ZRUm2IsS_~J+NzzJKg`x}O zSRFvF2c!|c6OgiqU<0H)BGL${gh;v}xtjnPM4%Z`4iRdBR7AvDA;~8JX@sv0QWgkBwzO}U!Y8n$?~?49bpsA`Py4Ua_Qapjtg#M!d$T~m6g zOT%T=@RJZhFH3fs_wq&7aFLIN@*aK&J*4xUY7OsxC(a3x?1JR(24oNcAEX>2)B~xA zi1k8}{eU#W*9R$!2=+tDBO(KkN*t^Qry;oq0U1PK2vQCa8m`;|@8I+wkHGZhQE<}; z-x#DUA~+5ykBCe_Dj|{qNbWO$42Pcvo(JSO95nO-pooaQ2uXekkY*_F=`v30+p{pK z{8^A9=Kv){^1QlU|K^>~5ARo(L_9Xnyfx+iTbsAyhPD8v$Qiz^)#F`%pKkr6tO!~_ z&?bu}+JvC}V5W@=+Q?rf)y4#E>o*f^RL~}WFVmn2WQvTC*0|Jre5E_Iu&-Q_-1MVQ z6z%AOb$eK_M+(etthBM0Q)I|6g&n$ED4T+=4GP-qk0#n_K`WSP1A^Ry4IS4- z+h?@HghUr#UtCzb8eI(Eq<`*P$7%>^VfF#MPSEFmv1N;CMz1by7UZ$b z8A+~AR$~ztsiz$?iZ*C0(q&R4yt*1)iRpFt7s+v%Iw;d)EYoRHW;MJ-@9in$Y$6W& zYp1=6e)h!b?K2MbnheEu(7Sue1RHI~(SzS9_4NC7$t9G~OiJKI7)rFiYx4?y^q7pk zdF!?1rL{GExb1NMZ1~X)#}|_?eur^5t$V7h_>Gs@Zq(SSuPiLwiqf~wsr)Ks`tYgJ zws}u-`HW*vnT!oD)2&e(U*+n{pUV1Hse(!IT_Y1GAxq2b>yf|kC;!b@yUnCFn^ko2 zjfKrSbFho(_;sa$K7OP$3l|TEi?XLMdp7-}T%v>RCXH$}eiFU$FLOU=R;uXULs=}| zA`F=2#b2#g#Z_n)TX)+Q-_BoA`z#wCoAcw@FJKK{CV#Z1Tmzev5?`9GXYXe{_#f?ox}yhBH-DCq zY2q;4TaRertFk+_^H5U_+8&j@Dbut=O)+Rc(;HuxY3wn}UeiQ2Xb-4Xe!jz#>NK$% ov>dHC2I`tk&?=6Bc;KBTR)coG@~Eb37D1~xs_B{}X#A-5AIrpE;Q#;t delta 1412 zcmeIyO-~a+7zgm#w!1uNOBbXo;#=F;rJ^DVtglE(Oydy~DIOFrxEI5<-msW;4_*v0 z>3jjxFCZyLdoVqFaX&)u8flCdocTXpf*$+?Hfes(eE#HA ziYST6NJgXivnEhho@I4!A*GGXh2AYg}0;$bZ$B`n&&mr}h z&_Qxef)?XVAa$AADWo1#pG2}wgC^siL25JAvq%x+pF`?v$}&7pTVp>rch#jP{=U=# z<>dZ4jY_XTujHF&s_N=WjoEUwNDV{Cs7P<6T_Tf5OC@T^=j)V}yCvG@>b}dBEx)?) z?8a0)wm%h*1?Bh`;}_%V!(lZ)9glrhmAc^SB|a77U*=OW;T0rj2DCI~>0L$YGPPNx z9#g-DWL^KWFNBB-}{9=7ay=f4_tGD@I2DO_F@PN*Q&h{wlv) UCameS=d95u%P8+fPiZ>w8;~e!&;S4c diff --git a/pg_data/base/16384/1259 b/pg_data/base/16384/1259 index e02f2446bd5bc66d8542ecd032716167b76251bf..f850c80c1a91405bd14d98006dba1933321f2baa 100644 GIT binary patch delta 1387 zcmeH{yGz4h5Ww&HFja&IYH{$B3u`+V*l$|D8@0yNUtu$i^!HpkRrG4W^2!N1+u#J_a&~KLk z*;opP^p&0}2VvN461(EEqhrKQCP2M$7r_S-V6i8Y$#ff@Clw$VQznBUH8eJ%1fvr( zZ0{Mp>~;ey1d4KrtL6HpTAPPShF1iy1@`y@?ETDyQS=AcuRED+)~qC#rVNsXEnhWD z@CPlDg5tdy5r`a5V9<}jBTfam*A^n{D5W@3rGLY6dX+W(VAD_FDgNXqIB%CL&&@-64VqP6kczUAY=7{-g z5|~$9-?o*V@uw&|3q;X&b}`1kCwU&2ZDnL&U}QMKFoA8lzyrnrW}x)+Zup!Cq51ukgFir3H#kgYnhF6Rn(|r;Iz8K*~9`N4#WQAqD^uU`zr4 diff --git a/pg_data/base/16384/1259_fsm b/pg_data/base/16384/1259_fsm index 640ad1e4a88cac91dde6a4e741b06f208b9ba6de..684103200603f57d0687933bd05259bc1077a7d0 100644 GIT binary patch delta 15 WcmZoTz}Rqraf4O>BjZNJtNZ{j0R?3M delta 18 ZcmZoTz}Rqraf4RCW@Qgnj*SKv*#Sel29W>& diff --git a/pg_data/base/16384/24576 b/pg_data/base/16384/24576 index e9fa5c88351e52b7c363d9cb8ad47fb9137217fd..8e609549dce4d343aa3388ecdc2cab42a33adb43 100644 GIT binary patch delta 178 zcmZp0XmAi<0D>E9w=;rh6NUzvi2@2N4RaV6HyZlL)LSw$FoXj!46rk>F-&5VU|`a@ z{%lHv$Arc5`Y!Q5CNB}r%q@s7Elw?}RxwIaF*H&s(D%yLFZDCX&karSvIq!HO-**J zObw{a@HbBm4|Db?@(wjBOU^gWbk0fj4fONz2={XL=JfOp0K0=B-g@F*zL!j!|I4s4 RF?vsCm9J-Xo!ly44FCs$F=GG# delta 47 ycmZp0XmAi<0D+_pj3CN@fkAenfWk&cdzpy=6F14SFfkfTW|gmJ)SBEXUkw1@N(zbq diff --git a/pg_data/base/16384/24581 b/pg_data/base/16384/24581 index a8a1ac5431ff57c00995ce3f0f424052c2b54dcd..c3dc2c0fb4e194a4241743d3e6634a761d7c9681 100644 GIT binary patch delta 63 zcmZo@U~Fh$+`ytB&hUR5BLfhaFnGv+kY`Zh6 diff --git a/pg_data/base/16384/24584 b/pg_data/base/16384/24584 index 476f1057ca118302ced6b5e2393f4eba06abc2b8..7931a7ee5faa85774c3eabf8acd4adb2063f2a45 100644 GIT binary patch delta 186 zcmZp0XmH?X0D>QDwljk05C(;b{I={3vkovQ%sQ|!@T{bbD>DN_I1s}CKLaPjWJZPK zVD&&j)8v!)KX3JX+2Il8d+x!J`GUcTiAJf$W}=?H0h1TV$hb%xH$KGol8M0zXow4v wL40Ti-FEn|@Kw-zPV>og9sNGvngoLlO-+oFlVAq1@Ax-)FVLXP_oWnB0ZijFmjD0& delta 35 ncmZp0XmH?X0D=>V8yG>f55t3r{I(lI&PYxyII;PGlmaUNt1$}r diff --git a/pg_data/base/16384/24590 b/pg_data/base/16384/24590 index 80256cf98e5a90c5fcfe99e67444912bf8e15620..e0af66718ff2b18046e7f9e34546e805fb858a08 100644 GIT binary patch delta 102 zcmZo@U~Fh$+`ytBHKBbwBLfhGFm%X$kY`Z zbod!07)+B--v7MS^JRxel<&C*N9Kc+^8v+gJN#GpD(F3@`Q*8dexGkmn|IiGFaiKc Crz4vH delta 49 zcmZo@U~Fh$+`ytBrop{|kpT#N7Ui~uxq B4I}^n diff --git a/pg_data/base/16384/24597 b/pg_data/base/16384/24597 index 503806161fe59dbe973650a5a7157298d9052316..c72b6ed03dd86a81f4eb35dd0ecb953ea7ee5221 100644 GIT binary patch delta 97 zcmZo@U~Fh$+`yt>c%gkeBLfhGFfhn}kY`Z=C^>1eg8c&kwtN@q delta 45 ycmZo@U~Fh$+`ytBJb`BeBLfilFeu1>kY`ZhHxN;0d@ushDnSP z46i4}`cF0YTG;l1wIk|~{SVXRllMPw^?cdk5#@XC!IAm=!I>qg3XZJK>;ayv$&3uM z4x1g~d&$IL3pC3P$vifwc_y(XucoItF|OJwvRr+Mded!({|a9Py%pv(pFG#m@AIt* S-9V8i)Aj-l+?*~qlMw*wJU#0G delta 36 ncmZp0XmAi<0D;&Ij37#fAwzDWfXqgxHra^*+csy&&0quoioOXA diff --git a/pg_data/base/16384/24605 b/pg_data/base/16384/24605 index 35917a8bad66965665c6da47aa5cfc00388f6e58..541c24c799ace1e1fc29926e46b594b8340afcf9 100644 GIT binary patch delta 110 zcmZo@U~Fh$+`yusf1_tRBLfhaFnGv+kY`Z0<+mo5Ys9nx5vwxN57&a`h$ZO_M9^I{*us BBH;i4 delta 59 zcmZo@U~Fh$+`yus>Y=oOkpT#F7%JpH$g?Pb*cI~)7!CmO4IrKX#49!%DoD#u46vA7 HW8VS*$LbKe diff --git a/pg_data/base/16384/24612 b/pg_data/base/16384/24612 index 1fd27c3be66ce6dd2a9c029dbe229ccb28489385..36334ead3ce1827c786b14d387c5d2809438bf59 100644 GIT binary patch delta 110 zcmZo@U~Fh$+`yusuh6@lkpT!y7(C=Z$g?Pb*dFr@7%G5x1rXl=;sZcD0f-ak8*Frx zl-FTrkYF%PK6(H1R?n9m9#OvM9vqnu(#HlAzwPi};j5tcoaU3~I{JOSHBGLt?*IS} C=q2?4 delta 59 zcmZo@U~Fh$+`yusYN5P=kpT#F7%JpH$g?Pb*cI~)7*+uB4In-M#1l3fDoD#u46vA7 HW8VS*#HtXh diff --git a/pg_data/base/16384/24613 b/pg_data/base/16384/24613 index ac662c86330ec15e0d6aee1c4d1cb956a9bc89ee..182cbafa623c29b48f2bdd4e0fb227f81c308aec 100644 GIT binary patch delta 364 zcmZp0XmAi<0D=Ww+ZjQ01;YXHi2@P)CuVG5C;(y!AU-gC!^T2S@p^Y=kO~BlU|?fl z;*?MBe>SDTW5Qy2eV6zj zlb3LM`UZe3d(UNZi0>s6gBzN;;!tz_dQa|Vu=dK_F|SxGh#upyh}B_FZ@0M`X~)Bpeg delta 37 pcmZp0XmAi<0D=Ru8yG=!27`j+M1hEnO?KiNCsZ+RR*-za1^}aA3C{ok diff --git a/pg_data/base/16384/24618 b/pg_data/base/16384/24618 index 529f1f2e35e5380bc1658ca742db7bf41027826f..6ea7f320f9a88bfbe1bb26d197a5db60244bdbcb 100644 GIT binary patch delta 187 zcmZo@U~Fh$+`yv1^P+1zBLfgrFl>;WETAAE^@rk*U ztrVoBe*mRDfLsG0z5&DZL+{ee*&V$57f#M6)S^rOp V^?up>A#9q>8O@EG1?)aB0s!`SK6L;9 delta 82 zcmZo@U~Fh$+`yv1!y&hUkpT!Y7zE@d3n)lvb<8th5CGx`AYL)wfMEgPb(|qz=N59XvCTs?XVo?V&VDl9l9cBQ&P)M`@ delta 42 vcmZo@U~Fh$+`ytBoFKP>kpT!Y7%s?skY`Zuw7$ diff --git a/pg_data/base/16384/24632 b/pg_data/base/16384/24632 index e28e1ca99ae31a33bba2cac82f6769cb40b1c927..d7a2be6e2472db2f334b5b314917cfcffbb76e75 100644 GIT binary patch delta 151 zcmZo@U~Fh$+`ytB-O;_BkpT!Q7&gd$kY`Z`@vj;jgGdm zF%k?C45rB^?|0mW}S{8#uY=sl3mwljk028IZ}i2^<<8dDS)J0?3Yewbvym@r9!@xVj}MvaLEj206f zFnaVqV2tQ{z_>B-25)^BGe{c)0|$g+kYeCuVB(ZusOX$svnAN|!Hid|>t%|ib4-&@ z-v7MS^JRxel<&C*N9OZq<`%@4R2Uj42kw06w0*Vvo@zTU(OI(2L9UJ=uJN9}0r4Rb zkAqx8LWBGi3>8ZAGE0gTk`hajGZfMc3=EBujFWWJEX?Z-bWKuBlXWeVEX;Ki%`Fm* z49tvy(uoR*B?`rvC8-LjNtQ;YDJE&UmZrw$x+aN}T@%_Fq)8u;8R4och)!iPb}0#?&6}8{6htx7POK-~BOnv(TeL66COg zqWqN7C$cY-1FYjvyBT3E=<{j?m)rf(xj}^og9sNGv znh?>V_?ClV#br;SX*XlOJvR_aCMsI$amI@T&#b+mLcs~mVZu;{9XrfC>sq@nN6Y>w z&NGkRI-xrZIa;)X7T?|G=T+DB!m4HhL)CdiwA2U0lNv9uXqotaCfI=vXbu#DI`Dn( zmkHY^`DZkQF18RZ=(~gNKyb7O1LH;9^jm*Tw9|WLE&$D}cBG$o~Pv0zfejAm0Fp6M*;vkpBXRJAhaNh$Ddb22lI}5IX?b zK(Nu3QMO)+L4u*8b9T*^VAlsTUa_v1DVELwNlF66!$f_Hn*;qVX5?Q~{a-VM10*g1 zgglulLN9l?@GQ*U#Fi^?^E*gf94IcedHR!6)*jW}Z)J5H-|q_piHiZnncBmBW7|CI z*4lpjyFcb`7D!waDBdyCCA8b_x#zv5XB!t7T$r*4Bq0KlSo(9~^8F96aKK)L`(R{-f1 oK2rl&bEuG%WHTz!dp6E2JI|D3iL TWHF4^16phd_weRra#4%`=|)%0 delta 36 ocmZp0XmAi<00N8H4U8aKg<*!=L;;bFMrE=S9sX^eA(z1j0Fx#OeEBLfgD@Z2$_%4DtW~ diff --git a/pg_data/base/16384/24762 b/pg_data/base/16384/24762 index 952d719ba689db33cd1b2cd9d20a707bbfbebba0..2bbf5feedc2c329d12defd3ea92abb073a912baa 100644 GIT binary patch delta 98 zcmZo@U~Fh$+`yus?9jiRkpT!a7$(SnkY`ZX7{pkXja?xJhiutLbS@jH|YaELUHm-Zc4uy#oM|0v|sB delta 45 ycmZo@U~Fh$+`ytBeL;N#BLfg9FdUHoAkU%zVjq}qz;I)}!A8fW@{^C)+W-I`kqwFf diff --git a/pg_data/base/16384/24763 b/pg_data/base/16384/24763 index 500e2ebd38db18e84511766ebf124568bf739197..834fba402eb0428f860271355cc695da56a2901d 100644 GIT binary patch delta 244 zcmZp0XmAi<0D_7M+ZjQ$1p|l7L;(ekjyVjB96-F$@Pc%J7c)o-0XP_V8JIa0_Dev8 z4zfH-2=w;Zu~u`6QKVazhH3K2`=7UZzU=Ub@;&$9$o#$U{!W~E)X#2z0Gsx{W3fGx zFUTt-thF~k#P^bk0Y=-SS;CHHiF;Qo+YCcr_O2widDA%j-rRQhukcmSdrtGoa~=IY n-f0RxBZL;;13j>n}p1_&~4=8*lt1OS@W2?PKD diff --git a/pg_data/base/16384/24770 b/pg_data/base/16384/24770 index 61e025fc81ff0f65da57e1028af0f00ba068e20b..221b491dc53aae282ca0baee1bb7aa7a0b02fc8d 100644 GIT binary patch delta 110 zcmZo@U~Fh$+`yuse_+CPMg|}-VepXuAkU%zV&9l=z>omM6+pZKh$jHC2M`~aZ?Mr( zQeKCHL4x5R%cF!qZ=W4&HK!Owx@BpA^sxiQ-Md=ZW*GXicO|*ao5tbyW^#pn2LQfE BAaMWy delta 55 zcmZo@U~Fh$+`yusxI;v#x@?{KNo@$u;&Z E0Glcgp#T5? diff --git a/pg_data/base/16384/24782 b/pg_data/base/16384/24782 index 606db57ad03ed8d8b1c9d1f586e819e72a92b9b1..e3bf6c78f4747c6d5d02454d225523a1b8a906d9 100644 GIT binary patch delta 110 zcmZo@U~Fh$+`yus&oOa3BLfhaFnGv+kY`ZYcPzFCq>mjaE^hj*zb4x0#DcrBF}bReRg)|1I{@PC BBEkRw delta 59 zcmZo@U~Fh$+`yusxYihgHx_`9D!gsl$oy<}p5(T+d^oneLoEn|e(69~6RJ81FUZGK*LT`#O^CNNZ; gzwPi};j5tcoaU3~I{JOSHQ}--@y^V>Ad6r$05&m9=>Px# delta 11 ScmZp0XmHr5ARs@{-~#{`@dPpe diff --git a/pg_data/base/16384/24931 b/pg_data/base/16384/24931 index 6cc02b0519aa45c5a60d0610b14866ca83c91019..aa4eb07749aee08d36d3791efe1d405c417ee4a2 100644 GIT binary patch delta 147 zcmZo@U~Fh$)MNmH9dX+kL9_?M2l)^3ED9iYk|8St3y=m&far;eq8sgw%S%mxs8wJ% z09Sipz5&CH`34&um&)5PF-R~-$_h2z&~uu)=a}S;gK=edK(T#S;3isOp{OE|Gd@nWrs(U@3{v@=JUH0m8L5=g3JXPsNith c;lILHLGL-uC(m{C`+RFcmIo^W63jph0Hp0H_W%F@ delta 50 zcmZo@U~Fh$lw|;cdz%K=edK(T#S;vvjrj%}9hb`6Ffm9lm?odR|9PwD%MOny-*XR+%m*3B2o%5V@L%Dpp!b~S Sljl16eZDn;#9@FL$N&K33MG61 delta 50 zcmZo@U~Fh$lw|+{gUHQ{AlifBgZu}176lMH$&i(SWul|vM!RG38$GtjPYmz?01|Kv AKL7v# diff --git a/pg_data/base/16384/24941 b/pg_data/base/16384/24941 index 6d17cf9d15fb9f4a2358a2d079f3b8c755d005fa..2293e5637903e7244dc727b4c3f6c28170a0f543 100644 GIT binary patch delta 266 zcmZp0XmF5c0D_FQ+ZjQ$0)v7)g93{Jh&^Hc0|tfp4>mF~%GdibGcbe$F$^#V@WJWF1;(3^XL|~{F=EJWFd?O E0Ox~GK=edK(T#S;47&J}_!q|0wW{nccp;OCgz23uGW8P+ajX2g8cXo Ag8%>k diff --git a/pg_data/base/16384/24960 b/pg_data/base/16384/24960 index 806ea29a8ee47681eacabf1653aba4ab43149c3e..d28249cdd95617b965b34cfafd715f3e285ded55 100644 GIT binary patch delta 148 zcmZo@U~Fh$)MNmH15Mi*L9_?M2l)^3ED9iYk|8St3y=m&far;eq8sgw$xBPjfGAdA zH~?3CV7>vvjrj%}9hb`6Ffm9lm?odR|9PwD%MOny-*XR+%m*3B2o%5V@L%Dpp!b~S Sljl16eZDn;#9@FL$N&Hu?IpSZ delta 50 zcmZo@U~Fh$lw|+{hwGaeL9_?M2l)^3ED9iYk|8St%S1=TjdsW6H+pQ5pBUf)04J0T A%>V!Z diff --git a/pg_data/base/16384/24961 b/pg_data/base/16384/24961 index 7b406d5366f51069ca10d8a69769d62d1917e1ed..15c0935241c19630a14db8c35a9b4689f26fb5e8 100644 GIT binary patch delta 148 zcmZo@U~Fh$)MNmHjOOi(AlifBgZu}176lMH$&i(S1xSM>K=edK(T#S;47&BxQw~Zs<8p-E&Ox#=!n17T?|G=T+DB R!m4HhL)CeZI1DfY832h0BB}rY delta 50 zcmZo@U~Fh$lw|+{j(eLKL9_?M2l)^3ED9iYk|8St%S1=TjdsW6H+pQ5pBUf)03a3& AoB#j- diff --git a/pg_data/base/16384/24962 b/pg_data/base/16384/24962 index 6d17cf9d15fb9f4a2358a2d079f3b8c755d005fa..68eb8e29e465bbecc60c75251c709c40054efbd5 100644 GIT binary patch literal 8192 zcmZQzU|@K$YC9v4V$fhnkYi9_Q3zyaV3;xg0)qh%pO|-nApwX-!DtAKhQMeDjE2By z2#kinXb6mkz-S1JhQMeDjE2By2#kinXb6mkz-S1JhQMeDjE2By2#kinXb6mkz-S1J zhQMeDjE2C-4uNpsTrvoQCzydj!NS1SFhNm*;f`D7>J6`)rYwl*>NsDX^usjy)4?EPJ_-=?jpt*67T`>PJGq6#`9xkXoZlMT!Kz6|Z69b!r0xRYI Jftd%h2LP+|qpkn| delta 12 TcmZp0XmHqQU?8{A;Q}K79lr!} diff --git a/pg_data/base/16384/24966 b/pg_data/base/16384/24966 index 1682f9968324b71bf1d86da8f5f4c62eedc477d2..a61db3727de438c40b02fcd6b26706ab70333b7a 100644 GIT binary patch delta 122 zcmZo@U~Fh$)MNmH9kaJHf@lwh5Aq-6SrkC*BtupP79b6l0MQc_MK{_VmlvA@Q7gl6 u1FrVQe1naSyX7Yuu&FRINHE-St6aU|mD7|3FFNg$tUlB-s<_X!z0S~+=C{SC-ldSts0FeN2AF{i0D~GTHUIzs delta 50 zcmZo@U~Fh$lw|+{2i`4=AlifBgZu}176lMH$&i(SWul|vM!RG38$GtjPYmz?013Se A1ONa4 diff --git a/pg_data/base/16384/24985 b/pg_data/base/16384/24985 index 21fe7e1009cfa98eaf335fb2ade5ac637eb90c81..cbae2a37f70be4019258e234a303fc58c5b768d7 100644 GIT binary patch delta 123 zcmZo@U~Fh$)MNkxjk((yL9_?M2l)^3ED9iYk|8St3y=m&far;eq8sgw$%_|270WQ( ufGfT+-(aKTZuyA@Y$}Wl5)7uvC+~mW>iM$6Bg*&OgCp}n=D`3nkO2TgkQ=H1 delta 50 zcmZo@U~Fh$lw|;d1g9;GAlifBgZu}176lMH$&i(SWul|vM!RG38$GtjPYmz?02X@; ASpWb4 diff --git a/pg_data/base/16384/24986 b/pg_data/base/16384/24986 index e604d1dbacdaf1e252fb1ba8ba5174a85dea2359..ceecb83cc0f8cc174b9141b10c41bc8b86da403f 100644 GIT binary patch delta 123 zcmZo@U~Fh$)MNmH3v;(Kf@lwh5Aq-6SrkC*BtupP79b6l0MQc_MK{_VlNXnm2T?4; va09OR#(aZ~j=SY28nCG_GDtAIo)qgp)!b`g+XvQ;s6+NYK<2>!GmrrQRQVc@ delta 50 zcmZo@U~Fh$lw|+{4bLr%AlifBgZu}176lMH$&i(SWul|vM!RG38$GtjPYmz?01o{O AC;$Ke diff --git a/pg_data/base/16384/24987 b/pg_data/base/16384/24987 index a343e8cb22965fa230830f8bf5381bd6b23f9736..c9df782992b21fdd036ee41af05eb48fa2ac9f0b 100644 GIT binary patch delta 123 zcmZo@U~Fh$)MNmHih0`^L9_?M2l)^3ED9iYk|8St3y=m&far;eq8sgw$%`L=Dwbim t0atuuzQIPv-SQI+*i;x9Bp5z0YFqy(@Qs<>zPw8znNbU59t%ks(4;h{Dgy(P&h=+g8ayT}me+TQ|1o)q^G>Tnd@q?8g3;W? zgyydIm-vtMZ*Vf+z2fzpvke@1l)6jU#WOg-)i2l;=q`}e*xUvRlK5_j`vRfv;{*u; x0VBkH?_uHQS2W%H{cBItnZkc1xAF8xlIlLeAXjHs&wvmvpxM~m;uZ>V2LSbHqdWir delta 12 TcmZp0XmHqQARxEV;R7Q89X|we diff --git a/pg_data/base/16384/24994 b/pg_data/base/16384/24994 index 22c4ce71332f3b41f99527dc50ee8a6b26657aff..d3bbc86206de6e32f78dea955b7912c3c49d5b84 100644 GIT binary patch delta 176 zcmZo@U~Fh$)MNmH3k$Y0f@lwh5Aq-6SrkC*BtupP79b6l0MQc_MK{_Vlb3(78lqT* zVFg_Aiunc%H-PxSe1naSo$?{f3=#~62FiguA3AMc?Y^hl&P#L_$WSJr`1?!z$ND!o q8Sh^4dd}Gfjy#Y!BT(G0XuA3P*Pf;`h5t%!ZeQM|kj$tBGL#92I3o^mkRA|V G24Vmo@+g@A delta 50 zcmZo@U~Fh$lw|;dgs)o|L9_?M2l)^3ED9iYk|8St%S1=TjdsW6H+pQ5pBUf)05J^> A3;+NC diff --git a/pg_data/base/16384/25024 b/pg_data/base/16384/25024 new file mode 100644 index 0000000000000000000000000000000000000000..6d17cf9d15fb9f4a2358a2d079f3b8c755d005fa GIT binary patch literal 8192 zcmeIu0Sy2E0K%a6Pi+o2h(KY$fB^#r3>YwAz<>b*1`HT5V8DO@0|pEjFkrxd0RsjM GyblZ@00031 literal 0 HcmV?d00001 diff --git a/pg_data/base/16384/25029 b/pg_data/base/16384/25029 new file mode 100644 index 00000000..e69de29b diff --git a/pg_data/base/16384/25030 b/pg_data/base/16384/25030 new file mode 100644 index 0000000000000000000000000000000000000000..83045ffdbc3a299854b5292e7b60c23e418db346 GIT binary patch literal 8192 zcmeIuyA6Oa3b%7 literal 0 HcmV?d00001 diff --git a/pg_data/base/16384/25063 b/pg_data/base/16384/25063 new file mode 100644 index 0000000000000000000000000000000000000000..5882b7c142bceab8911b76ded9f35563bc0b3bb4 GIT binary patch literal 16384 zcmeIuu?>JQ324V@ze%7 literal 0 HcmV?d00001 diff --git a/pg_data/base/16384/25064 b/pg_data/base/16384/25064 new file mode 100644 index 0000000000000000000000000000000000000000..349d61d506b89da4a0c595b94a4e02d7b23a66d1 GIT binary patch literal 16384 zcmeIuu?>JQ3JQ3!Ock~^SA-mY74pm diff --git a/pg_data/base/16384/2604 b/pg_data/base/16384/2604 index 5498754beca6007311298c061fecc3035110b4e9..e62a3e4810190a1911df8ba6ab3d265f0a952fe5 100644 GIT binary patch delta 167 zcmZp0XmAi<0D_44os1xQ1p@=?M1ct$2U;r_8Gv}>!Uz_{2xgEJ0|QtEkXB(}VPN8r zU^tSh UDaHXJuYt*FoIv*GFs@ai00l@P?EnA( delta 73 zcmZp0XmAi<0D_8~EsP*~0Yd}ZM1ct#H~O<|JTQ@Qas!(vBgf=vZ2N&^7(0j*;{cJ@ Pz~nSeAbWEd*D6r}_y851 diff --git a/pg_data/base/16384/2606 b/pg_data/base/16384/2606 index 7a826be1ec14c63447b667472470983a8287c431..0c15ef82c29916c80a5dfbbf5a7243fa59c95433 100644 GIT binary patch delta 561 zcmZoTz|?SnX#-0GkAU%RMg}10VQ^rbEYOf3Q_$_en9;?;l+ek-6w$%L6wuDXB7#<}uFr;PXCFUik#%GqK=1xAD zVKTYKiG%ULWZx7+CJ~0oi7eui&pQR0!c3Bcnk0i}(p@x@isK6sD<><=QJMIG8)4#P zw)`v$m{FooqomP{x`AO-VnIPsei_6x4uok;f^hf2eJThwR0_?|%V>s94lD-yl<7d? zWV!5FaQ(bc{gP<<&!Ovom<Caj0`|fz#zagS)d_d^TdYrESncJEC3OKOq&IIJ_rKICsy|a#-_my5f?z7fgkNb2pIRlf~&_uPc!bl-=S93D3q#nK7ywZlnzh$ zy2GS7scSTcNpnKeMES{KPds8TvBUE)|8Z9MJJ#?x#-_t{5f{KQ2EMfip_g%QEI2tH z03IA=+-rZOT2&60s#JC@!6OJthsVRo8K)^8VUir?5b_oMjG^W{;*(n*%v44_@pg9^op?znc~QoHaa(u{pw(5f{KN20pU@MStSs!A{0K zwcygobu;b>ceqrgDFk;QC>m z`8FQ2hDR_q9Y!vIEi564>6JP~5|(4a%`D+VOhTNLmKiPv=(H5)_kdE+0a0% z+n*V_((3lA?}1c&0a&8;u7wOM`i5fXKTa-kYeDh0Tw&1bC@uR zoV?QgKu-SbzG7^8w+Oik#?8>=*?{E?{BDu31rsJ1_s!&%3Xxf9GlFFZM#bqj4$`=~ YM&39&Xv#?AXd1P7e3;1F1=a-r0Lpot)&#d7;$T(=J~XArfJ%=7?bqy@9MH_M J*<(iEU>_4bK-)2;mrjLQkf?QG;(bA*uH}U09oY^ A_y7O^ diff --git a/pg_data/base/16384/2619 b/pg_data/base/16384/2619 index f25c7ed6ccf0a3254ffd9cdea8c4b3b9e01de076..87f1ded9c06c38d3530cab49dbc6fb9a8c16d962 100644 GIT binary patch delta 3429 zcmc(hYiv|S6vt=IZp-#Tx6h?$rQ6D*m0fmgyN@btuSk$mpbZ9T38A-;00yOsQ4ytk zHKg%T!0^PQL(>TfR%$aj$ z=FH5VnY&sfQPT!%EBGEVE2*zOdyq4f1{Se0yV=f|uqosX*_$5{ zMyFD8BcnU?Ei7beirhk#iLt?qvm{^z$t*Oi*)~1}>e7vtgr@cH#ktp?W=GeZW-6!* z#ZuGSI__Qz+Zxz_A5+{ZX)J|hYo>frr_zT!KOCr`9f^E|Y%UN}7gHr45pG>ff};*R zMY-H2mvE<~v2={*d1B&Rn%>WsX876$@}(L++dP^sREsIe(q}0GOZheRPBcAIgy+ae zk44!LMcNT1+KvdYhY{gG{9cXB_SDE>nGuAHP`GiNVOuj@=DnuNWQi=BnQ}yI3$;es z6Lfp{Pz%|j2gDnW>)U8pR_f9$`HK--%Ivp8L@-mYsfIFRggA93D#TD0XN0alOM9dG zTMYZOFZ=W#WY}ZR(Uz$Gv4(wbUwe#h56?eO=X-BqC^Pp2=%m9@6PXM<(mP9Zwa_MU z`2x*}>OnmtyZS7F8+P1+-b)*T%+*g9H=?cAJejxbxE+V0?1T0GVce9%lxR;hu0sW@ zWFq-0jlHK*Tc%$SnUQyLMYa%1@D@rF9o@9d^g;L|QBz9U;mm9F!?46j-y2Uu1ykAj zWRt^_SHIBQxuTKmE9P_e%V%O#t?~A}ayD6_=f{$b`Cqz7b>=Ngo(+hc=Xi#Aa5812 z^zAxWT-%1FOu0l=i5s3bl^7GUdeMG~ykn1;T~?l8RR($8ersV&JfC4zEcaVAr=&=- zAHrLt`>aY_F_dTGIXe087g`ym2Mcu9emTs2tCt7LF1=SFMoT=|5yxC&9HnWYDZzgltnB_m3h(=YL(Yq7huI^rlUDA$6J=v6qz+Y{X4sfFL; zu|}M}Y{lt=a}{$I7q6*RMtj`uts10Db4<{s$6Z(g!vuF>IfGrs^rTcrpn7!a-E7tJ z=6xI~XL(%l7N81}64de`7({j?A8qe)43lwcBl#w!L_t?yuv~*)&GJaO$)LeoSf)4S zN%$a~zMb+2{8E%_PCvTM)caLqk1iM_bBb26Jj1FO$8ev|CH=rShG4dW6VQc>QCh;V z`C2K^^sSTvtYQxA-Ni-^@7Xp^z~ipcB?6ODB=_H;AHYqya*XlTDrr5*(l@8{cPh_* z^JdU25?W|;zobhr@^i{mN+NvnPS}b<&7q8nMOWN`$*V_!9pfZPi>k*pjCtTTaX+Vz z>rK+4D`O>bKd&2*&|Bt=VDWNZa{ShfxeF^!2eNHZA%G2R2ay`aenOprdK0LJ{yBI6 z`jcP@^jA=iKwS)`0u>wtvtidu-=m0^*DDlELmxZH1ujqkJirGgfQg_K%mh_nHkbn* z2Ty=n@HAKsg5VXf8mtBDfdCu9X3z{;Ks(qC!YT{0PoW$E$G{2D1ulXs;2QWATnFEQ z-@zZ?FTk)dGl&IoAOR$SY>)$ngOMN~IDiWjfFj@pkASk8AWjQP1(*(IfJ*Qrx?=jIIzFgIs{g6bx_-Vm@$y*;_cL31UhnY(3>hT&IojH9NUUfd z$Q&bT&eP1`X_Jxha+3o&zs}*TE{V4r~WIK^xc&_JPm9DR35af=l3QAWQVs$3GY2XPn(hN#cN@ zq{grKxGX$t@_7s384DbJlw^%3&3L}#b7lUd>=%5lIX>4nIw?7K2_}C*Wo%wgkbY52 nBIg3-{O7Oen0+?_|JN%zl;K~#{J%82iyHc+J~w=c-PG_mXqpt} delta 2924 zcmdVcdr(wW90%}o&Ry2!=>oCxc0qx)5J=EPSk_h1h(wv1F)Sa8nt;!Re5EFf55xq5 z7&w3wi$f@rDL&UpQyQ%tUtvB#LB(;zNvJRzA2eFudubhXw7=?)?#yTJ@1DK)+;i@| z-`#6AJDVGw%n5|twMMFhlr=MHQBEOkG0!PJ8&cAq5X=pOsEoH6 zm@B3H7X!0m6{Zz-^OP~n1NFi&QqzuTp^`U_m71oHL~V)}Yin*i3#Zs^Vhi&vIWhbV z?l+zpvAudcyDv6hW|dr-ARYEttQ&jl9jz>nPk)_h#WS?Ad>)v{#-i3=VQJRWiR^&b zXYK^))cPc;E4^IEvTmEmrn;tdAJ{Klk*OqIx+2j6ACjnGuEnkM8a9MjkCwkK*RgoE%a+8##n9w#A~4|W!2bITU@k0y44E?1w{e6pq6w_z^C_73hF2xC;;95!gi#Vh=9h5kazvABsQ-fe5IIB%}_u!+vOl z6VL)}a1E}*ZFm3_bCZKJcz`zygdq?KF)#*_;T@O(vtR+dAC*nWN)+p1BNRg!Yz7O| zLj&xCuizUv3Fn~|+Tj-5fj>ZoJLCZFFaXpL4B?;!2iy!F7z&eMwpc8KP4ERA1#$VE z5h6ycckv|s$Uq_l@Us3wn%aL{m%iiXDLs-9w{*&gxI|g0ZgAo}U0&t8Ix!96gB1Kh z=XU)(Bvx9y@u>iD`ngBeJqDM!9&y8qD5wV7;4i0yjV*0vwDXVxVanToyn*jn92Pt)u! z#8r%}3{i3gUkHI=5C`KS3EqZO$N(|Q8=xHOU@shlAD|g-KquS-h6Fl-3I;(qR3l~e zusafQJ&58MoQ7s-ho7Ju?!hClM-tq?69ORuVqqLif@zQe%OM9o1`ahKCT=1+W-a!Wzhj zPoM&-p&oXMaorC`;5#@2;_~$4>Q0nopaF5kzgb%7lB^T@5*lx7O<)>B)Ug4&wA`DiM*^9gdn zY+YQ-ihSI<3wk?WPSj62Z)A0DeL7bWXP!9%otw_tI#&@Vv2(7|3bnj^CUX%~#F5|8 zJ~aXragcU86fNX)%LOKTs!x0AyZIxZ_nkr-`QnT0c;88?NI&VAsV(e4?}SuD&Qs%X z6E1IIRs8BDHr>{4$9L(4YTjM*%vohTb(B!;s(JFWD_%Yo5qbyO$}CTfk)gSm_q4HL zwtlI20q0vkzrtoPCu6kuzJ$MH;z_x(o#{%>CTQ{Ur|H9wM|cS?*5K>xs=rgT^nyi* eju;iCN+I+)`}aNe|5p3)2lj%}YElSA1O5UV*;L2? diff --git a/pg_data/base/16384/2619_fsm b/pg_data/base/16384/2619_fsm index 13acbd8c3256c81ea768c9ae1257d0223e4d70e5..c14fd0b3517050b4c7d1c6532025be34c0d54bf0 100644 GIT binary patch delta 94 zcmZoTz}Rqraf5_|iUb1#11l>7D~JMO5P;DT9*{p#QJxV<*n@}$M%IOjjEt-s6&abB XSXnnKy0Ef6&abB ZSlKo!y0EfAXau?Ze}!HbDn--_=lzD^!IajiSw&df4j?>6LPGMV4^;A^F#RvPNvnY1rR%ISGM z7+G6W+`naVHEk^&%iQsG-rlFTBsNy;ysX3J!?B{1#m>$UCM9L-PDC5ua}N2`{++Rt0=uyW3t-1QvF-{kDn9PNzGkx1it*rpb}QJj@AE8 zD@ub{nW$FEDH;>wUW|xYl zIqgIAtJ`!E&y4t1R=F4PRhK95%&74}#tpp0{_N?zS)MxU{J&bNd^rc5( z&x?YJra9e!=nFEEb7q$Iyu+ES&vOAzMbn(Bh(00F<3s-Ba9rASw==a{TOjQsqvY2S)7N^F8pF diff --git a/pg_data/base/16384/2656 b/pg_data/base/16384/2656 index d9ce84be2d1c065ef68d75a808f36ef384fce69d..9c2ebb58d5769d47744f7882dad0c7d7a8073830 100644 GIT binary patch delta 68 zcmZo@U~Fh$+`yv1JtKZ6BLfhuVAwF3UtuEqfw>9{8|Er(bmWzlRACTcIFQJ|AO=zZ O1j9{8|Er(bmWy4Q(+KbIFbmGg#cwB M|8U~wQ?_PI08%3mLjV8( delta 34 ocmZo@U~Fh$+`yv1{Uc`!BLfgDV7M@uUt!`#CllGtS8R2d0Kc~i^Z)<= diff --git a/pg_data/base/16384/2658 b/pg_data/base/16384/2658 index fc43847661ef25b1b602990fd5f10f0d5cec4c28..13bdfc49c0f3970bf232a0f0a921cd8f24f3d289 100644 GIT binary patch delta 1129 zcmZWoJ8aWX6uoiN5=w`lQV5?y+VTnIXYn7cXCX1tEn-O>+oFahHvUw}lpvut?Zki- z#taB`Wk9XOk_A{hvUVbDj2$`e`PoUp%F%r}_uTuAuitC;b8YuY^gu{HbIE-viEUa&2nR%r?g_~uB$Ic=a)GPwVA=oABct1#@2+skEh+ie z)=eQ1wr-@7aa+qmB5YlklE{N4+o~90Y^x+BCufw|)-@?HeOpMX%~*1kio&CBi|>PM z;11uO(G^+e8BNP#%lV6vcTF?$D|{Y2*J3oEY*cfjx)=~oFuEXl$bGwRin(z9 zyyPuAFnz}h9WfV1=OiCG;kxL}+dzLd>4Pm_xPIEFz$S*pb*-La&J?6t+HsCMFanhC;OU z5$x2?+6@oGe-bA1CG$ITZ|*mlO2t>v`_5Q}aAyDBh+ai+JyeSn%&}$CSEogjOWd5L zq^^0YXF{|0p>}m>{6V0{eQd6n!HIldXp|_luphV>3NW?is@)A(L zci69f>#$G#++nZ!N!`_IsrxN#ut(j{_g~HS`!4+5a#=SR20zXMTek5p-ok%)6F2b& z_BaRHvX0w@Y+1wYLbj}`>l7-B*s{XFX{27pZlNXY7Fxt^p#|&~n#TzWWpEtN;aKbY zTLoqr46tAZNAWc7$5S|hCvhK6<6fM?J$M3#o%6N8ID>8$jNuR-#X+3J0X%~Jco_Te e5cc9hY-JfF7`Xp1j@^G4!=_d$nTx2E(|!L7=Yk0U delta 52 zcmZo@U~2%PEsQJ)JPST;VPpV;9V`XB+XWIB(^wc4rkAHMI&O5@#j(98m$6HT1*8A~ DroRq` diff --git a/pg_data/base/16384/2662 b/pg_data/base/16384/2662 index 4790776645aa7a157733aac2dcba375dc7672920..da21f7cc8de2037bf94c8f8eaba72e7f3911660f 100644 GIT binary patch delta 145 zcmZo@U}|V!+Q8z#6A-YQkpT!+FmDjtEZ|VXJb8k$%tj|Jz6=2dMg{?fmx&-*5a4Gp r0`gxV@eP6e=SX~gApbZLUl+(fhQ!wZ@{c0%g@OD7iJPT@p6LPrU9c9M delta 36 qcmZo@U}|V!+Q8z#bKt`kMg}10VO9{@EZ|VXywPbI-)5ztd%6J8rweuf diff --git a/pg_data/base/16384/2663 b/pg_data/base/16384/2663 index a31f5484cd48560f2688dc8e169c6f3b6d743c26..173a088c9ba6312dd9e3ddd63507ca884f55f79f 100644 GIT binary patch delta 300 zcmZoTz|?SnX#HMe;30acNDBP zFvO~^G$|`JxdfyVrcR$h!2!jV_=4=zN`yJWsPgQ&#b8S|uTqJU=GN%g3HH+kri97- z4!x`$oem5Mn`b&4bBLfheV0yqjSwJB{%AzHK;X!i(gFs6F!;2ONh8aNm01#)i zY|c}NU>0IwkYzA%NXyJi%u7y<&n!vJoxCPq&WVLVhCu^GxH!Hbu`;zNJ~JggEjzW6 zVFm}t9u@{^H0{Oli3J5k`DK%9VkHEm&?G0XiB+(a#4x!SXfNDgxXBXe>L%A(i%W?! RD4@FwjH0CB*~0EQ1hT481a!+{wI z8y)k-rC1nb84Mf_B!Vqthjc%~g?YY5>WD3&{Wg diff --git a/pg_data/base/16384/2666 b/pg_data/base/16384/2666 index d36c7b2da026ba17df2164d32cdc78a01cf959de..7a5cfbdc727262d77b1feca5288f513c9ea863c2 100644 GIT binary patch delta 174 zcmZo@U~Fh$+`yv16JWBNkpT!Km_G<_7EpM?q#Q6sfx!WY4S-kyhy{R{0f;|L2C`=Y u*)tV3I^GsYWnqwI5CCa~0u}}tG`=(%UkZ&ciN=>eO?KZnGZ0P;^F@x_7s6N#In IOqOv201+!3ApigX delta 36 qcmZo@U~Fh$+`yv1^W(}EMg}1G!;~PhSwP_p(?+K>!Ock~^SA-t(+mRu diff --git a/pg_data/base/16384/2673 b/pg_data/base/16384/2673 index e9d7eafdf6a069f3153f414730a097d094fd9c1f..3de00dc306eb40ebf79c7198c1c4b62313958ddf 100644 GIT binary patch delta 3313 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 E1JSzg^Z)<= diff --git a/pg_data/base/16384/2674 b/pg_data/base/16384/2674 index 7d5de125c7ec5832ea6a0975ce4500b0da0429e0..79a297a1579ea5d1908941e08391074372083611 100644 GIT binary patch delta 2938 zcmZ{mZETZO6vxl)Iv9n)^R#0tFAGIrl$!jV9KF#QDYezo$>vQtVBB=icX> zbI&=?z4y6!B9Y=qqHD-_#B(L<=UN>c3$weWrs4qWtuDV%k_%j-rQUrDGqF|^gFzY{G$;Y0AOr%y3!H;KN@20a z27>Xw6P4lQP56Q+2;GDq@B-&e9})WG4TDB+zzzbyi)ZHz*w9a2_t7wjg3xu$1zz9= z8c6n|mVV3!C0(coed;6ZY1AMWo}(9xFliUCnd$+?5C{M-a03lY$smnO_@IxVZwKo! zE&-`)28~?{Qa9+txD~w<5XKXIK}vvVA7Y|+0}bP;-XINw2=MiWgS5UE)qqqyNMm3q zZcr!sR$yRE=qIis7zlyDRTPJQx(9`Ue$WnlIGHZ=scysp-5>~BaU2am7*E6y2ZTTX z$JQH$(C{#Q1(ku}E2s>#W9$Pij8m5p5DZ;LVdz_d6C^KT>pjS{UYA#B6Pq7NqQ+M(bBn@uvYBUftc~!gWtyGlK;&qmd#|)DQf!v{77P*E)>vr<>fLwrX?;^=WjP>n>$k&vGxMlZsr1OC65;c@>A)=N*>*@DE#jQ5&BWPKCp5<~_BhV+1k00B*1_*V zUB+*vA+)8t*|vwJ+I5ZgL1yYUcyTq}9*xxYXq2-(t|opjjnw97q&7#Rog>dRiOnTp zo%SP+`Vzjw;mBS_I<@8K1?Hrij$eiBms6fmW2N@x=ojYbJ96~dOHilRl-^}tI=P7t z=1dUrh8{CP)N)eDEuwA2K_YVi6sc57az>26B#JH$Snuyr=C%uUg z3W{`-ataL6=*t3{%#5Uq@u9x$&A!>kn)uMjOCNj~>VuzicUMNU+vL;V_kPdsp7T5B zciU^*%WQkul)t!g>flW&_*8w#>CWP9Ilbz;9V^BX;pxLSt{+%s|2{vu(HAiChK%F~ zWhigKXEM6FI*|~C30utOOfizn|13A;|B%0_n^HzgH7VOWeo7={sojwObgr!YJwH*p z%~qWexhrE{ONh#OQ-rRWVumP)RVJ#V>sL)-p)150C_+|8#tfMI#uUk~O)*QfApld5 zVk`;65QP*ujdP~R!OR)fI?cRjan8($+E=ECbCJ~(p-prdCZR&IN%9o_2*jXzmWlBr zXbT-h2heq*0XBLrON0@KLE%g0)bkMIM4MPV#l5F8EK0(ZPJ$G>OG5OjB@AM1!VZxu5{{C5nSshKm3+3RGCI zL=MvEI57luWr-OmDvBcxg8{XRmY9OVMJ6J~AOO|8B_<)4H$@uaXp@PVXu(16fEx5{AKmIr>|JS>5Lg4Uy#`tWtP^ z!fMQ&9XI{SaZYo5E0vFP6U=cuHJF9M7(F76KmuYADed>k4&U;icwK~q%Js>${=-_; zP~q25xBNm(92KHX|B#(eP$YFmc^kQ}Hq{|lb@|*eb)-**{QI@t(5Z>0+UF`KRgb9? zeX@%h_UeJic9LIcs<^A1WIYys9!FO-N>$F^i(A!mPUZl2@6pQH%d=V~^o+ZkYL}~= z8TD9r2xqB%4(d!>-#yS&{jPHEcE)ySN1s>cQ>dPHA-<~n3O zjE8%yVQ4fC; z{!-_=ao$%O24v8`feWX^=&sS1P8aUg%IQL|nesu8>{5UA%Wk!&Uv_l{MF&I8wyN9xa(yN!+A$Z- za`7){#UkI=d<=pjfUkS|Y0DPx@$i>>_{+2(Sz;nT1G=CiEFjgEL8nTeYwBOr;wq&( z`^meiF+|qGKkeb4^64+4nX>sL7~(yA6&YfuFAYj7{0^7Roi0jydm$}+%$=zJ zt|l7dsLn8V^2fp3*I8d@P=@<4#9R3KU=Fk#%$pwm8y@}<58r)_s2f8vn9=VJz1Y5% z#q^tGDPO-=mhumJ_^;sWLvG!qei1QGx7gdVuzoM;1@@LUMdkUnw$4aemA1;!E%WDN z2>rTp5?XG2dBImdZj<+yR+(}~K8FPBEvX70DKD;6#xJL delta 35 qcmZo@U~Fh$+`yv1z2fs0Mg|~w!?a>EzrtOnjZXXcHm@=a;{yQKISe`g diff --git a/pg_data/base/16384/2679 b/pg_data/base/16384/2679 index f9ba870f920b5a0805d984556810f4d59f6a8f3c..674a67a38e7d2a9ee5b049e02cbbd626fe4f4d77 100644 GIT binary patch delta 128 zcmZo@U~Fh$+`yv1T@bvRkpT!UFbizvS6Is|957LV!2yU3fLH;D1tuzNbadwRU}X?u q5MX$j2vQ6JtPFxc{tG0&0FeJ2iO&z@A4lTz0r|%gH%A#R;{yOwTNSMU delta 35 qcmZo@U~Fh$+`yv1{o?Z$Mg}0*!-1}wJ$L`CkGppWGE1J~ukIYJZ!YM9rj$?en zDK?zr7*Fq+rP%O@V?3QxyI{j39`N+a4tIFO18(sJcaKCv3`C0^?r?)E++v4I+~5iq z*x~ZrKfjDYo!H)Dd)OP_c@o>HBlT8&RBzM=^;#XOSL#6RtGR+nY^mPOS+nr8*v<=j nq265k#*XUswQv7>r9SA~SBL7QI#7G+zX#7hvoD*^$bUk=YduZ6 delta 174 zcmWm8u?@m76h+Y=lMW<2f=9>*9>F76Opua}FQN1nNFY&V1S3lkrANpDNEsm|B{#1* z#cQrsqt)bA59iO+2>b1#EmkLUanj$NbWbM{9R{@MQLw}H!G{Z4oKdjidUKL-!4YRn dSWz)!k0VA*7*Nrd;riXbgKx?yy^ie`_Xpr!G`|1< diff --git a/pg_data/base/16384/2699 b/pg_data/base/16384/2699 index 1c712e4bcb4153ca18385e6bf7b077e475afb36b..e8f2446e2113ffff070db9bc6ed2d4cc3e9f2679 100644 GIT binary patch delta 516 zcmZ9{Jr05}7{>9pg5QW0zZiQ25)UBW08b#^fE&=!k>CZ`9mFuYxVjh<7Z(%b2|R)i zlg-=aH~gEtZK}1%Q*3JsNN-E#l6njM(XhmPS;a5FAwvu?3&vaY{yHRdhW4c6k{)p4cRRu$h?Suvv2QeU~Yy}C?8xiV|1&N_jy|E#; zSNEN7pP$N8l}Ji9B6>R^c9W=JzxO_yc5&|8+3sRW&-uV0UT(6!1S2cX>g1HU;zfa zBLn~&bb)%r$DJR!C54LOTdkUJX}FE^rO^7^HQS*fQfM`B&A3|$oEdjH-^oqQEg2hf zS|OPaOB{Vk?4|mIjmL46a(3QyFi2JpLZ{Cdi zLgZU<&my15&qqFypIvw}k$)-jiTq6D6Zz@LC-RkrHxl_vp_h%8dvAA?kreTJuTc5B z99(mqMwMAbQT>1W)n_#7b2{s*G&K}Mmj+uBk7eX(arYO~)x~tc{H1;pU7lZwY$D9hiY_!F5 YJhZ!w$KsE!qoFMG-;L~dh2?+$1H|3x?f?J) delta 481 zcmY+>KTE?v9LDi$Y}G+ZRIr-~A`T7`+fJQAUqO(9n;xAUGYBq1&$j++{gZOivGpai zje}!G$Bd#586Bf9K>S)=Jov!x;GT!$PDO@N#wcqq9K1ec1nbaB! z(c+mD@u?K|Fp;$Nmn!CcMi-;D6soPaPBt4!z!nM~Y^1mJAb^Aef%t|-_;6t&xh4+< z4>r;(@(3W|Kp^gthYuHKS2l#lU2G&BilE@ZMtVsR0!TOzh%YFD4;LnqbMjE|U?b%j zA_S0d@PCaxH>1}obzST4>CZu3-<71U4VgB+Ddu5ag!uvzwVVY5=r z>9GdiN6oc O(2`xN=auzKW8)hNkfBTf diff --git a/pg_data/base/16384/2702 b/pg_data/base/16384/2702 index ebe71656e591edec9cec9f443ff856e719b22516..d87b4f645ff4f0c975eac042f501b7bcbea659ea 100644 GIT binary patch delta 516 zcmYk%Jx&5a7>Ds$cl};*T~sLN2%C6;^#*VPv7_V$J0&H-3(#ALp`@`!jX)IQM+Bl! zdjy}2lKkJvQ~V~Aycy>_=e%xU!+P5H4Ab3v%z5pBLfgfFg*~METC|P>A{4}w-i_eB={NF7!(}h(=ziC^O95J zGfPr)iy0VZaBTi%z~#@g;>C8bwl&N@ST_qaSTHgFXm!}^-n5<>sF4+@5ltURqfpyB FO8~!;CD8x? delta 70 zcmZo@U~Xt&-oT>3b0TC5BLfhKFfj;D7Em~|`GEqHz{CKR%}j<&{yY^y5ZM*X5^S3V T8Z4ML`!ua%21!e`J+lM=nJ5$K diff --git a/pg_data/base/16384/3455 b/pg_data/base/16384/3455 index e2c938c07e42dd8c886502b8f67f7be543459407..86708d61afa7cefd13f05a820366c143a624466e 100644 GIT binary patch delta 171 zcmZo@U~Fh$+`yv1{UTsDBLfhKunKJES9r=IS(DE}CguL0#Bh4O`=`~!)b>(rYh E0G&h|00000 delta 39 tcmZo@U~Fh$+`yv1o$zrBBLfipU}@OQuke&*vw$iS)5L(D%}wfc5&-ue40-?n diff --git a/pg_data/base/16384/pg_internal.init b/pg_data/base/16384/pg_internal.init index c0fd76d2535b7526c2685862989b4dcf6e66708b..12834ae95b319d3c7ebf27735235f90f5eb4d851 100644 GIT binary patch delta 8790 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 delta 86 zcmZp0XmFSyp;_eUn8^SH5^dWVLG+8C+rTu4fMJlhU!gZQ!NAm-^-Hh)atDsK{V{ZsbN3b&`U9iCz!Jb)~b;Vc&A z-oV0JXpq7?WcMuee?T$m1F~#ov)IJ0`yB5dm|~&bmpC!|O1G=#Q@ZxCrWlYj$R5&Y zOxoY&W~lg~O2)_>nK+WP@2k*)d08u)Rl|F0INq1h*{ywzoamWEmHL-D`z)R1w;AWL zNyh~^zun=O*A^S*15pJd?WEse_J*R1F!l>hkU6rngmKR@GdEP{T1J$X%xLZ>S8Lva zqNG{Z{_9S!dIv>vcVXckG)Un-vX2Zuz}*I^0U~zZ!!91^c8Yyj94`Jw*Sp1+A7d*=&UvOR^{S@a^d3L#@i4%=94&}(Cw9KhuAUcEGPKN(tU1AOD>o89)knVpN z_m^=r+G+aCdICuHv2t$1^tu1n$}*QF<)5^vWKi*L3hflQ27g0GDhY| zW6f&nTCuQ(dBQrnx>L4ZSx=hvo;BM-9Yd9caaei=tDi%O3_8#*7oApHh_Vwg>YTQZ yBA@FPyjlAH6B1bKehTZ!AQ>U!qj(|FQOwgv(`^5Rey6BD!G-rFQtV?_KmQ-rkj?Y} delta 1449 zcmXZbPiWIn90%~EJy;k23`8u5+WEISHpPxv1hvu$1;KX1%~U+}BKEMu6x3~^>r`Bv z|2hI1r^wW)J$Q(`t)%r}j{yI;rsH-d%yScQkdckQ+%>b z@PB+hxUj%+p-<0Wgx@Ul1ukaoEM0=iWvG%mStC7HvT}HNli<37I=_`$o7lwiZl{mC zfWgoJ6cezAlt_&<1~HjFh`O4U&B?SC;u1kRnYKGqPNn75o=VVj2DyA1ddBdQ^bjhK zpi1gwejMZ6Gb~nqitM(sxtQ8;pLcR+(k#5;BrhaxXY5szcQW$pjg_GL9X^#+GvIiZP~*MMiR4EM>6cKH|kue2GL}$ z4VG4MTuJ`dQVNDb7^x={?Gck1IA_ITF;hi~jBx+wpGwcpS^ zOWl#R{?E8zWxM;ut^s5(Yu`QZ6pWji{kVEdlMn8#1bb!V0BKC20dF4qzrqL^ClxX` zjhm2~MqS>@=1nm6nKwa{HMVH~lcja~4F1pjcR79NZ!lIu^pfgte74#wbp3%I(oe?8 z{Yw$r@siB5cpWLH*x)n)!GsRyMaH v9_x1bxFHONBq&~mJ)}fxq%n-i^kLN1hO=z@@ezj*7{Y-^B#pg3G2;9WBRSVC diff --git a/pg_data/pg_subtrans/0000 b/pg_data/pg_subtrans/0000 index 6d17cf9d15fb9f4a2358a2d079f3b8c755d005fa..ffe9102f574e5bb6271416606eb9e1aeb4880e07 100644 GIT binary patch delta 38 fcmZp0XmHrz!YdWP%m4;KP&x!khcRztTqFblcmV}k delta 14 VcmZp0XmHq^z`HX= diff --git a/pg_data/pg_wal/000000010000000000000001 b/pg_data/pg_wal/000000010000000000000001 index 312f8e4fc510d48223e1ceb76dccfc6fa77fbf06..7118edd0efcb0578dc9236673df4b51194edde6e 100644 GIT binary patch delta 620325 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 zLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*( z2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUF zBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Ex zl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e& zNJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8 zAqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dY zgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo z5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjT zNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TX zBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{l zkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!H zLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*( z2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUF zBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Ex zl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e& zNJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8 zAqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dY zgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo z5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjT zNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TX zBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{l zkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!H zLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*( z2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUF zBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Ex zl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e& zNJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8 zAqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dY zgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo z5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjT zNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TX zBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{l zkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!H zLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*( z2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUF zBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Ex zl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e& zNJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8 zAqh!HLK2dYgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dY zgd`*(2}wvo5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo z5|WUFBqSjTNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`*(2}wvo5|WUFBqSjT sNk~Exl8}TXBq0e&NJ0{lkc1>8Aqh!HLK2dYgd`;4|4+i9e@2e}7qdY#NB{r; diff --git a/pg_data/pg_xact/0000 b/pg_data/pg_xact/0000 index cadbc6f0e6bb035a5b2eed1a16746b9410df0151..ff1e92c4d010d5b5ad094eadb98b4180b1df3dba 100644 GIT binary patch delta 16 XcmZp0XmFTtZlVA?QxxmQi<