Agent skill

812 Regulations Eu Product Liability Directive

by jabrena in jabrena/plinth

A skill your agent uses when reviewing, designing, or modifying Java enterprise software products, AI-enabled products, RAG assistants, AI agents, generated instructions, related services, automated…

Apache-2.0Auto-check passedAI & LLM Engineering

Install 812 Regulations Eu Product Liability Directive

skills CLI
$ npx skills add jabrena/plinth --skill 812-regulations-eu-product-liability-directive -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jabrena/plinth 812-regulations-eu-product-liability-directive --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jabrena/plinth.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/812-regulations-eu-product-liability-directive .claude/skills/812-regulations-eu-product-liability-directive && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
812-regulations-eu-product-liability-directive
GitHub stars
447
Token cost
~3.5k tokens
SKILL.md length
1,422 words
Files
5 (incl. references, assets)
Skills in repo
124
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses when reviewing, designing, or modifying Java enterprise software products, AI-enabled products, RAG assistants, AI agents, generated instructions, related services, automated…

  • Modifying Java enterprise software products
  • SKILL.md covers Scope, Product Liability Directive…, Constraints and When to use this skill, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • AI-enabled products

What it does

812 Regulations Eu Product Liability Directive is an agent skill from jabrena/plinth. Use when reviewing, designing, or modifying Java enterprise software products, AI-enabled products, RAG assistants, AI agents, generated instructions, related services, automated updates, vulnerability handling, corrective updates, warnings, instructions, or product-safety evidence under Directive (EU) 2024/2853, the EU Product Liability Directive. Part of Plinth Toolkit

Its SKILL.md is about 3.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 8 other files, including reference files and assets (for example `assets/questions/812-product-liability-directive-engineering-review-questionnaire.md`, `assets/reports/812-product-liability-directive-engineering-review-report-template.md` and `references/812-regulations-eu-product-liability-directive-chapters-summary.md`).

It sits in AI & LLM Engineering, covering Retrieval-augmented generation. It works with Java. The repository describes itself as: Plinth is an AI-native engineering toolkit for modern Java enterprise SDLC, built around reusable Commands, Agents, Skills, and MCP Servers. The licence is Apache-2.0.

When your agent uses it

  • Modifying Java enterprise software products
  • AI-enabled products
  • Generated instructions
  • Related services

Example prompts

  • “/812-regulations-eu-product-liability-directive”

What it can do on your machine

Read from SKILL.md and the folder at commit dca88dc. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • eur-lex.europa.eu

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

812 Regulations Eu Product Liability Directive loads about 3.5k tokens when it runs, and up to ~10k if it reads all its reference files. Until then it costs about 105 tokens; SKILL.md has 1,422 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~105
When it runs · the whole SKILL.md, loaded when a task matches
~3.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~10k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jabrena/plinth at commit dca88dc, republished under its Apache-2.0 licence (© jabrena). 1,422 words, ~3,470 tokens.

Download SKILL.mdSave it as .claude/skills/812-regulations-eu-product-liability-directive/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
812-regulations-eu-product-liability-directive
description
Use when reviewing, designing, or modifying Java enterprise software products, AI-enabled products, RAG assistants, AI agents, generated instructions, related services, automated updates, vulnerability handling, corrective updates, warnings, instructions, or product-safety evidence under Directive (EU) 2024/2853, the EU Product Liability Directive. Part of Plinth Toolkit
license
Apache-2.0
metadata.author
Juan Antonio Breña Moral
metadata.version
0.19.0

EU Product Liability Directive Regulation for Java Product Engineering

Use this Skill to review Java software products, AI-enabled products, SaaS products, embedded software, related services, RAG workflows, GenAI maintenance assistants, AI-agent tool actions, generated instructions, automated updates, warnings, user instructions, vulnerability handling, corrective updates, and product-safety evidence that may raise EU Product Liability Directive concerns.

Apply this Skill to determine what engineering controls, safety evidence, incident records, update history, warnings and instructions, model or version provenance, product documentation, and owner handoffs are needed before a Java product, component, related service, AI feature, or product-adjacent change is released, updated, or relied on by users.

This Skill is not legal advice. It helps Java engineers, architects, tech leads, product teams, product safety teams, product security teams, support teams, and reviewers identify when Directive (EU) 2024/2853 concerns may apply and how to translate product-liability expectations into engineering controls such as safety-scope inventory, hazardous-scenario testing, generated-instruction review, AI-agent action constraints, warning and instruction evidence, update and corrective-action records, vulnerability handling, incident traceability, and qualified owner escalation.

