{"schema":"faceoff.editor-project.v1","saved_at":"2026-10-20T08:35:39.709Z","snapshot":{"projectName":"Face-Off Analog verified roundtrip","sourceName":"analog-starter.wff","sourcePath":"","canvas":{"width":450,"height":450},"layers":[{"id":"root-0","parent_id":null,"depth":0,"name":"root-normal","type":"root","mode":"normal","visible":true,"visible_on_aod":true,"position":{"x":0,"y":0},"dimensions":{"width":450,"height":450},"image":{"preview_url":"","zip_entry":"","fit":""},"visibleAod":true,"opacity":1,"blendMode":"source-over","rotation":{"start_angle":0,"degrees":0,"end_angle":0,"pivot_percent":{"x":0.5,"y":0.5},"pivot_space":""},"color":"#eaf2ff","text":{"value":"","font":"Space Mono, JetBrains Mono, monospace","size":24,"align":"center"},"data_source":{"source":"static","start_value":null,"end_value":null,"expression":""},"animation":null},{"id":"wff-1","parent_id":"root-0","depth":1,"name":"Root","type":"group","visible":true,"visible_on_aod":true,"opacity":1,"position":{"x":0,"y":0},"dimensions":{"width":450,"height":450},"rotation":{"start_angle":0,"end_angle":0,"pivot_space":"fraction","pivot":{"x":0.5,"y":0.5},"degrees":0,"pivot_percent":{"x":0.5,"y":0.5}},"image":{"preview_url":"","zip_entry":"","fit":""},"visibleAod":true,"mode":"","blendMode":"source-over","color":"#eaf2ff","text":{"value":"","font":"Space Mono, JetBrains Mono, monospace","size":24,"align":"center"},"data_source":{"source":"static","start_value":null,"end_value":null,"expression":""},"animation":null},{"id":"wff-2","parent_id":"wff-1","depth":2,"name":"Background","type":"image","visible":true,"visible_on_aod":false,"opacity":1,"position":{"x":0,"y":0},"dimensions":{"width":450,"height":450},"rotation":{"start_angle":0,"end_angle":0,"pivot_space":"fraction","pivot":{"x":0.5,"y":0.5},"degrees":0,"pivot_percent":{"x":0.5,"y":0.5}},"data_source":{"source":"static","real_time":true,"custom_expression":"","start_value":null,"end_value":null,"expression":""},"vector":{"version":1,"shapes":[{"type":"ellipse","x":0.005,"y":0.005,"width":0.99,"height":0.99,"fill":"#0a111b"},{"type":"line","startX":0.5,"startY":0.078,"endX":0.5,"endY":0.035,"stroke":{"color":"#e4ecf7","thickness":0.006,"cap":"BUTT"}},{"type":"line","startX":0.5467242222222223,"startY":0.05544871333333333,"endX":0.5486057355555556,"endY":0.037547317777777776,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.5929365266666666,"startY":0.06276802222222222,"endX":0.5966789355555555,"endY":0.04516136666666667,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.6381305955555556,"startY":0.07487773777777779,"endX":0.6436929022222222,"endY":0.05775872,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.6818112799999999,"startY":0.09164517999999999,"endX":0.68913254,"endY":0.07520136222222222,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.711,"startY":0.13453728,"endX":0.7325,"endY":0.09729818666666668,"stroke":{"color":"#e4ecf7","thickness":0.006,"cap":"BUTT"}},{"type":"line","startX":0.7627400066666666,"startY":0.13836940444444445,"endX":0.7733201422222222,"endY":0.12380709777777778,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.79910138,"startY":0.16781426222222223,"endX":0.8111457311111111,"endY":0.15443765555555555,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.8321857377777778,"startY":0.20089862,"endX":0.8455623444444444,"endY":0.18885426888888887,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.8616305955555555,"startY":0.23725999333333334,"endX":0.8761929022222222,"endY":0.2266798577777778,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.8654627199999999,"startY":0.28900000000000003,"endX":0.9027018133333333,"endY":0.2675,"stroke":{"color":"#e4ecf7","thickness":0.006,"cap":"BUTT"}},{"type":"line","startX":0.9083548199999999,"startY":0.31818872,"endX":0.9247986377777777,"endY":0.31086746,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.9251222622222223,"startY":0.36186940444444443,"endX":0.94224128,"endY":0.35630709777777775,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.9372319777777778,"startY":0.4070634733333333,"endX":0.9548386333333334,"endY":0.4033210644444445,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.9445512866666667,"startY":0.4532757777777778,"endX":0.9624526822222222,"endY":0.45139426444444447,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.9219999999999999,"startY":0.5,"endX":0.965,"endY":0.5,"stroke":{"color":"#e4ecf7","thickness":0.006,"cap":"BUTT"}},{"type":"line","startX":0.9445512866666667,"startY":0.5467242222222223,"endX":0.9624526822222222,"endY":0.5486057355555556,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.9372319777777778,"startY":0.5929365266666666,"endX":0.9548386333333334,"endY":0.5966789355555555,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.9251222622222223,"startY":0.6381305955555556,"endX":0.94224128,"endY":0.6436929022222222,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.9083548199999999,"startY":0.6818112799999999,"endX":0.9247986377777777,"endY":0.68913254,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.8654627199999999,"startY":0.711,"endX":0.9027018133333333,"endY":0.7325,"stroke":{"color":"#e4ecf7","thickness":0.006,"cap":"BUTT"}},{"type":"line","startX":0.8616305955555555,"startY":0.7627400066666666,"endX":0.8761929022222222,"endY":0.7733201422222222,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.8321857377777778,"startY":0.79910138,"endX":0.8455623444444444,"endY":0.8111457311111111,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.79910138,"startY":0.8321857377777778,"endX":0.8111457311111111,"endY":0.8455623444444444,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.7627400066666666,"startY":0.8616305955555555,"endX":0.7733201422222222,"endY":0.8761929022222222,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.711,"startY":0.8654627199999999,"endX":0.7325,"endY":0.9027018133333333,"stroke":{"color":"#e4ecf7","thickness":0.006,"cap":"BUTT"}},{"type":"line","startX":0.6818112799999999,"startY":0.9083548199999999,"endX":0.68913254,"endY":0.9247986377777777,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.6381305955555556,"startY":0.9251222622222223,"endX":0.6436929022222222,"endY":0.94224128,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.5929365266666666,"startY":0.9372319777777778,"endX":0.5966789355555555,"endY":0.9548386333333334,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.5467242222222223,"startY":0.9445512866666667,"endX":0.5486057355555556,"endY":0.9624526822222222,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.5,"startY":0.9219999999999999,"endX":0.5,"endY":0.965,"stroke":{"color":"#e4ecf7","thickness":0.006,"cap":"BUTT"}},{"type":"line","startX":0.4532757777777778,"startY":0.9445512866666667,"endX":0.45139426444444447,"endY":0.9624526822222222,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.4070634733333333,"startY":0.9372319777777778,"endX":0.4033210644444445,"endY":0.9548386333333334,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.36186940444444443,"startY":0.9251222622222223,"endX":0.35630709777777775,"endY":0.94224128,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.31818872,"startY":0.9083548199999999,"endX":0.31086746,"endY":0.9247986377777777,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.28900000000000003,"startY":0.8654627199999999,"endX":0.2675,"endY":0.9027018133333333,"stroke":{"color":"#e4ecf7","thickness":0.006,"cap":"BUTT"}},{"type":"line","startX":0.23725999333333334,"startY":0.8616305955555555,"endX":0.2266798577777778,"endY":0.8761929022222222,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.20089862,"startY":0.8321857377777778,"endX":0.18885426888888887,"endY":0.8455623444444444,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.16781426222222223,"startY":0.79910138,"endX":0.15443765555555555,"endY":0.8111457311111111,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.13836940444444445,"startY":0.7627400066666666,"endX":0.12380709777777778,"endY":0.7733201422222222,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.13453728,"startY":0.711,"endX":0.09729818666666668,"endY":0.7325,"stroke":{"color":"#e4ecf7","thickness":0.006,"cap":"BUTT"}},{"type":"line","startX":0.09164517999999999,"startY":0.6818112799999999,"endX":0.07520136222222222,"endY":0.68913254,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.07487773777777779,"startY":0.6381305955555556,"endX":0.05775872,"endY":0.6436929022222222,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.06276802222222222,"startY":0.5929365266666666,"endX":0.04516136666666667,"endY":0.5966789355555555,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.05544871333333333,"startY":0.5467242222222223,"endX":0.037547317777777776,"endY":0.5486057355555556,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.078,"startY":0.5,"endX":0.035,"endY":0.5,"stroke":{"color":"#e4ecf7","thickness":0.006,"cap":"BUTT"}},{"type":"line","startX":0.05544871333333333,"startY":0.4532757777777778,"endX":0.037547317777777776,"endY":0.45139426444444447,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.06276802222222222,"startY":0.4070634733333333,"endX":0.04516136666666667,"endY":0.4033210644444445,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.07487773777777779,"startY":0.36186940444444443,"endX":0.05775872,"endY":0.35630709777777775,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.09164517999999999,"startY":0.31818872,"endX":0.07520136222222222,"endY":0.31086746,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.13453728,"startY":0.28900000000000003,"endX":0.09729818666666668,"endY":0.2675,"stroke":{"color":"#e4ecf7","thickness":0.006,"cap":"BUTT"}},{"type":"line","startX":0.13836940444444445,"startY":0.23725999333333334,"endX":0.12380709777777778,"endY":0.2266798577777778,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.16781426222222223,"startY":0.20089862,"endX":0.15443765555555555,"endY":0.18885426888888887,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.20089862,"startY":0.16781426222222223,"endX":0.18885426888888887,"endY":0.15443765555555555,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.23725999333333334,"startY":0.13836940444444445,"endX":0.2266798577777778,"endY":0.12380709777777778,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.28900000000000003,"startY":0.13453728,"endX":0.2675,"endY":0.09729818666666668,"stroke":{"color":"#e4ecf7","thickness":0.006,"cap":"BUTT"}},{"type":"line","startX":0.31818872,"startY":0.09164517999999999,"endX":0.31086746,"endY":0.07520136222222222,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.36186940444444443,"startY":0.07487773777777779,"endX":0.35630709777777775,"endY":0.05775872,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.4070634733333333,"startY":0.06276802222222222,"endX":0.4033210644444445,"endY":0.04516136666666667,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}},{"type":"line","startX":0.4532757777777778,"startY":0.05544871333333333,"endX":0.45139426444444447,"endY":0.037547317777777776,"stroke":{"color":"#61718a","thickness":0.003,"cap":"BUTT"}}]},"image":{"preview_url":"","zip_entry":"","fit":""},"visibleAod":false,"mode":"","blendMode":"source-over","color":"#eaf2ff","text":{"value":"","font":"Space Mono, JetBrains Mono, monospace","size":24,"align":"center"},"animation":null},{"id":"wff-3","parent_id":"wff-1","depth":2,"name":"Hour hand","type":"hand","visible":true,"visible_on_aod":false,"opacity":1,"position":{"x":219,"y":111},"dimensions":{"width":12,"height":120},"rotation":{"start_angle":0,"end_angle":360,"pivot_space":"fraction","pivot":{"x":0.5,"y":0.95},"degrees":0,"pivot_percent":{"x":0.5,"y":0.95}},"data_source":{"source":"hour","real_time":true,"custom_expression":"0 + ([HOUR_0_11_MINUTE] - 0) * 30","start_value":0,"end_value":12,"linear_preview":true,"expression":"0 + ([HOUR_0_11_MINUTE] - 0) * 30"},"vector":{"version":1,"shapes":[{"type":"line","startX":0.5,"startY":0.030000000000000002,"endX":0.5,"endY":0.95,"stroke":{"color":"#e7effa","thickness":0.5,"cap":"ROUND"}},{"type":"ellipse","x":0,"y":0.91,"width":1,"height":0.08,"fill":"#e7effa"}]},"image":{"preview_url":"","zip_entry":"","fit":""},"visibleAod":false,"mode":"","blendMode":"source-over","color":"#eaf2ff","text":{"value":"","font":"Space Mono, JetBrains Mono, monospace","size":24,"align":"center"},"animation":null},{"id":"wff-4","parent_id":"wff-1","depth":2,"name":"Minute hand","type":"hand","visible":true,"visible_on_aod":false,"opacity":1,"position":{"x":221,"y":73},"dimensions":{"width":8,"height":160},"rotation":{"start_angle":0,"end_angle":360,"pivot_space":"fraction","pivot":{"x":0.5,"y":0.95},"degrees":0,"pivot_percent":{"x":0.5,"y":0.95}},"data_source":{"source":"minute","real_time":true,"custom_expression":"0 + ([MINUTE_SECOND] - 0) * 6","start_value":0,"end_value":60,"linear_preview":true,"expression":"0 + ([MINUTE_SECOND] - 0) * 6"},"vector":{"version":1,"shapes":[{"type":"line","startX":0.5,"startY":0.03,"endX":0.5,"endY":0.95,"stroke":{"color":"#e7effa","thickness":0.5,"cap":"ROUND"}},{"type":"ellipse","x":0,"y":0.925,"width":1,"height":0.05,"fill":"#e7effa"}]},"image":{"preview_url":"","zip_entry":"","fit":""},"visibleAod":false,"mode":"","blendMode":"source-over","color":"#eaf2ff","text":{"value":"","font":"Space Mono, JetBrains Mono, monospace","size":24,"align":"center"},"animation":null},{"id":"wff-5","parent_id":"wff-1","depth":2,"name":"Second hand","type":"hand","visible":true,"visible_on_aod":false,"opacity":1,"position":{"x":223,"y":58},"dimensions":{"width":4,"height":175},"rotation":{"start_angle":0,"end_angle":360,"pivot_space":"fraction","pivot":{"x":0.5,"y":0.95},"degrees":0,"pivot_percent":{"x":0.5,"y":0.95}},"data_source":{"source":"second","real_time":true,"custom_expression":"0 + ([SECOND_MILLISECOND] - 0) * 6","start_value":0,"end_value":60,"linear_preview":true,"expression":"0 + ([SECOND_MILLISECOND] - 0) * 6"},"vector":{"version":1,"shapes":[{"type":"line","startX":0.5,"startY":0.03,"endX":0.5,"endY":0.95,"stroke":{"color":"#428cff","thickness":0.5,"cap":"ROUND"}},{"type":"ellipse","x":0,"y":0.9385714285714286,"width":1,"height":0.022857142857142857,"fill":"#428cff"}]},"image":{"preview_url":"","zip_entry":"","fit":""},"visibleAod":false,"mode":"","blendMode":"source-over","color":"#eaf2ff","text":{"value":"","font":"Space Mono, JetBrains Mono, monospace","size":24,"align":"center"},"animation":null},{"id":"wff-6","parent_id":"wff-1","depth":2,"name":"Date window","type":"text","visible":true,"visible_on_aod":false,"opacity":1,"position":{"x":300,"y":205},"dimensions":{"width":52,"height":36},"color":"#e7effa","text":{"value":"[DAY_1_31]","unsupported_template":false,"font":"SYNC_TO_DEVICE","size":24,"align":"center"},"image":{"preview_url":"","zip_entry":"","fit":""},"visibleAod":false,"mode":"","blendMode":"source-over","rotation":{"start_angle":0,"degrees":0,"end_angle":0,"pivot_percent":{"x":0.5,"y":0.5},"pivot_space":""},"data_source":{"source":"static","start_value":null,"end_value":null,"expression":""},"animation":null},{"id":"wff-7","parent_id":"wff-1","depth":2,"name":"DigitalClock","type":"digitalclock","visible":true,"visible_on_aod":true,"opacity":1,"position":{"x":45,"y":180},"dimensions":{"width":360,"height":90},"color":"#ffffff","text":{"value":"HH:mm","hour_format":"","font":"SYNC_TO_DEVICE","size":58,"align":"center"},"mode":"aod","image":{"preview_url":"","zip_entry":"","fit":""},"visibleAod":true,"blendMode":"source-over","rotation":{"start_angle":0,"degrees":0,"end_angle":0,"pivot_percent":{"x":0.5,"y":0.5},"pivot_space":""},"data_source":{"source":"static","start_value":null,"end_value":null,"expression":""},"animation":null}],"selectedLayerId":"wff-3","importSummary":{"format":"wff","status":"ok","layerCount":8,"assetCount":4,"compatibility":{"mapped":["animation","complication","digitalclock","group","hand","image","root","text","vector_shapes"],"approximated":[],"unsupported":[]},"warnings":[],"validation":{"status":"valid","summary":"Schema validation passed.","errors":[],"tool":"google-wff-validator","format_version":1,"exit_code":0,"target_source":"selected"},"meta":{"schema_version":"wff","clip_shape":"CIRCLE","source_xml":"res/raw/watchface.xml","wff_validation":{"status":"valid","summary":"Schema validation passed.","errors":[],"tool":"google-wff-validator","format_version":1,"exit_code":0,"target_source":"selected"}},"sourceSha256":"e72acb852fb2ef6a9a63273e4a3ada999f8b75c651a603279352bef308a66167","fontDiagnostics":[]},"assets":[],"fonts":[],"timestamp":1792485339706},"resources":{}}