developer-tools
What this MCP does
Provides general-purpose developer utilities for encoding, hashing, encryption, JSON, HTML, CSS, networking, and related data transformations.
Tools
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/aes-encrypt).', 'additionalProperties': True}, 'operation': {'enum': ['encrypt', 'decrypt'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/ascii).', 'additionalProperties': True}, 'operation': {'enum': ['to-codes', 'from-codes'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/base64).', 'additionalProperties': True}, 'operation': {'enum': ['encode', 'decode'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/bcrypt).', 'additionalProperties': True}, 'operation': {'enum': ['hash', 'verify'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/case).', 'additionalProperties': True}, 'operation': {'enum': ['convert', 'all'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/char-inspector).', 'additionalProperties': True}, 'operation': {'enum': ['inspect'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/chmod).', 'additionalProperties': True}, 'operation': {'enum': ['octal-to-symbolic', 'symbolic-to-octal'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/cidr).', 'additionalProperties': True}, 'operation': {'enum': ['calculate'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/color).', 'additionalProperties': True}, 'operation': {'enum': ['convert', 'palette'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/color-palette).', 'additionalProperties': True}, 'operation': {'enum': ['generate'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/contrast).', 'additionalProperties': True}, 'operation': {'enum': ['check', 'best-text'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/cron).', 'additionalProperties': True}, 'operation': {'enum': ['describe', 'next-runs'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/css-minify).', 'additionalProperties': True}, 'operation': {'enum': ['minify', 'beautify'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/css-units).', 'additionalProperties': True}, 'operation': {'enum': ['convert'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/curl-converter).', 'additionalProperties': True}, 'operation': {'enum': ['convert'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/data-size).', 'additionalProperties': True}, 'operation': {'enum': ['convert'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/diff).', 'additionalProperties': True}, 'operation': {'enum': ['compare', 'unified'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/gitignore).', 'additionalProperties': True}, 'operation': {'enum': ['generate', 'templates'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/hash).', 'additionalProperties': True}, 'operation': {'enum': ['hash', 'hmac'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/hmac).', 'additionalProperties': True}, 'operation': {'enum': ['sign'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/html).', 'additionalProperties': True}, 'operation': {'enum': ['format', 'minify', 'validate'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/html-entity).', 'additionalProperties': True}, 'operation': {'enum': ['encode', 'decode'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/http-status).', 'additionalProperties': True}, 'operation': {'enum': ['lookup', 'search'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/image-base64).', 'additionalProperties': True}, 'operation': {'enum': ['build-snippets'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/json).', 'additionalProperties': True}, 'operation': {'enum': ['format', 'minify', 'validate', 'repair'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/json-csv).', 'additionalProperties': True}, 'operation': {'enum': ['json-to-csv', 'csv-to-json'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/json-diff).', 'additionalProperties': True}, 'operation': {'enum': ['diff'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/jsonpath).', 'additionalProperties': True}, 'operation': {'enum': ['query'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/json-schema).', 'additionalProperties': True}, 'operation': {'enum': ['generate'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/json-ts).', 'additionalProperties': True}, 'operation': {'enum': ['generate'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/json-xml).', 'additionalProperties': True}, 'operation': {'enum': ['to-xml', 'to-json'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/jwt).', 'additionalProperties': True}, 'operation': {'enum': ['decode'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/jwt-encode).', 'additionalProperties': True}, 'operation': {'enum': ['sign'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/lorem).', 'additionalProperties': True}, 'operation': {'enum': ['generate'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/markdown).', 'additionalProperties': True}, 'operation': {'enum': ['render', 'toc', 'stats'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/markdown-table).', 'additionalProperties': True}, 'operation': {'enum': ['generate'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/mime).', 'additionalProperties': True}, 'operation': {'enum': ['lookup'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/morse-code).', 'additionalProperties': True}, 'operation': {'enum': ['encode', 'decode'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/number-base).', 'additionalProperties': True}, 'operation': {'enum': ['convert'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/password).', 'additionalProperties': True}, 'operation': {'enum': ['generate', 'strength'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/password-strength).', 'additionalProperties': True}, 'operation': {'enum': ['analyze'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/random).', 'additionalProperties': True}, 'operation': {'enum': ['generate'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/regex).', 'additionalProperties': True}, 'operation': {'enum': ['test', 'replace'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/roman-numeral).', 'additionalProperties': True}, 'operation': {'enum': ['to-roman', 'from-roman'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/slugify).', 'additionalProperties': True}, 'operation': {'enum': ['slugify'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/sort-lines).', 'additionalProperties': True}, 'operation': {'enum': ['process'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/sql).', 'additionalProperties': True}, 'operation': {'enum': ['beautify', 'minify'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/string-escape).', 'additionalProperties': True}, 'operation': {'enum': ['escape', 'unescape'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/timestamp).', 'additionalProperties': True}, 'operation': {'enum': ['to-date', 'parse-date'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/totp).', 'additionalProperties': True}, 'operation': {'enum': ['generate'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/ulid).', 'additionalProperties': True}, 'operation': {'enum': ['generate'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/url).', 'additionalProperties': True}, 'operation': {'enum': ['parse', 'validate', 'normalize'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/url-encode).', 'additionalProperties': True}, 'operation': {'enum': ['encode', 'decode'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/user-agent).', 'additionalProperties': True}, 'operation': {'enum': ['parse'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/uuid).', 'additionalProperties': True}, 'operation': {'enum': ['v4', 'v3', 'parse'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/wifi-qr).', 'additionalProperties': True}, 'operation': {'enum': ['payload'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/word-count).', 'additionalProperties': True}, 'operation': {'enum': ['count', 'readability', 'keywords'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/xml).', 'additionalProperties': True}, 'operation': {'enum': ['format', 'minify'], 'type': 'string', 'description': 'The operation to run.'}}}
Input schema
{'type': 'object', 'required': ['operation', 'input'], 'properties': {'input': {'type': 'string', 'description': 'The primary input string.'}, 'options': {'type': 'object', 'description': 'Optional parameters for the operation (see the tool schema at /api/v1/yaml-json).', 'additionalProperties': True}, 'operation': {'enum': ['yaml-to-json', 'json-to-yaml'], 'type': 'string', 'description': 'The operation to run.'}}}
Recent tool changes
Similar MCP servers
hyperion
Acts as a paid MCP tool marketplace and utility gateway with server discovery, HTTP and JavaScript tools, research, data conversi…
Vee3
Manages Clerk authentication infrastructure, including users, organizations, domains, sessions, tokens, OAuth, SSO, machines, per…
IA-QA — 130+ QA & Dev Tools for AI Agents
Provides deterministic QA, evaluation, testing, code analysis, prompt and RAG checks, model comparison, and web security diagnost…
validoria-mcp
Runs continuous website, API, and webshop tests covering security, SEO, performance, accessibility, browser journeys, and inciden…
HubVibe: Pay-per-Call Tools for AI Agents: Web Search, Email Verify, KYC, Stocks, Crypto, News, Data
Offers paid utilities for web audits, HTTP fetching and extraction, BigQuery analysis, LLM processing, code execution, blockchain…
Qiniso
Provides deterministic formatting, parsing, holiday and tax lookups, address handling, and checksum or structure validation for i…
ContrastAPI
Provides security research and assessment tools covering CVEs, IOCs, dependencies, secrets, injection risks, HTTP headers, domain…
CipherHUB Cryptography Toolkit
Provides cryptographic operations including key generation, encryption, signing, verification, hashing, certificates, CMS, COSE, …