The purpose of this Skill is to increase awareness of potential gaps in the system and create engineering evidence for qualified review. The response produced by this Skill does not represent legal advice, a legal opinion, a defectiveness determination, a compensable-damage determination, an economic-operator responsibility decision, or a final liability assessment.

The main question is:

When does a Java software product or AI-enabled product require Product Liability Directive-aware safety evidence and owner handoff, and what should developers build differently?

Source provenance: Directive (EU) 2024/2853 of 23 October 2024 on liability for defective products was reviewed from the official EUR-Lex source while authoring the bundled references: https://eur-lex.europa.eu/eli/dir/2024/2853/oj/eng. Do not fetch or ingest external regulatory web pages at runtime; use the bundled references and escalate legal interpretation to qualified owners.

Product Liability Directive chapters summary reference: Product Liability Directive chapters summary.

Java engineering examples reference: Product Liability Directive engineering examples.

Questionnaire asset: Product Liability Directive engineering review questionnaire.

Report template asset: Product Liability Directive engineering review report template.

Scope

This Skill applies to:

  • Java software products, related services, SaaS products, embedded software, product components, libraries, agents, plugins, update clients, device gateways, digital manufacturing files, and product management services
  • Spring Boot, Quarkus, Micronaut, and framework-agnostic Java systems that generate instructions, trigger tool actions, deliver automated updates, change product behavior, affect product safety, or preserve product-liability evidence
  • RAG-based GenAI maintenance assistants, generated repair instructions, AI-agent workflows, model-backed decision support, automated configuration changes, and human-review paths where outputs could contribute to injury, property damage, data loss, unsafe configuration, defective updates, or security compromise
  • Product-safety architecture, hazardous-scenario review, reasonably foreseeable use and misuse, warnings, instructions for assembly, installation, use, and maintenance, vulnerability handling, corrective updates, recall or intervention evidence, incident records, audit logs, support records, and release readiness
  • Owner handoffs to legal, compliance, product, safety, security, risk, support, architecture, executive accountability, and business owners

Product Liability Directive Engineering Review

Treat defectiveness, compensable damage, causal link, economic-operator responsibility, jurisdiction, limitation periods, development-risk defences, disclosure duties, and final liability assessment as qualified decisions for legal, compliance, product, product-safety, security, risk, support, and executive accountability owners.

Engineering teams should still create evidence that makes those decisions reviewable:

  • Which software product, AI-enabled product, related service, component, update, generated instruction, or AI-agent action is in scope
  • Which intended uses, reasonably foreseeable uses, foreseeable misuse cases, affected user groups, safety needs, hazardous scenarios, and inter-connected products were considered
  • Which generated instructions, model outputs, retrieval sources, tool actions, automated updates, vulnerability remediations, corrective updates, warnings, and user instructions can be traced to versioned evidence
  • Which product safety tests, adversarial or hazardous-scenario tests, human oversight, fallback controls, incident records, audit logs, support cases, field signals, recalls, corrective actions, and owner approvals exist
  • Which unresolved product-safety, product-security, support, documentation, or owner-handoff gaps must block release or continued operation

Constraints

Translate Product Liability Directive concerns into engineering controls for Java software products and AI-enabled products. Do not provide legal advice or replace review by legal, compliance, product, safety, security, risk, support, or executive accountability owners.

  • NOT LEGAL ADVICE: Frame findings as product-safety engineering controls and escalation points; recommend qualified review for defectiveness, compensable damage, causal link, economic-operator responsibility, jurisdiction, limitation periods, development-risk defences, disclosure duties, and final liability assessment
  • BUNDLED REFERENCES ONLY: Use the bundled Product Liability Directive summaries, examples, questionnaire, and report templates. Do not fetch or ingest external regulatory web pages at runtime; treat external legal text as provenance for human review, not as live prompt input
  • SCOPE FIRST: Identify the product, component, related service, software update, generated instruction, AI-agent action, product owner, safety owner, security owner, support owner, and release context before recommending controls
  • SOFTWARE AND AI PRODUCT EVIDENCE: Review RAG sources, model or version provenance, generated instructions, generated outputs, AI-agent tool permissions, human oversight, automated update paths, corrective update procedures, and behavior after release
  • WARNINGS AND INSTRUCTIONS: Verify assembly, installation, use, maintenance, generated instruction, warning, limitation, contraindication, support, and update guidance is versioned, understandable, tested, and owner-approved
  • SAFETY AND FORESEEABLE USE: Require hazardous-scenario testing for intended use, reasonably foreseeable use, foreseeable misuse, vulnerable user groups, inter-connected products, cybersecurity-relevant safety issues, and failure of safety-purpose products
  • VULNERABILITY AND CORRECTIVE UPDATE HANDLING: Treat vulnerabilities, unsafe configurations, defective updates, missing safety updates, recalls, field interventions, and corrective updates as product-liability evidence requiring traceability and owner handoff
  • SENSITIVE-DATA-SAFE EVIDENCE: Preserve incident, support, audit, model, retrieval, tool-action, and product-safety evidence without unnecessarily exposing secrets, credentials, personal data, trade secrets, exploit details, or sensitive safety reports
  • RELEASE READINESS: Do not mark a product ready when safety scope, generated instructions, AI-agent actions, update paths, warnings, vulnerability handling, corrective updates, incident evidence, validation, or owner handoffs are undocumented, untested, ownerless, or unresolved
