head 1.13; access; symbols pkgsrc-2026Q2:1.13.0.10 pkgsrc-2026Q2-base:1.13 pkgsrc-2026Q1:1.13.0.8 pkgsrc-2026Q1-base:1.13 pkgsrc-2025Q4:1.13.0.6 pkgsrc-2025Q4-base:1.13 pkgsrc-2025Q3:1.13.0.4 pkgsrc-2025Q3-base:1.13 pkgsrc-2025Q2:1.13.0.2 pkgsrc-2025Q2-base:1.13 pkgsrc-2025Q1:1.12.0.6 pkgsrc-2025Q1-base:1.12 pkgsrc-2024Q4:1.12.0.4 pkgsrc-2024Q4-base:1.12 pkgsrc-2024Q3:1.12.0.2 pkgsrc-2024Q3-base:1.12 pkgsrc-2024Q2:1.11.0.2 pkgsrc-2024Q2-base:1.11 pkgsrc-2024Q1:1.10.0.2 pkgsrc-2024Q1-base:1.10 pkgsrc-2023Q4:1.9.0.4 pkgsrc-2023Q4-base:1.9 pkgsrc-2023Q3:1.9.0.2 pkgsrc-2023Q3-base:1.9 pkgsrc-2023Q2:1.7.0.2 pkgsrc-2023Q2-base:1.7 pkgsrc-2023Q1:1.5.0.2 pkgsrc-2023Q1-base:1.5 pkgsrc-2022Q4:1.2.0.2 pkgsrc-2022Q4-base:1.2; locks; strict; comment @# @; 1.13 date 2025.05.01.13.07.13; author pin; state Exp; branches; next 1.12; commitid GJT6Jknkwi5xLcTF; 1.12 date 2024.08.15.13.32.32; author pin; state Exp; branches; next 1.11; commitid ti57kl882TVmeVlF; 1.11 date 2024.05.05.16.27.47; author wiz; state Exp; branches; next 1.10; commitid YHkfkk6AjJmMtP8F; 1.10 date 2024.01.14.20.05.19; author wiz; state Exp; branches; next 1.9; commitid xdLuvmd4HfteSqUE; 1.9 date 2023.08.14.05.24.06; author wiz; state Exp; branches; next 1.8; commitid LOSB79OLVxvXjIAE; 1.8 date 2023.07.25.10.05.16; author pin; state Exp; branches; next 1.7; commitid yNnEhgjvJl3wwayE; 1.7 date 2023.05.17.22.29.27; author wiz; state Exp; branches; next 1.6; commitid u6O9jhHvQuyhRmpE; 1.6 date 2023.05.10.10.25.24; author pin; state Exp; branches; next 1.5; commitid x53ARNoytZYO4poE; 1.5 date 2023.02.21.13.20.54; author pin; state Exp; branches; next 1.4; commitid FSktUeC3SwrwyoeE; 1.4 date 2023.01.18.10.56.42; author pin; state Exp; branches; next 1.3; commitid mXGYMNGV2l8HQ0aE; 1.3 date 2022.12.26.22.13.02; author pin; state Exp; branches; next 1.2; commitid 44pXXan0oPzGk77E; 1.2 date 2022.12.03.17.15.11; author pin; state Exp; branches; next 1.1; commitid iFspOEGMaxOeq84E; 1.1 date 2022.11.30.20.03.02; author pin; state Exp; branches; next ; commitid YchOKWWctBkUrL3E; desc @@ 1.13 log @devel/diffsitter: update to 0.9.0 Notable changes Support for custom render modes has been removed. While I don't like making breaking changes, the code to handle it was pretty bad (in my opinion), and it was causing issues for other changes I want to push out related to config handling. What's Changed build(deps): bump cc from 1.1.11 to 1.1.12 by @@dependabot in #944 build(deps): bump mockall from 0.12.1 to 0.13.0 by @@dependabot in #922 build(deps): bump serde from 1.0.207 to 1.0.208 by @@dependabot in #947 chore(cargo): Update cargo deps by @@afnanenayet in #948 build(deps): bump shadow-rs from 0.29.0 to 0.32.0 by @@dependabot in #940 build(deps): bump clap_complete from 4.5.18 to 4.5.23 by @@dependabot in #955 chore: Update cargo deps by @@afnanenayet in #961 chore(cargo): Update Cargo deps by @@afnanenayet in #967 build(deps): bump shadow-rs from 0.32.0 to 0.34.0 by @@dependabot in #966 build(deps): bump unicode-segmentation from 1.11.0 to 1.12.0 by @@dependabot in #968 build(deps): bump cc from 1.1.18 to 1.1.19 by @@dependabot in #969 chore: Update Cargo deps by @@afnanenayet in #975 test(neg idx vec): Add tests by @@afnanenayet in #949 build(deps): bump thiserror from 1.0.63 to 1.0.64 by @@dependabot in #976 build(deps): bump shadow-rs from 0.34.0 to 0.35.0 by @@dependabot in #971 build(deps): bump cc from 1.1.21 to 1.1.22 by @@dependabot in #977 build(deps): bump clap from 4.5.18 to 4.5.19 by @@dependabot in #981 build(deps): bump rstest from 0.22.0 to 0.23.0 by @@dependabot in #979 build(deps): bump clap_complete from 4.5.29 to 4.5.32 by @@dependabot in #983 build(deps): bump shadow-rs from 0.35.0 to 0.35.1 by @@dependabot in #987 chore(cargo deps): Update deps to latest by @@afnanenayet in #994 chore(grammars): Update grammars by @@afnanenayet in #995 build(deps): bump clap_complete from 4.5.33 to 4.5.35 by @@dependabot in #1000 build(deps): bump mockall from 0.13.0 to 0.13.1 by @@dependabot in #1022 chore: Update Cargo deps by @@afnanenayet in #1026 build(deps): bump thiserror from 1.0.64 to 2.0.3 by @@dependabot in #1023 chore: Update grammars to latest upstream by @@afnanenayet in #1045 Update Cargo deps by @@afnanenayet in #1044 chore(deps): Update to latest cargo deps by @@afnanenayet in #1049 chore(grammars): Update grammars by @@afnanenayet in #1051 chore: Update Cargo deps by @@afnanenayet in #1069 build(deps): bump cc from 1.2.10 to 1.2.12 by @@dependabot in #1074 build(deps): bump cc from 1.2.12 to 1.2.14 by @@dependabot in #1080 build(deps): bump cc from 1.2.14 to 1.2.15 by @@dependabot in #1089 build(deps): bump thiserror from 2.0.11 to 2.0.12 by @@dependabot in #1095 chore: Update cargo dependencies by @@afnanenayet in #1100 build(deps): bump shadow-rs from 1.0.1 to 1.1.1 by @@dependabot in #1102 build(deps): bump clap_complete from 4.5.46 to 4.5.47 by @@dependabot in #1104 build(deps): bump clap from 4.5.32 to 4.5.34 by @@dependabot in #1107 build(deps): bump log from 0.4.26 to 0.4.27 by @@dependabot in #1106 build(deps): bump cc from 1.2.16 to 1.2.17 by @@dependabot in #1105 build(deps): bump clap from 4.5.34 to 4.5.35 by @@dependabot in #1108 build(deps): bump cc from 1.2.17 to 1.2.18 by @@dependabot in #1109 build(deps): bump cc from 1.2.18 to 1.2.19 by @@dependabot in #1110 feat!: remove support for custom render mode by @@afnanenayet in #1114 chore(grammars): Update grammars by @@afnanenayet in #1115 chore: Update Cargo deps by @@afnanenayet in #1113 @ text @# $NetBSD: Makefile,v 1.12 2024/08/15 13:32:32 pin Exp $ DISTNAME= diffsitter-0.9.0 CATEGORIES= devel MASTER_SITES= ${MASTER_SITE_GITHUB:=afnanenayet/} GITHUB_TAG= v${PKGVERSION_NOREV} MAINTAINER= pkgsrc-users@@NetBSD.org HOMEPAGE= https://github.com/afnanenayet/diffsitter/ COMMENT= Tree-sitter based AST difftool to get meaningful semantic diffs LICENSE= mit RUSTFLAGS+= -C link-arg=${COMPILER_RPATH_FLAG}${PREFIX}/lib .include "cargo-depends.mk" #RUST_REQ= 1.86.0 #Upstream does not state the required MSRV. #This package is confirmed to build with Rust 1.86.0 on amd64 USE_LANGUAGES+= c c++ USE_TOOLS+= pkg-config PYTHON_FOR_BUILD_ONLY= tool CARGO_NO_DEFAULT_FEATURES= YES CARGO_FEATURES+= dynamic-grammar-libs .include "../../lang/rust/cargo.mk" .include "../../lang/python/tool.mk" .include "../../mk/bsd.pkg.mk" @ 1.12 log @devel/diffsitter: update to 0.8.4 - Routine update. Cargo dependencies and tree-sitter grammars have been updated. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.9 2023/08/14 05:24:06 wiz Exp $ d3 1 a3 1 DISTNAME= diffsitter-0.8.4 d17 1 a17 1 #RUST_REQ= 1.79.0 d19 1 a19 1 #This package is confirmed to build with Rust 1.79.0 on amd64 @ 1.11 log @diffsitter: update to 0.8.3. Minor updates, mostly updated dependencies. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.10 2024/01/14 20:05:19 wiz Exp $ d3 1 a3 1 DISTNAME= diffsitter-0.8.3 d17 4 a22 1 PYTHON_VERSIONS_INCOMPATIBLE= 27 @ 1.10 log @diffsitter: update to 0.8.2. What's Changed build(deps): bump serde from 1.0.174 to 1.0.175 by @@dependabot in #693 build(deps): bump jemallocator from 0.5.0 to 0.5.4 by @@dependabot in #696 build(deps): bump cc from 1.0.79 to 1.0.81 by @@dependabot in #700 chore: Update Cargo deps by @@afnanenayet in #701 chore: Update grammars by @@afnanenayet in #702 build: Disable extra warnings, std C11 by @@afnanenayet in #703 build(deps): bump clap from 4.3.19 to 4.3.21 by @@dependabot in #707 chore(cargo): Update cargo dependencies by @@afnanenayet in #708 chore(deps): Update cargo deps by @@afnanenayet in #709 build(deps): bump clap from 4.3.21 to 4.3.22 by @@dependabot in #713 build(deps): bump thiserror from 1.0.44 to 1.0.47 by @@dependabot in #712 chore: Update cargo deps by @@afnanenayet in #714 build(deps): bump clap from 4.4.0 to 4.4.1 by @@dependabot in #723 chore(deps): Update Cargo dependencies by @@afnanenayet in #724 build(deps): bump thiserror from 1.0.47 to 1.0.48 by @@dependabot in #726 build(deps): bump clap_complete from 4.4.0 to 4.4.1 by @@dependabot in #727 build(deps): bump clap from 4.4.1 to 4.4.2 by @@dependabot in #725 build(deps): bump clap from 4.4.2 to 4.4.3 by @@dependabot in #729 build(deps): bump test-case from 3.1.0 to 3.2.1 by @@dependabot in #730 chore(deps): Update Cargo dependencies by @@afnanenayet in #742 Fix Locust link by @@jaens in #748 chore(deps): Update cargo deps by @@afnanenayet in #753 feat: Add profiling profile by @@afnanenayet in #754 build(deps): bump human-panic from 1.2.1 to 1.2.2 by @@dependabot in #756 chore: Address clippy lint by @@afnanenayet in #759 chore: Update pre-commit hooks by @@afnanenayet in #760 build(deps): bump test-case from 3.2.1 to 3.3.0 by @@dependabot in #762 build(deps): bump serde from 1.0.190 to 1.0.193 by @@dependabot in #767 chore: Update grammars by @@afnanenayet in #765 chore: Address clippy lints by @@afnanenayet in #764 fix(config): Default the entire config by @@afnanenayet in #768 feat: Strip/ignore whitespace in nodes by @@afnanenayet in #761 afnan/update grammars by @@afnanenayet in #772 build(grammars): Rename existing libraries, C++17 by @@afnanenayet in #771 build(grammars): Build C grammar, use default arg by @@afnanenayet in #770 build(deps): bump shadow-rs from 0.24.1 to 0.25.0 by @@dependabot in #774 build(deps): bump clap from 4.4.7 to 4.4.11 by @@dependabot in #773 build(deps): bump test-case from 3.3.0 to 3.3.1 by @@dependabot in #766 feat(grammars): Add Markdown grammar by @@afnanenayet in #728 chore(cargo): Update deps by @@afnanenayet in #775 build(deps): bump thiserror from 1.0.50 to 1.0.51 by @@dependabot in #776 build(grammars): Fix build settings for md by @@afnanenayet in #778 build(deps): bump mockall from 0.12.0 to 0.12.1 by @@dependabot in #779 chore(deps): Update Cargo deps by @@afnanenayet in #781 fix: Check loaded language ABI by @@afnanenayet in #783 build(deps): bump thiserror from 1.0.51 to 1.0.52 by @@dependabot in #785 fix(grammars): Leak language after loading by @@afnanenayet in #786 feat(scripts): Build script for sanitizers by @@afnanenayet in #791 chore(cargo): Update deps by @@afnanenayet in #796 build(deps): bump shadow-rs from 0.25.0 to 0.26.0 by @@dependabot in #789 build(deps): bump human-panic from 1.2.2 to 1.2.3 by @@dependabot in #800 build(deps): bump console from 0.15.7 to 0.15.8 by @@dependabot in #798 build(deps): bump clap from 4.4.13 to 4.4.16 by @@dependabot in #799 chore(dev): Script to update cargo deps by @@afnanenayet in #801 chore(grammars): Update grammars by @@afnanenayet in #802 fix: Update markdown grammar properly by @@afnanenayet in #803 @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.9 2023/08/14 05:24:06 wiz Exp $ d3 1 a3 1 DISTNAME= diffsitter-0.8.2 @ 1.9 log @*: recursive bump for Python 3.11 as new default @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.8 2023/07/25 10:05:16 pin Exp $ d3 1 a3 2 DISTNAME= diffsitter-0.8.1 PKGREVISION= 1 @ 1.8 log @devel/diffsitter: update to 0.8.1 Notes This release was mostly cut to fix an issue with the homebrew formula which refers to the git-diffsitter script. That file was not included in the release archive for v0.8.0 which caused errors when trying to install with homebrew. What's Changed - docs: Add code coverage badge by @@afnanenayet in #625 - docs: Update badge to track main branch by @@afnanenayet in #626 - build(deps): bump serde from 1.0.162 to 1.0.163 by @@dependabot in #628 - build(deps): bump clap_complete from 4.2.2 to 4.2.3 by @@dependabot in #629 - ci: Fix condition if nightly tag doesn't exist by @@afnanenayet in #631 - feat: Add dockerfiles for building by @@afnanenayet in #632 - fix: Remove bad fetch call by @@afnanenayet in #633 - ci: Fix conditional statement for checking tag by @@afnanenayet in #634 - build(deps): bump console from 0.15.5 to 0.15.6 by @@dependabot in #635 - build(deps): bump pretty_env_logger from 0.4.0 to 0.5.0 by @@dependabot in #636 - ci: Fix upload rust binary action for nightly by @@afnanenayet in #637 - cd: Update versions of actions by @@afnanenayet in #638 - chore: Update vendored grammars by @@afnanenayet in #639 - chore(deps): Update Cargo deps by @@afnanenayet in #643 - docs: Document error by @@afnanenayet in #646 - chore(grammars): Update grammars by @@afnanenayet in #645 - docs: Document error (#646) by @@afnanenayet in #647 - chore: Update Cargo dependencies by @@afnanenayet in #651 - chore: Update grammars by @@afnanenayet in #656 - ci(releases): Fix conditional for nightlies by @@afnanenayet in #657 - chore: Update Cargo dependencies by @@afnanenayet in #658 - build(deps): bump human-panic from 1.1.4 to 1.1.5 by @@dependabot in #660 - build(deps): bump clap from 4.3.3 to 4.3.4 by @@dependabot in #659 - ci: Try using job outputs for CD pipeline by @@afnanenayet in #661 - build(deps): bump strum_macros from 0.24.3 to 0.25.0 by @@dependabot in #663 - chore: Update grammars by @@afnanenayet in #667 - chore: Update cargo deps by @@afnanenayet in #683 - build(deps): bump strum from 0.24.1 to 0.25.0 by @@dependabot in #662 - chore: Update Cargo deps by @@afnanenayet in #692 @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.7 2023/05/17 22:29:27 wiz Exp $ d4 1 @ 1.7 log @diffsitter: use cargo.mk's install adds another file to the installation Bump PKGREVISION. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.6 2023/05/10 10:25:24 pin Exp $ d3 1 a3 2 DISTNAME= diffsitter-0.8.0 PKGREVISION= 1 @ 1.6 log @devel/diffsitter: update to 0.8.0 What's Changed chore(Cargo): Update deps by @@afnanenayet in #513 build(deps): bump clap from 4.0.29 to 4.0.32 by @@dependabot in #515 build(deps): bump clap_complete from 4.0.6 to 4.0.7 by @@dependabot in #516 feat(output): Implement modular rendering by @@afnanenayet in #446 Add example usage with git difftool. by @@ClashTheBunny in #157 build(deps): bump serde from 1.0.151 to 1.0.152 by @@dependabot in #518 feat(rendering): Add JSON rendering mode by @@afnanenayet in #519 build(deps): bump console from 0.15.2 to 0.15.3 by @@dependabot in #521 build(deps): bump shadow-rs from 0.19.0 to 0.20.0 by @@dependabot in #522 build(deps): bump enum_dispatch from 0.3.8 to 0.3.9 by @@dependabot in #523 feat(errors): Early error for bad render config by @@afnanenayet in #526 chore(deps): Update deps by @@afnanenayet in #524 build(deps): bump insta from 1.23.0 to 1.24.1 by @@dependabot in #528 chore(grammars): Update grammars by @@afnanenayet in #527 chore(deps): Update deps by @@afnanenayet in #529 chore(clippy): Apply clippy lints by @@afnanenayet in #530 chore(deps): Update lockfile by @@afnanenayet in #531 chore: update deps by @@afnanenayet in #534 chore(deps): Update grammars by @@afnanenayet in #535 chore: Update deps by @@afnanenayet in #538 Allow dynamic-grammar-libs to be found on NetBSD by @@0323pin in #537 chore(deps): Update lockfile by @@afnanenayet in #540 chore(grammars): Update grammars by @@afnanenayet in #542 feat(processing): Filter by TS node type by @@afnanenayet in #541 chore(deps): Update, removed unused deps by @@afnanenayet in #543 Update deps by @@afnanenayet in #547 build(deps): bump cc from 1.0.78 to 1.0.79 by @@dependabot in #548 build(deps): bump human-panic from 1.0.3 to 1.1.0 by @@dependabot in #551 build(deps): bump unicode-segmentation from 1.10.0 to 1.10.1 by @@dependabot in #550 build(deps): bump test-case from 2.2.2 to 3.0.0 by @@dependabot in #553 ci: Update checkout action by @@afnanenayet in #558 build: Update grammars by @@afnanenayet in #552 chore: Update deps by @@afnanenayet in #559 chore: Update cargo deps and grammars by @@afnanenayet in #560 ci: Use a newer submodule checkout action by @@afnanenayet in #561 build(deps): bump shadow-rs from 0.20.1 to 0.21.0 by @@dependabot in #564 Add error check to main snapshot test by @@afnanenayet in #569 fix: Use checkout v3 in CD pipeline by @@afnanenayet in #571 fix: Fix logic for handling offsets with graphemes by @@afnanenayet in #573 Update dependencies and grammars by @@afnanenayet in #574 build(deps): bump serde from 1.0.155 to 1.0.156 by @@dependabot in #576 build(deps): bump clap from 4.1.8 to 4.1.9 by @@dependabot in #580 fix: Use a newer cargo deb version by @@afnanenayet in #575 refactor: Split up libraries and binaries by @@afnanenayet in #581 fix: Remove the main.rs file by @@afnanenayet in #582 chore: Address clippy lints by @@afnanenayet in #583 chore: Update cargo deps by @@afnanenayet in #584 ci: Use latest rust-cache action by @@afnanenayet in #585 chore: Update tree-sitter grammars by @@afnanenayet in #586 refactor: Use Write trait, separate term info by @@afnanenayet in #549 build: Add default-run manifest key by @@afnanenayet in #588 build(deps): bump serde from 1.0.157 to 1.0.158 by @@dependabot in #589 build(deps): bump insta from 1.28.0 to 1.29.0 by @@dependabot in #590 chore: Update grammars by @@afnanenayet in #597 chore: Update dependencies by @@afnanenayet in #596 build(deps): bump test-case from 3.0.0 to 3.1.0 by @@dependabot in #598 build(deps): bump tree-sitter from 0.20.9 to 0.20.10 by @@dependabot in #599 chore: Update Cargo dependencies by @@afnanenayet in #600 build(deps): bump libloading from 0.7.4 to 0.8.0 by @@dependabot in #602 chore: Update Cargo deps by @@afnanenayet in #607 build(deps): bump clap_complete from 4.2.0 to 4.2.1 by @@dependabot in #608 feat: Use human_panic only when building with panic = "unwind" by @@jirutka in #612 chore: Update grammars by @@afnanenayet in #613 fix: Guard against invalid indices by @@afnanenayet in #614 build(deps): bump clap from 4.2.4 to 4.2.5 by @@dependabot in #611 fix: Don't leak pointer to dylib by @@afnanenayet in #616 build(deps): bump clap from 4.2.5 to 4.2.7 by @@dependabot in #618 afnan/pre commit hooks by @@afnanenayet in #619 Add coverage job to CI by @@afnanenayet in #621 ci: Update Github actions to use more recent APIs by @@afnanenayet in #617 chore: Update treesitter grammars by @@afnanenayet in #624 chore: Update cargo dependencies by @@afnanenayet in #623 @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.5 2023/02/21 13:20:54 pin Exp $ d4 1 a22 2 INSTALLATION_DIRS= bin a25 4 do-install: ${INSTALL_PROGRAM} ${WRKSRC}/target/release/diffsitter \ ${DESTDIR}${PREFIX}/bin @ 1.5 log @devel/diffsitter: reset maintainer @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.4 2023/01/18 10:56:42 pin Exp $ d3 1 a3 2 DISTNAME= diffsitter-0.7.3 PKGREVISION= 1 @ 1.4 log @devel/diffsitter: add support for tree-sitter grammars @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.3 2022/12/26 22:13:02 pin Exp $ d9 1 a9 1 MAINTAINER= pin@@NetBSD.org @ 1.3 log @devel/diffsitter: update to 0.7.3 What's Changed - build(deps): bump clap from 4.0.27 to 4.0.29 by @@dependabot in #494 - chore: Update grammars by @@afnanenayet in #501 - Update deps by @@afnanenayet in #499 - Add related project by @@afnanenayet in #500 - chore: Update dependencies by @@afnanenayet in #508 - chore(grammars): Update grammars by @@afnanenayet in #510 - docs(testing): Add note about why tests break by @@afnanenayet in #511 - ci(windows): Add back windows target by @@afnanenayet in #512 @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.2 2022/12/03 17:15:11 pin Exp $ d4 1 d14 2 @ 1.2 log @devel/diffsitter Allow tree-sitter dynamic linking. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.1 2022/11/30 20:03:02 pin Exp $ d3 1 a3 2 DISTNAME= diffsitter-0.7.2 PKGREVISION= 1 @ 1.1 log @devel/diffsitter: import package diffsitter creates semantically meaningful diffs that ignore formatting differences like spacing. It does so by computing a diff on the AST (abstract syntax tree) of a file rather than computing the diff on the text contents of the file. diffsitter uses the parsers from the tree-sitter project to parse source code. As such, the languages supported by this tool are restricted to the languages supported by tree-sitter. Supported languages: Bash, C#, C++, CSS, Go, Java, OCaml, PHP, Python, Ruby, Rust, Typescript/TSX and HCL diffsitter is very much a work in progress and nowhere close to production ready (yet). Contributions are always welcome! @ text @d1 1 a1 1 # $NetBSD$ d4 1 d24 1 a31 1 .include "../../textproc/tree-sitter/buildlink3.mk" @