{"success":true,"data":{"ext":"w60","name":"W60","description":"W60 is a legacy WordPerfect document format associated with Corel WordPerfect and its earlier WordPerfect Office lineage. It was used for word processing documents such as letters, reports, and formatted manuscripts, and could be opened or converted by compatible word processors and office suites. The format is generally safe, but as with other legacy documents, users should open files only from trusted sources because older office formats may contain macros or compatibility issues.","mime":["application/vnd.wordperfect"],"risk_level":"Safe","signatures":[{"hex":"61 70 70 6C 69 63 61 74 69 6F 6E 2F 76 6E 64 2E 77 6F 72 64 70 65 72 66 65 63 74 3B","offset":0,"sources":[{"name":"Apache Tika","url":"https://raw.githubusercontent.com/apache/tika/main/tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml"}]},{"hex":"FF 57 50 43","offset":0,"sources":[{"name":"Apache Tika","url":"https://raw.githubusercontent.com/apache/tika/main/tika-core/src/main/resources/org/apache/tika/mime/tika-mimetypes.xml"}]}],"related":["wp61","wpt","wp","wp5","wp6","wpd"],"usage":{"python":"def is_w60(file_path: str) -> bool:\n    \"\"\"Check if file is a valid W60 by magic bytes.\"\"\"\n    signature = bytes([0x61, 0x70, 0x70, 0x6C, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2F, 0x76, 0x6E, 0x64, 0x2E, 0x77, 0x6F, 0x72, 0x64, 0x70, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x3B])\n    with open(file_path, \"rb\") as f:\n        return f.read(28) == signature","node":"function isW60(buffer: Buffer): boolean {\n  const signature = Buffer.from([0x61, 0x70, 0x70, 0x6C, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2F, 0x76, 0x6E, 0x64, 0x2E, 0x77, 0x6F, 0x72, 0x64, 0x70, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x3B]);\n  return buffer.subarray(0, 28).equals(signature);\n}","go":"func IsW60(data []byte) bool {\n    signature := []byte{0x61, 0x70, 0x70, 0x6C, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x2F, 0x76, 0x6E, 0x64, 0x2E, 0x77, 0x6F, 0x72, 0x64, 0x70, 0x65, 0x72, 0x66, 0x65, 0x63, 0x74, 0x3B}\n    if len(data) < 28 {\n        return false\n    }\n    return bytes.Equal(data[:28], signature)\n}"}}}