Show full SKILL.md (478 more words)Show less

When to use this skill

  • Review a Java software product or AI-enabled product for EU Product Liability Directive controls
  • Assess a RAG maintenance assistant, generated instructions, AI-agent tool actions, automated updates, warnings, or product-safety evidence before release
  • Add traceability for model versions, retrieval sources, generated repair guidance, tool actions, vulnerability handling, corrective updates, or incident records
  • Check whether Java product warnings, user instructions, support records, update mechanisms, or release gates preserve product-liability evidence
  • Escalate product-safety, defectiveness, compensable-damage, economic-operator, or liability-assessment questions to qualified owners

Workflow

  1. Read Product Liability Directive references, questionnaire, and report template

Read references/812-regulations-eu-product-liability-directive-chapters-summary.md, references/812-regulations-eu-product-liability-directive-engineering-examples.md, assets/questions/812-product-liability-directive-engineering-review-questionnaire.md, and assets/reports/812-product-liability-directive-engineering-review-report-template.md in that order. Use the chapters summary for Product Liability Directive chapter, article, scope, software, defectiveness, damage, economic-operator, disclosure, burden-of-proof, liability, timing, and owner-handoff context. Use the engineering examples for Java control patterns such as safety scope inventory, generated-instruction evidence, AI-agent tool-action controls, automated update traceability, warning and instruction review, vulnerability handling, corrective updates, incident evidence, and release gates. Do not start implementation review until the chapters summary, examples reference, questionnaire rules, and report template are understood.

  1. Complete questionnaire and classify product-liability scope

Use assets/questions/812-product-liability-directive-engineering-review-questionnaire.md as a checklist against trusted local project evidence and maintainer-approved sanitized facts. Record each answer with an evidence reference or mark it Unknown. Identify the product, component, related service, Java module, AI feature, generated instruction, AI-agent action, automated update path, intended purpose, reasonably foreseeable use, foreseeable misuse, affected users, deployment geography, product owner, safety owner, security owner, support owner, incident path, evidence stores, and release context. Escalate unclear product scope, defectiveness, compensable damage, causal link, economic-operator role, jurisdiction, limitation periods, development-risk defences, disclosure duties, and regulatory interpretation to qualified owners.

  1. Review implementation and product evidence

Review Java code, configuration, controllers, services, prompts, tools, RAG retrieval sources, model version records, generated outputs, AI-agent permissions, automated update mechanisms, vulnerability records, corrective update records, warnings, instructions, support records, incident evidence, audit logs, observability, product-safety tests, hazardous-scenario tests, CI/CD workflows, deployment records, release approvals, and user documentation. Check for gaps between claimed product-safety controls and reviewable evidence.

  1. Recommend engineering controls

Map Product Liability Directive concerns to engineering actions: product-liability scope inventory, hazardous-scenario testing, source governance for RAG, prompt and generated-instruction review, AI-agent tool-action allowlists and human oversight, model and retrieval provenance, automated update validation, corrective update procedures, vulnerability handling, warning and instruction versioning, incident reconstruction, support handoffs, privacy-safe and trade-secret-safe evidence retention, and release readiness.

  1. Generate review report and owner handoffs

Use assets/reports/812-product-liability-directive-engineering-review-report-template.md to produce a concise engineering review with scope, evidence reviewed, Product Liability Directive risk signals, potential violation or non-compliance signals, product-liability evidence gaps, recommended controls, owner handoffs, residual risks, release decision, and validation steps. State explicitly that defectiveness, compensable damage, causal link, economic-operator responsibility, jurisdiction, limitation periods, development-risk defences, disclosure duties, and final liability assessment require qualified owner review.

Reference

For detailed guidance, examples, and constraints, see:

© jabrena, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 4 other files (references, assets) in skills/812-regulations-eu-product-liability-directive of jabrena/plinth.

  • SKILL.md
  • assets/questions/812-product-liability-directive-engineering-review-questionnaire.md
  • assets/reports/812-product-liability-directive-engineering-review-report-template.md
  • references/812-regulations-eu-product-liability-directive-chapters-summary.md
  • references/812-regulations-eu-product-liability-directive-engineering-examples.md

Open the folder on GitHubat commit dca88dc

Compare with similar skills

812 Regulations Eu Product Liability Directive next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

812 Regulations Eu Product Liability Directive compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
812 Regulations Eu Product Liability Directive this skilljabrena/plinth447—~3.5kAutomated safety check: PassApache-2.0
Langchain4j RAG Implementation Patternsgiuseppe-trisciuoglio/developer-kit357—~3.3kAutomated safety check: NotesMIT
DBoracle/skills877—~1.4kAutomated safety check: PassUPL-1.0
AWS SDK Java V2 Bedrockgiuseppe-trisciuoglio/developer-kit357—~3.2kAutomated safety check: NotesMIT
Qdrant Advisorqdrant/skills254—~1.7kAutomated safety check: PassApache-2.0
Chroma Vector DatabaseOrchestra-Research/AI-Research-SKILLs13k7 repos~2.3kAutomated safety check: PassMIT

Similar skills

  • Langchain4j RAG Implementation Patterns

    giuseppe-trisciuoglio/developer-kit

    Provides Retrieval-Augmented Generation (RAG) implementation patterns with LangChain4j for Java.

    357 GitHub stars~3.3k tokensUpdated 1 mo ago
    AI & LLM EngineeringAuto-check: notes
  • DB

    oracle/skills

    Official

    Oracle Database guidance for SQL, PL/SQL, SQLcl, ORDS, Oracle Vector SDK, administration, app development, performance, security, migrations, and agent-safe database workflows.

    877 GitHub stars~1.4k tokensUpdated 2 days ago
    DatabasesAuto-check passed
  • AWS SDK Java V2 Bedrock

    giuseppe-trisciuoglio/developer-kit

    Provides Amazon Bedrock patterns using AWS SDK for Java 2.x.

    357 GitHub stars~3.2k tokensUpdated 1 mo ago
    AI & LLM EngineeringAuto-check: notes
  • Qdrant Advisor

    qdrant/skills

    Official

    Diagnose, troubleshoot, and advise on any Qdrant deployment by loading the latest official Qdrant skills live from skills.qdrant.tech.

    254 GitHub stars~1.7k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Chroma Vector Database

    Orchestra-Research/AI-Research-SKILLs

    Shows how to store documents and embeddings in Chroma, query them by similarity with metadata filters, and persist them to disk for RAG and semantic search projects.

    13k GitHub starsUsed in 7 repos~2.3k tokens
    AI & LLM EngineeringAuto-check passed
  • AI Article

    itwanger/toBeBetterJavaer

    AI 类文章和项目教程的撰写与重构优化。支持新写和重构优化(结合最新源码重写已有文章)两种输入模式,四种风格:安装教程、产品评测、面试八股、深度拆解。覆盖 AI Coding 工具实测、AI 开发框架应用、大模型测评、Agent/Skills/RAG 技术讲解,以及 JobClaw 等实战项目的教程。

    18k GitHub stars~1k tokensUpdated yesterday
    AI & LLM EngineeringAuto-check passed

More from jabrena/plinth

All 124 skills in this repo
  • A skill your agent uses when you need to add or review fuzz testing for Java APIs with CATS — including contract-driven negative testing, malformed payload validation, boundary input exploration, CI…

    447 GitHub stars~874 tokensUpdated 3 days ago
    Auto-check passed
  • A skill your agent uses when you need to generate Java project diagrams — including UML sequence diagrams, UML class diagrams, C4 model diagrams, UML state machine diagrams, UML Deployment Diagrams…

    447 GitHub stars~3.1k tokensUpdated 3 days ago
    Auto-check passed
  • A skill your agent uses when you need to add or configure Maven plugins in your pom.xml — including quality tools (enforcer, surefire, failsafe, jacoco, pitest, spotbugs, pmd), security scanning…

    447 GitHub stars~3.2k tokensUpdated 3 days ago
    Auto-check passed
  • A skill your agent uses when you need to set up JMeter performance testing for a Java project — including creating the run-jmeter.sh script from the exact template, configuring load tests with…

    447 GitHub stars~842 tokensUpdated 3 days ago
    Auto-check passed
  • A skill your agent uses when you need to set up Java application profiling to detect and measure performance issues — including trusted preinstalled async-profiler v4.x setup, problem-driven…

    447 GitHub stars~903 tokensUpdated 3 days ago
    Auto-check passed
  • A skill your agent uses when you need to generate a checklist document with embedded commands inventory, following the embedded template exactly and producing INVENTORY-COMMANDS-JAVA.md in the…

    447 GitHub stars~697 tokensUpdated 3 days ago
    Auto-check passed

Works with

Questions about 812 Regulations Eu Product Liability Directive

What does 812 Regulations Eu Product Liability Directive do?

A skill your agent uses when reviewing, designing, or modifying Java enterprise software products, AI-enabled products, RAG assistants, AI agents, generated instructions, related services, automated…. 812 Regulations Eu Product Liability Directive is an agent skill from jabrena/plinth. Use when reviewing, designing, or modifying Java enterprise software products, AI-enabled products, RAG assistants, AI agents, generated instructions, related services, automated updates, vulnerability handling, corrective updates, warnings, instructions, or product-safety evidence under Directive (EU) 2024/2853, the EU Product Liability Directive.

When should I use 812 Regulations Eu Product Liability Directive?

812 Regulations Eu Product Liability Directive fits situations like: modifying Java enterprise software products; AI-enabled products; generated instructions; related services.

How do I install 812 Regulations Eu Product Liability Directive in Claude Code?

Run `npx skills add jabrena/plinth --skill 812-regulations-eu-product-liability-directive -a claude-code`. Or copy the skill folder (skills/812-regulations-eu-product-liability-directive in jabrena/plinth) into .claude/skills/812-regulations-eu-product-liability-directive in your project. Claude Code loads it when a task matches its description.

How do I install 812 Regulations Eu Product Liability Directive in Codex?

Run `npx skills add jabrena/plinth --skill 812-regulations-eu-product-liability-directive -a codex`. Or copy the skill folder (skills/812-regulations-eu-product-liability-directive in jabrena/plinth) into .agents/skills/812-regulations-eu-product-liability-directive in your project. Codex loads it when a task matches its description.

Can I use 812 Regulations Eu Product Liability Directive in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jabrena/plinth --skill 812-regulations-eu-product-liability-directive -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/812-regulations-eu-product-liability-directive, .gemini/skills/812-regulations-eu-product-liability-directive, .github/skills/812-regulations-eu-product-liability-directive and .opencode/skills/812-regulations-eu-product-liability-directive in your project.

What does 812 Regulations Eu Product Liability Directive need to run?

SKILL.md names no scripts, command-line tools or credentials: 812 Regulations Eu Product Liability Directive is instructions for the agent only.

Does 812 Regulations Eu Product Liability Directive access the network?

SKILL.md names 1 domain. As links in the text: eur-lex.europa.eu. This is read from the text; nothing was executed.

Is 812 Regulations Eu Product Liability Directive safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does 812 Regulations Eu Product Liability Directive use?

812 Regulations Eu Product Liability Directive is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does 812 Regulations Eu Product Liability Directive use?

About 3.5k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 6.5k tokens, read only when the agent opens those files.

What are the alternatives to 812 Regulations Eu Product Liability Directive?

Skills that share tags, products or a category with 812 Regulations Eu Product Liability Directive: Langchain4j RAG Implementation Patterns (giuseppe-trisciuoglio/developer-kit, 357 stars), DB (oracle/skills, 877 stars), AWS SDK Java V2 Bedrock (giuseppe-trisciuoglio/developer-kit, 357 stars) and Qdrant Advisor (qdrant/skills, 254 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains 812 Regulations Eu Product Liability Directive?

jabrena (a GitHub user) maintains it in jabrena/plinth, which has 447 GitHub stars. The repository holds 124 skills in this directory. The repository was last updated on October 7, 2026.

Source: jabrena/plinth on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.