diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dev/404.html b/dev/404.html new file mode 100644 index 0000000000..59b3194885 --- /dev/null +++ b/dev/404.html @@ -0,0 +1 @@ + The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/assets/_mkdocstrings.css b/dev/assets/_mkdocstrings.css new file mode 100644 index 0000000000..a65078d025 --- /dev/null +++ b/dev/assets/_mkdocstrings.css @@ -0,0 +1,36 @@ + +/* Don't capitalize names. */ +h5.doc-heading { + text-transform: none !important; +} + +/* Avoid breaking parameters name, etc. in table cells. */ +.doc-contents td code { + word-break: normal !important; +} + +/* For pieces of Markdown rendered in table cells. */ +.doc-contents td p { + margin-top: 0 !important; + margin-bottom: 0 !important; +} + +/* Max width for docstring sections tables. */ +.doc .md-typeset__table, +.doc .md-typeset__table table { + display: table !important; + width: 100%; +} +.doc .md-typeset__table tr { + display: table-row; +} + +/* Avoid line breaks in rendered fields. */ +.field-body p { + display: inline; +} + +/* Defaults in Spacy table style. */ +.doc-param-default { + float: right; +} diff --git a/dev/assets/favicon.ico b/dev/assets/favicon.ico new file mode 100644 index 0000000000..8b46519e69 Binary files /dev/null and b/dev/assets/favicon.ico differ diff --git a/dev/assets/images/favicon.png b/dev/assets/images/favicon.png new file mode 100644 index 0000000000..1cf13b9f9d Binary files /dev/null and b/dev/assets/images/favicon.png differ diff --git a/dev/assets/javascripts/bundle.220ee61c.min.js b/dev/assets/javascripts/bundle.220ee61c.min.js new file mode 100644 index 0000000000..116072a11e --- /dev/null +++ b/dev/assets/javascripts/bundle.220ee61c.min.js @@ -0,0 +1,29 @@ +"use strict";(()=>{var Ci=Object.create;var gr=Object.defineProperty;var Ri=Object.getOwnPropertyDescriptor;var ki=Object.getOwnPropertyNames,Ht=Object.getOwnPropertySymbols,Hi=Object.getPrototypeOf,yr=Object.prototype.hasOwnProperty,nn=Object.prototype.propertyIsEnumerable;var rn=(e,t,r)=>t in e?gr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,P=(e,t)=>{for(var r in t||(t={}))yr.call(t,r)&&rn(e,r,t[r]);if(Ht)for(var r of Ht(t))nn.call(t,r)&&rn(e,r,t[r]);return e};var on=(e,t)=>{var r={};for(var n in e)yr.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Ht)for(var n of Ht(e))t.indexOf(n)<0&&nn.call(e,n)&&(r[n]=e[n]);return r};var Pt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Pi=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of ki(t))!yr.call(e,o)&&o!==r&&gr(e,o,{get:()=>t[o],enumerable:!(n=Ri(t,o))||n.enumerable});return e};var yt=(e,t,r)=>(r=e!=null?Ci(Hi(e)):{},Pi(t||!e||!e.__esModule?gr(r,"default",{value:e,enumerable:!0}):r,e));var sn=Pt((xr,an)=>{(function(e,t){typeof xr=="object"&&typeof an!="undefined"?t():typeof define=="function"&&define.amd?define(t):t()})(xr,function(){"use strict";function e(r){var n=!0,o=!1,i=null,s={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function a(O){return!!(O&&O!==document&&O.nodeName!=="HTML"&&O.nodeName!=="BODY"&&"classList"in O&&"contains"in O.classList)}function f(O){var Qe=O.type,De=O.tagName;return!!(De==="INPUT"&&s[Qe]&&!O.readOnly||De==="TEXTAREA"&&!O.readOnly||O.isContentEditable)}function c(O){O.classList.contains("focus-visible")||(O.classList.add("focus-visible"),O.setAttribute("data-focus-visible-added",""))}function u(O){O.hasAttribute("data-focus-visible-added")&&(O.classList.remove("focus-visible"),O.removeAttribute("data-focus-visible-added"))}function p(O){O.metaKey||O.altKey||O.ctrlKey||(a(r.activeElement)&&c(r.activeElement),n=!0)}function m(O){n=!1}function d(O){a(O.target)&&(n||f(O.target))&&c(O.target)}function h(O){a(O.target)&&(O.target.classList.contains("focus-visible")||O.target.hasAttribute("data-focus-visible-added"))&&(o=!0,window.clearTimeout(i),i=window.setTimeout(function(){o=!1},100),u(O.target))}function v(O){document.visibilityState==="hidden"&&(o&&(n=!0),Y())}function Y(){document.addEventListener("mousemove",N),document.addEventListener("mousedown",N),document.addEventListener("mouseup",N),document.addEventListener("pointermove",N),document.addEventListener("pointerdown",N),document.addEventListener("pointerup",N),document.addEventListener("touchmove",N),document.addEventListener("touchstart",N),document.addEventListener("touchend",N)}function B(){document.removeEventListener("mousemove",N),document.removeEventListener("mousedown",N),document.removeEventListener("mouseup",N),document.removeEventListener("pointermove",N),document.removeEventListener("pointerdown",N),document.removeEventListener("pointerup",N),document.removeEventListener("touchmove",N),document.removeEventListener("touchstart",N),document.removeEventListener("touchend",N)}function N(O){O.target.nodeName&&O.target.nodeName.toLowerCase()==="html"||(n=!1,B())}document.addEventListener("keydown",p,!0),document.addEventListener("mousedown",m,!0),document.addEventListener("pointerdown",m,!0),document.addEventListener("touchstart",m,!0),document.addEventListener("visibilitychange",v,!0),Y(),r.addEventListener("focus",d,!0),r.addEventListener("blur",h,!0),r.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&r.host?r.host.setAttribute("data-js-focus-visible",""):r.nodeType===Node.DOCUMENT_NODE&&(document.documentElement.classList.add("js-focus-visible"),document.documentElement.setAttribute("data-js-focus-visible",""))}if(typeof window!="undefined"&&typeof document!="undefined"){window.applyFocusVisiblePolyfill=e;var t;try{t=new CustomEvent("focus-visible-polyfill-ready")}catch(r){t=document.createEvent("CustomEvent"),t.initCustomEvent("focus-visible-polyfill-ready",!1,!1,{})}window.dispatchEvent(t)}typeof document!="undefined"&&e(document)})});var cn=Pt(Er=>{(function(e){var t=function(){try{return!!Symbol.iterator}catch(c){return!1}},r=t(),n=function(c){var u={next:function(){var p=c.shift();return{done:p===void 0,value:p}}};return r&&(u[Symbol.iterator]=function(){return u}),u},o=function(c){return encodeURIComponent(c).replace(/%20/g,"+")},i=function(c){return decodeURIComponent(String(c).replace(/\+/g," "))},s=function(){var c=function(p){Object.defineProperty(this,"_entries",{writable:!0,value:{}});var m=typeof p;if(m!=="undefined")if(m==="string")p!==""&&this._fromString(p);else if(p instanceof c){var d=this;p.forEach(function(B,N){d.append(N,B)})}else if(p!==null&&m==="object")if(Object.prototype.toString.call(p)==="[object Array]")for(var h=0;hd[0]?1:0}),c._entries&&(c._entries={});for(var p=0;p1?i(d[1]):"")}})})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Er);(function(e){var t=function(){try{var o=new e.URL("b","http://a");return o.pathname="c d",o.href==="http://a/c%20d"&&o.searchParams}catch(i){return!1}},r=function(){var o=e.URL,i=function(f,c){typeof f!="string"&&(f=String(f)),c&&typeof c!="string"&&(c=String(c));var u=document,p;if(c&&(e.location===void 0||c!==e.location.href)){c=c.toLowerCase(),u=document.implementation.createHTMLDocument(""),p=u.createElement("base"),p.href=c,u.head.appendChild(p);try{if(p.href.indexOf(c)!==0)throw new Error(p.href)}catch(O){throw new Error("URL unable to set base "+c+" due to "+O)}}var m=u.createElement("a");m.href=f,p&&(u.body.appendChild(m),m.href=m.href);var d=u.createElement("input");if(d.type="url",d.value=f,m.protocol===":"||!/:/.test(m.href)||!d.checkValidity()&&!c)throw new TypeError("Invalid URL");Object.defineProperty(this,"_anchorElement",{value:m});var h=new e.URLSearchParams(this.search),v=!0,Y=!0,B=this;["append","delete","set"].forEach(function(O){var Qe=h[O];h[O]=function(){Qe.apply(h,arguments),v&&(Y=!1,B.search=h.toString(),Y=!0)}}),Object.defineProperty(this,"searchParams",{value:h,enumerable:!0});var N=void 0;Object.defineProperty(this,"_updateSearchParams",{enumerable:!1,configurable:!1,writable:!1,value:function(){this.search!==N&&(N=this.search,Y&&(v=!1,this.searchParams._fromString(this.search),v=!0))}})},s=i.prototype,a=function(f){Object.defineProperty(s,f,{get:function(){return this._anchorElement[f]},set:function(c){this._anchorElement[f]=c},enumerable:!0})};["hash","host","hostname","port","protocol"].forEach(function(f){a(f)}),Object.defineProperty(s,"search",{get:function(){return this._anchorElement.search},set:function(f){this._anchorElement.search=f,this._updateSearchParams()},enumerable:!0}),Object.defineProperties(s,{toString:{get:function(){var f=this;return function(){return f.href}}},href:{get:function(){return this._anchorElement.href.replace(/\?$/,"")},set:function(f){this._anchorElement.href=f,this._updateSearchParams()},enumerable:!0},pathname:{get:function(){return this._anchorElement.pathname.replace(/(^\/?)/,"/")},set:function(f){this._anchorElement.pathname=f},enumerable:!0},origin:{get:function(){var f={"http:":80,"https:":443,"ftp:":21}[this._anchorElement.protocol],c=this._anchorElement.port!=f&&this._anchorElement.port!=="";return this._anchorElement.protocol+"//"+this._anchorElement.hostname+(c?":"+this._anchorElement.port:"")},enumerable:!0},password:{get:function(){return""},set:function(f){},enumerable:!0},username:{get:function(){return""},set:function(f){},enumerable:!0}}),i.createObjectURL=function(f){return o.createObjectURL.apply(o,arguments)},i.revokeObjectURL=function(f){return o.revokeObjectURL.apply(o,arguments)},e.URL=i};if(t()||r(),e.location!==void 0&&!("origin"in e.location)){var n=function(){return e.location.protocol+"//"+e.location.hostname+(e.location.port?":"+e.location.port:"")};try{Object.defineProperty(e.location,"origin",{get:n,enumerable:!0})}catch(o){setInterval(function(){e.location.origin=n()},100)}}})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Er)});var qr=Pt((Mt,Nr)=>{/*! + * clipboard.js v2.0.11 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */(function(t,r){typeof Mt=="object"&&typeof Nr=="object"?Nr.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Mt=="object"?Mt.ClipboardJS=r():t.ClipboardJS=r()})(Mt,function(){return function(){var e={686:function(n,o,i){"use strict";i.d(o,{default:function(){return Ai}});var s=i(279),a=i.n(s),f=i(370),c=i.n(f),u=i(817),p=i.n(u);function m(j){try{return document.execCommand(j)}catch(T){return!1}}var d=function(T){var E=p()(T);return m("cut"),E},h=d;function v(j){var T=document.documentElement.getAttribute("dir")==="rtl",E=document.createElement("textarea");E.style.fontSize="12pt",E.style.border="0",E.style.padding="0",E.style.margin="0",E.style.position="absolute",E.style[T?"right":"left"]="-9999px";var H=window.pageYOffset||document.documentElement.scrollTop;return E.style.top="".concat(H,"px"),E.setAttribute("readonly",""),E.value=j,E}var Y=function(T,E){var H=v(T);E.container.appendChild(H);var I=p()(H);return m("copy"),H.remove(),I},B=function(T){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},H="";return typeof T=="string"?H=Y(T,E):T instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(T==null?void 0:T.type)?H=Y(T.value,E):(H=p()(T),m("copy")),H},N=B;function O(j){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?O=function(E){return typeof E}:O=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},O(j)}var Qe=function(){var T=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},E=T.action,H=E===void 0?"copy":E,I=T.container,q=T.target,Me=T.text;if(H!=="copy"&&H!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(q!==void 0)if(q&&O(q)==="object"&&q.nodeType===1){if(H==="copy"&&q.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(H==="cut"&&(q.hasAttribute("readonly")||q.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(Me)return N(Me,{container:I});if(q)return H==="cut"?h(q):N(q,{container:I})},De=Qe;function $e(j){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?$e=function(E){return typeof E}:$e=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},$e(j)}function Ei(j,T){if(!(j instanceof T))throw new TypeError("Cannot call a class as a function")}function tn(j,T){for(var E=0;E0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof I.action=="function"?I.action:this.defaultAction,this.target=typeof I.target=="function"?I.target:this.defaultTarget,this.text=typeof I.text=="function"?I.text:this.defaultText,this.container=$e(I.container)==="object"?I.container:document.body}},{key:"listenClick",value:function(I){var q=this;this.listener=c()(I,"click",function(Me){return q.onClick(Me)})}},{key:"onClick",value:function(I){var q=I.delegateTarget||I.currentTarget,Me=this.action(q)||"copy",kt=De({action:Me,container:this.container,target:this.target(q),text:this.text(q)});this.emit(kt?"success":"error",{action:Me,text:kt,trigger:q,clearSelection:function(){q&&q.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(I){return vr("action",I)}},{key:"defaultTarget",value:function(I){var q=vr("target",I);if(q)return document.querySelector(q)}},{key:"defaultText",value:function(I){return vr("text",I)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(I){var q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return N(I,q)}},{key:"cut",value:function(I){return h(I)}},{key:"isSupported",value:function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],q=typeof I=="string"?[I]:I,Me=!!document.queryCommandSupported;return q.forEach(function(kt){Me=Me&&!!document.queryCommandSupported(kt)}),Me}}]),E}(a()),Ai=Li},828:function(n){var o=9;if(typeof Element!="undefined"&&!Element.prototype.matches){var i=Element.prototype;i.matches=i.matchesSelector||i.mozMatchesSelector||i.msMatchesSelector||i.oMatchesSelector||i.webkitMatchesSelector}function s(a,f){for(;a&&a.nodeType!==o;){if(typeof a.matches=="function"&&a.matches(f))return a;a=a.parentNode}}n.exports=s},438:function(n,o,i){var s=i(828);function a(u,p,m,d,h){var v=c.apply(this,arguments);return u.addEventListener(m,v,h),{destroy:function(){u.removeEventListener(m,v,h)}}}function f(u,p,m,d,h){return typeof u.addEventListener=="function"?a.apply(null,arguments):typeof m=="function"?a.bind(null,document).apply(null,arguments):(typeof u=="string"&&(u=document.querySelectorAll(u)),Array.prototype.map.call(u,function(v){return a(v,p,m,d,h)}))}function c(u,p,m,d){return function(h){h.delegateTarget=s(h.target,p),h.delegateTarget&&d.call(u,h)}}n.exports=f},879:function(n,o){o.node=function(i){return i!==void 0&&i instanceof HTMLElement&&i.nodeType===1},o.nodeList=function(i){var s=Object.prototype.toString.call(i);return i!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in i&&(i.length===0||o.node(i[0]))},o.string=function(i){return typeof i=="string"||i instanceof String},o.fn=function(i){var s=Object.prototype.toString.call(i);return s==="[object Function]"}},370:function(n,o,i){var s=i(879),a=i(438);function f(m,d,h){if(!m&&!d&&!h)throw new Error("Missing required arguments");if(!s.string(d))throw new TypeError("Second argument must be a String");if(!s.fn(h))throw new TypeError("Third argument must be a Function");if(s.node(m))return c(m,d,h);if(s.nodeList(m))return u(m,d,h);if(s.string(m))return p(m,d,h);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function c(m,d,h){return m.addEventListener(d,h),{destroy:function(){m.removeEventListener(d,h)}}}function u(m,d,h){return Array.prototype.forEach.call(m,function(v){v.addEventListener(d,h)}),{destroy:function(){Array.prototype.forEach.call(m,function(v){v.removeEventListener(d,h)})}}}function p(m,d,h){return a(document.body,m,d,h)}n.exports=f},817:function(n){function o(i){var s;if(i.nodeName==="SELECT")i.focus(),s=i.value;else if(i.nodeName==="INPUT"||i.nodeName==="TEXTAREA"){var a=i.hasAttribute("readonly");a||i.setAttribute("readonly",""),i.select(),i.setSelectionRange(0,i.value.length),a||i.removeAttribute("readonly"),s=i.value}else{i.hasAttribute("contenteditable")&&i.focus();var f=window.getSelection(),c=document.createRange();c.selectNodeContents(i),f.removeAllRanges(),f.addRange(c),s=f.toString()}return s}n.exports=o},279:function(n){function o(){}o.prototype={on:function(i,s,a){var f=this.e||(this.e={});return(f[i]||(f[i]=[])).push({fn:s,ctx:a}),this},once:function(i,s,a){var f=this;function c(){f.off(i,c),s.apply(a,arguments)}return c._=s,this.on(i,c,a)},emit:function(i){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[i]||[]).slice(),f=0,c=a.length;for(f;f{"use strict";/*! + * escape-html + * Copyright(c) 2012-2013 TJ Holowaychuk + * Copyright(c) 2015 Andreas Lubbe + * Copyright(c) 2015 Tiancheng "Timothy" Gu + * MIT Licensed + */var rs=/["'&<>]/;Yo.exports=ns;function ns(e){var t=""+e,r=rs.exec(t);if(!r)return t;var n,o="",i=0,s=0;for(i=r.index;i0&&i[i.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function W(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,i=[],s;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(a){s={error:a}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return i}function D(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,i;n1||a(m,d)})})}function a(m,d){try{f(n[m](d))}catch(h){p(i[0][3],h)}}function f(m){m.value instanceof et?Promise.resolve(m.value.v).then(c,u):p(i[0][2],m)}function c(m){a("next",m)}function u(m){a("throw",m)}function p(m,d){m(d),i.shift(),i.length&&a(i[0][0],i[0][1])}}function pn(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof Ee=="function"?Ee(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(i){r[i]=e[i]&&function(s){return new Promise(function(a,f){s=e[i](s),o(a,f,s.done,s.value)})}}function o(i,s,a,f){Promise.resolve(f).then(function(c){i({value:c,done:a})},s)}}function C(e){return typeof e=="function"}function at(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var It=at(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: +`+r.map(function(n,o){return o+1+") "+n.toString()}).join(` + `):"",this.name="UnsubscriptionError",this.errors=r}});function Ve(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Ie=function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,n,o,i;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=Ee(s),f=a.next();!f.done;f=a.next()){var c=f.value;c.remove(this)}}catch(v){t={error:v}}finally{try{f&&!f.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}else s.remove(this);var u=this.initialTeardown;if(C(u))try{u()}catch(v){i=v instanceof It?v.errors:[v]}var p=this._finalizers;if(p){this._finalizers=null;try{for(var m=Ee(p),d=m.next();!d.done;d=m.next()){var h=d.value;try{ln(h)}catch(v){i=i!=null?i:[],v instanceof It?i=D(D([],W(i)),W(v.errors)):i.push(v)}}}catch(v){n={error:v}}finally{try{d&&!d.done&&(o=m.return)&&o.call(m)}finally{if(n)throw n.error}}}if(i)throw new It(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)ln(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&Ve(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&Ve(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}();var Sr=Ie.EMPTY;function jt(e){return e instanceof Ie||e&&"closed"in e&&C(e.remove)&&C(e.add)&&C(e.unsubscribe)}function ln(e){C(e)?e():e.unsubscribe()}var Le={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var st={setTimeout:function(e,t){for(var r=[],n=2;n0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var n=this,o=this,i=o.hasError,s=o.isStopped,a=o.observers;return i||s?Sr:(this.currentObservers=null,a.push(r),new Ie(function(){n.currentObservers=null,Ve(a,r)}))},t.prototype._checkFinalizedStatuses=function(r){var n=this,o=n.hasError,i=n.thrownError,s=n.isStopped;o?r.error(i):s&&r.complete()},t.prototype.asObservable=function(){var r=new F;return r.source=this,r},t.create=function(r,n){return new xn(r,n)},t}(F);var xn=function(e){ie(t,e);function t(r,n){var o=e.call(this)||this;return o.destination=r,o.source=n,o}return t.prototype.next=function(r){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.next)===null||o===void 0||o.call(n,r)},t.prototype.error=function(r){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.error)===null||o===void 0||o.call(n,r)},t.prototype.complete=function(){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||n===void 0||n.call(r)},t.prototype._subscribe=function(r){var n,o;return(o=(n=this.source)===null||n===void 0?void 0:n.subscribe(r))!==null&&o!==void 0?o:Sr},t}(x);var Et={now:function(){return(Et.delegate||Date).now()},delegate:void 0};var wt=function(e){ie(t,e);function t(r,n,o){r===void 0&&(r=1/0),n===void 0&&(n=1/0),o===void 0&&(o=Et);var i=e.call(this)||this;return i._bufferSize=r,i._windowTime=n,i._timestampProvider=o,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=n===1/0,i._bufferSize=Math.max(1,r),i._windowTime=Math.max(1,n),i}return t.prototype.next=function(r){var n=this,o=n.isStopped,i=n._buffer,s=n._infiniteTimeWindow,a=n._timestampProvider,f=n._windowTime;o||(i.push(r),!s&&i.push(a.now()+f)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(r),o=this,i=o._infiniteTimeWindow,s=o._buffer,a=s.slice(),f=0;f0?e.prototype.requestAsyncId.call(this,r,n,o):(r.actions.push(this),r._scheduled||(r._scheduled=ut.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,n,o){var i;if(o===void 0&&(o=0),o!=null?o>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,o);var s=r.actions;n!=null&&((i=s[s.length-1])===null||i===void 0?void 0:i.id)!==n&&(ut.cancelAnimationFrame(n),r._scheduled=void 0)},t}(Wt);var Sn=function(e){ie(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var o=this.actions,i;r=r||o.shift();do if(i=r.execute(r.state,r.delay))break;while((r=o[0])&&r.id===n&&o.shift());if(this._active=!1,i){for(;(r=o[0])&&r.id===n&&o.shift();)r.unsubscribe();throw i}},t}(Dt);var Oe=new Sn(wn);var M=new F(function(e){return e.complete()});function Vt(e){return e&&C(e.schedule)}function Cr(e){return e[e.length-1]}function Ye(e){return C(Cr(e))?e.pop():void 0}function Te(e){return Vt(Cr(e))?e.pop():void 0}function zt(e,t){return typeof Cr(e)=="number"?e.pop():t}var pt=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function Nt(e){return C(e==null?void 0:e.then)}function qt(e){return C(e[ft])}function Kt(e){return Symbol.asyncIterator&&C(e==null?void 0:e[Symbol.asyncIterator])}function Qt(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function zi(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Yt=zi();function Gt(e){return C(e==null?void 0:e[Yt])}function Bt(e){return un(this,arguments,function(){var r,n,o,i;return $t(this,function(s){switch(s.label){case 0:r=e.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,et(r.read())];case 3:return n=s.sent(),o=n.value,i=n.done,i?[4,et(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,et(o)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}function Jt(e){return C(e==null?void 0:e.getReader)}function U(e){if(e instanceof F)return e;if(e!=null){if(qt(e))return Ni(e);if(pt(e))return qi(e);if(Nt(e))return Ki(e);if(Kt(e))return On(e);if(Gt(e))return Qi(e);if(Jt(e))return Yi(e)}throw Qt(e)}function Ni(e){return new F(function(t){var r=e[ft]();if(C(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function qi(e){return new F(function(t){for(var r=0;r=2;return function(n){return n.pipe(e?A(function(o,i){return e(o,i,n)}):de,ge(1),r?He(t):Dn(function(){return new Zt}))}}function Vn(){for(var e=[],t=0;t=2,!0))}function pe(e){e===void 0&&(e={});var t=e.connector,r=t===void 0?function(){return new x}:t,n=e.resetOnError,o=n===void 0?!0:n,i=e.resetOnComplete,s=i===void 0?!0:i,a=e.resetOnRefCountZero,f=a===void 0?!0:a;return function(c){var u,p,m,d=0,h=!1,v=!1,Y=function(){p==null||p.unsubscribe(),p=void 0},B=function(){Y(),u=m=void 0,h=v=!1},N=function(){var O=u;B(),O==null||O.unsubscribe()};return y(function(O,Qe){d++,!v&&!h&&Y();var De=m=m!=null?m:r();Qe.add(function(){d--,d===0&&!v&&!h&&(p=$r(N,f))}),De.subscribe(Qe),!u&&d>0&&(u=new rt({next:function($e){return De.next($e)},error:function($e){v=!0,Y(),p=$r(B,o,$e),De.error($e)},complete:function(){h=!0,Y(),p=$r(B,s),De.complete()}}),U(O).subscribe(u))})(c)}}function $r(e,t){for(var r=[],n=2;ne.next(document)),e}function K(e,t=document){return Array.from(t.querySelectorAll(e))}function z(e,t=document){let r=ce(e,t);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${e}" to be present`);return r}function ce(e,t=document){return t.querySelector(e)||void 0}function _e(){return document.activeElement instanceof HTMLElement&&document.activeElement||void 0}function tr(e){return L(b(document.body,"focusin"),b(document.body,"focusout")).pipe(ke(1),l(()=>{let t=_e();return typeof t!="undefined"?e.contains(t):!1}),V(e===_e()),J())}function Xe(e){return{x:e.offsetLeft,y:e.offsetTop}}function Kn(e){return L(b(window,"load"),b(window,"resize")).pipe(Ce(0,Oe),l(()=>Xe(e)),V(Xe(e)))}function rr(e){return{x:e.scrollLeft,y:e.scrollTop}}function dt(e){return L(b(e,"scroll"),b(window,"resize")).pipe(Ce(0,Oe),l(()=>rr(e)),V(rr(e)))}var Yn=function(){if(typeof Map!="undefined")return Map;function e(t,r){var n=-1;return t.some(function(o,i){return o[0]===r?(n=i,!0):!1}),n}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(r){var n=e(this.__entries__,r),o=this.__entries__[n];return o&&o[1]},t.prototype.set=function(r,n){var o=e(this.__entries__,r);~o?this.__entries__[o][1]=n:this.__entries__.push([r,n])},t.prototype.delete=function(r){var n=this.__entries__,o=e(n,r);~o&&n.splice(o,1)},t.prototype.has=function(r){return!!~e(this.__entries__,r)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(r,n){n===void 0&&(n=null);for(var o=0,i=this.__entries__;o0},e.prototype.connect_=function(){!Wr||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),va?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},e.prototype.disconnect_=function(){!Wr||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},e.prototype.onTransitionEnd_=function(t){var r=t.propertyName,n=r===void 0?"":r,o=ba.some(function(i){return!!~n.indexOf(i)});o&&this.refresh()},e.getInstance=function(){return this.instance_||(this.instance_=new e),this.instance_},e.instance_=null,e}(),Gn=function(e,t){for(var r=0,n=Object.keys(t);r0},e}(),Jn=typeof WeakMap!="undefined"?new WeakMap:new Yn,Xn=function(){function e(t){if(!(this instanceof e))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var r=ga.getInstance(),n=new La(t,r,this);Jn.set(this,n)}return e}();["observe","unobserve","disconnect"].forEach(function(e){Xn.prototype[e]=function(){var t;return(t=Jn.get(this))[e].apply(t,arguments)}});var Aa=function(){return typeof nr.ResizeObserver!="undefined"?nr.ResizeObserver:Xn}(),Zn=Aa;var eo=new x,Ca=$(()=>k(new Zn(e=>{for(let t of e)eo.next(t)}))).pipe(g(e=>L(ze,k(e)).pipe(R(()=>e.disconnect()))),X(1));function he(e){return{width:e.offsetWidth,height:e.offsetHeight}}function ye(e){return Ca.pipe(S(t=>t.observe(e)),g(t=>eo.pipe(A(({target:r})=>r===e),R(()=>t.unobserve(e)),l(()=>he(e)))),V(he(e)))}function bt(e){return{width:e.scrollWidth,height:e.scrollHeight}}function ar(e){let t=e.parentElement;for(;t&&(e.scrollWidth<=t.scrollWidth&&e.scrollHeight<=t.scrollHeight);)t=(e=t).parentElement;return t?e:void 0}var to=new x,Ra=$(()=>k(new IntersectionObserver(e=>{for(let t of e)to.next(t)},{threshold:0}))).pipe(g(e=>L(ze,k(e)).pipe(R(()=>e.disconnect()))),X(1));function sr(e){return Ra.pipe(S(t=>t.observe(e)),g(t=>to.pipe(A(({target:r})=>r===e),R(()=>t.unobserve(e)),l(({isIntersecting:r})=>r))))}function ro(e,t=16){return dt(e).pipe(l(({y:r})=>{let n=he(e),o=bt(e);return r>=o.height-n.height-t}),J())}var cr={drawer:z("[data-md-toggle=drawer]"),search:z("[data-md-toggle=search]")};function no(e){return cr[e].checked}function Ke(e,t){cr[e].checked!==t&&cr[e].click()}function Ue(e){let t=cr[e];return b(t,"change").pipe(l(()=>t.checked),V(t.checked))}function ka(e,t){switch(e.constructor){case HTMLInputElement:return e.type==="radio"?/^Arrow/.test(t):!0;case HTMLSelectElement:case HTMLTextAreaElement:return!0;default:return e.isContentEditable}}function Ha(){return L(b(window,"compositionstart").pipe(l(()=>!0)),b(window,"compositionend").pipe(l(()=>!1))).pipe(V(!1))}function oo(){let e=b(window,"keydown").pipe(A(t=>!(t.metaKey||t.ctrlKey)),l(t=>({mode:no("search")?"search":"global",type:t.key,claim(){t.preventDefault(),t.stopPropagation()}})),A(({mode:t,type:r})=>{if(t==="global"){let n=_e();if(typeof n!="undefined")return!ka(n,r)}return!0}),pe());return Ha().pipe(g(t=>t?M:e))}function le(){return new URL(location.href)}function ot(e){location.href=e.href}function io(){return new x}function ao(e,t){if(typeof t=="string"||typeof t=="number")e.innerHTML+=t.toString();else if(t instanceof Node)e.appendChild(t);else if(Array.isArray(t))for(let r of t)ao(e,r)}function _(e,t,...r){let n=document.createElement(e);if(t)for(let o of Object.keys(t))typeof t[o]!="undefined"&&(typeof t[o]!="boolean"?n.setAttribute(o,t[o]):n.setAttribute(o,""));for(let o of r)ao(n,o);return n}function fr(e){if(e>999){let t=+((e-950)%1e3>99);return`${((e+1e-6)/1e3).toFixed(t)}k`}else return e.toString()}function so(){return location.hash.substring(1)}function Dr(e){let t=_("a",{href:e});t.addEventListener("click",r=>r.stopPropagation()),t.click()}function Pa(e){return L(b(window,"hashchange"),e).pipe(l(so),V(so()),A(t=>t.length>0),X(1))}function co(e){return Pa(e).pipe(l(t=>ce(`[id="${t}"]`)),A(t=>typeof t!="undefined"))}function Vr(e){let t=matchMedia(e);return er(r=>t.addListener(()=>r(t.matches))).pipe(V(t.matches))}function fo(){let e=matchMedia("print");return L(b(window,"beforeprint").pipe(l(()=>!0)),b(window,"afterprint").pipe(l(()=>!1))).pipe(V(e.matches))}function zr(e,t){return e.pipe(g(r=>r?t():M))}function ur(e,t={credentials:"same-origin"}){return ue(fetch(`${e}`,t)).pipe(fe(()=>M),g(r=>r.status!==200?Ot(()=>new Error(r.statusText)):k(r)))}function We(e,t){return ur(e,t).pipe(g(r=>r.json()),X(1))}function uo(e,t){let r=new DOMParser;return ur(e,t).pipe(g(n=>n.text()),l(n=>r.parseFromString(n,"text/xml")),X(1))}function pr(e){let t=_("script",{src:e});return $(()=>(document.head.appendChild(t),L(b(t,"load"),b(t,"error").pipe(g(()=>Ot(()=>new ReferenceError(`Invalid script: ${e}`))))).pipe(l(()=>{}),R(()=>document.head.removeChild(t)),ge(1))))}function po(){return{x:Math.max(0,scrollX),y:Math.max(0,scrollY)}}function lo(){return L(b(window,"scroll",{passive:!0}),b(window,"resize",{passive:!0})).pipe(l(po),V(po()))}function mo(){return{width:innerWidth,height:innerHeight}}function ho(){return b(window,"resize",{passive:!0}).pipe(l(mo),V(mo()))}function bo(){return G([lo(),ho()]).pipe(l(([e,t])=>({offset:e,size:t})),X(1))}function lr(e,{viewport$:t,header$:r}){let n=t.pipe(ee("size")),o=G([n,r]).pipe(l(()=>Xe(e)));return G([r,t,o]).pipe(l(([{height:i},{offset:s,size:a},{x:f,y:c}])=>({offset:{x:s.x-f,y:s.y-c+i},size:a})))}(()=>{function e(n,o){parent.postMessage(n,o||"*")}function t(...n){return n.reduce((o,i)=>o.then(()=>new Promise(s=>{let a=document.createElement("script");a.src=i,a.onload=s,document.body.appendChild(a)})),Promise.resolve())}var r=class extends EventTarget{constructor(n){super(),this.url=n,this.m=i=>{i.source===this.w&&(this.dispatchEvent(new MessageEvent("message",{data:i.data})),this.onmessage&&this.onmessage(i))},this.e=(i,s,a,f,c)=>{if(s===`${this.url}`){let u=new ErrorEvent("error",{message:i,filename:s,lineno:a,colno:f,error:c});this.dispatchEvent(u),this.onerror&&this.onerror(u)}};let o=document.createElement("iframe");o.hidden=!0,document.body.appendChild(this.iframe=o),this.w.document.open(),this.w.document.write(`
\ No newline at end of file diff --git a/dev/blog/index.md b/dev/blog/index.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dev/blog/posts/bloqade-release/bloqade-release.md b/dev/blog/posts/bloqade-release/bloqade-release.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dev/blog/posts/bloqade-release/index.html b/dev/blog/posts/bloqade-release/index.html new file mode 100644 index 0000000000..03ea0b852f --- /dev/null +++ b/dev/blog/posts/bloqade-release/index.html @@ -0,0 +1 @@ + Bloqade release - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/contributing/creating-a-reproduction/creating-a-reproduction.md b/dev/contributing/creating-a-reproduction/creating-a-reproduction.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dev/contributing/creating-a-reproduction/index.html b/dev/contributing/creating-a-reproduction/index.html new file mode 100644 index 0000000000..ed99a93c22 --- /dev/null +++ b/dev/contributing/creating-a-reproduction/index.html @@ -0,0 +1 @@ + Creating a reproduction - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/contributing/index.html b/dev/contributing/index.html new file mode 100644 index 0000000000..9da1c633c2 --- /dev/null +++ b/dev/contributing/index.html @@ -0,0 +1 @@ + Contributing - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/contributing/index.md b/dev/contributing/index.md new file mode 100644 index 0000000000..0178eabb90 --- /dev/null +++ b/dev/contributing/index.md @@ -0,0 +1,11 @@ +# Contributing + +## How to contribute + +- [How to setup development](setup.md) +- [Git](git.md) +- [Code of Conduct](code_of_conduct.md) +- [Contributing to documentation](documentation.md) +- [Contributing to code](code.md) +- [Contributing to tutorials/examples](examples.md) +- [Contributing to tests](tests.md) diff --git a/dev/contributing/reporting-a-bug/index.html b/dev/contributing/reporting-a-bug/index.html new file mode 100644 index 0000000000..43b65b065e --- /dev/null +++ b/dev/contributing/reporting-a-bug/index.html @@ -0,0 +1 @@ + Reporting a bug - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/contributing/reporting-a-bug/reporting-a-bug.md b/dev/contributing/reporting-a-bug/reporting-a-bug.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dev/contributing/reporting-a-docs-issue/index.html b/dev/contributing/reporting-a-docs-issue/index.html new file mode 100644 index 0000000000..aed9d8c6b9 --- /dev/null +++ b/dev/contributing/reporting-a-docs-issue/index.html @@ -0,0 +1 @@ + Reporting a docs issue - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/contributing/reporting-a-docs-issue/reporting-a-docs-issue.md b/dev/contributing/reporting-a-docs-issue/reporting-a-docs-issue.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dev/contributing/requesting-a-change/index.html b/dev/contributing/requesting-a-change/index.html new file mode 100644 index 0000000000..9a8bee5a7a --- /dev/null +++ b/dev/contributing/requesting-a-change/index.html @@ -0,0 +1 @@ + Requesting a change - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/contributing/requesting-a-change/requesting-a-change.md b/dev/contributing/requesting-a-change/requesting-a-change.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dev/contributing/setup/index.html b/dev/contributing/setup/index.html new file mode 100644 index 0000000000..a7d472b036 --- /dev/null +++ b/dev/contributing/setup/index.html @@ -0,0 +1,12 @@ + Setting up development - The Neutral Atom SDK

Setting up Development

Our development environment contains a set of tools we use for development, testing, and documentation. This section describes how to set up the development environment. We primarily use pdm to manage python environments and dependencies.

Setup development environment

We use pdm to manage dependencies and virtual environment. After cloning the repository, run the following command to install dependencies:

pdm install
+

You can also install different dependency groups:

  • dev: dependencies for development
pdm install --dev
+# or
+pdm install -d
+
  • doc: dependencies for building documentation
pdm install -G doc
+

Useful PDM scripts

Tests

You can run tests via

pdm run test
+

Or run tests and generate coverage via

pdm run coverage
+

Documentation

You can build documentation via

pdm run doc_build
+

Or run a local server to preview documentation via

pdm run doc
+

Jupytext

You can sync jupyter notebooks and python scripts via

pdm run jupytext
+

this will help you development examples in jupyter notebook and python scripts simultaneously.

Lint

We primarily use ruff - an extremely fast linter for Python, and black as formatter. These has been configured into pre-commit hooks. You can install pre-commit hooks to git via

pre-commit install
+
\ No newline at end of file diff --git a/dev/contributing/setup/setup.md b/dev/contributing/setup/setup.md new file mode 100644 index 0000000000..0b7fd304fa --- /dev/null +++ b/dev/contributing/setup/setup.md @@ -0,0 +1,81 @@ +# Setting up Development + +Our development environment contains a set of tools we use +for development, testing, and documentation. This section +describes how to set up the development environment. We primarily +use [pdm](https://pdm.fming.dev/) to manage python environments +and dependencies. + +## Setup development environment + +We use [pdm](https://pdm.fming.dev/) to manage dependencies and virtual environment. +After cloning the repository, run the following command to install dependencies: + +```bash +pdm install +``` + +You can also install different dependency groups: + +- **dev**: dependencies for development + +```bash +pdm install --dev +# or +pdm install -d +``` + +- **doc**: dependencies for building documentation + +```bash +pdm install -G doc +``` + +## Useful PDM scripts + +### Tests + +You can run tests via + +```bash +pdm run test +``` + +Or run tests and generate coverage via + +```bash +pdm run coverage +``` + +### Documentation + +You can build documentation via + +```bash +pdm run doc_build +``` + +Or run a local server to preview documentation via + +```bash +pdm run doc +``` + +### Jupytext + +You can sync jupyter notebooks and python scripts via + +```bash +pdm run jupytext +``` + +this will help you development examples in jupyter notebook and python scripts simultaneously. + +## Lint + +We primarily use [ruff](https://github.com/charliermarsh/ruff) - an extremely fast linter for Python, and +[black](https://github.com/psf/black) as formatter. These has been configured into [pre-commit](https://pre-commit.com/) hooks. You can install pre-commit hooks to git via + +```bash +pre-commit install +``` diff --git a/dev/examples/rabi-job.json b/dev/examples/rabi-job.json new file mode 100644 index 0000000000..6fc663605e --- /dev/null +++ b/dev/examples/rabi-job.json @@ -0,0 +1 @@ +{"hardware_task_shot_results": {"14": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/b0ac8400-7db7-41a9-b4e0-b4baf06d384d", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 7.6e-07, 8.2e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 8.2e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 7.6e-07, 8.2e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0], "post_sequence": [1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 0]}]}}, "4": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/ee5f5777-9a8f-417e-aae4-7396a335a599", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 2.6e-07, 3.2e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 3.2e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 2.6e-07, 3.2e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0]}]}}, "15": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/e6032396-7334-4aa1-bce1-161f63b2f2ad", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 8.1e-07, 8.7e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 8.7e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 8.1e-07, 8.7e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}]}}, "10": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/e6f448d8-5b38-411c-bacf-51af3ef723e2", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 5.6e-07, 6.2e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 6.2e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 5.6e-07, 6.2e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0]}]}}, "3": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/19ce8b6e-ee2f-43fa-a53f-e8cc67bfd275", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 2.1e-07, 2.7e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 2.7e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 2.1e-07, 2.7e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0]}]}}, "2": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/cccaec84-1941-42bf-b0d4-60ef81f245e6", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 1.6e-07, 2.2e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 2.2e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 1.6e-07, 2.2e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0]}]}}, "20": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/a350314e-7532-4a61-bb1c-7d8e73d3384c", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 1.06e-06, 1.12e-06], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 1.12e-06], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 1.06e-06, 1.12e-06], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}]}}, "16": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/6b4637c9-0cdd-4579-ae6f-87e42b145411", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 8.6e-07, 9.2e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 9.2e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 8.6e-07, 9.2e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}]}}, "18": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/53fd99cd-7a0f-4187-b3ae-b04e1b45355c", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 9.6e-07, 1.02e-06], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 1.02e-06], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 9.6e-07, 1.02e-06], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0], "post_sequence": [0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1]}]}}, "17": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/3d0310b5-3170-404a-b589-f023b43253d4", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 9.1e-07, 9.7e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 9.7e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 9.1e-07, 9.7e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0], "post_sequence": [0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0], "post_sequence": [1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1]}]}}, "19": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/fdb81674-72c5-4eab-93b6-7f3835472392", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 1.01e-06, 1.07e-06], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 1.07e-06], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 1.01e-06, 1.07e-06], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1]}]}}, "0": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/84685377-658c-4981-8e0b-fec369d069a6", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 1.2e-07], "values": [0.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 1.2e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 1.2e-07], "values": [0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}]}}, "13": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/9e1e43a3-32ff-4f07-b3f5-3f035e1078ce", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 7.1e-07, 7.7e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 7.7e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 7.1e-07, 7.7e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1]}]}}, "7": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/6a98d23b-ea76-41f2-9cf2-ee861f2d1915", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 4.1e-07, 4.7e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 4.7e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 4.1e-07, 4.7e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}]}}, "9": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/f541b7f3-486b-4cf7-b938-3661eb3e34f9", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 5.1e-07, 5.7e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 5.7e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 5.1e-07, 5.7e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0]}]}}, "11": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/07c5dea1-3b80-405a-901b-b789fedd4200", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 6.1e-07, 6.7e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 6.7e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 6.1e-07, 6.7e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1]}]}}, "12": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/f1416f1a-c9a6-4986-9c69-c9c685ccbd76", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 6.6e-07, 7.2e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 7.2e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 6.6e-07, 7.2e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0]}]}}, "8": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/80d78c7c-693b-4f72-b87a-b07a13be23fa", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 4.6e-07, 5.2e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 5.2e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 4.6e-07, 5.2e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0], "post_sequence": [0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}]}}, "5": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/016f0447-7ffb-4e29-ac14-53aafe190eb7", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 3.1e-07, 3.7e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 3.7e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 3.1e-07, 3.7e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1]}]}}, "6": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/fdf0045d-2752-4f27-90ce-41fa4dd06f75", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 3.6e-07, 4.2e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 4.2e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 3.6e-07, 4.2e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1]}]}}, "1": {"task_id": "arn:aws:braket:us-east-1:716981252513:quantum-task/d446626b-5638-4471-8bb9-262e1a409ba9", "hardware_task": {"task_ir": {"nshots": 100, "lattice": {"sites": [[0.0, 0.0], [0.0, 2.4e-05], [0.0, 4.8e-05], [0.0, 7.2e-05], [2.4e-05, 7.2e-05], [4.8e-05, 7.2e-05], [4.8e-05, 4.8e-05], [4.8e-05, 2.4e-05], [4.8e-05, 0.0], [7.2e-05, 0.0], [7.2e-05, 2.4e-05], [7.2e-05, 4.8e-05], [7.2e-05, 7.2e-05], [2.4e-05, 4.8e-05], [2.4e-05, 2.4e-05], [2.4e-05, 0.0]], "filling": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, "effective_hamiltonian": {"rydberg": {"rabi_frequency_amplitude": {"global": {"times": [0.0, 6e-08, 1.1e-07, 1.7e-07], "values": [0.0, 15000000.0, 15000000.0, 0.0]}}, "rabi_frequency_phase": {"global": {"times": [0.0, 1.7e-07], "values": [0.0, 0.0]}}, "detuning": {"global": {"times": [0.0, 6e-08, 1.1e-07, 1.7e-07], "values": [0.0, 0.0, 0.0, 0.0]}}}}}, "parallel_decoder": {"mapping": [{"cluster_index": [0, 0], "global_location_index": 0, "cluster_location_index": 0}, {"cluster_index": [0, 1], "global_location_index": 1, "cluster_location_index": 0}, {"cluster_index": [0, 2], "global_location_index": 2, "cluster_location_index": 0}, {"cluster_index": [0, 3], "global_location_index": 3, "cluster_location_index": 0}, {"cluster_index": [1, 3], "global_location_index": 4, "cluster_location_index": 0}, {"cluster_index": [2, 3], "global_location_index": 5, "cluster_location_index": 0}, {"cluster_index": [2, 2], "global_location_index": 6, "cluster_location_index": 0}, {"cluster_index": [2, 1], "global_location_index": 7, "cluster_location_index": 0}, {"cluster_index": [2, 0], "global_location_index": 8, "cluster_location_index": 0}, {"cluster_index": [3, 0], "global_location_index": 9, "cluster_location_index": 0}, {"cluster_index": [3, 1], "global_location_index": 10, "cluster_location_index": 0}, {"cluster_index": [3, 2], "global_location_index": 11, "cluster_location_index": 0}, {"cluster_index": [3, 3], "global_location_index": 12, "cluster_location_index": 0}, {"cluster_index": [1, 2], "global_location_index": 13, "cluster_location_index": 0}, {"cluster_index": [1, 1], "global_location_index": 14, "cluster_location_index": 0}, {"cluster_index": [1, 0], "global_location_index": 15, "cluster_location_index": 0}], "locations_per_cluster": 16, "number_of_cluster": 16}, "braket_backend": {"device_arn": "arn:aws:braket:us-east-1::device/qpu/quera/Aquila"}}, "task_result_ir": {"task_status": "Completed", "shot_outputs": [{"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1], "post_sequence": [1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 0, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1], "post_sequence": [1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0]}, {"shot_status": "Completed", "pre_sequence": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], "post_sequence": [0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0]}]}}}} diff --git a/dev/examples/rabi/index.html b/dev/examples/rabi/index.html new file mode 100644 index 0000000000..c277fe0047 --- /dev/null +++ b/dev/examples/rabi/index.html @@ -0,0 +1,1425 @@ + Single Qubit Rabi Oscillations - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/examples/rabi/rabi.py b/dev/examples/rabi/rabi.py new file mode 100644 index 0000000000..8c0686df0c --- /dev/null +++ b/dev/examples/rabi/rabi.py @@ -0,0 +1,168 @@ +# --- +# jupyter: +# jupytext: +# formats: ipynb,py:percent +# hide_notebook_metadata: false +# text_representation: +# extension: .py +# format_name: percent +# format_version: '1.3' +# jupytext_version: 1.14.5 +# kernelspec: +# display_name: .venv +# language: python +# name: python3 +# --- + +# %% [markdown] +# # Single Qubit Rabi Oscillations +# ## Introduction +# In this example we show how to use Bloqade to emulate a +# Rabi oscillation as well as run it on hardware. + +# %% +from bloqade import start, cast +from bloqade.task import HardwareBatchResult + +import os +import numpy as np + +from bokeh.io import output_notebook +from bokeh.plotting import figure, show +from bokeh.models import HoverTool, ColumnDataSource, CrosshairTool + +output_notebook() + +# %% [markdown] + +# define program with one atom, with constant detuning but variable Rabi frequency, +# ramping up to "rabi_value" and then returning to 0.0. + +# %% +durations = cast(["ramp_time", "run_time", "ramp_time"]) + +rabi_oscillations_program = ( + start.add_position((0, 0)) + .rydberg.rabi.amplitude.uniform.piecewise_linear( + durations=durations, values=[0, "rabi_value", "rabi_value", 0] + ) + .detuning.uniform.constant(duration=sum(durations), value=0) +) + +# %% [markdown] +# Assign values to the variables in the program, +# allowing the `run_time` (time the Rabi amplitude stays at the value of +# "rabi_frequency" ) to sweep across a range of values. + +# %% +rabi_oscillation_job = rabi_oscillations_program.assign( + ramp_time=0.06, rabi_value=15, detuning_value=0.0 +).batch_assign(run_time=np.around(np.arange(0, 21, 1) * 0.05, 13)) + +# %% [markdown] +# Run the program in emulation, obtaining a report +# object. For each possible set of variable values +# to simulate (in this case, centered around the +# `run_time` variable), let the task have 10000 shots. + +# %% +emu_report = rabi_oscillation_job.braket_local_simulator(10000).submit().report() + +# %% [markdown] +# Submit the same program to hardware, +# this time using `.parallelize` to make a copy of the original geometry +# (a single atom) that fills the FOV (Field-of-View Space), with at least +# 24 micrometers of distance between each atom. +# +# Unlike the emulation above, we only let each task +# run with 100 shots. A collection of tasks is known as a +# "Job" in Bloqade and jobs can be saved in JSON format +# so you can reload them later (a necessity considering +# how long it may take for the machine to handle tasks in the queue) + +# %% +""" +( + rabi_oscillation_job.parallelize(24) + .braket(100) + .submit() + .save_json("rabi-job.json") +) +""" + +# %% [markdown] +# Load JSON and pull results from Braket + +# %% +hw_future = HardwareBatchResult.load_json( + os.getcwd() + "/docs/docs/examples/" + "rabi-job.json" +) +hw_rydberg_densities = hw_future.report().rydberg_densities() + +# %% [markdown] +# We can now plot the results from the hardware and emulation together. + +# %% +data = { + "times": np.around(np.arange(0, 21, 1) * 0.05, 13), + "emu_densities": emu_report.rydberg_densities()[0].to_list(), + "hw_densities": hw_rydberg_densities[0].to_list(), +} +source = ColumnDataSource(data=data) + +p = figure( + x_axis_label="Time (μs)", + y_axis_label="Rydberg Density", + toolbar_location="right", + tools=["pan,wheel_zoom,box_zoom,reset,save"], +) + +p.axis.axis_label_text_font_size = "15pt" +p.axis.major_label_text_font_size = "10pt" + +emu_line = p.line( + x="times", + y="emu_densities", + source=source, + legend_label="Emulator", + color="grey", + line_width=2, +) +p.circle(x="times", y="emu_densities", source=source, color="grey", size=8) +# hardware densities +hw_line = p.line( + x="times", + y="hw_densities", + source=source, + legend_label="Hardware", + color="purple", + line_width=2, +) +p.circle(x="times", y="hw_densities", source=source, color="purple", size=8) + +hw_hover_tool = HoverTool( + renderers=[hw_line], + tooltips=[ + ("Backend", "Hardware"), + ("Density", "@hw_densities"), + ("Time", "@times μs"), + ], + mode="vline", + attachment="right", +) +p.add_tools(hw_hover_tool) +emu_hover_tool = HoverTool( + renderers=[emu_line], + tooltips=[ + ("Backend", "Emulator"), + ("Density", "@emu_densities"), + ("Time", "@times μs"), + ], + mode="vline", + attachment="left", +) +p.add_tools(emu_hover_tool) +cross_hair_tool = CrosshairTool(dimensions="height") +p.add_tools(cross_hair_tool) + +show(p) diff --git a/dev/getting-started/getting-started.md b/dev/getting-started/getting-started.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dev/getting-started/index.html b/dev/getting-started/index.html new file mode 100644 index 0000000000..2159d4c003 --- /dev/null +++ b/dev/getting-started/index.html @@ -0,0 +1 @@ + Installation - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/index.html b/dev/index.html new file mode 100644 index 0000000000..9d03c1d438 --- /dev/null +++ b/dev/index.html @@ -0,0 +1,5 @@ + The Neutral Atom SDK

Welcome to Bloqade -- QuEra's Neutral Atom SDK

For full documentation visit mkdocs.org.

Commands

  • mkdocs new [dir-name] - Create a new project.
  • mkdocs serve - Start the live-reloading docs server.
  • mkdocs build - Build the documentation site.
  • mkdocs -h - Print help message and exit.

Project layout

mkdocs.yml    # The configuration file.
+docs/
+    index.md  # The documentation homepage.
+    ...       # Other markdown pages, images and other files.
+
\ No newline at end of file diff --git a/dev/index.md b/dev/index.md new file mode 100644 index 0000000000..d3b50b625a --- /dev/null +++ b/dev/index.md @@ -0,0 +1,17 @@ +# Welcome to Bloqade -- QuEra's Neutral Atom SDK + +For full documentation visit [mkdocs.org](https://www.mkdocs.org). + +## Commands + +* `mkdocs new [dir-name]` - Create a new project. +* `mkdocs serve` - Start the live-reloading docs server. +* `mkdocs build` - Build the documentation site. +* `mkdocs -h` - Print help message and exit. + +## Project layout + + mkdocs.yml # The configuration file. + docs/ + index.md # The documentation homepage. + ... # Other markdown pages, images and other files. diff --git a/dev/license/index.html b/dev/license/index.html new file mode 100644 index 0000000000..443648ab7f --- /dev/null +++ b/dev/license/index.html @@ -0,0 +1 @@ + License - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/license/license.md b/dev/license/license.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dev/objects.inv b/dev/objects.inv new file mode 100644 index 0000000000..4648074612 Binary files /dev/null and b/dev/objects.inv differ diff --git a/dev/philosophy/index.html b/dev/philosophy/index.html new file mode 100644 index 0000000000..ceeaffcbeb --- /dev/null +++ b/dev/philosophy/index.html @@ -0,0 +1 @@ + Philosophy - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/philosophy/philosophy.md b/dev/philosophy/philosophy.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/dev/reference/SUMMARY.txt b/dev/reference/SUMMARY.txt new file mode 100644 index 0000000000..3c101cf64f --- /dev/null +++ b/dev/reference/SUMMARY.txt @@ -0,0 +1,44 @@ +* [bloqade](bloqade/index.md) + * [builder](bloqade/builder/index.md) + * [coupling](bloqade/builder/coupling.md) + * [emit](bloqade/builder/emit.md) + * [field](bloqade/builder/field.md) + * [location](bloqade/builder/location.md) + * [spatial](bloqade/builder/spatial.md) + * [start](bloqade/builder/start.md) + * [waveform](bloqade/builder/waveform.md) + * [ir](bloqade/ir/index.md) + * [control](bloqade/ir/control/index.md) + * [field](bloqade/ir/control/field.md) + * [pulse](bloqade/ir/control/pulse.md) + * [sequence](bloqade/ir/control/sequence.md) + * [waveform](bloqade/ir/control/waveform.md) + * [location](bloqade/ir/location/index.md) + * [base](bloqade/ir/location/base.md) + * [bravais](bloqade/ir/location/bravais.md) + * [list](bloqade/ir/location/list.md) + * [quera_task_result](bloqade/ir/location/quera_task_result.md) + * [program](bloqade/ir/program.md) + * [scalar](bloqade/ir/scalar.md) + * [submission](bloqade/submission/index.md) + * [base](bloqade/submission/base.md) + * [braket](bloqade/submission/braket.md) + * [capabilities](bloqade/submission/capabilities.md) + * [ir](bloqade/submission/ir/index.md) + * [braket](bloqade/submission/ir/braket.md) + * [capabilities](bloqade/submission/ir/capabilities.md) + * [parallel](bloqade/submission/ir/parallel.md) + * [task_results](bloqade/submission/ir/task_results.md) + * [task_specification](bloqade/submission/ir/task_specification.md) + * [mock](bloqade/submission/mock.md) + * [quera](bloqade/submission/quera.md) + * [quera_api_client](bloqade/submission/quera_api_client/index.md) + * [api](bloqade/submission/quera_api_client/api.md) + * [aws_login](bloqade/submission/quera_api_client/aws_login.md) + * [task](bloqade/task/index.md) + * [base](bloqade/task/base.md) + * [braket_simulator](bloqade/task/braket_simulator.md) + * [cloud_base](bloqade/task/cloud_base.md) + * [hardware](bloqade/task/hardware.md) + * [report](bloqade/task/report.md) + * [visualization](bloqade/visualization/index.md) diff --git a/dev/reference/bloqade/builder/coupling/coupling.md b/dev/reference/bloqade/builder/coupling/coupling.md new file mode 100644 index 0000000000..e8dfcd56ae --- /dev/null +++ b/dev/reference/bloqade/builder/coupling/coupling.md @@ -0,0 +1 @@ +::: bloqade.builder.coupling \ No newline at end of file diff --git a/dev/reference/bloqade/builder/coupling/index.html b/dev/reference/bloqade/builder/coupling/index.html new file mode 100644 index 0000000000..2f75ad1bcb --- /dev/null +++ b/dev/reference/bloqade/builder/coupling/index.html @@ -0,0 +1,13 @@ + Coupling - The Neutral Atom SDK

Coupling

Hyperfine

Bases: LevelCoupling

This node represent level coupling between hyperfine state.

Examples:

  • To reach the node from the start node:
>>> node = bloqade.start.hyperfine
+>>> type(node)
+<class 'bloqade.builder.coupling.Hyperfine'>
+
  • Hyperfine level coupling have two reachable field nodes:

    • detuning term (See also Detuning)
    • rabi term (See also Rabi)
>>> hyp_detune = bloqade.start.hyperfine.detuning
+>>> hyp_rabi = bloqade.start.hyperfine.rabi
+

LevelCoupling

Bases: Builder

detuning property

detuning
+
  • Specify the Detuning field
  • Next-step:
  • Possible Next:

    -> ...detuning.location(int) :: Address atom at specific location

    -> ...detuning.uniform :: Address all atoms in register

    -> ...detuning.var(str) :: Address atom at location labeled by variable

rabi property

rabi
+
  • Specify the Rabi term/field.
  • Possible Next:

    -> ...rabi.amplitude :: address rabi amplitude

    -> ...rabi.phase :: address rabi phase

Rydberg

Bases: LevelCoupling

This node represent level coupling of rydberg state.

Examples:

  • To reach the node from the start node:
>>> node = bloqade.start.rydberg
+>>> type(node)
+<class 'bloqade.builder.coupling.Rydberg'>
+
  • Rydberg level coupling have two reachable field nodes:

    • detuning term (See also Detuning)
    • rabi term (See also Rabi)
>>> ryd_detune = bloqade.start.rydberg.detuning
+>>> ryd_rabi = bloqade.start.rydberg.rabi
+
\ No newline at end of file diff --git a/dev/reference/bloqade/builder/emit/emit.md b/dev/reference/bloqade/builder/emit/emit.md new file mode 100644 index 0000000000..6a41b8085b --- /dev/null +++ b/dev/reference/bloqade/builder/emit/emit.md @@ -0,0 +1 @@ +::: bloqade.builder.emit \ No newline at end of file diff --git a/dev/reference/bloqade/builder/emit/index.html b/dev/reference/bloqade/builder/emit/index.html new file mode 100644 index 0000000000..7d80ba3168 --- /dev/null +++ b/dev/reference/bloqade/builder/emit/index.html @@ -0,0 +1,485 @@ + Emit - The Neutral Atom SDK

Emit

Emit

Emit(
+    builder,
+    assignments={},
+    batch={},
+    register=None,
+    sequence=None,
+)
+

Bases: Builder

Source code in src/bloqade/builder/emit.py
51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
def __init__(
+    self,
+    builder: Builder,
+    assignments: Dict[str, Union[numbers.Real, List[numbers.Real]]] = {},
+    batch: Dict[str, Union[List[numbers.Real], List[List[numbers.Real]]]] = {},
+    register: Optional[Union["AtomArrangement", "ParallelRegister"]] = None,
+    sequence: Optional[ir.Sequence] = None,
+) -> None:
+    super().__init__(builder)
+    self.__batch__ = {}
+    if batch:
+        first_key, *other_keys = batch.keys()
+        first_value = batch[first_key]
+
+        batch_size = len(first_value)
+        self.__batch__[first_key] = first_value
+
+        for key in other_keys:
+            value = batch[key]
+            other_batch_size = len(value)
+            if other_batch_size != batch_size:
+                raise ValueError(
+                    "mismatch in size of batches, found batch size "
+                    f"{batch_size} for {first_key} and a batch size of "
+                    f"{other_batch_size} for {key}"
+                )
+
+            self.__batch__[key] = value
+
+    self.__assignments__ = assignments
+    self.__sequence__ = sequence
+    self.__register__ = register
+

program property

program: Program
+

Get the Program from the current builder. See also Program

Returns:

Type Description
Program

prog (Program)

register property

register: Union[AtomArrangement, ParallelRegister]
+

Get the register from the current builder.

Returns:

Type Description
Union[AtomArrangement, ParallelRegister]

register (Union["AtomArrangement", "ParallelRegister"])

Note

If the program is built with parallelize(), The the register will be a ParallelRegister. Otherwise it will be a AtomArrangement.

sequence property

sequence
+

Get the sequence from the current builder.

Returns:

Type Description

sequence (Sequence)

assign

assign(**assignments)
+

Assign values to variables declared previously in the program.

Parameters:

Name Type Description Default
assignments Dict[str, Union[Number]] {}

Examples:

  • Assign the value 0.0 to the variable "ival" and 0.5 to the variable "span_time".
>>> reg = bloqade.start
+...       .add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> seq = reg.rydberg.detuning.uniform
+...       .linear(start="ival",stop=1,duration="span_time")
+>>> seq = seq.assign(span_time = 0.5, ival = 0.0)
+
Source code in src/bloqade/builder/emit.py
def assign(self, **assignments):
+    """
+    Assign values to variables declared previously in the program.
+
+    Args:
+        assignments (Dict[str, Union[Number]]):
+        The assignments, which should be a kwargs
+        where the key is the variable name and the
+        value is the value to assign to the variable.
+
+    Examples:
+        - Assign the value 0.0 to the variable "ival"
+        and 0.5 to the variable "span_time".
+
+        >>> reg = bloqade.start
+        ...       .add_positions([(0,0),(1,1),(2,2),(3,3)])
+        >>> seq = reg.rydberg.detuning.uniform
+        ...       .linear(start="ival",stop=1,duration="span_time")
+        >>> seq = seq.assign(span_time = 0.5, ival = 0.0)
+
+    """
+
+    # these methods terminate no build steps can
+    # happens after this other than updating parameters
+    new_assignments = dict(self.__assignments__)
+    new_assignments.update(**assignments)
+    return Emit(
+        self,
+        assignments=new_assignments,
+        batch=self.__batch__,
+        register=self.__register__,
+        sequence=self.__sequence__,
+    )
+

batch_assign

batch_assign(**batch)
+

Assign values to variables declared previously in the program for launching batch jobs.

Parameters:

Name Type Description Default
batch Dict[str, Union[Number]]

The batch assignments of variables,

{}

Examples:

  • Assign the value [0.0,0.5] to the variable "ival" and [0.6,0.8] to the variable "span_time". This will create a job with two tasks of (value,ival) = (0.0,0.6) and (0.5,0.8) with each has 10 shots.
>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> seq = reg.rydberg.detuning.uniform
+...       .linear(start="ival",stop=1,duration="span_time")
+>>> job = seq.batch_assign(span_time = [0.6,0.8], ival = [0.0,0.5]).mock(10)
+
Note

the length of the lists of values should be the same for each variable.

Source code in src/bloqade/builder/emit.py
def batch_assign(self, **batch):
+    """
+    Assign values to variables declared previously in the program
+    for launching batch jobs.
+
+
+    Args:
+        batch (Dict[str, Union[Number]]): The batch assignments of variables,
+        which should be a kwargs where the key is the variable name
+        and the value is the list of value assign to the variable.
+
+    Examples:
+        - Assign the value [0.0,0.5] to the variable "ival" and [0.6,0.8]
+        to the variable "span_time".
+        This will create a job with two tasks
+        of (value,ival) = (0.0,0.6) and (0.5,0.8) with each has 10 shots.
+
+        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+        >>> seq = reg.rydberg.detuning.uniform
+        ...       .linear(start="ival",stop=1,duration="span_time")
+        >>> job = seq.batch_assign(span_time = [0.6,0.8], ival = [0.0,0.5]).mock(10)
+
+    Note:
+        the length of the lists of values should be the same for each variable.
+
+    """
+
+    new_batch = dict(self.__batch__)
+    new_batch.update(**batch)
+    return Emit(
+        self,
+        assignments=self.__assignments__,
+        batch=new_batch,
+        register=self.__register__,
+        sequence=self.__sequence__,
+    )
+

braket

braket(nshots)
+

Compile the current builder to a Amazon braket HardwareBatchTask , which can be submit to run on QPU through braket service.

Parameters:

Name Type Description Default
nshots int

The number of shots to run.

required

Returns:

Type Description
HardwareBatchTask

HardwareBatchTask

Source code in src/bloqade/builder/emit.py
def braket(self, nshots: int) -> "HardwareBatchTask":
+    """
+    Compile the current builder to a Amazon braket
+    [`HardwareBatchTask`][bloqade.task.hardware.HardwareBatchTask]
+    , which can be submit to run on QPU through braket service.
+
+    Args:
+        nshots (int): The number of shots to run.
+
+    Returns:
+        HardwareBatchTask
+
+    """
+    backend = BraketBackend()
+    return self.__compile_hardware(nshots, backend)
+

braket_local_simulator

braket_local_simulator(nshots)
+

Compile the current builder to a BraketEmulatorBatchTask , which can be submit to run on braket local simulator.

Parameters:

Name Type Description Default
nshots int

The number of shots to run.

required

Returns:

Type Description

BraketEmulatorJob

Source code in src/bloqade/builder/emit.py
def braket_local_simulator(self, nshots: int):
+    """
+    Compile the current builder to a
+    [`BraketEmulatorBatchTask`][bloqade.task.braket_simulator.BraketEmulatorBatchTask]
+    , which can be submit to run on braket local simulator.
+
+    Args:
+        nshots (int): The number of shots to run.
+
+    Returns:
+        BraketEmulatorJob
+
+    """
+    from bloqade.codegen.hardware.quera import SchemaCodeGen
+
+    if isinstance(self.register, ParallelRegister):
+        raise TypeError("Braket emulator doesn't support parallel registers.")
+
+    tasks = OrderedDict()
+
+    for task_number, assignments in enumerate(self.__assignments_iterator()):
+        schema_compiler = SchemaCodeGen(assignments)
+        task_ir = schema_compiler.emit(nshots, self.program)
+        task = BraketEmulatorTask(task_ir=to_braket_task_ir(task_ir))
+        tasks[task_number] = task
+
+    return BraketEmulatorBatchTask(braket_emulator_tasks=tasks)
+

mock

mock(nshots, state_file='.mock_state.txt')
+

Compile the current builder to a Dummy mock HardwareBatchTask , which can be used for testing.

Parameters:

Name Type Description Default
nshots int

The number of shots to run.

required
state_file str

The file to store the state of the mock backend.

'.mock_state.txt'

Returns:

Type Description
HardwareBatchTask

HardwareBatchTask

Source code in src/bloqade/builder/emit.py
def mock(
+    self, nshots: int, state_file: str = ".mock_state.txt"
+) -> "HardwareBatchTask":
+    """
+    Compile the current builder to a Dummy mock
+    [`HardwareBatchTask`][bloqade.task.hardware.HardwareBatchTask]
+    , which can be used for testing.
+
+    Args:
+        nshots (int): The number of shots to run.
+        state_file (str): The file to store the state of the mock backend.
+
+    Returns:
+        HardwareBatchTask
+
+    """
+    backend = DumbMockBackend(state_file=state_file)
+
+    return self.__compile_hardware(nshots, backend)
+

parallelize

parallelize(cluster_spacing)
+

Parallelize the current problem (register & sequnece) to fill entire FOV with the given cluster spacing.

Parameters:

Name Type Description Default
cluster_spacing Any, should be Real required

Examples:

  • Parallelize the current problem with cluster spacing 7.2 um.
>>> prob = (
+        bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+        .rydberg.detuning.uniform
+        .linear(start=0,stop=1,duration=1)
+        )
+>>> prob = prob.parallelize(7.2)
+
Source code in src/bloqade/builder/emit.py
def parallelize(self, cluster_spacing: Any) -> "Emit":
+    """
+    Parallelize the current problem (register & sequnece) to fill entire FOV
+    with the given cluster spacing.
+
+    Args:
+        cluster_spacing (Any, should be Real):
+        the spacing between parallel clusters.
+
+    Examples:
+        - Parallelize the current problem with cluster spacing 7.2 um.
+
+        >>> prob = (
+                bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+                .rydberg.detuning.uniform
+                .linear(start=0,stop=1,duration=1)
+                )
+        >>> prob = prob.parallelize(7.2)
+
+    """
+
+    if isinstance(self.register, ParallelRegister):
+        raise TypeError("cannot parallelize a parallel register.")
+
+    parallel_register = ParallelRegister(self.register, cluster_spacing)
+    return Emit(
+        self,
+        assignments=self.__assignments__,
+        batch=self.__batch__,
+        register=parallel_register,
+        sequence=self.__sequence__,
+    )
+

quera

quera(nshots, config_file=None, **api_config)
+

Compile the current builder to a QuEra HardwareBatchTask , which can be submit to run on QPU through QuEra service.

Parameters:

Name Type Description Default
nshots int

The number of shots to run.

required
config_file Optional[str]

The path to the config file.

None
api_config Dict[str, Any]

The api config.

{}

Returns:

Type Description
HardwareBatchTask

HardwareBatchTask

Source code in src/bloqade/builder/emit.py
def quera(
+    self, nshots: int, config_file: Optional[str] = None, **api_config
+) -> "HardwareBatchTask":
+    """
+    Compile the current builder to a QuEra
+    [`HardwareBatchTask`][bloqade.task.hardware.HardwareBatchTask]
+    , which can be submit to run on QPU through QuEra service.
+
+    Args:
+        nshots (int): The number of shots to run.
+        config_file (Optional[str]): The path to the config file.
+        api_config (Dict[str, Any]): The api config.
+
+    Returns:
+        HardwareBatchTask
+
+    """
+    if config_file is None:
+        path = os.path.dirname(__file__)
+
+        config_file = os.path.join(
+            path,
+            "..",
+            "submission",
+            "quera_api_client",
+            "config",
+            "integ_quera_api.json",
+        )
+
+    if len(api_config) == 0:
+        with open(config_file, "r") as io:
+            api_config.update(**json.load(io))
+
+    backend = QuEraBackend(**api_config)
+
+    return self.__compile_hardware(nshots, backend)
+
\ No newline at end of file diff --git a/dev/reference/bloqade/builder/field/field.md b/dev/reference/bloqade/builder/field/field.md new file mode 100644 index 0000000000..51c15184f6 --- /dev/null +++ b/dev/reference/bloqade/builder/field/field.md @@ -0,0 +1 @@ +::: bloqade.builder.field \ No newline at end of file diff --git a/dev/reference/bloqade/builder/field/index.html b/dev/reference/bloqade/builder/field/index.html new file mode 100644 index 0000000000..5be28654f9 --- /dev/null +++ b/dev/reference/bloqade/builder/field/index.html @@ -0,0 +1,34 @@ + Field - The Neutral Atom SDK

Field

Amplitude

Bases: SpatialModulation

This node represent amplitude of a rabi field.

Examples:

  • To specify rabi amplitude of rydberg coupling:
>>> node = bloqade.start.rydberg.rabi.amplitude
+>>> type(node)
+<class 'bloqade.builder.field.Amplitude'>
+
  • To specify rabi amplitude of hyperfine coupling:
>>> node = bloqade.start.hyperfine.rabi.amplitude
+>>> type(node)
+<class 'bloqade.builder.field.Amplitude'>
+
Note

This node is a SpatialModulation node. See SpatialModulation for additional options.

Detuning

Bases: SpatialModulation

This node represent detuning field of a specified level coupling (rydberg or hyperfine) type.

Examples:

  • To specify detuning of rydberg coupling:
>>> node = bloqade.start.rydberg.detuning
+>>> type(node)
+<class 'bloqade.builder.field.Detuning'>
+
  • To specify detuning of hyperfine coupling:
>>> node = bloqade.start.hyperfine.detuning
+>>> type(node)
+<class 'bloqade.builder.field.Detuning'>
+
Note

This node is a SpatialModulation node. See SpatialModulation for additional options.

Phase

Bases: SpatialModulation

This node represent phase of a rabi field.

Examples:

  • To specify rabi phase of rydberg coupling:
>>> node = bloqade.start.rydberg.rabi.phase
+>>> type(node)
+<class 'bloqade.builder.field.Phase'>
+
  • To specify rabi phase of hyperfine coupling:
>>> node = bloqade.start.hyperfine.rabi.phase
+>>> type(node)
+<class 'bloqade.builder.field.Phase'>
+
Note

This node is a SpatialModulation node. See SpatialModulation for additional options.

Rabi

Bases: Builder

This node represent rabi field of a specified level coupling (rydberg or hyperfine) type.

Examples:

  • To specify rabi of rydberg coupling:
>>> node = bloqade.start.rydberg.rabi
+<class 'bloqade.builder.field.Rabi'>
+
  • To specify rabi of hyperfine coupling:
>>> node = bloqade.start.hyperfine.rabi
+>>> type(node)
+<class 'bloqade.builder.field.Rabi'>
+

amplitude property

amplitude
+
  • Specify the amplitude of the rabi field.
  • Next-step:
  • Possible Next:

    -> ...amplitude.location(int) :: Address atom at specific location

    -> ...amplitude.uniform :: Address all atoms in register

    -> ...amplitude.var(str) :: Address atom at location labeled by variable

Examples:

  • rydberg coupling rabi amplitude (See also Amplitude)
>>> ryd_rabi = bloqade.start.rydberg.rabi
+>>> ryd_rabi_amp = ryd_rabi.amplitude
+
  • hyperfine coupling rabi amplitude (See also Amplitude)
>>> hyp_rabi = bloqade.start.hyperfine.rabi
+>>> hyp_rabi_amp = hyp_rabi.amplitude
+

phase property

phase
+
  • Specify the phase of the rabi field.
  • Next-step:
  • Possible Next:

    -> ...phase.location(int) :: Address atom at specific location

    -> ...phase.uniform :: Address all atoms in register

    -> ...phase.var(str) :: Address atom at location labeled by variable

Examples:

  • rydberg coupling rabi phase (See also Phase)
>>> ryd_rabi = bloqade.start.rydberg.rabi
+>>> ryd_rabi_ph = ryd_rabi.phase
+
  • hyperfine coupling rabi phase (See also Phase)
>>> hyp_rabi = bloqade.start.hyperfine.rabi
+>>> hyp_rabi_ph = hyp_rabi.phase
+
\ No newline at end of file diff --git a/dev/reference/bloqade/builder/index.html b/dev/reference/bloqade/builder/index.html new file mode 100644 index 0000000000..704e2439b4 --- /dev/null +++ b/dev/reference/bloqade/builder/index.html @@ -0,0 +1 @@ + Index - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/builder/index.md b/dev/reference/bloqade/builder/index.md new file mode 100644 index 0000000000..f793b8fcbf --- /dev/null +++ b/dev/reference/bloqade/builder/index.md @@ -0,0 +1 @@ +::: bloqade.builder \ No newline at end of file diff --git a/dev/reference/bloqade/builder/location/index.html b/dev/reference/bloqade/builder/location/index.html new file mode 100644 index 0000000000..e02e164548 --- /dev/null +++ b/dev/reference/bloqade/builder/location/index.html @@ -0,0 +1,368 @@ + Location - The Neutral Atom SDK

Location

Location

Location(parent, label)
+

Bases: Waveform

Source code in src/bloqade/builder/location.py
12
+13
+14
def __init__(self, parent: Builder, label: int) -> None:
+    super().__init__(parent)
+    self._label = label
+

location

location(label)
+

Append another location to the current location(s)

Parameters:

Name Type Description Default
label int

The label of the location

required

Examples:

  • Append location 1 to the current location 0.
>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> loc = reg.rydberg.detuning.location(0)
+>>> loc = loc.location(1)
+
  • One can keep appending by concatenating location()
>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> loc = reg.rydberg.detuning.location(0)
+>>> loc = loc.location(1).location(2)
+
  • Possible Next :

    -> ...location(int).location(int) :: keep adding location into current list

    -> ...location(int).scale(float) :: specify scaling factor to current location for the preceeding waveform

  • Possible Next :

    -> ...location(int).linear() :: apply linear waveform

    -> ...location(int).constant() :: apply constant waveform

    -> ...location(int).ploy() :: apply polynomial waveform

    -> ...location(int).apply() :: apply pre-constructed waveform

    -> ...location(int).piecewise_linear() :: apply piecewise linear waveform

    -> ...location(int).piecewise_constant() :: apply piecewise constant waveform

    -> ...location(int).fn() :: apply callable as waveform.

Source code in src/bloqade/builder/location.py
def location(self, label: int):
+    """
+    Append another location to the current location(s)
+
+    Args:
+        label (int): The label of the location
+
+    Examples:
+
+        - Append location 1 to the current location 0.
+
+        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+        >>> loc = reg.rydberg.detuning.location(0)
+        >>> loc = loc.location(1)
+
+        - One can keep appending by concatenating location()
+
+        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+        >>> loc = reg.rydberg.detuning.location(0)
+        >>> loc = loc.location(1).location(2)
+
+    - Possible Next <Location>:
+
+        -> `...location(int).location(int)`
+            :: keep adding location into current list
+
+        -> `...location(int).scale(float)`
+            :: specify scaling factor to current location
+            for the preceeding waveform
+
+    - Possible Next <WaveForm>:
+
+        -> `...location(int).linear()`
+            :: apply linear waveform
+
+        -> `...location(int).constant()`
+            :: apply constant waveform
+
+        -> `...location(int).ploy()`
+            :: apply polynomial waveform
+
+        -> `...location(int).apply()`
+            :: apply pre-constructed waveform
+
+        -> `...location(int).piecewise_linear()`
+            :: apply piecewise linear waveform
+
+        -> `...location(int).piecewise_constant()`
+            :: apply piecewise constant waveform
+
+        -> `...location(int).fn()`
+            :: apply callable as waveform.
+
+
+    """
+    return Location(self, label)
+

scale

scale(scale)
+

Scale the preceeding waveform by the specified factor.

Parameters:

Name Type Description Default
scale float

The factor to scale (amplitude of)

required

Examples:

  • Scale the preceeding waveform that addressing location(0) by 1.2.
>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> scaled = reg.rydberg.detuning.location(0).scale(1.2)
+
  • Scale multiple locations with different factors. (ex. loc 0 by 1.2, loc 1 by 0.5)
>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> loc = reg.rydberg.detuning.location(0)
+>>> loc = loc.scale(1.2).location(1).scale(0.5)
+
  • Scale multiple locations with the same factor. (ex. loc 0 and 1 by 1.2)
>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> scaled = reg.rydberg.detuning.location(0).location(1).scale(1.2)
+
  • Possible Next :

    -> ...scale(float).location(int) :: keep adding location into current list

  • Possible Next :

    -> ...scale(float).linear() :: apply linear waveform

    -> ...scale(float).constant() :: apply constant waveform

    -> ...scale(float).ploy() :: apply polynomial waveform

    -> ...scale(float).apply() :: apply pre-constructed waveform(s)

    -> ...scale(float).piecewise_linear() :: apply piecewise linear waveform

    -> ...scale(float).piecewise_constant() :: apply piecewise constant waveform

    -> ...scale(float).fn() :: apply callable as waveform.

Source code in src/bloqade/builder/location.py
16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
def scale(self, scale: float):
+    """
+    Scale the preceeding waveform by the specified factor.
+
+    Args:
+        scale (float): The factor to scale (amplitude of)
+        the preceeding waveform.
+
+    Examples:
+
+        - Scale the preceeding waveform that addressing location(0) by 1.2.
+
+        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+        >>> scaled = reg.rydberg.detuning.location(0).scale(1.2)
+
+        - Scale multiple locations with different factors.
+        (ex. loc 0 by 1.2, loc 1 by 0.5)
+
+        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+        >>> loc = reg.rydberg.detuning.location(0)
+        >>> loc = loc.scale(1.2).location(1).scale(0.5)
+
+        - Scale multiple locations with the same factor. (ex. loc 0 and 1 by 1.2)
+
+        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+        >>> scaled = reg.rydberg.detuning.location(0).location(1).scale(1.2)
+
+
+    - Possible Next <Location>:
+
+        -> `...scale(float).location(int)`
+            :: keep adding location into current list
+
+    - Possible Next <WaveForm>:
+
+        -> `...scale(float).linear()`
+            :: apply linear waveform
+
+        -> `...scale(float).constant()`
+            :: apply constant waveform
+
+        -> `...scale(float).ploy()`
+            :: apply polynomial waveform
+
+        -> `...scale(float).apply()`
+            :: apply pre-constructed waveform(s)
+
+        -> `...scale(float).piecewise_linear()`
+            :: apply piecewise linear waveform
+
+        -> `...scale(float).piecewise_constant()`
+            :: apply piecewise constant waveform
+
+        -> `...scale(float).fn()`
+            :: apply callable as waveform.
+
+
+
+    """
+    return Scale(self, scale)
+

Scale

Scale(parent, scale)
+

Bases: Waveform

Source code in src/bloqade/builder/location.py
def __init__(self, parent: Builder, scale) -> None:
+    super().__init__(parent)
+    self._scale = cast(scale)
+

location

location(label)
+
  • Append another location to the current location after scale the previous one

Parameters:

Name Type Description Default
label int

The label of the location

required

Examples:

  • Append location 1 after scale location 0 by 1.2.
>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> loc = reg.rydberg.detuning.location(0).scale(1.2)
+>>> loc = loc.location(1)
+
  • Possible Next :

    -> ...location(int).location(int) :: keep adding location into current list

    -> ...location(int).scale(float) :: specify scaling factor to current location for the preceeding waveform

  • Possible Next :

    -> ...location(int).linear() :: apply linear waveform

    -> ...location(int).constant() :: apply constant waveform

    -> ...location(int).ploy() :: apply polynomial waveform

    -> ...location(int).apply() :: apply pre-constructed waveform

    -> ...location(int).piecewise_linear() :: apply piecewise linear waveform

    -> ...location(int).piecewise_constant() :: apply piecewise constant waveform

    -> ...location(int).fn() :: apply callable as waveform.

Source code in src/bloqade/builder/location.py
def location(self, label: int):
+    """
+    - Append another location to the current location after scale the previous one
+
+    Args:
+        label (int): The label of the location
+
+    Examples:
+
+        - Append location 1 after scale location 0 by 1.2.
+
+        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+        >>> loc = reg.rydberg.detuning.location(0).scale(1.2)
+        >>> loc = loc.location(1)
+
+    - Possible Next <Location>:
+
+        -> `...location(int).location(int)`
+            :: keep adding location into current list
+
+        -> `...location(int).scale(float)`
+            :: specify scaling factor to current location
+            for the preceeding waveform
+
+    - Possible Next <WaveForm>:
+
+        -> `...location(int).linear()`
+            :: apply linear waveform
+
+        -> `...location(int).constant()`
+            :: apply constant waveform
+
+        -> `...location(int).ploy()`
+            :: apply polynomial waveform
+
+        -> `...location(int).apply()`
+            :: apply pre-constructed waveform
+
+        -> `...location(int).piecewise_linear()`
+            :: apply piecewise linear waveform
+
+        -> `...location(int).piecewise_constant()`
+            :: apply piecewise constant waveform
+
+        -> `...location(int).fn()`
+            :: apply callable as waveform.
+
+
+
+    """
+    return Location(self, label)
+

Uniform

Bases: Waveform

The node specify a uniform spacial modulation. Which is ready to apply waveform (See Waveform for available waveform options)

Examples:

  • To hit this node from the start node:
>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> loc = reg.rydberg.detuning.uniform
+
  • Apply Linear waveform:
>>> wv = bloqade.ir.Linear(start=0,stop=1,duration=0.5)
+>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> loc = reg.rydberg.detuning.uniform.apply(wv)
+
\ No newline at end of file diff --git a/dev/reference/bloqade/builder/location/location.md b/dev/reference/bloqade/builder/location/location.md new file mode 100644 index 0000000000..44fe009a4a --- /dev/null +++ b/dev/reference/bloqade/builder/location/location.md @@ -0,0 +1 @@ +::: bloqade.builder.location \ No newline at end of file diff --git a/dev/reference/bloqade/builder/spatial/index.html b/dev/reference/bloqade/builder/spatial/index.html new file mode 100644 index 0000000000..c04dfce4a0 --- /dev/null +++ b/dev/reference/bloqade/builder/spatial/index.html @@ -0,0 +1,212 @@ + Spatial - The Neutral Atom SDK

Spatial

SpatialModulation

Bases: Builder

SpatialModulation specifies which atom(s) should be addressed to apply the preceeding waveform ((See Waveform for available waveforms onward)

uniform property

uniform
+
  • Addressing all atom locations for preceeding waveform
  • Next-step:
  • Possible Next:

    -> ...uniform.linear() :: apply linear waveform

    -> ...uniform.constant() :: apply constant waveform

    -> ...uniform.ploy() :: apply polynomial waveform

    -> ...uniform.apply() :: apply pre-constructed waveform

    -> ...uniform.piecewise_linear() :: apply piecewise linear waveform

    -> ...uniform.piecewise_constant() :: apply piecewise constant waveform

    -> ...uniform.fn() :: apply callable as waveform.

Examples:

  • Addressing rydberg detuning to all atoms in the system with 4 sites
>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> loc = reg.rydberg.detuning.uniform
+

location

location(label)
+

Addressing one or multiple specific location(s) for preceeding waveform.

(See Location for more details])

Parameters:

Name Type Description Default
label int

The label of the location to apply the following waveform to.

required

Examples:

  • Addressing rydberg detuning to location 1 on a system with 4 sites.
>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> loc = reg.rydberg.detuning.location(1)
+
  • Addressing rydberg detuning on both location 0 and 2 on a system with 4 sites.
>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> loc = reg.rydberg.detuning.location(1).location(2)
+
Note

label index start with 0, and should be positive.

  • Possible Next :

    -> ...location(int).location(int) :: adding location into current list

    -> ...location(int).scale(float) :: specify scaling factor to current location for the preceeding waveform

  • Possible Next :

    -> ...location(int).linear() :: apply linear waveform

    -> ...location(int).constant() :: apply constant waveform

    -> ...location(int).ploy() :: apply polynomial waveform

    -> ...location(int).apply() :: apply pre-constructed waveform

    -> ...location(int).piecewise_linear() :: apply piecewise linear waveform

    -> ...location(int).piecewise_constant() :: apply piecewise constant waveform

    -> ...location(int).fn() :: apply callable as waveform.

Source code in src/bloqade/builder/spatial.py
12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
def location(self, label: int):
+    """
+    Addressing one or multiple specific location(s) for preceeding waveform.
+
+    (See [`Location`][bloqade.builder.location.Location] for more details])
+
+    Args:
+        label (int): The label of the location to apply the following waveform to.
+
+    Examples:
+
+        - Addressing rydberg detuning to location 1 on a system with 4 sites.
+
+        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+        >>> loc = reg.rydberg.detuning.location(1)
+
+        - Addressing rydberg detuning on both location
+        0 and 2 on a system with 4 sites.
+
+        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+        >>> loc = reg.rydberg.detuning.location(1).location(2)
+
+    Note:
+        label index start with 0, and should be positive.
+
+    - Possible Next <Location>:
+
+        -> `...location(int).location(int)`
+            :: adding location into current list
+
+        -> `...location(int).scale(float)`
+            :: specify scaling factor to current location
+            for the preceeding waveform
+
+    - Possible Next <WaveForm>:
+
+        -> `...location(int).linear()`
+            :: apply linear waveform
+
+        -> `...location(int).constant()`
+            :: apply constant waveform
+
+        -> `...location(int).ploy()`
+            :: apply polynomial waveform
+
+        -> `...location(int).apply()`
+            :: apply pre-constructed waveform
+
+        -> `...location(int).piecewise_linear()`
+            :: apply piecewise linear waveform
+
+        -> `...location(int).piecewise_constant()`
+            :: apply piecewise constant waveform
+
+        -> `...location(int).fn()`
+            :: apply callable as waveform.
+
+
+    """
+    from .location import Location
+
+    return Location(self, label)
+

var

var(name)
+
  • Addressing atom location associate with given variable for preceeding waveform
  • Possible Next :

    -> ...location(int).linear() :: apply linear waveform

    -> ...location(int).constant() :: apply constant waveform

    -> ...location(int).ploy() :: apply polynomial waveform

    -> ...location(int).apply() :: apply pre-constructed waveform

    -> ...location(int).piecewise_linear() :: apply piecewise linear waveform

    -> ...location(int).piecewise_constant() :: apply piecewise constant waveform

    -> ...location(int).fn() :: apply callable as waveform.

Examples:

  • Addressing rydberg detuning to atom location myatom in the system with 4 sites
>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+>>> loc = reg.rydberg.detuning.var('myatom')
+
Source code in src/bloqade/builder/spatial.py
def var(self, name: str):
+    """
+    - Addressing atom location associate with given variable for preceeding waveform
+    - Possible Next <WaveForm>:
+
+        -> `...location(int).linear()`
+            :: apply linear waveform
+
+        -> `...location(int).constant()`
+            :: apply constant waveform
+
+        -> `...location(int).ploy()`
+            :: apply polynomial waveform
+
+        -> `...location(int).apply()`
+            :: apply pre-constructed waveform
+
+        -> `...location(int).piecewise_linear()`
+            :: apply piecewise linear waveform
+
+        -> `...location(int).piecewise_constant()`
+            :: apply piecewise constant waveform
+
+        -> `...location(int).fn()`
+            :: apply callable as waveform.
+
+
+    Examples:
+
+        - Addressing rydberg detuning to atom location `myatom` in the system with
+        4 sites
+
+        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])
+        >>> loc = reg.rydberg.detuning.var('myatom')
+
+    """
+    from .location import Var
+
+    return Var(self, name)
+
\ No newline at end of file diff --git a/dev/reference/bloqade/builder/spatial/spatial.md b/dev/reference/bloqade/builder/spatial/spatial.md new file mode 100644 index 0000000000..79925ed356 --- /dev/null +++ b/dev/reference/bloqade/builder/spatial/spatial.md @@ -0,0 +1 @@ +::: bloqade.builder.spatial \ No newline at end of file diff --git a/dev/reference/bloqade/builder/start/index.html b/dev/reference/bloqade/builder/start/index.html new file mode 100644 index 0000000000..c721529a85 --- /dev/null +++ b/dev/reference/bloqade/builder/start/index.html @@ -0,0 +1,29 @@ + Start - The Neutral Atom SDK

Start

ProgramStart

Bases: Builder

ProgramStart is the base class for a starting/entry node for building a program.

hyperfine property

hyperfine
+
  • Specify the Hyperfile level coupling.
  • Possible Next:

    -> ...hyperfine.rabi :: address rabi term

    -> ...hyperfine.detuning :: address detuning field

Examples:

>>> node = bloqade.start.hyperfine
+>>> type(node)
+<class 'bloqade.builder.coupling.Hyperfine'>
+
  • Hyperfine level coupling have two reachable field nodes:

    • detuning term (See also Detuning)
    • rabi term (See also Rabi)
>>> hyp_detune = bloqade.start.hyperfine.detuning
+>>> hyp_rabi = bloqade.start.hyperfine.rabi
+

See Hyperfine for more details.

rydberg property

rydberg
+
  • Specify the Rydberg level coupling.
  • Possible Next:

    -> ...rydberg.rabi :: address rabi term

    -> ...rydberg.detuning :: address detuning field

Examples:

>>> node = bloqade.start.rydberg
+>>> type(node)
+<class 'bloqade.builder.coupling.Rydberg'>
+
  • Rydberg level coupling have two reachable field nodes:

    • detuning term (See also Detuning)
    • rabi term (See also Rabi)
>>> ryd_detune = bloqade.start.rydberg.detuning
+>>> ryd_rabi = bloqade.start.rydberg.rabi
+

See Rydberg for more details.

apply

apply(sequence)
+

apply an existing pulse sequence to the program.

Source code in src/bloqade/builder/start.py
75
+76
+77
+78
+79
+80
+81
+82
def apply(self, sequence: SequenceExpr) -> "Emit":
+    """apply an existing pulse sequence to the program."""
+    from .emit import Emit
+
+    if getattr(self, "__sequence__", None) is not None:
+        raise NotImplementedError("Cannot apply multiple sequences")
+
+    return Emit(self, register=self.__register__, sequence=sequence)
+
\ No newline at end of file diff --git a/dev/reference/bloqade/builder/start/start.md b/dev/reference/bloqade/builder/start/start.md new file mode 100644 index 0000000000..7c4ffc0faa --- /dev/null +++ b/dev/reference/bloqade/builder/start/start.md @@ -0,0 +1 @@ +::: bloqade.builder.start \ No newline at end of file diff --git a/dev/reference/bloqade/builder/waveform/index.html b/dev/reference/bloqade/builder/waveform/index.html new file mode 100644 index 0000000000..d173c0e678 --- /dev/null +++ b/dev/reference/bloqade/builder/waveform/index.html @@ -0,0 +1,1507 @@ + Waveform - The Neutral Atom SDK

Waveform

Recordable

record

record(name)
+

Record the value of the current waveform to a variable.

Possible Next:

  • Possible Next :

    -> .location(int) :: creating new channel to address another location(s)

  • Possible Next :

    -> .slice() :: slice the current waveform

    -> .record(str) :: record the value of waveform at current time

  • Possible Next :

    :: Append waveform into current channel

    -> .linear()

    -> .constant()

    -> .ploy()

    -> .apply()

    -> .piecewise_linear()

    -> .piecewise_constant()

    -> .fn()

  • Possible Next :

    -> .rydberg :: Create/Switch to new rydberg level coupling channel

    -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

  • Possible Next :

    -> .assign() :: assign varialbe an actual value/number

    -> .batch_assign() :: create batch job with different sets of values assign to each variable.

  • Possible Next :

    -> .quera() :: Compile current program to QuEra job

    -> .braket() :: Compile current program to Amazon Braket job

    -> .braket_local_simulator() :: Compile current program to local simulator job

Source code in src/bloqade/builder/waveform.py
def record(self, name: str):
+    """
+    Record the value of the current waveform to a variable.
+
+    Possible Next:
+
+    - Possible Next <Location>:
+
+        -> `.location(int)`
+            :: creating new channel to address
+            another location(s)
+
+    - Possible Next <WaveForm:: current>:
+
+        -> `.slice()`
+            :: slice the current waveform
+
+        -> `.record(str)`
+            :: record the value of waveform at current time
+
+    - Possible Next <WaveForm:: append>:
+
+        :: Append waveform into current channel
+
+        -> `.linear()`
+
+        -> `.constant()`
+
+        -> `.ploy()`
+
+        -> `.apply()`
+
+        -> `.piecewise_linear()`
+
+        -> `.piecewise_constant()`
+
+        -> `.fn()`
+
+    - Possible Next <LevelCoupling>:
+
+        -> `.rydberg`
+            :: Create/Switch to new rydberg level coupling channel
+
+        -> `.hyperfine`
+            :: Create/Switch to new hyperfine level coupling channel
+
+    - Possible Next <Emit:: Linking Vars>:
+
+        -> `.assign()`
+            :: assign varialbe an actual value/number
+
+        -> `.batch_assign()`
+            :: create batch job with different sets
+            of values assign to each variable.
+
+    - Possible Next <Compile>:
+
+        -> `.quera()`
+            :: Compile current program to QuEra job
+
+        -> `.braket()`
+            :: Compile current program to Amazon Braket job
+
+        -> `.braket_local_simulator()`
+            :: Compile current program to local simulator job
+
+
+    """
+    return Record(self, name)
+

Sliceable

slice

slice(start=None, stop=None)
+

Slice current waveform

Possible Next:

  • Possible Next :

    -> .location(int) :: creating new channel to address another location(s)

  • Possible Next :

    -> .record(str) :: record the value of waveform at current time

  • Possible Next :

    :: Append waveform into current channel

    -> .linear()

    -> .constant()

    -> .ploy()

    -> .apply()

    -> .piecewise_linear()

    -> .piecewise_constant()

    -> .fn()

  • Possible Next :

    -> .rydberg :: Create/Switch to new rydberg level coupling channel

    -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

  • Possible Next :

    -> .assign() :: assign varialbe an actual value/number

    -> .batch_assign() :: create batch job with different sets of values assign to each variable.

  • Possible Next :

    -> .quera() :: Compile current program to QuEra job

    -> .braket() :: Compile current program to Amazon Braket job

    -> .braket_local_simulator() :: Compile current program to local simulator job

Source code in src/bloqade/builder/waveform.py
def slice(
+    self, start: Optional[ScalarType] = None, stop: Optional[ScalarType] = None
+):
+    """
+    Slice current waveform
+
+    Possible Next:
+
+    - Possible Next <Location>:
+
+        -> `.location(int)`
+            :: creating new channel to address
+            another location(s)
+
+    - Possible Next <WaveForm:: current>:
+
+        -> `.record(str)`
+            :: record the value of waveform at current time
+
+    - Possible Next <WaveForm:: append>:
+
+        :: Append waveform into current channel
+
+        -> `.linear()`
+
+        -> `.constant()`
+
+        -> `.ploy()`
+
+        -> `.apply()`
+
+        -> `.piecewise_linear()`
+
+        -> `.piecewise_constant()`
+
+        -> `.fn()`
+
+    - Possible Next <LevelCoupling>:
+
+        -> `.rydberg`
+            :: Create/Switch to new rydberg level coupling channel
+
+        -> `.hyperfine`
+            :: Create/Switch to new hyperfine level coupling channel
+
+
+    - Possible Next <Emit:: Linking Vars>:
+
+        -> `.assign()`
+            :: assign varialbe an actual value/number
+
+        -> `.batch_assign()`
+            :: create batch job with different sets
+            of values assign to each variable.
+
+    - Possible Next <Compile>:
+
+        -> `.quera()`
+            :: Compile current program to QuEra job
+
+        -> `.braket()`
+            :: Compile current program to Amazon Braket job
+
+        -> `.braket_local_simulator()`
+            :: Compile current program to local simulator job
+
+    """
+    return Slice(self, start, stop)
+

Waveform

Bases: Builder

apply

apply(wf)
+

Apply a pre-defined waveform to the current location.

Parameters:

Name Type Description Default
wf ir.Waveform

the waveform

required

Examples:

  • apply a pre-defined waveform object to current sequence.
>>> node = bloqade.start.rydberg.detuning.uniform
+>>> wv = bloqade.ir.Linear(0,10,0.5)
+>>> node = node.apply(wv)
+

Possible Next:

  • Possible Next :

    -> .location(int) :: creating new channel to address another location(s)

  • Possible Next :

    -> .slice() :: slice current waveform

    -> .record(str) :: record the value of waveform at current time

  • Possible Next :

    :: Append waveform into current channel

    -> .linear()

    -> .constant()

    -> .ploy()

    -> .apply()

    -> .piecewise_linear()

    -> .piecewise_constant()

    -> .fn()

  • Possible Next :

    -> .rydberg :: Create/Switch to new rydberg level coupling channel

    -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

  • Possible Next :

    -> .assign() :: assign varialbe an actual value/number

    -> .batch_assign() :: create batch job with different sets of values assign to each variable.

  • Possible Next :

    -> .quera() :: Compile current program to QuEra job

    -> .braket() :: Compile current program to Amazon Braket job

    -> .braket_local_simulator() :: Compile current program to local simulator job

Source code in src/bloqade/builder/waveform.py
def apply(self, wf: ir.Waveform):
+    """
+    Apply a pre-defined waveform to the current location.
+
+    Args:
+        wf (ir.Waveform): the waveform
+
+    Examples:
+        - apply a pre-defined waveform object to current sequence.
+
+        >>> node = bloqade.start.rydberg.detuning.uniform
+        >>> wv = bloqade.ir.Linear(0,10,0.5)
+        >>> node = node.apply(wv)
+
+    Possible Next:
+
+    - Possible Next <Location>:
+
+        -> `.location(int)`
+            :: creating new channel to address another location(s)
+
+    - Possible Next <WaveForm:: current>:
+
+        -> `.slice()`
+            :: slice current waveform
+
+        -> `.record(str)`
+            :: record the value of waveform at current time
+
+    - Possible Next <WaveForm:: append>:
+
+        :: Append waveform into current channel
+
+        -> `.linear()`
+
+        -> `.constant()`
+
+        -> `.ploy()`
+
+        -> `.apply()`
+
+        -> `.piecewise_linear()`
+
+        -> `.piecewise_constant()`
+
+        -> `.fn()`
+
+    - Possible Next <LevelCoupling>:
+
+        -> `.rydberg`
+            :: Create/Switch to new rydberg level coupling channel
+
+        -> `.hyperfine`
+            :: Create/Switch to new hyperfine level coupling channel
+
+
+    - Possible Next <Emit:: Linking Vars>:
+
+        -> `.assign()`
+            :: assign varialbe an actual value/number
+
+        -> `.batch_assign()`
+            :: create batch job with different sets
+            of values assign to each variable.
+
+    - Possible Next <Compile>:
+
+        -> `.quera()`
+            :: Compile current program to QuEra job
+
+        -> `.braket()`
+            :: Compile current program to Amazon Braket job
+
+        -> `.braket_local_simulator()`
+            :: Compile current program to local simulator job
+
+
+
+    """
+    return Apply(self, wf)
+

constant

constant(value, duration)
+

Append/assign a constant waveform to the current location.

Parameters:

Name Type Description Default
value ScalarType Union[float, str]

The value of the waveform

required
duration ScalarType Union[float, str]

The duration of the waveform

required

Examples:

  • specify a constant waveform of value 1 with duration 0.5 for (spatial) uniform rydberg detuning
>>> node = bloqade.start.rydberg.detuning.uniform
+>>> node = node.constant(value=1,duration=0.5)
+

Possible Next:

  • Possible Next :

    -> .location(int) :: creating new channel to address another location(s)

  • Possible Next :

    -> .slice() :: slice current waveform

    -> .record(str) :: record the value of waveform at current time

  • Possible Next :

    :: Append waveform into current channel

    -> .linear()

    -> .constant()

    -> .ploy()

    -> .apply()

    -> .piecewise_linear()

    -> .piecewise_constant()

    -> .fn()

  • Possible Next :

    -> .rydberg :: Create/Switch to new rydberg level coupling channel

    -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

  • Possible Next :

    -> .assign() :: assign varialbe an actual value/number

    -> .batch_assign() :: create batch job with different sets of values assign to each variable.

  • Possible Next :

    -> .quera() :: Compile current program to QuEra job

    -> .braket() :: Compile current program to Amazon Braket job

    -> .braket_local_simulator() :: Compile current program to local simulator job

Source code in src/bloqade/builder/waveform.py
def constant(self, value: ScalarType, duration: ScalarType):
+    """
+    Append/assign a constant waveform to the current location.
+
+    Args:
+        value (ScalarType Union[float, str]): The value of the waveform
+        duration (ScalarType Union[float, str]): The duration of the waveform
+
+    Examples:
+        - specify a constant waveform of value 1 with duration 0.5
+        for (spatial) uniform rydberg detuning
+
+        >>> node = bloqade.start.rydberg.detuning.uniform
+        >>> node = node.constant(value=1,duration=0.5)
+
+    Possible Next:
+
+    - Possible Next <Location>:
+
+        -> `.location(int)`
+            :: creating new channel to address another location(s)
+
+    - Possible Next <WaveForm:: current>:
+
+        -> `.slice()`
+            :: slice current waveform
+
+        -> `.record(str)`
+            :: record the value of waveform at current time
+
+    - Possible Next <WaveForm:: append>:
+
+        :: Append waveform into current channel
+
+        -> `.linear()`
+
+        -> `.constant()`
+
+        -> `.ploy()`
+
+        -> `.apply()`
+
+        -> `.piecewise_linear()`
+
+        -> `.piecewise_constant()`
+
+        -> `.fn()`
+
+    - Possible Next <LevelCoupling>:
+
+        -> `.rydberg`
+            :: Create/Switch to new rydberg level coupling channel
+
+        -> `.hyperfine`
+            :: Create/Switch to new hyperfine level coupling channel
+
+    - Possible Next <Emit:: Linking Vars>:
+
+        -> `.assign()`
+            :: assign varialbe an actual value/number
+
+        -> `.batch_assign()`
+            :: create batch job with different sets
+            of values assign to each variable.
+
+    - Possible Next <Compile>:
+
+        -> `.quera()`
+            :: Compile current program to QuEra job
+
+        -> `.braket()`
+            :: Compile current program to Amazon Braket job
+
+        -> `.braket_local_simulator()`
+            :: Compile current program to local simulator job
+
+
+
+    """
+    return Constant(self, value, duration)
+

fn

fn(fn, duration)
+

Append/assign a waveform defined by a python function to the current location.

This function create a waveform with user-defined python function fn(t) with duration duration.

Parameters:

Name Type Description Default
fn Callable

The python function defining the waveform

required
duration ScalarType

The durations of each constant segment

required
Note
  • ScalarType can be either float or str.
  • The python function should take a single argument t and return a float.

Examples:

  • create a cosine waveform with duration 0.5 for (spatial) uniform rydberg detuning.
>>> import numpy as np
+>>> def my_fn(t):
+>>>     return np.cos(2*np.pi*t)
+>>> node = bloqade.start.rydberg.detuning.uniform
+>>> node = node.fn(my_fn,duration=0.5)
+

Possible Next:

  • Possible Next :

    -> .location(int) :: creating new channel to address another location(s)

  • Possible Next :

    -> .slice() :: slice current waveform

    -> .record(str) :: record the value of waveform at current time

    -> .sample() :: sample current callable at given time points

  • Possible Next :

    :: Append waveform into current channel

    -> .linear()

    -> .constant()

    -> .ploy()

    -> .apply()

    -> .piecewise_linear()

    -> .piecewise_constant()

    -> .fn()

  • Possible Next :

    -> .rydberg :: Create/Switch to new rydberg level coupling channel

    -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

  • Possible Next :

    -> .assign() :: assign varialbe an actual value/number

    -> .batch_assign() :: create batch job with different sets of values assign to each variable.

  • Possible Next :

    -> .quera() :: Compile current program to QuEra job

    -> .braket() :: Compile current program to Amazon Braket job

    -> .braket_local_simulator() :: Compile current program to local simulator job

Source code in src/bloqade/builder/waveform.py
def fn(self, fn: Callable, duration: ScalarType):
+    """
+    Append/assign a waveform defined by a python function to the current location.
+
+    This function create a waveform with user-defined
+    python function `fn(t)` with duration `duration`.
+
+    Args:
+        fn (Callable): The python function defining the waveform
+        duration (ScalarType): The durations of each constant segment
+
+    Note:
+        - ScalarType can be either float or str.
+        - The python function should take a single argument `t` and return a float.
+
+
+    Examples:
+        - create a cosine waveform with duration 0.5
+        for (spatial) uniform rydberg detuning.
+
+        >>> import numpy as np
+        >>> def my_fn(t):
+        >>>     return np.cos(2*np.pi*t)
+        >>> node = bloqade.start.rydberg.detuning.uniform
+        >>> node = node.fn(my_fn,duration=0.5)
+
+    Possible Next:
+
+    - Possible Next <Location>:
+
+        -> `.location(int)`
+            :: creating new channel to address another location(s)
+
+    - Possible Next <WaveForm:: current>:
+
+        -> `.slice()`
+            :: slice current waveform
+
+        -> `.record(str)`
+            :: record the value of waveform at current time
+
+        -> `.sample()`
+            :: sample current callable at given time points
+
+    - Possible Next <WaveForm:: append>:
+
+        :: Append waveform into current channel
+
+        -> `.linear()`
+
+        -> `.constant()`
+
+        -> `.ploy()`
+
+        -> `.apply()`
+
+        -> `.piecewise_linear()`
+
+        -> `.piecewise_constant()`
+
+        -> `.fn()`
+
+    - Possible Next <LevelCoupling>:
+
+        -> `.rydberg`
+            :: Create/Switch to new rydberg level coupling channel
+
+        -> `.hyperfine`
+            :: Create/Switch to new hyperfine level coupling channel
+
+
+    - Possible Next <Emit:: Linking Vars>:
+
+        -> `.assign()`
+            :: assign varialbe an actual value/number
+
+        -> `.batch_assign()`
+            :: create batch job with different sets
+            of values assign to each variable.
+
+
+    - Possible Next <Compile>:
+
+        -> `.quera()`
+            :: Compile current program to QuEra job
+
+        -> `.braket()`
+            :: Compile current program to Amazon Braket job
+
+        -> `.braket_local_simulator()`
+            :: Compile current program to local simulator job
+
+
+
+    """
+    return PythonFn(self, fn, duration)
+

linear

linear(start, stop, duration)
+

Append/assign a linear waveform to the current location.

Parameters:

Name Type Description Default
start ScalarType Union[float, str]

The start value of the waveform

required
stop ScalarType Union[float, str]

The stop value of the waveform

required
duration ScalarType Union[float, str]

The duration of the waveform

required

Examples:

  • specify a linear waveform for (spatial) uniform rydberg detuning from 0 to 1 in 0.5 us.
>>> node = bloqade.start.rydberg.detuning.uniform
+>>> node = node.linear(start=0,stop=1,duration=0.5)
+

Possible Next:

  • Possible Next :

    -> .location(int) :: creating new channel to address another location(s)

  • Possible Next :

    -> .slice() :: slice current waveform

    -> .record(str) :: record the value of waveform at current time

  • Possible Next :

    :: Append waveform into current channel

    -> .linear()

    -> .constant()

    -> .ploy()

    -> .apply()

    -> .piecewise_linear()

    -> .piecewise_constant()

    -> .fn()

  • Possible Next :

    -> .rydberg :: Create/Switch to new rydberg level coupling channel

    -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

  • Possible Next :

    -> .assign() :: assign varialbe an actual value/number

    -> .batch_assign() :: create batch job with different sets of values assign to each variable.

  • Possible Next :

    -> .quera() :: Compile current program to QuEra job

    -> .braket() :: Compile current program to Amazon Braket job

    -> .braket_local_simulator() :: Compile current program to local simulator job

Source code in src/bloqade/builder/waveform.py
10
+11
+12
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
+48
+49
+50
+51
+52
+53
+54
+55
+56
+57
+58
+59
+60
+61
+62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
+87
+88
def linear(self, start: ScalarType, stop: ScalarType, duration: ScalarType):
+    """
+    Append/assign a linear waveform to the current location.
+
+    Args:
+        start (ScalarType Union[float, str]): The start value of the waveform
+        stop (ScalarType Union[float, str]): The stop value of the waveform
+        duration (ScalarType Union[float, str]): The duration of the waveform
+
+    Examples:
+        - specify a linear waveform for (spatial) uniform rydberg detuning
+        from 0 to 1 in 0.5 us.
+
+        >>> node = bloqade.start.rydberg.detuning.uniform
+        >>> node = node.linear(start=0,stop=1,duration=0.5)
+
+    Possible Next:
+
+    - Possible Next <Location>:
+
+        -> `.location(int)`
+            :: creating new channel to address another location(s)
+
+    - Possible Next <WaveForm:: current>:
+
+        -> `.slice()`
+            :: slice current waveform
+
+        -> `.record(str)`
+            :: record the value of waveform at current time
+
+    - Possible Next <WaveForm:: append>:
+
+        :: Append waveform into current channel
+
+        -> `.linear()`
+
+        -> `.constant()`
+
+        -> `.ploy()`
+
+        -> `.apply()`
+
+        -> `.piecewise_linear()`
+
+        -> `.piecewise_constant()`
+
+        -> `.fn()`
+
+    - Possible Next <LevelCoupling>:
+
+        -> `.rydberg`
+            :: Create/Switch to new rydberg level coupling channel
+
+        -> `.hyperfine`
+            :: Create/Switch to new hyperfine level coupling channel
+
+    - Possible Next <Emit:: Linking Vars>:
+
+        -> `.assign()`
+            :: assign varialbe an actual value/number
+
+        -> `.batch_assign()`
+            :: create batch job with different
+            sets of values assign to each variable.
+
+    - Possible Next <Emit:: Compile >:
+
+        -> `.quera()`
+            :: Compile current program to QuEra job
+
+        -> `.braket()`
+            :: Compile current program to Amazon Braket job
+
+        -> `.braket_local_simulator()`
+            :: Compile current program to local simulator job
+
+    """
+    return Linear(self, start, stop, duration)
+

piecewise_constant

piecewise_constant(durations, values)
+

Append/assign a piecewise constant waveform to the current location. The durations should have number of elements = len(values).

This function create a waveform of piecewise_constant of values[i] with duration durations[i].

Parameters:

Name Type Description Default
durations List[ScalarType]

The durations of each constant segment

required
values List[ScalarType]

The values of each constant segment

required
Note

ScalarType can be either float or str.

Examples:

  • specify a piecewise constant of [0.5,1.5] with duration [0.1,3.8] for (spatial) uniform rydberg detuning.
>>> node = bloqade.start.rydberg.detuning.uniform
+>>> node = node.piecewise_constant(values=[0.5,1.5],durations=[0.1,3.8])
+

Possible Next:

  • Possible Next :

    -> .location(int) :: creating new channel to address another location(s)

  • Possible Next :

    -> .slice() :: slice current waveform

    -> .record(str) :: record the value of waveform at current time

  • Possible Next :

    :: Append waveform into current channel

    -> .linear()

    -> .constant()

    -> .ploy()

    -> .apply()

    -> .piecewise_linear()

    -> .piecewise_constant()

    -> .fn()

  • Possible Next :

    -> .rydberg :: Create/Switch to new rydberg level coupling channel

    -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

  • Possible Next :

    -> .assign() :: assign varialbe an actual value/number

    -> .batch_assign() :: create batch job with different sets of values assign to each variable.

  • Possible Next :

    -> .quera() :: Compile current program to QuEra job

    -> .braket() :: Compile current program to Amazon Braket job

    -> .braket_local_simulator() :: Compile current program to local simulator job

Source code in src/bloqade/builder/waveform.py
def piecewise_constant(self, durations: List[ScalarType], values: List[ScalarType]):
+    """
+    Append/assign a piecewise constant waveform to the current location.
+    The durations should have number of elements = len(values).
+
+    This function create a waveform of piecewise_constant of
+    `values[i]` with duration `durations[i]`.
+
+    Args:
+        durations (List[ScalarType]): The durations of each constant segment
+        values (List[ScalarType]): The values of each constant segment
+
+    Note:
+        ScalarType can be either float or str.
+
+    Examples:
+        - specify a piecewise constant of [0.5,1.5] with duration [0.1,3.8]
+        for (spatial) uniform rydberg detuning.
+
+        >>> node = bloqade.start.rydberg.detuning.uniform
+        >>> node = node.piecewise_constant(values=[0.5,1.5],durations=[0.1,3.8])
+
+    Possible Next:
+
+    - Possible Next <Location>:
+
+        -> `.location(int)`
+            :: creating new channel to address another location(s)
+
+    - Possible Next <WaveForm:: current>:
+
+        -> `.slice()`
+            :: slice current waveform
+
+        -> `.record(str)`
+            :: record the value of waveform at current time
+
+    - Possible Next <WaveForm:: append>:
+
+        :: Append waveform into current channel
+
+        -> `.linear()`
+
+        -> `.constant()`
+
+        -> `.ploy()`
+
+        -> `.apply()`
+
+        -> `.piecewise_linear()`
+
+        -> `.piecewise_constant()`
+
+        -> `.fn()`
+
+    - Possible Next <LevelCoupling>:
+
+        -> `.rydberg`
+            :: Create/Switch to new rydberg level coupling channel
+
+        -> `.hyperfine`
+            :: Create/Switch to new hyperfine level coupling channel
+
+
+    - Possible Next <Emit:: Linking Vars>:
+
+        -> `.assign()`
+            :: assign varialbe an actual value/number
+
+        -> `.batch_assign()`
+            :: create batch job with different sets
+            of values assign to each variable.
+
+
+    - Possible Next <Compile>:
+
+        -> `.quera()`
+            :: Compile current program to QuEra job
+
+        -> `.braket()`
+            :: Compile current program to Amazon Braket job
+
+        -> `.braket_local_simulator()`
+            :: Compile current program to local simulator job
+
+
+    """
+    builder = self
+    if len(durations) != len(values):
+        raise ValueError("durations and values lists must have same length.")
+
+    for duration, value in zip(durations, values):
+        builder = builder.constant(value, duration)
+
+    return builder
+

piecewise_linear

piecewise_linear(durations, values)
+

Append/assign a piecewise linear waveform to the current location. The durations should have number of elements = len(values) - 1.

This function create a waveform by connecting values[i], values[i+1] with linear segments.

Parameters:

Name Type Description Default
durations List[ScalarType]

The durations of each linear segment

required
values List[ScalarType]

The values of each linear segment

required

Examples:

  • specify a piecewise linear of [0,1,1,0] with duration [0.1,3.8,0.1] for (spatial) uniform rydberg detuning.
>>> node = bloqade.start.rydberg.detuning.uniform
+>>> node = node.piecewise_linear(values=[0,1,1,0],durations=[0.1,3.8,0.1])
+
Note

ScalarType can be either float or str.

Possible Next:

  • Possible Next :

    -> .location(int) :: creating new channel to address another location(s)

  • Possible Next :

    -> .slice() :: slice current waveform

    -> .record(str) :: record the value of waveform at current time

  • Possible Next :

    :: Append waveform into current channel

    -> .linear()

    -> .constant()

    -> .ploy()

    -> .apply()

    -> .piecewise_linear()

    -> .piecewise_constant()

    -> .fn()

  • Possible Next :

    -> .rydberg :: Create/Switch to new rydberg level coupling channel

    -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

  • Possible Next :

    -> .assign() :: assign varialbe an actual value/number

    -> .batch_assign() :: create batch job with different sets of values assign to each variable.

  • Possible Next :

    -> .quera() :: Compile current program to QuEra job

    -> .braket() :: Compile current program to Amazon Braket job

    -> .braket_local_simulator() :: Compile current program to local simulator job

Source code in src/bloqade/builder/waveform.py
def piecewise_linear(self, durations: List[ScalarType], values: List[ScalarType]):
+    """
+    Append/assign a piecewise linear waveform to the current location.
+    The durations should have number of elements = len(values) - 1.
+
+    This function create a waveform by connecting `values[i], values[i+1]`
+    with linear segments.
+
+    Args:
+        durations (List[ScalarType]): The durations of each linear segment
+        values (List[ScalarType]): The values of each linear segment
+
+    Examples:
+        - specify a piecewise linear of [0,1,1,0] with duration [0.1,3.8,0.1]
+        for (spatial) uniform rydberg detuning.
+
+        >>> node = bloqade.start.rydberg.detuning.uniform
+        >>> node = node.piecewise_linear(values=[0,1,1,0],durations=[0.1,3.8,0.1])
+
+    Note:
+        ScalarType can be either float or str.
+
+    Possible Next:
+
+    - Possible Next <Location>:
+
+        -> `.location(int)`
+            :: creating new channel to address another location(s)
+
+    - Possible Next <WaveForm:: current>:
+
+        -> `.slice()`
+            :: slice current waveform
+
+        -> `.record(str)`
+            :: record the value of waveform at current time
+
+    - Possible Next <WaveForm:: append>:
+
+        :: Append waveform into current channel
+
+        -> `.linear()`
+
+        -> `.constant()`
+
+        -> `.ploy()`
+
+        -> `.apply()`
+
+        -> `.piecewise_linear()`
+
+        -> `.piecewise_constant()`
+
+        -> `.fn()`
+
+    - Possible Next <LevelCoupling>:
+
+        -> `.rydberg`
+            :: Create/Switch to new rydberg level coupling channel
+
+        -> `.hyperfine`
+            :: Create/Switch to new hyperfine level coupling channel
+
+
+    - Possible Next <Emit:: Linking Vars>:
+
+        -> `.assign()`
+            :: assign varialbe an actual value/number
+
+        -> `.batch_assign()`
+            :: create batch job with different sets
+            of values assign to each variable.
+
+    - Possible Next <Compile>:
+
+        -> `.quera()`
+            :: Compile current program to QuEra job
+
+        -> `.braket()`
+            :: Compile current program to Amazon Braket job
+
+        -> `.braket_local_simulator()`
+            :: Compile current program to local simulator job
+
+    """
+    builder = self
+    if len(durations) != len(values) - 1:
+        raise ValueError("len(durations) must be len(values)-1.")
+
+    for duration, start, stop in zip(durations, values[:-1], values[1:]):
+        builder = builder.linear(start, stop, duration)
+
+    return builder
+

poly

poly(coeffs, duration)
+

Append/assign a waveform with polynomial profile to the current location.

with form

wv(t) = coeffs[0] + coeffs[1]*t + coeffs[2]*t^2 + ... + coeffs[n]*t^n

Parameters:

Name Type Description Default
coeffs ScalarType Union[float, str]

The coefficients of the polynomial

required
duration ScalarType Union[float, str]

The duration of the waveform

required

Examples:

  • specify a second order polynomial with duration 0.5 for (spatial) uniform rydberg detuning
>>> node = bloqade.start.rydberg.detuning.uniform
+>>> node = node.poly(coeffs=[1,2,3],duration=0.5)
+

Possible Next:

  • Possible Next :

    -> .location(int) :: creating new channel to address another location(s)

  • Possible Next :

    -> .slice() :: slice current waveform

    -> .record(str) :: record the value of waveform at current time

  • Possible Next :

    :: Append waveform into current channel

    -> .linear()

    -> .constant()

    -> .ploy()

    -> .apply()

    -> .piecewise_linear()

    -> .piecewise_constant()

    -> .fn()

  • Possible Next :

    -> .rydberg :: Create/Switch to new rydberg level coupling channel

    -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

  • Possible Next :

    -> .assign() :: assign varialbe an actual value/number

    -> .batch_assign() :: create batch job with different sets of values assign to each variable.

  • Possible Next :

    -> .quera() :: Compile current program to QuEra job

    -> .braket() :: Compile current program to Amazon Braket job

    -> .braket_local_simulator() :: Compile current program to local simulator job

Source code in src/bloqade/builder/waveform.py
def poly(self, coeffs: ScalarType, duration: ScalarType):
+    """
+    Append/assign a waveform with polynomial profile to the current location.
+    with form:
+
+        wv(t) = coeffs[0] + coeffs[1]*t + coeffs[2]*t^2 + ... + coeffs[n]*t^n
+
+    Args:
+        coeffs (ScalarType Union[float, str]): The coefficients of the polynomial
+        duration (ScalarType Union[float, str]): The duration of the waveform
+
+    Examples:
+        - specify a second order polynomial with duration 0.5
+        for (spatial) uniform rydberg detuning
+
+        >>> node = bloqade.start.rydberg.detuning.uniform
+        >>> node = node.poly(coeffs=[1,2,3],duration=0.5)
+
+    Possible Next:
+
+    - Possible Next <Location>:
+
+        -> `.location(int)`
+            :: creating new channel to address another location(s)
+
+    - Possible Next <WaveForm:: current>:
+
+        -> `.slice()`
+            :: slice current waveform
+
+        -> `.record(str)`
+            :: record the value of waveform at current time
+
+    - Possible Next <WaveForm:: append>:
+
+        :: Append waveform into current channel
+
+        -> `.linear()`
+
+        -> `.constant()`
+
+        -> `.ploy()`
+
+        -> `.apply()`
+
+        -> `.piecewise_linear()`
+
+        -> `.piecewise_constant()`
+
+        -> `.fn()`
+
+    - Possible Next <LevelCoupling>:
+
+        -> `.rydberg`
+            :: Create/Switch to new rydberg level coupling channel
+
+        -> `.hyperfine`
+            :: Create/Switch to new hyperfine level coupling channel
+
+
+    - Possible Next <Emit:: Linking Vars>:
+
+        -> `.assign()`
+            :: assign varialbe an actual value/number
+
+        -> `.batch_assign()`
+            :: create batch job with different sets
+            of values assign to each variable.
+
+    - Possible Next <Compile>:
+
+        -> `.quera()`
+            :: Compile current program to QuEra job
+
+        -> `.braket()`
+            :: Compile current program to Amazon Braket job
+
+        -> `.braket_local_simulator()`
+            :: Compile current program to local simulator job
+
+
+
+    """
+    return Poly(self, coeffs, duration)
+
\ No newline at end of file diff --git a/dev/reference/bloqade/builder/waveform/waveform.md b/dev/reference/bloqade/builder/waveform/waveform.md new file mode 100644 index 0000000000..183e000bc6 --- /dev/null +++ b/dev/reference/bloqade/builder/waveform/waveform.md @@ -0,0 +1 @@ +::: bloqade.builder.waveform \ No newline at end of file diff --git a/dev/reference/bloqade/index.html b/dev/reference/bloqade/index.html new file mode 100644 index 0000000000..68441844c4 --- /dev/null +++ b/dev/reference/bloqade/index.html @@ -0,0 +1,63 @@ + Index - The Neutral Atom SDK

Index

start module-attribute

start = ListOfLocations()
+
  • Program starting node
  • Possible Next

    -> start.rydberg :: address rydberg level coupling

    -> start.hyperfine :: address hyperfine level coupling

  • Possible Next

    -> start.add_locations(List[Tuple[int]]) :: add multiple atoms to current register

    -> start.add_location(Tuple[int]) :: add atom to current register

Literal

Bases: Real

value class-attribute

value: Decimal
+

Scalar Literal, which stores a decimaal value instance.

Parameters:

Name Type Description Default
value Decimal

decimal value instance

required

Variable

Bases: Real

Variable, which stores a variable name.

Parameters:

Name Type Description Default
name str

variable instance.

required

cast

cast(py)
+

cast Real number (or list/tuple of Real numbers) to Scalar Literal.

Parameters:

Name Type Description Default
py Union[Real, Tuple[Real], List[Real]]

python object to cast

required

Returns:

Type Description
Any

Union[Literal,Tuple[Literal],List[Literal]]

Source code in src/bloqade/ir/scalar.py
def cast(py) -> Any:
+    """cast Real number (or list/tuple of Real numbers)
+    to [`Scalar Literal`][bloqade.ir.scalar.Literal].
+
+    Args:
+        py (Union[Real,Tuple[Real],List[Real]]): python object to cast
+
+    Returns:
+        Union[Literal,Tuple[Literal],List[Literal]]
+    """
+    ret = trycast(py)
+    if ret is None:
+        raise TypeError(f"Cannot cast {type(py)} to Scalar Literal")
+
+    return ret
+

var

var(py)
+

cast string (or list/tuple of strings) to Variable.

Parameters:

Name Type Description Default
py Union[str, List[str], Tuple[str]]

a string or list/tuple of strings

required

Returns:

Type Description
Any

Union[Variable, List[Variable], Tuple[Variable]]

Source code in src/bloqade/ir/scalar.py
def var(py: Union[str, List[str]]) -> Any:
+    """cast string (or list/tuple of strings)
+    to [`Variable`][bloqade.ir.scalar.Variable].
+
+    Args:
+        py (Union[str, List[str], Tuple[str]]): a string or list/tuple of strings
+
+    Returns:
+       Union[Variable, List[Variable], Tuple[Variable]]
+    """
+    ret = tryvar(py)
+    if ret is None:
+        raise TypeError(f"Cannot cast {type(py)} to Variable")
+
+    return ret
+
\ No newline at end of file diff --git a/dev/reference/bloqade/index.md b/dev/reference/bloqade/index.md new file mode 100644 index 0000000000..62ddc3644b --- /dev/null +++ b/dev/reference/bloqade/index.md @@ -0,0 +1 @@ +::: bloqade \ No newline at end of file diff --git a/dev/reference/bloqade/ir/control/field/field.md b/dev/reference/bloqade/ir/control/field/field.md new file mode 100644 index 0000000000..4e75784b52 --- /dev/null +++ b/dev/reference/bloqade/ir/control/field/field.md @@ -0,0 +1 @@ +::: bloqade.ir.control.field \ No newline at end of file diff --git a/dev/reference/bloqade/ir/control/field/index.html b/dev/reference/bloqade/ir/control/field/index.html new file mode 100644 index 0000000000..92e086d62b --- /dev/null +++ b/dev/reference/bloqade/ir/control/field/index.html @@ -0,0 +1,2 @@ + Field - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/ir/control/index.html b/dev/reference/bloqade/ir/control/index.html new file mode 100644 index 0000000000..b60d66cd57 --- /dev/null +++ b/dev/reference/bloqade/ir/control/index.html @@ -0,0 +1 @@ + Index - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/ir/control/index.md b/dev/reference/bloqade/ir/control/index.md new file mode 100644 index 0000000000..7aeaec7325 --- /dev/null +++ b/dev/reference/bloqade/ir/control/index.md @@ -0,0 +1 @@ +::: bloqade.ir.control \ No newline at end of file diff --git a/dev/reference/bloqade/ir/control/pulse/index.html b/dev/reference/bloqade/ir/control/pulse/index.html new file mode 100644 index 0000000000..8539a2eea7 --- /dev/null +++ b/dev/reference/bloqade/ir/control/pulse/index.html @@ -0,0 +1,27 @@ + Pulse - The Neutral Atom SDK

Pulse

Append

Bases: PulseExpr

<append> ::= <expr>+
+

Pulse

Pulse(field_pairs)
+

Bases: PulseExpr

<pulse> ::= (<field name> <field>)+
+
Source code in src/bloqade/ir/control/pulse.py
def __init__(self, field_pairs):
+    value = dict()
+    for k, v in field_pairs.items():
+        if isinstance(v, Field):
+            value[k] = v
+        elif isinstance(v, dict):
+            value[k] = Field(v)
+        else:
+            raise TypeError(f"Expected Field or dict, got {type(v)}")
+    self.value = value
+

PulseExpr

<expr> ::= <pulse>
+  | <append>
+  | <slice>
+  | <named>
+
\ No newline at end of file diff --git a/dev/reference/bloqade/ir/control/pulse/pulse.md b/dev/reference/bloqade/ir/control/pulse/pulse.md new file mode 100644 index 0000000000..4824f03c4e --- /dev/null +++ b/dev/reference/bloqade/ir/control/pulse/pulse.md @@ -0,0 +1 @@ +::: bloqade.ir.control.pulse \ No newline at end of file diff --git a/dev/reference/bloqade/ir/control/sequence/index.html b/dev/reference/bloqade/ir/control/sequence/index.html new file mode 100644 index 0000000000..b4720a5870 --- /dev/null +++ b/dev/reference/bloqade/ir/control/sequence/index.html @@ -0,0 +1,35 @@ + Sequence - The Neutral Atom SDK

Sequence

Sequence

Sequence(seq_pairs=None)
+

Bases: SequenceExpr

Sequence of a program, which includes pulses informations.

Source code in src/bloqade/ir/control/sequence.py
def __init__(self, seq_pairs: Dict | None = None):
+    if seq_pairs is None:
+        self.value = {}
+        return
+
+    value = {}
+    for level_coupling, pulse in seq_pairs.items():
+        if not isinstance(level_coupling, LevelCoupling):
+            raise TypeError(f"Unexpected type {type(level_coupling)}")
+
+        if isinstance(pulse, PulseExpr):
+            value[level_coupling] = pulse
+        elif isinstance(pulse, dict):
+            value[level_coupling] = Pulse(pulse)
+        else:
+            raise TypeError(f"Unexpected type {type(pulse)}")
+    self.value = value
+
\ No newline at end of file diff --git a/dev/reference/bloqade/ir/control/sequence/sequence.md b/dev/reference/bloqade/ir/control/sequence/sequence.md new file mode 100644 index 0000000000..590d8292c1 --- /dev/null +++ b/dev/reference/bloqade/ir/control/sequence/sequence.md @@ -0,0 +1 @@ +::: bloqade.ir.control.sequence \ No newline at end of file diff --git a/dev/reference/bloqade/ir/control/waveform/index.html b/dev/reference/bloqade/ir/control/waveform/index.html new file mode 100644 index 0000000000..9ae5f2d781 --- /dev/null +++ b/dev/reference/bloqade/ir/control/waveform/index.html @@ -0,0 +1,106 @@ + Waveform - The Neutral Atom SDK

Waveform

Add

Bases: Waveform

<add> ::= <waveform> '+' <waveform>
+

AlignedWaveform

Bases: Waveform

<padded waveform> ::= <waveform> | <waveform> <alignment> <value>
+
+<alignment> ::= 'left aligned' | 'right aligned'
+<value> ::= 'left value' | 'right value' | <scalar expr>
+

Append

Bases: Waveform

<append> ::= <waveform>+
+

Constant

Constant(value, duration)
+

Bases: Instruction

<constant> ::= 'constant' <scalar expr>
+

f(t=0:duration) = value

Parameters:

Name Type Description Default
value Scalar

the constant value

required
duration Scalar

the time span of the constant waveform.

required
Source code in src/bloqade/ir/control/waveform.py
def __init__(self, value, duration):
+    self.value = cast(value)
+    self._duration = cast(duration)
+

Instruction

Bases: Waveform

Instruction node in the IR.

<instruction> ::= <linear>
+    | <constant>
+    | <poly>
+    | <python-fn>
+

Linear

Linear(start, stop, duration)
+

Bases: Instruction

<linear> ::= 'linear' <scalar expr> <scalar expr>
+

f(t=0:duration) = start + (stop-start)/duration * t

Parameters:

Name Type Description Default
start Scalar

start value

required
stop Scalar

stop value

required
duration Scalar

the time span of the linear waveform.

required
Source code in src/bloqade/ir/control/waveform.py
def __init__(self, start, stop, duration):
+    self.start = cast(start)
+    self.stop = cast(stop)
+    self._duration = cast(duration)
+

Negative

Bases: Waveform

<negative> ::= '-' <waveform>
+

Poly

Poly(checkpoints, duration)
+

Bases: Instruction

<poly> ::= <scalar>+
+

f(t=0:duration) = c[0] + c[1]t + c[2]t^2 + ... + c[n-1]t^n-1 + c[n]t^n

Parameters:

Name Type Description Default
checkpoints List[Scalar]

the coefficients c[] of the polynomial.

required
duration Scalar

the time span of the waveform.

required
Source code in src/bloqade/ir/control/waveform.py
def __init__(self, checkpoints, duration):
+    self.checkpoints = cast(checkpoints)
+    self._duration = cast(duration)
+

PythonFn

PythonFn(fn, duration)
+

Bases: Instruction

<python-fn> ::= 'python-fn' <python function def> <scalar expr>
+
Source code in src/bloqade/ir/control/waveform.py
def __init__(self, fn: Callable, duration: Any):
+    self.fn = fn
+    self._duration = cast(duration)
+
+    signature = inspect.getfullargspec(fn)
+
+    if signature.varargs is not None:
+        raise ValueError("Cannot have varargs")
+
+    if signature.varkw is not None:
+        raise ValueError("Cannot have varkw")
+
+    self.parameters = list(signature.args[1:]) + list(signature.kwonlyargs)
+

Record

Bases: Waveform

<record> ::= 'record' <waveform> <var>
+

Sample

Bases: Waveform

<sample> ::= 'sample' <waveform> <interpolation> <scalar>
+

Scale

Scale(scalar, waveform)
+

Bases: Waveform

<scale> ::= <scalar expr> '*' <waveform>
+
Source code in src/bloqade/ir/control/waveform.py
def __init__(self, scalar, waveform: Waveform):
+    self.scalar = cast(scalar)
+    self.waveform = waveform
+

Slice

Bases: Waveform

<slice> ::= <waveform> <scalar.interval>
+

Smooth

Bases: Waveform

<smooth> ::= 'smooth' <kernel> <waveform>
+

Waveform

Waveform node in the IR.

<waveform> ::= <instruction>
+    | <smooth>
+    | <slice>
+    | <append>
+    | <negative>
+    | <scale>
+    | <add>
+    | <record>
+    | <sample>
+

plot

plot(**assignments)
+

Plot the waveform.

Returns:

Name Type Description
figure

a bokeh figure

Source code in src/bloqade/ir/control/waveform.py
88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
def plot(self, **assignments):
+    """Plot the waveform.
+
+    Returns:
+        figure: a bokeh figure
+    """
+    duration = self.duration(**assignments)
+    times = np.linspace(0, duration, 1001)
+    values = [self.__call__(time, **assignments) for time in times]
+    fig = figure(width=250, height=250)
+    fig.line(times, values)
+    return fig
+
\ No newline at end of file diff --git a/dev/reference/bloqade/ir/control/waveform/waveform.md b/dev/reference/bloqade/ir/control/waveform/waveform.md new file mode 100644 index 0000000000..16d278836f --- /dev/null +++ b/dev/reference/bloqade/ir/control/waveform/waveform.md @@ -0,0 +1 @@ +::: bloqade.ir.control.waveform \ No newline at end of file diff --git a/dev/reference/bloqade/ir/index.html b/dev/reference/bloqade/ir/index.html new file mode 100644 index 0000000000..496fed93fb --- /dev/null +++ b/dev/reference/bloqade/ir/index.html @@ -0,0 +1,241 @@ + Index - The Neutral Atom SDK

Index

AlignedWaveform

Bases: Waveform

<padded waveform> ::= <waveform> | <waveform> <alignment> <value>
+
+<alignment> ::= 'left aligned' | 'right aligned'
+<value> ::= 'left value' | 'right value' | <scalar expr>
+

Constant

Constant(value, duration)
+

Bases: Instruction

<constant> ::= 'constant' <scalar expr>
+

f(t=0:duration) = value

Parameters:

Name Type Description Default
value Scalar

the constant value

required
duration Scalar

the time span of the constant waveform.

required
Source code in src/bloqade/ir/control/waveform.py
def __init__(self, value, duration):
+    self.value = cast(value)
+    self._duration = cast(duration)
+

Field

Field node in the IR. Which contains collection(s) of Waveform

<field> ::= ('field' <spatial modulation>  <padded waveform>)*
+

Linear

Linear(start, stop, duration)
+

Bases: Instruction

<linear> ::= 'linear' <scalar expr> <scalar expr>
+

f(t=0:duration) = start + (stop-start)/duration * t

Parameters:

Name Type Description Default
start Scalar

start value

required
stop Scalar

stop value

required
duration Scalar

the time span of the linear waveform.

required
Source code in src/bloqade/ir/control/waveform.py
def __init__(self, start, stop, duration):
+    self.start = cast(start)
+    self.stop = cast(stop)
+    self._duration = cast(duration)
+

Literal

Bases: Real

value class-attribute

value: Decimal
+

Scalar Literal, which stores a decimaal value instance.

Parameters:

Name Type Description Default
value Decimal

decimal value instance

required

Poly

Poly(checkpoints, duration)
+

Bases: Instruction

<poly> ::= <scalar>+
+

f(t=0:duration) = c[0] + c[1]t + c[2]t^2 + ... + c[n-1]t^n-1 + c[n]t^n

Parameters:

Name Type Description Default
checkpoints List[Scalar]

the coefficients c[] of the polynomial.

required
duration Scalar

the time span of the waveform.

required
Source code in src/bloqade/ir/control/waveform.py
def __init__(self, checkpoints, duration):
+    self.checkpoints = cast(checkpoints)
+    self._duration = cast(duration)
+

Program

Program(register, sequence)
+

Program is a dummy type that bundle register and sequence together.

Source code in src/bloqade/ir/program.py
13
+14
+15
+16
+17
+18
+19
def __init__(
+    self,
+    register: Union["AtomArrangement", "ParallelRegister"],
+    sequence: Sequence,
+):
+    self._sequence = sequence
+    self._register = register
+

register property

register
+

Get the register of the program.

Returns:

Type Description

register (Union["AtomArrangement", "ParallelRegister"])

Note

If the program is built with parallelize(), The the register will be a ParallelRegister. Otherwise it will be a AtomArrangement.

sequence property

sequence
+

Get the sequence of the program.

Returns:

Name Type Description
Sequence

the sequence of the program. See also Sequence.

Pulse

Pulse(field_pairs)
+

Bases: PulseExpr

<pulse> ::= (<field name> <field>)+
+
Source code in src/bloqade/ir/control/pulse.py
def __init__(self, field_pairs):
+    value = dict()
+    for k, v in field_pairs.items():
+        if isinstance(v, Field):
+            value[k] = v
+        elif isinstance(v, dict):
+            value[k] = Field(v)
+        else:
+            raise TypeError(f"Expected Field or dict, got {type(v)}")
+    self.value = value
+

PythonFn

PythonFn(fn, duration)
+

Bases: Instruction

<python-fn> ::= 'python-fn' <python function def> <scalar expr>
+
Source code in src/bloqade/ir/control/waveform.py
def __init__(self, fn: Callable, duration: Any):
+    self.fn = fn
+    self._duration = cast(duration)
+
+    signature = inspect.getfullargspec(fn)
+
+    if signature.varargs is not None:
+        raise ValueError("Cannot have varargs")
+
+    if signature.varkw is not None:
+        raise ValueError("Cannot have varkw")
+
+    self.parameters = list(signature.args[1:]) + list(signature.kwonlyargs)
+

Record

Bases: Waveform

<record> ::= 'record' <waveform> <var>
+

Sample

Bases: Waveform

<sample> ::= 'sample' <waveform> <interpolation> <scalar>
+

Scalar

Base class for all scalar expressions.

<scalar> ::= <literal>
+| <variable>
+| <default>
+| <negative>
+| <add>
+| <mul>
+| <min>
+| <max>
+| <slice>
+| <inverval>
+
+<mul> ::= <scalar> '*' <scalar>
+<add> ::= <scalar> '+' <scalar>
+<min> ::= 'min' <scalar>+
+<max> ::= 'max' <scalar>+
+<slice> ::= <scalar expr> '[' <interval> ']'
+<interval> ::= <scalar expr> '..' <scalar expr>
+<real> ::= <literal> | <var>
+

Sequence

Sequence(seq_pairs=None)
+

Bases: SequenceExpr

Sequence of a program, which includes pulses informations.

Source code in src/bloqade/ir/control/sequence.py
def __init__(self, seq_pairs: Dict | None = None):
+    if seq_pairs is None:
+        self.value = {}
+        return
+
+    value = {}
+    for level_coupling, pulse in seq_pairs.items():
+        if not isinstance(level_coupling, LevelCoupling):
+            raise TypeError(f"Unexpected type {type(level_coupling)}")
+
+        if isinstance(pulse, PulseExpr):
+            value[level_coupling] = pulse
+        elif isinstance(pulse, dict):
+            value[level_coupling] = Pulse(pulse)
+        else:
+            raise TypeError(f"Unexpected type {type(pulse)}")
+    self.value = value
+

Variable

Bases: Real

Variable, which stores a variable name.

Parameters:

Name Type Description Default
name str

variable instance.

required

Waveform

Waveform node in the IR.

<waveform> ::= <instruction>
+    | <smooth>
+    | <slice>
+    | <append>
+    | <negative>
+    | <scale>
+    | <add>
+    | <record>
+    | <sample>
+

plot

plot(**assignments)
+

Plot the waveform.

Returns:

Name Type Description
figure

a bokeh figure

Source code in src/bloqade/ir/control/waveform.py
88
+89
+90
+91
+92
+93
+94
+95
+96
+97
+98
+99
def plot(self, **assignments):
+    """Plot the waveform.
+
+    Returns:
+        figure: a bokeh figure
+    """
+    duration = self.duration(**assignments)
+    times = np.linspace(0, duration, 1001)
+    values = [self.__call__(time, **assignments) for time in times]
+    fig = figure(width=250, height=250)
+    fig.line(times, values)
+    return fig
+

cast

cast(py)
+

cast Real number (or list/tuple of Real numbers) to Scalar Literal.

Parameters:

Name Type Description Default
py Union[Real, Tuple[Real], List[Real]]

python object to cast

required

Returns:

Type Description
Any

Union[Literal,Tuple[Literal],List[Literal]]

Source code in src/bloqade/ir/scalar.py
def cast(py) -> Any:
+    """cast Real number (or list/tuple of Real numbers)
+    to [`Scalar Literal`][bloqade.ir.scalar.Literal].
+
+    Args:
+        py (Union[Real,Tuple[Real],List[Real]]): python object to cast
+
+    Returns:
+        Union[Literal,Tuple[Literal],List[Literal]]
+    """
+    ret = trycast(py)
+    if ret is None:
+        raise TypeError(f"Cannot cast {type(py)} to Scalar Literal")
+
+    return ret
+

var

var(py)
+

cast string (or list/tuple of strings) to Variable.

Parameters:

Name Type Description Default
py Union[str, List[str], Tuple[str]]

a string or list/tuple of strings

required

Returns:

Type Description
Any

Union[Variable, List[Variable], Tuple[Variable]]

Source code in src/bloqade/ir/scalar.py
def var(py: Union[str, List[str]]) -> Any:
+    """cast string (or list/tuple of strings)
+    to [`Variable`][bloqade.ir.scalar.Variable].
+
+    Args:
+        py (Union[str, List[str], Tuple[str]]): a string or list/tuple of strings
+
+    Returns:
+       Union[Variable, List[Variable], Tuple[Variable]]
+    """
+    ret = tryvar(py)
+    if ret is None:
+        raise TypeError(f"Cannot cast {type(py)} to Variable")
+
+    return ret
+
\ No newline at end of file diff --git a/dev/reference/bloqade/ir/index.md b/dev/reference/bloqade/ir/index.md new file mode 100644 index 0000000000..a7d2d81ff5 --- /dev/null +++ b/dev/reference/bloqade/ir/index.md @@ -0,0 +1 @@ +::: bloqade.ir \ No newline at end of file diff --git a/dev/reference/bloqade/ir/location/base/base.md b/dev/reference/bloqade/ir/location/base/base.md new file mode 100644 index 0000000000..0b40af16d3 --- /dev/null +++ b/dev/reference/bloqade/ir/location/base/base.md @@ -0,0 +1 @@ +::: bloqade.ir.location.base \ No newline at end of file diff --git a/dev/reference/bloqade/ir/location/base/index.html b/dev/reference/bloqade/ir/location/base/index.html new file mode 100644 index 0000000000..1036e0a76c --- /dev/null +++ b/dev/reference/bloqade/ir/location/base/index.html @@ -0,0 +1,481 @@ + Base - The Neutral Atom SDK

Base

AtomArrangement

AtomArrangement()
+

Bases: ProgramStart

Source code in src/bloqade/ir/location/base.py
def __init__(self) -> None:
+    super().__init__(register=self)
+

n_atoms property

n_atoms: int
+

number of atoms in the register.

n_dims property

n_dims: int
+

number of dimensions in the register.

add_position

add_position(position, filled=True)
+

add a position to existing atom arrangement.

Source code in src/bloqade/ir/location/base.py
def add_position(
+    self, position: Tuple[Any, Any], filled: bool = True
+) -> "ListOfLocations":
+    """add a position to existing atom arrangement."""
+
+    from .list import ListOfLocations
+
+    location_list = [LocationInfo(position, filled)]
+    for location_info in self.enumerate():
+        location_list.append(location_info)
+
+    return ListOfLocations(location_list)
+

add_positions

add_positions(positions, filling=None)
+

add a list of positions to existing atom arrangement.

Source code in src/bloqade/ir/location/base.py
def add_positions(
+    self, positions: List[Tuple[Any, Any]], filling: Optional[List[bool]] = None
+) -> "ListOfLocations":
+    """add a list of positions to existing atom arrangement."""
+    from .list import ListOfLocations
+
+    location_list = []
+
+    if filling:
+        for position, filled in zip(positions, filling):
+            location_list.append(LocationInfo(position, filled))
+
+    else:
+        for position in positions:
+            location_list.append(LocationInfo(position, True))
+
+    for location_info in self.enumerate():
+        location_list.append(location_info)
+
+    return ListOfLocations(location_list)
+

apply_defect_count

apply_defect_count(n_defects, rng=np.random.default_rng())
+

apply n_defects randomly to existing atom arrangement.

Source code in src/bloqade/ir/location/base.py
def apply_defect_count(
+    self, n_defects: int, rng: np.random.Generator = np.random.default_rng()
+) -> "ListOfLocations":
+    """apply n_defects randomly to existing atom arrangement."""
+    from .list import ListOfLocations
+
+    location_list = []
+    for location_info in self.enumerate():
+        location_list.append(location_info)
+
+    for _ in range(n_defects):
+        idx = rng.integers(0, len(location_list))
+        location_list[idx] = LocationInfo(
+            location_list[idx].position,
+            (False if location_list[idx].filling is SiteFilling.filled else True),
+        )
+
+    return ListOfLocations(location_list)
+

apply_defect_density

apply_defect_density(
+    defect_probability, rng=np.random.default_rng()
+)
+

apply defect_probability randomly to existing atom arrangement.

Source code in src/bloqade/ir/location/base.py
def apply_defect_density(
+    self,
+    defect_probability: float,
+    rng: np.random.Generator = np.random.default_rng(),
+) -> "ListOfLocations":
+    """apply defect_probability randomly to existing atom arrangement."""
+    from .list import ListOfLocations
+
+    p = min(1, max(0, defect_probability))
+    location_list = []
+
+    for location_info in self.enumerate():
+        if rng.random() < p:
+            location_list.append(
+                LocationInfo(
+                    location_info.position,
+                    (
+                        False
+                        if location_info.filling is SiteFilling.filled
+                        else True
+                    ),
+                )
+            )
+        else:
+            location_list.append(location_info)
+
+    return ListOfLocations(location_list=location_list)
+

enumerate

enumerate()
+

enumerate all locations in the register.

Source code in src/bloqade/ir/location/base.py
42
+43
+44
def enumerate(self) -> Generator[LocationInfo, None, None]:
+    """enumerate all locations in the register."""
+    raise NotImplementedError
+

figure

figure(**assignments)
+

obtain a figure object from the atom arrangement.

Source code in src/bloqade/ir/location/base.py
def figure(self, **assignments):
+    """obtain a figure object from the atom arrangement."""
+    xs_filled, ys_filled, labels_filled = [], [], []
+    xs_vacant, ys_vacant, labels_vacant = [], [], []
+    x_min = np.inf
+    x_max = -np.inf
+    y_min = np.inf
+    y_max = -np.inf
+    for idx, location_info in enumerate(self.enumerate()):
+        (x_var, y_var) = location_info.position
+        (x, y) = (float(x_var(**assignments)), float(y_var(**assignments)))
+        x_min = min(x, x_min)
+        y_min = min(y, y_min)
+        x_max = max(x, x_max)
+        y_max = max(y, y_max)
+        if location_info.filling is SiteFilling.filled:
+            xs_filled.append(x)
+            ys_filled.append(y)
+            labels_filled.append(idx)
+        else:
+            xs_vacant.append(x)
+            ys_vacant.append(y)
+            labels_vacant.append(idx)
+
+    # Ly = y_max - y_min
+    # Lx = x_max - x_min
+    # scale_x = (Lx+2)/(Ly+2)
+
+    if self.n_atoms > 0:
+        length_scale = max(y_max - y_min, x_max - x_min, 1)
+    else:
+        length_scale = 1
+
+    source_filled = ColumnDataSource(
+        data=dict(x=xs_filled, y=ys_filled, labels=labels_filled)
+    )
+    source_vacant = ColumnDataSource(
+        data=dict(x=xs_vacant, y=ys_vacant, labels=labels_vacant)
+    )
+    source_all = ColumnDataSource(
+        data=dict(
+            x=xs_vacant + xs_filled,
+            y=ys_vacant + ys_filled,
+            labels=labels_vacant + labels_filled,
+        )
+    )
+
+    TOOLTIPS = [
+        ("(x,y)", "(@x, @y)"),
+        ("index: ", "@labels"),
+    ]
+
+    ## remove box_zoom since we don't want to change the scale
+    p = figure(
+        width=400,
+        height=400,
+        tools="hover,wheel_zoom,reset, undo, redo, pan",
+        tooltips=TOOLTIPS,
+        toolbar_location="above",
+    )
+    p.x_range = Range1d(x_min - 1, x_min + length_scale + 1)
+    p.y_range = Range1d(y_min - 1, y_min + length_scale + 1)
+
+    p.circle(
+        "x", "y", source=source_filled, radius=0.015 * length_scale, fill_alpha=1
+    )
+    p.circle(
+        "x",
+        "y",
+        source=source_vacant,
+        radius=0.015 * length_scale,
+        fill_alpha=0.25,
+        color="grey",
+        line_width=0.2 * length_scale,
+    )
+
+    cr = p.circle(
+        "x",
+        "y",
+        source=source_all,
+        radius=0,  # in the same unit as the data
+        fill_alpha=0,
+        line_width=0.15 * length_scale,
+        visible=True,  # display by default
+    )
+
+    # adding rydberg radis input
+    # bind sources:
+
+    Brad_input = NumericInput(
+        value=0, low=0, title="Bloqade radius (um):", mode="float"
+    )
+
+    # js link toggle btn
+    toggle_button = Button(label="Toggle")
+    toggle_button.js_on_event(
+        "button_click",
+        CustomJS(args=dict(cr=cr), code="""cr.visible = !cr.visible;"""),
+    )
+
+    # js link radius
+    Brad_input.js_link("value", cr.glyph, "radius")
+
+    return p, row(Brad_input, toggle_button)
+

scale

scale(scale)
+

scale the atom arrangement with a given factor

Source code in src/bloqade/ir/location/base.py
def scale(self, scale: float | Scalar) -> "ListOfLocations":
+    """scale the atom arrangement with a given factor"""
+    from .list import ListOfLocations
+
+    scale = cast(scale)
+    location_list = []
+    for location_info in self.enumerate():
+        x, y = location_info.position
+        new_position = (scale * x, scale * y)
+        location_list.append(
+            LocationInfo(new_position, bool(location_info.filling.value))
+        )
+
+    return ListOfLocations(location_list)
+

show

show(**assignments)
+

show the register.

Source code in src/bloqade/ir/location/base.py
def show(self, **assignments) -> None:
+    """show the register."""
+    show(column(*self.figure(**assignments)))
+

ParallelRegister

ParallelRegister(register, cluster_spacing)
+

Bases: ProgramStart

Parallel Register

Source code in src/bloqade/ir/location/base.py
def __init__(self, register: AtomArrangement, cluster_spacing: Any):
+    if register.n_atoms > 0:
+        # calculate bounding box
+        # of this register
+        location_iter = register.enumerate()
+        (x, y) = next(location_iter).position
+        x_min = x
+        x_max = x
+        y_min = y
+        y_max = y
+
+        for location_info in location_iter:
+            (x, y) = location_info.position
+            x_min = x.min(x_min)
+            x_max = x.max(x_max)
+            y_min = y.min(y_min)
+            y_max = y.max(y_max)
+
+        shift_x = (x_max - x_min) + cluster_spacing
+        shift_y = (y_max - y_min) + cluster_spacing
+
+        register_locations = [
+            list(location_info.position) for location_info in register.enumerate()
+        ]
+        register_filling = [
+            location_info.filling.value for location_info in register.enumerate()
+        ]
+        shift_vectors = [[shift_x, cast(0)], [cast(0), shift_y]]
+    else:
+        raise ValueError("No locations to parallelize.")
+
+    self.register_locations = register_locations
+    self.register_filling = register_filling
+    self.shift_vectors = shift_vectors
+    super().__init__(register=self)
+
\ No newline at end of file diff --git a/dev/reference/bloqade/ir/location/bravais/bravais.md b/dev/reference/bloqade/ir/location/bravais/bravais.md new file mode 100644 index 0000000000..5e7e14591d --- /dev/null +++ b/dev/reference/bloqade/ir/location/bravais/bravais.md @@ -0,0 +1 @@ +::: bloqade.ir.location.bravais \ No newline at end of file diff --git a/dev/reference/bloqade/ir/location/bravais/index.html b/dev/reference/bloqade/ir/location/bravais/index.html new file mode 100644 index 0000000000..163e797793 --- /dev/null +++ b/dev/reference/bloqade/ir/location/bravais/index.html @@ -0,0 +1,126 @@ + Bravais - The Neutral Atom SDK

Bravais

BoundedBravais

BoundedBravais(*shape, lattice_spacing=1.0)
+

Bases: AtomArrangement

Base classe for Bravais lattices AtomArrangement.

Source code in src/bloqade/ir/location/bravais.py
36
+37
+38
+39
+40
+41
def __init__(self, *shape: int, lattice_spacing: Any = 1.0):
+    super().__init__()
+    self.shape = shape
+    self.lattice_spacing = cast(lattice_spacing)
+    self.__n_atoms = None
+    self.__n_dims = None
+

n_atoms property

n_atoms
+

number of atoms

Returns:

Name Type Description
int

number of atoms in the lattice

n_dims property

n_dims
+

dimension of the lattice

Returns:

Name Type Description
int

dimension of the lattice

coordinates

coordinates(index)
+

calculate the coordinates of a cell in the lattice given the cell index.

Source code in src/bloqade/ir/location/bravais.py
67
+68
+69
+70
+71
+72
+73
+74
+75
def coordinates(self, index: List[int]) -> NDArray:
+    """calculate the coordinates of a cell in the lattice
+    given the cell index.
+    """
+    # damn! this is like stone age broadcasting
+    vectors = np.array(self.cell_vectors())
+    index = np.array(index)
+    pos = np.sum(vectors.T * index, axis=1)
+    return pos + np.array(self.cell_atoms())
+

scale

scale(factor)
+

Scale the current location with a factor.

(x,y) -> factor*(x,y)

Parameters:

Name Type Description Default
factor float | Scalar

scale factor

required

Returns:

Name Type Description
BoundedBravais BoundedBravais

The lattice with the scaled locations

Source code in src/bloqade/ir/location/bravais.py
def scale(self, factor: float | Scalar) -> "BoundedBravais":
+    """Scale the current location with a factor.
+
+    (x,y) -> factor*(x,y)
+
+    Args:
+        factor (float | Scalar): scale factor
+
+    Returns:
+        BoundedBravais: The lattice with the scaled locations
+    """
+    factor = cast(factor)
+    obj = self.__new__(type(self))
+    for f in fields(self):
+        if f.name == "lattice_spacing":
+            obj.lattice_spacing = factor * self.lattice_spacing
+        else:
+            setattr(obj, f.name, getattr(self, f.name))
+    return obj
+

Chain

Chain(L, lattice_spacing=1.0)
+

Bases: BoundedBravais

Chain lattice.

  • 1D lattice
  • primitive (cell) vector(s)
    • a1 = (1,0).
  • unit cell (1 atom(s))
    • loc (0,0)

Parameters:

Name Type Description Default
L int

number of sites in the chain

required
lattice_spacing Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(self, L: int, lattice_spacing: Any = 1.0):
+    super().__init__(L, lattice_spacing=lattice_spacing)
+

Honeycomb

Honeycomb(L, lattice_spacing=1.0)
+

Bases: BoundedBravais

Honeycomb lattice.

  • 2D lattice
  • primitive (cell) vector(s)
    • a1 = (1, 0)
    • a2 = (½, sqrt(3)/2)
  • unit cell (2 atom(s))
    • loc1 (0, 0)
    • loc2 (½, 1/(2*sqrt(3))

Parameters:

Name Type Description Default
L int

number of sites in linear direction. n_atoms = L * L * 2.

required
lattice_spacing Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(self, L: int, lattice_spacing: Any = 1.0):
+    super().__init__(L, L, lattice_spacing=lattice_spacing)
+

Kagome

Kagome(L, lattice_spacing=1.0)
+

Bases: BoundedBravais

Kagome lattice.

  • 2D lattice
  • primitive (cell) vector(s)
    • a1 = (1, 0)
    • a2 = (½, sqrt(3)/2)
  • unit cell (3 atom(s))
    • loc1 (0, 0)
    • loc2 (0.5, 0)
    • loc3 (0.25 ,0.25sqrt(3))

Parameters:

Name Type Description Default
L int

number of sites in linear direction. n_atoms = L * L.

required
lattice_spacing Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(self, L: int, lattice_spacing: Any = 1.0):
+    super().__init__(L, L, lattice_spacing=lattice_spacing)
+

Lieb

Lieb(L, lattice_spacing=1.0)
+

Bases: BoundedBravais

Lieb lattice.

  • 2D lattice
  • primitive (cell) vector(s)
    • a1 = (1, 0)
    • a2 = (0, 1)
  • unit cell (3 atom(s))
    • loc1 (0, 0)
    • loc2 (0.5, 0)
    • loc3 (0 ,0.5)

Parameters:

Name Type Description Default
L int

number of sites in linear direction. n_atoms = L * L.

required
lattice_spacing Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(self, L: int, lattice_spacing: Any = 1.0):
+    super().__init__(L, L, lattice_spacing=lattice_spacing)
+

Rectangular

Rectangular(
+    width,
+    height,
+    lattice_spacing_x=1.0,
+    lattice_spacing_y=None,
+)
+

Bases: BoundedBravais

Rectangular lattice.

  • 2D lattice
  • primitive (cell) vector(s)
    • a1 = (1,0)
    • a2 = (0,1)
  • unit cell (1 atom(s))
    • loc (0,0)

Parameters:

Name Type Description Default
width int

number of sites in x direction.

required
height int

number of sites in y direction.

required
lattice_spacing_x Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
lattice_spacing_y Scalar, Real

lattice spacing in y direction. optional.

None
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(
+    self,
+    width: int,
+    height: int,
+    lattice_spacing_x: Any = 1.0,
+    lattice_spacing_y: Optional[Any] = None,
+):
+    if lattice_spacing_y is None:
+        self.ratio = cast(1.0) / cast(lattice_spacing_x)
+    else:
+        self.ratio = cast(lattice_spacing_y) / cast(lattice_spacing_x)
+
+    super().__init__(width, height, lattice_spacing=lattice_spacing_x)
+

Square

Square(L, lattice_spacing=1.0)
+

Bases: BoundedBravais

Square lattice.

  • 2D lattice
  • primitive (cell) vector(s)
    • a1 = (1,0)
    • a2 = (0,1)
  • unit cell (1 atom(s))
    • loc (0,0)

Parameters:

Name Type Description Default
L int

number of sites in linear direction. n_atoms = L * L.

required
lattice_spacing Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(self, L: int, lattice_spacing: Any = 1.0):
+    super().__init__(L, L, lattice_spacing=lattice_spacing)
+

Triangular

Triangular(L, lattice_spacing=1.0)
+

Bases: BoundedBravais

Triangular lattice.

  • 2D lattice
  • primitive (cell) vector(s)
    • a1 = (1, 0)
    • a2 = (½, sqrt(3)/2)
  • unit cell (1 atom(s))
    • loc (0, 0)

Parameters:

Name Type Description Default
L int

number of sites in linear direction. n_atoms = L * L.

required
lattice_spacing Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(self, L: int, lattice_spacing: Any = 1.0):
+    super().__init__(L, L, lattice_spacing=lattice_spacing)
+
\ No newline at end of file diff --git a/dev/reference/bloqade/ir/location/index.html b/dev/reference/bloqade/ir/location/index.html new file mode 100644 index 0000000000..83936c982d --- /dev/null +++ b/dev/reference/bloqade/ir/location/index.html @@ -0,0 +1,467 @@ + Index - The Neutral Atom SDK

Index

start module-attribute

start = ListOfLocations()
+
  • Program starting node
  • Possible Next

    -> start.rydberg :: address rydberg level coupling

    -> start.hyperfine :: address hyperfine level coupling

  • Possible Next

    -> start.add_locations(List[Tuple[int]]) :: add multiple atoms to current register

    -> start.add_location(Tuple[int]) :: add atom to current register

AtomArrangement

AtomArrangement()
+

Bases: ProgramStart

Source code in src/bloqade/ir/location/base.py
def __init__(self) -> None:
+    super().__init__(register=self)
+

n_atoms property

n_atoms: int
+

number of atoms in the register.

n_dims property

n_dims: int
+

number of dimensions in the register.

add_position

add_position(position, filled=True)
+

add a position to existing atom arrangement.

Source code in src/bloqade/ir/location/base.py
def add_position(
+    self, position: Tuple[Any, Any], filled: bool = True
+) -> "ListOfLocations":
+    """add a position to existing atom arrangement."""
+
+    from .list import ListOfLocations
+
+    location_list = [LocationInfo(position, filled)]
+    for location_info in self.enumerate():
+        location_list.append(location_info)
+
+    return ListOfLocations(location_list)
+

add_positions

add_positions(positions, filling=None)
+

add a list of positions to existing atom arrangement.

Source code in src/bloqade/ir/location/base.py
def add_positions(
+    self, positions: List[Tuple[Any, Any]], filling: Optional[List[bool]] = None
+) -> "ListOfLocations":
+    """add a list of positions to existing atom arrangement."""
+    from .list import ListOfLocations
+
+    location_list = []
+
+    if filling:
+        for position, filled in zip(positions, filling):
+            location_list.append(LocationInfo(position, filled))
+
+    else:
+        for position in positions:
+            location_list.append(LocationInfo(position, True))
+
+    for location_info in self.enumerate():
+        location_list.append(location_info)
+
+    return ListOfLocations(location_list)
+

apply_defect_count

apply_defect_count(n_defects, rng=np.random.default_rng())
+

apply n_defects randomly to existing atom arrangement.

Source code in src/bloqade/ir/location/base.py
def apply_defect_count(
+    self, n_defects: int, rng: np.random.Generator = np.random.default_rng()
+) -> "ListOfLocations":
+    """apply n_defects randomly to existing atom arrangement."""
+    from .list import ListOfLocations
+
+    location_list = []
+    for location_info in self.enumerate():
+        location_list.append(location_info)
+
+    for _ in range(n_defects):
+        idx = rng.integers(0, len(location_list))
+        location_list[idx] = LocationInfo(
+            location_list[idx].position,
+            (False if location_list[idx].filling is SiteFilling.filled else True),
+        )
+
+    return ListOfLocations(location_list)
+

apply_defect_density

apply_defect_density(
+    defect_probability, rng=np.random.default_rng()
+)
+

apply defect_probability randomly to existing atom arrangement.

Source code in src/bloqade/ir/location/base.py
def apply_defect_density(
+    self,
+    defect_probability: float,
+    rng: np.random.Generator = np.random.default_rng(),
+) -> "ListOfLocations":
+    """apply defect_probability randomly to existing atom arrangement."""
+    from .list import ListOfLocations
+
+    p = min(1, max(0, defect_probability))
+    location_list = []
+
+    for location_info in self.enumerate():
+        if rng.random() < p:
+            location_list.append(
+                LocationInfo(
+                    location_info.position,
+                    (
+                        False
+                        if location_info.filling is SiteFilling.filled
+                        else True
+                    ),
+                )
+            )
+        else:
+            location_list.append(location_info)
+
+    return ListOfLocations(location_list=location_list)
+

enumerate

enumerate()
+

enumerate all locations in the register.

Source code in src/bloqade/ir/location/base.py
42
+43
+44
def enumerate(self) -> Generator[LocationInfo, None, None]:
+    """enumerate all locations in the register."""
+    raise NotImplementedError
+

figure

figure(**assignments)
+

obtain a figure object from the atom arrangement.

Source code in src/bloqade/ir/location/base.py
def figure(self, **assignments):
+    """obtain a figure object from the atom arrangement."""
+    xs_filled, ys_filled, labels_filled = [], [], []
+    xs_vacant, ys_vacant, labels_vacant = [], [], []
+    x_min = np.inf
+    x_max = -np.inf
+    y_min = np.inf
+    y_max = -np.inf
+    for idx, location_info in enumerate(self.enumerate()):
+        (x_var, y_var) = location_info.position
+        (x, y) = (float(x_var(**assignments)), float(y_var(**assignments)))
+        x_min = min(x, x_min)
+        y_min = min(y, y_min)
+        x_max = max(x, x_max)
+        y_max = max(y, y_max)
+        if location_info.filling is SiteFilling.filled:
+            xs_filled.append(x)
+            ys_filled.append(y)
+            labels_filled.append(idx)
+        else:
+            xs_vacant.append(x)
+            ys_vacant.append(y)
+            labels_vacant.append(idx)
+
+    # Ly = y_max - y_min
+    # Lx = x_max - x_min
+    # scale_x = (Lx+2)/(Ly+2)
+
+    if self.n_atoms > 0:
+        length_scale = max(y_max - y_min, x_max - x_min, 1)
+    else:
+        length_scale = 1
+
+    source_filled = ColumnDataSource(
+        data=dict(x=xs_filled, y=ys_filled, labels=labels_filled)
+    )
+    source_vacant = ColumnDataSource(
+        data=dict(x=xs_vacant, y=ys_vacant, labels=labels_vacant)
+    )
+    source_all = ColumnDataSource(
+        data=dict(
+            x=xs_vacant + xs_filled,
+            y=ys_vacant + ys_filled,
+            labels=labels_vacant + labels_filled,
+        )
+    )
+
+    TOOLTIPS = [
+        ("(x,y)", "(@x, @y)"),
+        ("index: ", "@labels"),
+    ]
+
+    ## remove box_zoom since we don't want to change the scale
+    p = figure(
+        width=400,
+        height=400,
+        tools="hover,wheel_zoom,reset, undo, redo, pan",
+        tooltips=TOOLTIPS,
+        toolbar_location="above",
+    )
+    p.x_range = Range1d(x_min - 1, x_min + length_scale + 1)
+    p.y_range = Range1d(y_min - 1, y_min + length_scale + 1)
+
+    p.circle(
+        "x", "y", source=source_filled, radius=0.015 * length_scale, fill_alpha=1
+    )
+    p.circle(
+        "x",
+        "y",
+        source=source_vacant,
+        radius=0.015 * length_scale,
+        fill_alpha=0.25,
+        color="grey",
+        line_width=0.2 * length_scale,
+    )
+
+    cr = p.circle(
+        "x",
+        "y",
+        source=source_all,
+        radius=0,  # in the same unit as the data
+        fill_alpha=0,
+        line_width=0.15 * length_scale,
+        visible=True,  # display by default
+    )
+
+    # adding rydberg radis input
+    # bind sources:
+
+    Brad_input = NumericInput(
+        value=0, low=0, title="Bloqade radius (um):", mode="float"
+    )
+
+    # js link toggle btn
+    toggle_button = Button(label="Toggle")
+    toggle_button.js_on_event(
+        "button_click",
+        CustomJS(args=dict(cr=cr), code="""cr.visible = !cr.visible;"""),
+    )
+
+    # js link radius
+    Brad_input.js_link("value", cr.glyph, "radius")
+
+    return p, row(Brad_input, toggle_button)
+

scale

scale(scale)
+

scale the atom arrangement with a given factor

Source code in src/bloqade/ir/location/base.py
def scale(self, scale: float | Scalar) -> "ListOfLocations":
+    """scale the atom arrangement with a given factor"""
+    from .list import ListOfLocations
+
+    scale = cast(scale)
+    location_list = []
+    for location_info in self.enumerate():
+        x, y = location_info.position
+        new_position = (scale * x, scale * y)
+        location_list.append(
+            LocationInfo(new_position, bool(location_info.filling.value))
+        )
+
+    return ListOfLocations(location_list)
+

show

show(**assignments)
+

show the register.

Source code in src/bloqade/ir/location/base.py
def show(self, **assignments) -> None:
+    """show the register."""
+    show(column(*self.figure(**assignments)))
+

Chain

Chain(L, lattice_spacing=1.0)
+

Bases: BoundedBravais

Chain lattice.

  • 1D lattice
  • primitive (cell) vector(s)
    • a1 = (1,0).
  • unit cell (1 atom(s))
    • loc (0,0)

Parameters:

Name Type Description Default
L int

number of sites in the chain

required
lattice_spacing Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(self, L: int, lattice_spacing: Any = 1.0):
+    super().__init__(L, lattice_spacing=lattice_spacing)
+

Honeycomb

Honeycomb(L, lattice_spacing=1.0)
+

Bases: BoundedBravais

Honeycomb lattice.

  • 2D lattice
  • primitive (cell) vector(s)
    • a1 = (1, 0)
    • a2 = (½, sqrt(3)/2)
  • unit cell (2 atom(s))
    • loc1 (0, 0)
    • loc2 (½, 1/(2*sqrt(3))

Parameters:

Name Type Description Default
L int

number of sites in linear direction. n_atoms = L * L * 2.

required
lattice_spacing Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(self, L: int, lattice_spacing: Any = 1.0):
+    super().__init__(L, L, lattice_spacing=lattice_spacing)
+

Kagome

Kagome(L, lattice_spacing=1.0)
+

Bases: BoundedBravais

Kagome lattice.

  • 2D lattice
  • primitive (cell) vector(s)
    • a1 = (1, 0)
    • a2 = (½, sqrt(3)/2)
  • unit cell (3 atom(s))
    • loc1 (0, 0)
    • loc2 (0.5, 0)
    • loc3 (0.25 ,0.25sqrt(3))

Parameters:

Name Type Description Default
L int

number of sites in linear direction. n_atoms = L * L.

required
lattice_spacing Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(self, L: int, lattice_spacing: Any = 1.0):
+    super().__init__(L, L, lattice_spacing=lattice_spacing)
+

Lieb

Lieb(L, lattice_spacing=1.0)
+

Bases: BoundedBravais

Lieb lattice.

  • 2D lattice
  • primitive (cell) vector(s)
    • a1 = (1, 0)
    • a2 = (0, 1)
  • unit cell (3 atom(s))
    • loc1 (0, 0)
    • loc2 (0.5, 0)
    • loc3 (0 ,0.5)

Parameters:

Name Type Description Default
L int

number of sites in linear direction. n_atoms = L * L.

required
lattice_spacing Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(self, L: int, lattice_spacing: Any = 1.0):
+    super().__init__(L, L, lattice_spacing=lattice_spacing)
+

Rectangular

Rectangular(
+    width,
+    height,
+    lattice_spacing_x=1.0,
+    lattice_spacing_y=None,
+)
+

Bases: BoundedBravais

Rectangular lattice.

  • 2D lattice
  • primitive (cell) vector(s)
    • a1 = (1,0)
    • a2 = (0,1)
  • unit cell (1 atom(s))
    • loc (0,0)

Parameters:

Name Type Description Default
width int

number of sites in x direction.

required
height int

number of sites in y direction.

required
lattice_spacing_x Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
lattice_spacing_y Scalar, Real

lattice spacing in y direction. optional.

None
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(
+    self,
+    width: int,
+    height: int,
+    lattice_spacing_x: Any = 1.0,
+    lattice_spacing_y: Optional[Any] = None,
+):
+    if lattice_spacing_y is None:
+        self.ratio = cast(1.0) / cast(lattice_spacing_x)
+    else:
+        self.ratio = cast(lattice_spacing_y) / cast(lattice_spacing_x)
+
+    super().__init__(width, height, lattice_spacing=lattice_spacing_x)
+

Square

Square(L, lattice_spacing=1.0)
+

Bases: BoundedBravais

Square lattice.

  • 2D lattice
  • primitive (cell) vector(s)
    • a1 = (1,0)
    • a2 = (0,1)
  • unit cell (1 atom(s))
    • loc (0,0)

Parameters:

Name Type Description Default
L int

number of sites in linear direction. n_atoms = L * L.

required
lattice_spacing Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(self, L: int, lattice_spacing: Any = 1.0):
+    super().__init__(L, L, lattice_spacing=lattice_spacing)
+

Triangular

Triangular(L, lattice_spacing=1.0)
+

Bases: BoundedBravais

Triangular lattice.

  • 2D lattice
  • primitive (cell) vector(s)
    • a1 = (1, 0)
    • a2 = (½, sqrt(3)/2)
  • unit cell (1 atom(s))
    • loc (0, 0)

Parameters:

Name Type Description Default
L int

number of sites in linear direction. n_atoms = L * L.

required
lattice_spacing Scalar, Real

lattice spacing. Defaults to 1.0.

1.0
  • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
Source code in src/bloqade/ir/location/bravais.py
def __init__(self, L: int, lattice_spacing: Any = 1.0):
+    super().__init__(L, L, lattice_spacing=lattice_spacing)
+
\ No newline at end of file diff --git a/dev/reference/bloqade/ir/location/index.md b/dev/reference/bloqade/ir/location/index.md new file mode 100644 index 0000000000..e805f16eca --- /dev/null +++ b/dev/reference/bloqade/ir/location/index.md @@ -0,0 +1 @@ +::: bloqade.ir.location \ No newline at end of file diff --git a/dev/reference/bloqade/ir/location/list/index.html b/dev/reference/bloqade/ir/location/list/index.html new file mode 100644 index 0000000000..2cde9b2fea --- /dev/null +++ b/dev/reference/bloqade/ir/location/list/index.html @@ -0,0 +1,2 @@ + List - The Neutral Atom SDK

List

start module-attribute

start = ListOfLocations()
+
  • Program starting node
  • Possible Next

    -> start.rydberg :: address rydberg level coupling

    -> start.hyperfine :: address hyperfine level coupling

  • Possible Next

    -> start.add_locations(List[Tuple[int]]) :: add multiple atoms to current register

    -> start.add_location(Tuple[int]) :: add atom to current register

\ No newline at end of file diff --git a/dev/reference/bloqade/ir/location/list/list.md b/dev/reference/bloqade/ir/location/list/list.md new file mode 100644 index 0000000000..43c271e09d --- /dev/null +++ b/dev/reference/bloqade/ir/location/list/list.md @@ -0,0 +1 @@ +::: bloqade.ir.location.list \ No newline at end of file diff --git a/dev/reference/bloqade/ir/location/quera_task_result/index.html b/dev/reference/bloqade/ir/location/quera_task_result/index.html new file mode 100644 index 0000000000..9efa5efa9f --- /dev/null +++ b/dev/reference/bloqade/ir/location/quera_task_result/index.html @@ -0,0 +1,41 @@ + Quera task result - The Neutral Atom SDK

Quera task result

QuEraTaskResults

Bases: BaseModel

export_as_probabilities

export_as_probabilities()
+

converts from shot results to probabilities

Returns:

Name Type Description
TaskProbabilities TaskProbabilities

The task results as probabilties

Source code in src/bloqade/ir/location/quera_task_result.py
62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
def export_as_probabilities(self) -> TaskProbabilities:
+    """converts from shot results to probabilities
+
+    Returns:
+        TaskProbabilities: The task results as probabilties
+    """
+    counts = dict()
+    nshots = len(self.shot_outputs)
+    for shot_result in self.shot_outputs:
+        pre_sequence_str = "".join(str(bit) for bit in shot_result.pre_sequence)
+
+        post_sequence_str = "".join(str(bit) for bit in shot_result.post_sequence)
+
+        configuration = (pre_sequence_str, post_sequence_str)
+        # iterative average
+        current_count = counts.get(configuration, 0)
+        counts[configuration] = current_count + 1
+
+    probabilities = [(config, count / nshots) for config, count in counts.items()]
+    return TaskProbabilities(probabilities=probabilities)
+
\ No newline at end of file diff --git a/dev/reference/bloqade/ir/location/quera_task_result/quera_task_result.md b/dev/reference/bloqade/ir/location/quera_task_result/quera_task_result.md new file mode 100644 index 0000000000..441cfb8202 --- /dev/null +++ b/dev/reference/bloqade/ir/location/quera_task_result/quera_task_result.md @@ -0,0 +1 @@ +::: bloqade.ir.location.quera_task_result \ No newline at end of file diff --git a/dev/reference/bloqade/ir/program/index.html b/dev/reference/bloqade/ir/program/index.html new file mode 100644 index 0000000000..411bf5c72f --- /dev/null +++ b/dev/reference/bloqade/ir/program/index.html @@ -0,0 +1,17 @@ + Program - The Neutral Atom SDK

Program

Program

Program(register, sequence)
+

Program is a dummy type that bundle register and sequence together.

Source code in src/bloqade/ir/program.py
13
+14
+15
+16
+17
+18
+19
def __init__(
+    self,
+    register: Union["AtomArrangement", "ParallelRegister"],
+    sequence: Sequence,
+):
+    self._sequence = sequence
+    self._register = register
+

register property

register
+

Get the register of the program.

Returns:

Type Description

register (Union["AtomArrangement", "ParallelRegister"])

Note

If the program is built with parallelize(), The the register will be a ParallelRegister. Otherwise it will be a AtomArrangement.

sequence property

sequence
+

Get the sequence of the program.

Returns:

Name Type Description
Sequence

the sequence of the program. See also Sequence.

\ No newline at end of file diff --git a/dev/reference/bloqade/ir/program/program.md b/dev/reference/bloqade/ir/program/program.md new file mode 100644 index 0000000000..73e84e0ae0 --- /dev/null +++ b/dev/reference/bloqade/ir/program/program.md @@ -0,0 +1 @@ +::: bloqade.ir.program \ No newline at end of file diff --git a/dev/reference/bloqade/ir/scalar/index.html b/dev/reference/bloqade/ir/scalar/index.html new file mode 100644 index 0000000000..73feec7497 --- /dev/null +++ b/dev/reference/bloqade/ir/scalar/index.html @@ -0,0 +1,80 @@ + Scalar - The Neutral Atom SDK

Scalar

Literal

Bases: Real

value class-attribute

value: Decimal
+

Scalar Literal, which stores a decimaal value instance.

Parameters:

Name Type Description Default
value Decimal

decimal value instance

required

Scalar

Base class for all scalar expressions.

<scalar> ::= <literal>
+| <variable>
+| <default>
+| <negative>
+| <add>
+| <mul>
+| <min>
+| <max>
+| <slice>
+| <inverval>
+
+<mul> ::= <scalar> '*' <scalar>
+<add> ::= <scalar> '+' <scalar>
+<min> ::= 'min' <scalar>+
+<max> ::= 'max' <scalar>+
+<slice> ::= <scalar expr> '[' <interval> ']'
+<interval> ::= <scalar expr> '..' <scalar expr>
+<real> ::= <literal> | <var>
+

Variable

Bases: Real

Variable, which stores a variable name.

Parameters:

Name Type Description Default
name str

variable instance.

required

cast

cast(py)
+

cast Real number (or list/tuple of Real numbers) to Scalar Literal.

Parameters:

Name Type Description Default
py Union[Real, Tuple[Real], List[Real]]

python object to cast

required

Returns:

Type Description
Any

Union[Literal,Tuple[Literal],List[Literal]]

Source code in src/bloqade/ir/scalar.py
def cast(py) -> Any:
+    """cast Real number (or list/tuple of Real numbers)
+    to [`Scalar Literal`][bloqade.ir.scalar.Literal].
+
+    Args:
+        py (Union[Real,Tuple[Real],List[Real]]): python object to cast
+
+    Returns:
+        Union[Literal,Tuple[Literal],List[Literal]]
+    """
+    ret = trycast(py)
+    if ret is None:
+        raise TypeError(f"Cannot cast {type(py)} to Scalar Literal")
+
+    return ret
+

var

var(py)
+

cast string (or list/tuple of strings) to Variable.

Parameters:

Name Type Description Default
py Union[str, List[str], Tuple[str]]

a string or list/tuple of strings

required

Returns:

Type Description
Any

Union[Variable, List[Variable], Tuple[Variable]]

Source code in src/bloqade/ir/scalar.py
def var(py: Union[str, List[str]]) -> Any:
+    """cast string (or list/tuple of strings)
+    to [`Variable`][bloqade.ir.scalar.Variable].
+
+    Args:
+        py (Union[str, List[str], Tuple[str]]): a string or list/tuple of strings
+
+    Returns:
+       Union[Variable, List[Variable], Tuple[Variable]]
+    """
+    ret = tryvar(py)
+    if ret is None:
+        raise TypeError(f"Cannot cast {type(py)} to Variable")
+
+    return ret
+
\ No newline at end of file diff --git a/dev/reference/bloqade/ir/scalar/scalar.md b/dev/reference/bloqade/ir/scalar/scalar.md new file mode 100644 index 0000000000..1f4427866a --- /dev/null +++ b/dev/reference/bloqade/ir/scalar/scalar.md @@ -0,0 +1 @@ +::: bloqade.ir.scalar \ No newline at end of file diff --git a/dev/reference/bloqade/submission/base/base.md b/dev/reference/bloqade/submission/base/base.md new file mode 100644 index 0000000000..03b0d5b84e --- /dev/null +++ b/dev/reference/bloqade/submission/base/base.md @@ -0,0 +1 @@ +::: bloqade.submission.base \ No newline at end of file diff --git a/dev/reference/bloqade/submission/base/index.html b/dev/reference/bloqade/submission/base/index.html new file mode 100644 index 0000000000..4787131241 --- /dev/null +++ b/dev/reference/bloqade/submission/base/index.html @@ -0,0 +1 @@ + Base - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/braket/braket.md b/dev/reference/bloqade/submission/braket/braket.md new file mode 100644 index 0000000000..03ba2e2664 --- /dev/null +++ b/dev/reference/bloqade/submission/braket/braket.md @@ -0,0 +1 @@ +::: bloqade.submission.braket \ No newline at end of file diff --git a/dev/reference/bloqade/submission/braket/index.html b/dev/reference/bloqade/submission/braket/index.html new file mode 100644 index 0000000000..4f42a5a457 --- /dev/null +++ b/dev/reference/bloqade/submission/braket/index.html @@ -0,0 +1 @@ + Braket - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/capabilities/capabilities.md b/dev/reference/bloqade/submission/capabilities/capabilities.md new file mode 100644 index 0000000000..6553be20a5 --- /dev/null +++ b/dev/reference/bloqade/submission/capabilities/capabilities.md @@ -0,0 +1 @@ +::: bloqade.submission.capabilities \ No newline at end of file diff --git a/dev/reference/bloqade/submission/capabilities/index.html b/dev/reference/bloqade/submission/capabilities/index.html new file mode 100644 index 0000000000..f9027f371e --- /dev/null +++ b/dev/reference/bloqade/submission/capabilities/index.html @@ -0,0 +1 @@ + Capabilities - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/index.html b/dev/reference/bloqade/submission/index.html new file mode 100644 index 0000000000..e9aad4c138 --- /dev/null +++ b/dev/reference/bloqade/submission/index.html @@ -0,0 +1 @@ + Index - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/index.md b/dev/reference/bloqade/submission/index.md new file mode 100644 index 0000000000..8da3b00a18 --- /dev/null +++ b/dev/reference/bloqade/submission/index.md @@ -0,0 +1 @@ +::: bloqade.submission \ No newline at end of file diff --git a/dev/reference/bloqade/submission/ir/braket/braket.md b/dev/reference/bloqade/submission/ir/braket/braket.md new file mode 100644 index 0000000000..4d0a3210e5 --- /dev/null +++ b/dev/reference/bloqade/submission/ir/braket/braket.md @@ -0,0 +1 @@ +::: bloqade.submission.ir.braket \ No newline at end of file diff --git a/dev/reference/bloqade/submission/ir/braket/index.html b/dev/reference/bloqade/submission/ir/braket/index.html new file mode 100644 index 0000000000..cee6e4d8d3 --- /dev/null +++ b/dev/reference/bloqade/submission/ir/braket/index.html @@ -0,0 +1 @@ + Braket - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/ir/capabilities/capabilities.md b/dev/reference/bloqade/submission/ir/capabilities/capabilities.md new file mode 100644 index 0000000000..b0922bad43 --- /dev/null +++ b/dev/reference/bloqade/submission/ir/capabilities/capabilities.md @@ -0,0 +1 @@ +::: bloqade.submission.ir.capabilities \ No newline at end of file diff --git a/dev/reference/bloqade/submission/ir/capabilities/index.html b/dev/reference/bloqade/submission/ir/capabilities/index.html new file mode 100644 index 0000000000..bf5516d193 --- /dev/null +++ b/dev/reference/bloqade/submission/ir/capabilities/index.html @@ -0,0 +1 @@ + Capabilities - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/ir/index.html b/dev/reference/bloqade/submission/ir/index.html new file mode 100644 index 0000000000..5819e1fcce --- /dev/null +++ b/dev/reference/bloqade/submission/ir/index.html @@ -0,0 +1 @@ + Index - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/ir/index.md b/dev/reference/bloqade/submission/ir/index.md new file mode 100644 index 0000000000..bea62013ff --- /dev/null +++ b/dev/reference/bloqade/submission/ir/index.md @@ -0,0 +1 @@ +::: bloqade.submission.ir \ No newline at end of file diff --git a/dev/reference/bloqade/submission/ir/parallel/index.html b/dev/reference/bloqade/submission/ir/parallel/index.html new file mode 100644 index 0000000000..6e76501548 --- /dev/null +++ b/dev/reference/bloqade/submission/ir/parallel/index.html @@ -0,0 +1 @@ + Parallel - The Neutral Atom SDK

Parallel

ClusterLocationInfo

Bases: BaseModel

Class that stores the mapping of batched jobs.

Parameters:

Name Type Description Default
cluster_index int

the index of the cluster a site belongs to

required
global_location_index int

the index of the site in the multplexed system

required
cluster_location_index int

the index of the site in the original system

required
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/ir/parallel/parallel.md b/dev/reference/bloqade/submission/ir/parallel/parallel.md new file mode 100644 index 0000000000..86710ff83e --- /dev/null +++ b/dev/reference/bloqade/submission/ir/parallel/parallel.md @@ -0,0 +1 @@ +::: bloqade.submission.ir.parallel \ No newline at end of file diff --git a/dev/reference/bloqade/submission/ir/task_results/index.html b/dev/reference/bloqade/submission/ir/task_results/index.html new file mode 100644 index 0000000000..5d264eac12 --- /dev/null +++ b/dev/reference/bloqade/submission/ir/task_results/index.html @@ -0,0 +1,41 @@ + Task results - The Neutral Atom SDK

Task results

QuEraTaskResults

Bases: BaseModel

export_as_probabilities

export_as_probabilities()
+

converts from shot results to probabilities

Returns:

Name Type Description
TaskProbabilities TaskProbabilities

The task results as probabilties

Source code in src/bloqade/submission/ir/task_results.py
67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
def export_as_probabilities(self) -> TaskProbabilities:
+    """converts from shot results to probabilities
+
+    Returns:
+        TaskProbabilities: The task results as probabilties
+    """
+    counts = dict()
+    nshots = len(self.shot_outputs)
+    for shot_result in self.shot_outputs:
+        pre_sequence_str = "".join(str(bit) for bit in shot_result.pre_sequence)
+
+        post_sequence_str = "".join(str(bit) for bit in shot_result.post_sequence)
+
+        configuration = (pre_sequence_str, post_sequence_str)
+        # iterative average
+        current_count = counts.get(configuration, 0)
+        counts[configuration] = current_count + 1
+
+    probabilities = [(config, count / nshots) for config, count in counts.items()]
+    return TaskProbabilities(probabilities=probabilities)
+
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/ir/task_results/task_results.md b/dev/reference/bloqade/submission/ir/task_results/task_results.md new file mode 100644 index 0000000000..a41066fe57 --- /dev/null +++ b/dev/reference/bloqade/submission/ir/task_results/task_results.md @@ -0,0 +1 @@ +::: bloqade.submission.ir.task_results \ No newline at end of file diff --git a/dev/reference/bloqade/submission/ir/task_specification/index.html b/dev/reference/bloqade/submission/ir/task_specification/index.html new file mode 100644 index 0000000000..2af77d5c4c --- /dev/null +++ b/dev/reference/bloqade/submission/ir/task_specification/index.html @@ -0,0 +1 @@ + Task specification - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/ir/task_specification/task_specification.md b/dev/reference/bloqade/submission/ir/task_specification/task_specification.md new file mode 100644 index 0000000000..7792128f6a --- /dev/null +++ b/dev/reference/bloqade/submission/ir/task_specification/task_specification.md @@ -0,0 +1 @@ +::: bloqade.submission.ir.task_specification \ No newline at end of file diff --git a/dev/reference/bloqade/submission/mock/index.html b/dev/reference/bloqade/submission/mock/index.html new file mode 100644 index 0000000000..40c614f462 --- /dev/null +++ b/dev/reference/bloqade/submission/mock/index.html @@ -0,0 +1 @@ + Mock - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/mock/mock.md b/dev/reference/bloqade/submission/mock/mock.md new file mode 100644 index 0000000000..58ed594761 --- /dev/null +++ b/dev/reference/bloqade/submission/mock/mock.md @@ -0,0 +1 @@ +::: bloqade.submission.mock \ No newline at end of file diff --git a/dev/reference/bloqade/submission/quera/index.html b/dev/reference/bloqade/submission/quera/index.html new file mode 100644 index 0000000000..e2fed9846f --- /dev/null +++ b/dev/reference/bloqade/submission/quera/index.html @@ -0,0 +1 @@ + Quera - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/quera/quera.md b/dev/reference/bloqade/submission/quera/quera.md new file mode 100644 index 0000000000..1b4480d487 --- /dev/null +++ b/dev/reference/bloqade/submission/quera/quera.md @@ -0,0 +1 @@ +::: bloqade.submission.quera \ No newline at end of file diff --git a/dev/reference/bloqade/submission/quera_api_client/api/api.md b/dev/reference/bloqade/submission/quera_api_client/api/api.md new file mode 100644 index 0000000000..c95a5c37e9 --- /dev/null +++ b/dev/reference/bloqade/submission/quera_api_client/api/api.md @@ -0,0 +1 @@ +::: bloqade.submission.quera_api_client.api \ No newline at end of file diff --git a/dev/reference/bloqade/submission/quera_api_client/api/index.html b/dev/reference/bloqade/submission/quera_api_client/api/index.html new file mode 100644 index 0000000000..3ad575ca1b --- /dev/null +++ b/dev/reference/bloqade/submission/quera_api_client/api/index.html @@ -0,0 +1,674 @@ + Api - The Neutral Atom SDK

Api

ApiRequest

ApiRequest(
+    api_hostname, qpu_id, api_stage="v0", proxy=None
+)
+

Class that defines base methods for API requests.

@param qpu_id: The QPU ID, for example qpu1-mock. @param api_stage: Specify which version of the API to call from this object. @param proxy: Optional, the hostname for running the API via some proxy endpoint.

Source code in src/bloqade/submission/quera_api_client/api.py
20
+21
+22
+23
+24
+25
+26
+27
+28
+29
+30
+31
+32
+33
+34
+35
+36
+37
+38
+39
+40
+41
+42
+43
+44
+45
+46
+47
def __init__(
+    self,
+    api_hostname: str,
+    qpu_id: str,
+    api_stage="v0",
+    proxy: Optional[str] = None,
+):
+    """
+    Create an instance of `ApiRequest`.
+    @param api_hostname: hostname of the API instance.
+    @param qpu_id: The QPU ID, for example `qpu1-mock`.
+    @param api_stage: Specify which version of the API to call from this object.
+    @param proxy: Optional, the hostname for running the API via some proxy
+    endpoint.
+    """
+
+    if proxy is None:
+        self.hostname = None
+        self.aws_host = api_hostname
+        uri_with_version = api_hostname + f"/{api_stage}"
+    else:
+        self.hostname = api_hostname
+        self.aws_host = proxy
+        uri_with_version = proxy + f"/{api_stage}"
+
+    self.base_url = "https://" + uri_with_version
+    self.qpu_id = qpu_id
+    self.logger = logging.getLogger(self.__class__.__name__)
+

AwsApiRequest

AwsApiRequest(
+    api_hostname,
+    qpu_id,
+    api_stage="v0",
+    proxy=None,
+    region="us-east-1",
+    access_key=None,
+    secret_key=None,
+    session_token=None,
+    session_expires=3600,
+    role_arn=None,
+    role_session_name="awsrequest",
+    profile=None,
+)
+

Bases: ApiRequest

@param qpu_id: The QPU ID, for example qpu1-mock. @param api_stage: Specify which version of the API to call from this object. @param proxy: Optional, the hostname for running the API via some proxy endpoint. @param region: AWS region, default value: "us-east-1" @param access_key: Optional, AWS account access key @param secret_key: Optional, AWS account secret key @param session_token: Optional, AWS session token @param session_expires: int, time before current tokens expire, default value 3600 @param role_arn: Optional, AWS role ARN @param role_session_name: AWS role session name, defualy value: 'awsrequest', @param profile: Optional, AWS profile to use credentials for.

Source code in src/bloqade/submission/quera_api_client/api.py
def __init__(
+    self,
+    api_hostname: str,
+    qpu_id: str,
+    api_stage="v0",
+    proxy: Optional[str] = None,
+    # Sigv4Request arguments
+    region: str = "us-east-1",
+    access_key: Optional[str] = None,
+    secret_key: Optional[str] = None,
+    session_token: Optional[str] = None,
+    session_expires: int = 3600,
+    role_arn: Optional[str] = None,
+    role_session_name: str = "awsrequest",
+    profile: Optional[str] = None,
+):
+    """
+    Create an instance of `AwsApiRequest`.
+    @param api_hostname: hostname of the API instance.
+    @param qpu_id: The QPU ID, for example `qpu1-mock`.
+    @param api_stage: Specify which version of the API to call from this object.
+    @param proxy: Optional, the hostname for running the API via some proxy
+    endpoint.
+    @param region: AWS region, default value: "us-east-1"
+    @param access_key: Optional, AWS account access key
+    @param secret_key: Optional, AWS account secret key
+    @param session_token: Optional, AWS session token
+    @param session_expires: int, time before current tokens expire, default value
+    3600
+    @param role_arn: Optional, AWS role ARN
+    @param role_session_name: AWS role session name, defualy value: 'awsrequest',
+    @param profile: Optional, AWS profile to use credentials for.
+    """
+    super().__init__(api_hostname, qpu_id, api_stage=api_stage, proxy=proxy)
+
+    self.request = Sigv4Request(
+        region=region,
+        access_key=access_key,
+        secret_key=secret_key,
+        session_token=session_token,
+        session_expires=session_expires,
+        role_arn=role_arn,
+        role_session_name=role_session_name,
+        profile=profile,
+    )
+

QueueApi

QueueApi(
+    api_hostname,
+    qpu_id,
+    api_stage="v0",
+    proxy=None,
+    **request_sigv4_kwargs
+)
+

Simple interface to the QCS task API.

Example (replace URIs, QPU ID with correct values):

task_json = { ... "nshots": 10, ... "lattice": { ... "sites":[[0,0]], ... "filling":[1], ... }, ... "effective_hamiltonian": { ... "rydberg": { ... "rabi_frequency_amplitude":{ ... "global": { ... "times":[0.0, 0.1e-6, 3.9e-6, 4.0e-6], ... "values":[0.0, 15.0e6, 15.0e6, 0.0], ... } ... }, ... "rabi_frequency_phase": { ... "global": { ... "times":[0.0, 4.0e-6], ... "values":[0.0, 0.0], ... } ... }, ... "detuning":{ ... "global": { ... "times":[0.0, 4.0e-6], ... "values":[0.0, 0.0], ... } ... } ... } ... } ... } To Use this class with API-Gateway: api_hostname = "XXX.execute-api.us-east-1.amazonaws.com" vpce_uri = "vpce-XXX-XXX.execute-api.us-east-1.vpce.amazonaws.com" api = QueueApi(api_hostname, "qpu1-mock", proxy=vpce_uri) print(api.get_capabilities())

@param qpu_id: The QPU ID, for example qpu1-mock. @param api_stage: Specify which version of the API to call from this object. @param proxy: Optional, the hostname for running the API via some proxy endpoint.

request_sigv4_kwargs:

@param region: AWS region, default value: "us-east-1" @param access_key: Optional, AWS account access key @param secret_key: Optional, AWS account secret key @param session_token: Optional, AWS session token @param session_expires: int, time before current tokens expire, default value 3600 @param role_arn: Optional, AWS role ARN @param role_session_name: AWS role session name, defualy value: 'awsrequest', @param profile: Optional, AWS profile to use credentials for.

Source code in src/bloqade/submission/quera_api_client/api.py
def __init__(
+    self,
+    api_hostname: str,
+    qpu_id: str,
+    api_stage="v0",
+    proxy: Optional[str] = None,
+    **request_sigv4_kwargs,
+):
+    """
+    Create an instance of `QueueApi`.
+    @param api_hostname: hostname of the API instance.
+    @param qpu_id: The QPU ID, for example `qpu1-mock`.
+    @param api_stage: Specify which version of the API to call from this object.
+    @param proxy: Optional, the hostname for running the API via some proxy
+    endpoint.
+
+    request_sigv4_kwargs:
+
+    @param region: AWS region, default value: "us-east-1"
+    @param access_key: Optional, AWS account access key
+    @param secret_key: Optional, AWS account secret key
+    @param session_token: Optional, AWS session token
+    @param session_expires: int, time before current tokens expire, default value
+    3600
+    @param role_arn: Optional, AWS role ARN
+    @param role_session_name: AWS role session name, defualy value: 'awsrequest',
+    @param profile: Optional, AWS profile to use credentials for.
+    """
+    self.api_http_request = AwsApiRequest(
+        api_hostname,
+        qpu_id,
+        api_stage=api_stage,
+        proxy=proxy,
+        **request_sigv4_kwargs,
+    )
+
+    self.logger = logging.getLogger(self.__class__.__name__)
+

get_capabilities

get_capabilities()
+

Request the QPU capabilities from the task API. @return: dictionary containing different fields for capabilities.

Source code in src/bloqade/submission/quera_api_client/api.py
def get_capabilities(self) -> Dict:
+    """
+    Request the QPU capabilities from the task API.
+    @return: dictionary containing different fields for capabilities.
+    """
+    result = self.api_http_request.get("capabilities")
+
+    match result.status_code:
+        case 200:
+            message = "Successfully fetched capabilities."
+            self.logger.error(message)
+
+        case 404:
+            message = f"QPU {self.api_http_request.qpu_id} not found."
+            self.logger.error(message)
+            raise QueueApi.NotFound(message)
+
+        case 403:
+            message = "QPU return authentication error, check AWS credentials."
+            self.logger.error(message)
+            raise QueueApi.AuthenticationError(message)
+
+        case _:
+            message = f"QPU returned unhandled status {result.status_code}."
+            self.logger.error(message)
+            raise QueueApi.QueueApiError(message)
+
+    return ApiRequest._result_as_json(result)
+

get_task_results

get_task_results(task_id)
+

Return task results as given by API. @return: Parsed JSON of the task results. @param task_id: Task ID.

Source code in src/bloqade/submission/quera_api_client/api.py
def get_task_results(self, task_id: Union[str, uuid.UUID]) -> Dict:
+    """
+    Return task results as given by API.
+    @return: Parsed JSON of the task results.
+    @param task_id: Task ID.
+    """
+
+    queue_status = self.get_task_status_in_queue(task_id)
+    # TODO: Revisit this mapping when the queue API is
+    #       has task result fetching build into the API
+    match queue_status:  # overwrite the
+        case "Created" | "Enqueued" | "Accepted":
+            return {"task_status": "Created", "shot_outputs": []}
+        case "Executing":
+            return {"task_status": "Running", "shot_outputs": []}
+        case "Failed" | "Cancelled":
+            return {"task_status": queue_status, "shot_outputs": []}
+        case "Unaccepted":
+            raise QueueApi.ValidationError(
+                f"Task: {task_id} has validation error, "
+                "unable to fetch error message."
+            )
+        case "Completed" | "Partial":
+            pass
+        case _:
+            raise QueueApi.QueueApiError(
+                f"Undocumented queue status: {queue_status}"
+            )
+
+    result = self.api_http_request.get("task", str(task_id), "results")
+
+    match result.status_code:
+        case 200:
+            message = f"Successfully fetch task results for task_id {task_id}"
+            self.logger.debug(message)
+
+        case 400:
+            message = QueueApi.bad_request
+            self.logger.debug(message)
+            raise QueueApi.InvalidRequestError(message)
+
+        case 404:
+            message = QueueApi.qpu_or_task_not_found
+            self.logger.debug(message)
+            raise QueueApi.NotFound(message)
+
+        case 403:
+            message = "QPU return authentication error, check AWS credentials."
+            self.logger.error(message)
+            raise QueueApi.AuthenticationError(message)
+
+        case _:
+            message = f"QPU returned unhandled status {result.status_code}."
+            self.logger.error(message)
+            raise QueueApi.QueueApiError(message)
+
+    return ApiRequest._result_as_json(result)
+

get_task_status_in_queue

get_task_status_in_queue(task_id)
+

Request task status in a queue for a given task. @param task_id: Task ID. @return: Parsed JSON of the task status.

Source code in src/bloqade/submission/quera_api_client/api.py
def get_task_status_in_queue(self, task_id: Union[str, uuid.UUID]) -> str:
+    """
+    Request task status in a queue for a given task.
+    @param task_id: Task ID.
+    @return: Parsed JSON of the task status.
+    """
+    result = self.api_http_request.get("queue", "task", str(task_id))
+
+    match result.status_code:
+        case 200:
+            message = "Successfully checked queue."
+            self.logger.debug(message)
+
+        case 400:
+            message = (
+                "The request is invalid. This may indicate an error when parsing a "
+                "parameter."
+            )
+            self.logger.error(message)
+            raise QueueApi.InvalidRequestError(message)
+
+        case 404:
+            message = (
+                f"QPU {self.api_http_request.qpu_id} or task {task_id} not found."
+            )
+            self.logger.error(message)
+            raise QueueApi.NotFound(message)
+
+        case _:
+            message = f"QPU returned unhandled status {result.status_code}."
+            self.logger.error(message)
+            raise QueueApi.QueueApiError(message)
+    result_json = ApiRequest._result_as_json(result)
+
+    return result_json["status"]
+

get_task_summary

get_task_summary(task_id)
+

Request the task summary for a given task. The summary contains the status of the current task. @param task_id: Task ID. @return: Parsed JSON of the task summary. @see: TaskSummary in https://github.com/QuEra-QCS/QCS-API/blob/master/qcs-api/openapi.yaml

Source code in src/bloqade/submission/quera_api_client/api.py
def get_task_summary(self, task_id: Union[str, uuid.UUID]) -> Dict:
+    """
+    Request the task summary for a given task. The summary contains the status of
+    the current task.
+    @param task_id: Task ID.
+    @return: Parsed JSON of the task summary.
+    @see: `TaskSummary` in https://github.com/QuEra-QCS/QCS-API/blob/master/qcs-api/openapi.yaml
+    """
+
+    if self.get_task_status_in_queue(task_id) != "Completed":
+        raise QueueApi.QueueApiError(
+            "Task is not completed, can't fetch task summary."
+        )
+
+    result = self.api_http_request.get("task", str(task_id))
+
+    match result.status_code:
+        case 200:
+            message = "Successfully checked task summary."
+            self.logger.warning(message)
+
+        case 404:
+            message = (
+                f"QPU {self.api_http_request.qpu_id} or task {task_id} not found."
+            )
+            self.logger.error(message)
+            raise QueueApi.NotFound(message)
+
+        case 403:
+            message = "QPU return authentication error, check AWS credentials."
+            self.logger.error(message)
+            raise QueueApi.AuthenticationError(message)
+
+        case _:
+            message = f"QPU returned unhandled status {result.status_code}."
+            self.logger.error(message)
+            raise QueueApi.QueueApiError(message)
+
+    return ApiRequest._result_as_json(result)
+

is_task_stopped

is_task_stopped(task_id)
+

Check whether a task is stopped (because it is completed, failed, or cancelled). @param task_id: @return: True if task is stopped.

Source code in src/bloqade/submission/quera_api_client/api.py
def is_task_stopped(self, task_id: Union[str, uuid.UUID]) -> bool:
+    """
+    Check whether a task is stopped (because it is completed, failed, or cancelled).
+    @param task_id:
+    @return: `True` if task is stopped.
+    """
+    return self.get_task_status_in_queue(task_id) in (
+        "Completed",
+        "Failed",
+        "Cancelled",
+    )
+

post_task

post_task(task_json)
+

Submit a task to the QPU via the task API. @param content: Task specification as a JSON string or dictionary.

Source code in src/bloqade/submission/quera_api_client/api.py
def post_task(self, task_json: Union[str, dict]) -> str:
+    """
+    Submit a task to the QPU via the task API.
+    @param content: Task specification as a JSON string or dictionary.
+    """
+    result = self.api_http_request.post("queue", "task", content=task_json)
+
+    match result.status_code:
+        case 201:
+            message = "Successfully posted task."
+            self.logger.warning(message)
+
+        case 404:
+            message = f"QPU {self.api_http_request.qpu_id} not found."
+            self.logger.error(message)
+            raise QueueApi.NotFound(message)
+
+        case 400:
+            message = (
+                "The request is invalid. This may indicate an error when parsing "
+                "a parameter."
+            )
+            self.logger.error(message)
+            raise QueueApi.InvalidRequestError(message)
+
+        case 403:
+            message = "QPU return authentication error, check AWS credentials."
+            self.logger.error(message)
+            raise QueueApi.AuthenticationError(message)
+
+        case _:
+            message = f"QPU returned unhandled status {result.status_code}."
+            self.logger.error(message)
+            raise QueueApi.QueueApiError(message)
+
+    result_json = ApiRequest._result_as_json(result)
+
+    try:
+        task_id = result_json["task_id"]
+        self.logger.info(
+            f"QPU {self.api_http_request.qpu_id} accepted "
+            f"task with task id {task_id}."
+        )
+        return task_id
+    except KeyError:
+        raise QueueApi.InvalidResponseError('Response did not contain "task_id".')
+
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/quera_api_client/aws_login/aws_login.md b/dev/reference/bloqade/submission/quera_api_client/aws_login/aws_login.md new file mode 100644 index 0000000000..0dd819ff96 --- /dev/null +++ b/dev/reference/bloqade/submission/quera_api_client/aws_login/aws_login.md @@ -0,0 +1 @@ +::: bloqade.submission.quera_api_client.aws_login \ No newline at end of file diff --git a/dev/reference/bloqade/submission/quera_api_client/aws_login/index.html b/dev/reference/bloqade/submission/quera_api_client/aws_login/index.html new file mode 100644 index 0000000000..101c100f75 --- /dev/null +++ b/dev/reference/bloqade/submission/quera_api_client/aws_login/index.html @@ -0,0 +1,25 @@ + Aws login - The Neutral Atom SDK

Aws login

sso_login

sso_login(profile=None)
+

checks if aws has log-in, and performs attempt of sso login if not. by default profile should be set as env variable AWS_PROFILE, but can be specified as a parameter.

Source code in src/bloqade/submission/quera_api_client/aws_login.py
 5
+ 6
+ 7
+ 8
+ 9
+10
+11
+12
+13
+14
+15
+16
def sso_login(profile: Optional[str] = None):
+    """
+    checks if aws has log-in, and performs attempt of sso login if not.
+    by default profile should be set as env variable `AWS_PROFILE`,
+    but can be specified as a parameter.
+    """
+    if profile is not None:
+        os.environ["AWS_PROFILE"] = profile
+    code = os.system("aws sts get-caller-identity ")
+    if code != 0:
+        print("login rsp code is " + str(code) + ". attempting to sso login:")
+        os.system("aws sso login")
+
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/quera_api_client/index.html b/dev/reference/bloqade/submission/quera_api_client/index.html new file mode 100644 index 0000000000..0c5f3aa670 --- /dev/null +++ b/dev/reference/bloqade/submission/quera_api_client/index.html @@ -0,0 +1 @@ + Index - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/submission/quera_api_client/index.md b/dev/reference/bloqade/submission/quera_api_client/index.md new file mode 100644 index 0000000000..2b5dd181b1 --- /dev/null +++ b/dev/reference/bloqade/submission/quera_api_client/index.md @@ -0,0 +1 @@ +::: bloqade.submission.quera_api_client \ No newline at end of file diff --git a/dev/reference/bloqade/task/base/base.md b/dev/reference/bloqade/task/base/base.md new file mode 100644 index 0000000000..6c6ae6b480 --- /dev/null +++ b/dev/reference/bloqade/task/base/base.md @@ -0,0 +1 @@ +::: bloqade.task.base \ No newline at end of file diff --git a/dev/reference/bloqade/task/base/index.html b/dev/reference/bloqade/task/base/index.html new file mode 100644 index 0000000000..984b844b87 --- /dev/null +++ b/dev/reference/bloqade/task/base/index.html @@ -0,0 +1 @@ + Base - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/task/braket_simulator/braket_simulator.md b/dev/reference/bloqade/task/braket_simulator/braket_simulator.md new file mode 100644 index 0000000000..ddfee1f803 --- /dev/null +++ b/dev/reference/bloqade/task/braket_simulator/braket_simulator.md @@ -0,0 +1 @@ +::: bloqade.task.braket_simulator \ No newline at end of file diff --git a/dev/reference/bloqade/task/braket_simulator/index.html b/dev/reference/bloqade/task/braket_simulator/index.html new file mode 100644 index 0000000000..4f95d59145 --- /dev/null +++ b/dev/reference/bloqade/task/braket_simulator/index.html @@ -0,0 +1,98 @@ + Braket simulator - The Neutral Atom SDK

Braket simulator

BraketEmulatorBatchTask

Bases: JSONInterface, BatchTask[BraketEmulatorTask, BraketEmulatorBatchResult]

A compiled batch-tasks that can be submitted to run on Amazon Braket's local simulator.

submit

submit(
+    multiprocessing=False,
+    max_workers=None,
+    progress_bar=False,
+    **kwargs
+)
+

Submit the batch tasks to run on Amazon Braket's local simulator.

Parameters:

Name Type Description Default
multiprocessing bool

Running with multiprocess. Defaults to False.

False
max_workers Optional[int]

. Defaults to None.

None
progress_bar bool

Display progess bar. Defaults to False.

False

Returns:

Type Description
BraketEmulatorBatchResult

BraketEmulatorBatchResult

Source code in src/bloqade/task/braket_simulator.py
def submit(
+    self,
+    multiprocessing: bool = False,
+    max_workers: Optional[int] = None,
+    progress_bar: bool = False,
+    **kwargs,
+) -> BraketEmulatorBatchResult:
+    """Submit the batch tasks to run on Amazon Braket's local simulator.
+
+    Args:
+        multiprocessing (bool, optional):
+            Running with multiprocess. Defaults to False.
+        max_workers (Optional[int], optional):
+            <TODO>. Defaults to None.
+        progress_bar (bool, optional):
+            Display progess bar. Defaults to False.
+
+    Returns:
+        BraketEmulatorBatchResult
+    """
+    if multiprocessing:
+        futures = OrderedDict()
+        with ProcessPoolExecutor(max_workers=max_workers) as executor:
+            for task_number, task in self.tasks.items():
+                futures[task_number] = executor.submit(task.submit, **kwargs)
+
+        if progress_bar:
+            iterator = tqdm.tqdm(futures.items())
+        else:
+            iterator = futures.items()
+
+        task_results = OrderedDict()
+        for task_number, future in iterator:
+            task_results[task_number] = future.result()
+
+    else:
+        if progress_bar:
+            iterator = tqdm.tqdm(self.tasks.items())
+        else:
+            iterator = self.tasks.items()
+
+        task_results = OrderedDict()
+        for task_number, task in iterator:
+            task_results[task_number] = task.submit(**kwargs)
+
+    return BraketEmulatorBatchResult(braket_emulator_task_results=task_results)
+
\ No newline at end of file diff --git a/dev/reference/bloqade/task/cloud_base/cloud_base.md b/dev/reference/bloqade/task/cloud_base/cloud_base.md new file mode 100644 index 0000000000..83b4bae203 --- /dev/null +++ b/dev/reference/bloqade/task/cloud_base/cloud_base.md @@ -0,0 +1 @@ +::: bloqade.task.cloud_base \ No newline at end of file diff --git a/dev/reference/bloqade/task/cloud_base/index.html b/dev/reference/bloqade/task/cloud_base/index.html new file mode 100644 index 0000000000..b17c9757df --- /dev/null +++ b/dev/reference/bloqade/task/cloud_base/index.html @@ -0,0 +1,2 @@ + Cloud base - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/task/hardware/hardware.md b/dev/reference/bloqade/task/hardware/hardware.md new file mode 100644 index 0000000000..0e7e2a21d7 --- /dev/null +++ b/dev/reference/bloqade/task/hardware/hardware.md @@ -0,0 +1 @@ +::: bloqade.task.hardware \ No newline at end of file diff --git a/dev/reference/bloqade/task/hardware/index.html b/dev/reference/bloqade/task/hardware/index.html new file mode 100644 index 0000000000..6019c8ce90 --- /dev/null +++ b/dev/reference/bloqade/task/hardware/index.html @@ -0,0 +1 @@ + Hardware - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/task/index.html b/dev/reference/bloqade/task/index.html new file mode 100644 index 0000000000..16a1346632 --- /dev/null +++ b/dev/reference/bloqade/task/index.html @@ -0,0 +1 @@ + Index - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/task/index.md b/dev/reference/bloqade/task/index.md new file mode 100644 index 0000000000..2df94cabe7 --- /dev/null +++ b/dev/reference/bloqade/task/index.md @@ -0,0 +1 @@ +::: bloqade.task \ No newline at end of file diff --git a/dev/reference/bloqade/task/report/index.html b/dev/reference/bloqade/task/report/index.html new file mode 100644 index 0000000000..3c383eb91d --- /dev/null +++ b/dev/reference/bloqade/task/report/index.html @@ -0,0 +1 @@ + Report - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/task/report/report.md b/dev/reference/bloqade/task/report/report.md new file mode 100644 index 0000000000..167b910f68 --- /dev/null +++ b/dev/reference/bloqade/task/report/report.md @@ -0,0 +1 @@ +::: bloqade.task.report \ No newline at end of file diff --git a/dev/reference/bloqade/visualization/index.html b/dev/reference/bloqade/visualization/index.html new file mode 100644 index 0000000000..879ab2118a --- /dev/null +++ b/dev/reference/bloqade/visualization/index.html @@ -0,0 +1 @@ + Index - The Neutral Atom SDK
\ No newline at end of file diff --git a/dev/reference/bloqade/visualization/index.md b/dev/reference/bloqade/visualization/index.md new file mode 100644 index 0000000000..4f588525bc --- /dev/null +++ b/dev/reference/bloqade/visualization/index.md @@ -0,0 +1 @@ +::: bloqade.visualization \ No newline at end of file diff --git a/dev/search/search_index.json b/dev/search/search_index.json new file mode 100644 index 0000000000..562b930194 --- /dev/null +++ b/dev/search/search_index.json @@ -0,0 +1 @@ +{"config":{"lang":["en"],"separator":"[\\s\\-,:!=\\[\\]()\"`/]+|\\.(?!\\d)|&[lg]t;|(?!\\b)(?=[A-Z][a-z])","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Welcome to Bloqade -- QuEra's Neutral Atom SDK","text":"

For full documentation visit mkdocs.org.

"},{"location":"#commands","title":"Commands","text":"
  • mkdocs new [dir-name] - Create a new project.
  • mkdocs serve - Start the live-reloading docs server.
  • mkdocs build - Build the documentation site.
  • mkdocs -h - Print help message and exit.
"},{"location":"#project-layout","title":"Project layout","text":"
mkdocs.yml    # The configuration file.\ndocs/\n    index.md  # The documentation homepage.\n    ...       # Other markdown pages, images and other files.\n
"},{"location":"contributing/","title":"Contributing","text":""},{"location":"contributing/#how-to-contribute","title":"How to contribute","text":"
  • How to setup development
  • Git
  • Code of Conduct
  • Contributing to documentation
  • Contributing to code
  • Contributing to tutorials/examples
  • Contributing to tests
"},{"location":"contributing/setup/","title":"Setting up Development","text":"

Our development environment contains a set of tools we use for development, testing, and documentation. This section describes how to set up the development environment. We primarily use pdm to manage python environments and dependencies.

"},{"location":"contributing/setup/#setup-development-environment","title":"Setup development environment","text":"

We use pdm to manage dependencies and virtual environment. After cloning the repository, run the following command to install dependencies:

pdm install\n

You can also install different dependency groups:

  • dev: dependencies for development
pdm install --dev\n# or\npdm install -d\n
  • doc: dependencies for building documentation
pdm install -G doc\n
"},{"location":"contributing/setup/#useful-pdm-scripts","title":"Useful PDM scripts","text":""},{"location":"contributing/setup/#tests","title":"Tests","text":"

You can run tests via

pdm run test\n

Or run tests and generate coverage via

pdm run coverage\n
"},{"location":"contributing/setup/#documentation","title":"Documentation","text":"

You can build documentation via

pdm run doc_build\n

Or run a local server to preview documentation via

pdm run doc\n
"},{"location":"contributing/setup/#jupytext","title":"Jupytext","text":"

You can sync jupyter notebooks and python scripts via

pdm run jupytext\n

this will help you development examples in jupyter notebook and python scripts simultaneously.

"},{"location":"contributing/setup/#lint","title":"Lint","text":"

We primarily use ruff - an extremely fast linter for Python, and black as formatter. These has been configured into pre-commit hooks. You can install pre-commit hooks to git via

pre-commit install\n
"},{"location":"examples/rabi/","title":"Single Qubit Rabi Oscillations","text":"In\u00a0[1]: Copied!
from bloqade import start, cast\nfrom bloqade.task import HardwareBatchResult\n\nimport os\nimport numpy as np\n\nfrom bokeh.io import output_notebook\nfrom bokeh.plotting import figure, show\nfrom bokeh.models import HoverTool, ColumnDataSource, CrosshairTool\n\noutput_notebook()\n
from bloqade import start, cast from bloqade.task import HardwareBatchResult import os import numpy as np from bokeh.io import output_notebook from bokeh.plotting import figure, show from bokeh.models import HoverTool, ColumnDataSource, CrosshairTool output_notebook() Loading BokehJS ...

define program with one atom, with constant detuning but variable Rabi frequency, ramping up to \"rabi_value\" and then returning to 0.0.

In\u00a0[2]: Copied!
durations = cast([\"ramp_time\", \"run_time\", \"ramp_time\"])\n\nrabi_oscillations_program = (\n    start.add_position((0, 0))\n    .rydberg.rabi.amplitude.uniform.piecewise_linear(\n        durations=durations, values=[0, \"rabi_value\", \"rabi_value\", 0]\n    )\n    .detuning.uniform.constant(duration=sum(durations), value=0)\n)\n
durations = cast([\"ramp_time\", \"run_time\", \"ramp_time\"]) rabi_oscillations_program = ( start.add_position((0, 0)) .rydberg.rabi.amplitude.uniform.piecewise_linear( durations=durations, values=[0, \"rabi_value\", \"rabi_value\", 0] ) .detuning.uniform.constant(duration=sum(durations), value=0) )

Assign values to the variables in the program, allowing the run_time (time the Rabi amplitude stays at the value of \"rabi_frequency\" ) to sweep across a range of values.

In\u00a0[3]: Copied!
rabi_oscillation_job = rabi_oscillations_program.assign(\n    ramp_time=0.06, rabi_value=15, detuning_value=0.0\n).batch_assign(run_time=np.around(np.arange(0, 21, 1) * 0.05, 13))\n
rabi_oscillation_job = rabi_oscillations_program.assign( ramp_time=0.06, rabi_value=15, detuning_value=0.0 ).batch_assign(run_time=np.around(np.arange(0, 21, 1) * 0.05, 13))

Run the program in emulation, obtaining a report object. For each possible set of variable values to simulate (in this case, centered around the run_time variable), let the task have 10000 shots.

In\u00a0[4]: Copied!
emu_report = rabi_oscillation_job.braket_local_simulator(10000).submit().report()\n
emu_report = rabi_oscillation_job.braket_local_simulator(10000).submit().report()

Submit the same program to hardware, this time using .parallelize to make a copy of the original geometry (a single atom) that fills the FOV (Field-of-View Space), with at least 24 micrometers of distance between each atom.

Unlike the emulation above, we only let each task run with 100 shots. A collection of tasks is known as a \"Job\" in Bloqade and jobs can be saved in JSON format so you can reload them later (a necessity considering how long it may take for the machine to handle tasks in the queue)

In\u00a0[5]: Copied!
\"\"\"\n(\n    rabi_oscillation_job.parallelize(24)\n    .braket(100)\n    .submit()\n    .save_json(\"rabi-job.json\")\n)\n\"\"\"\n
\"\"\" ( rabi_oscillation_job.parallelize(24) .braket(100) .submit() .save_json(\"rabi-job.json\") ) \"\"\" Out[5]:
'\\n(\\n    rabi_oscillation_job.parallelize(24)\\n    .braket(100)\\n    .submit()\\n    .save_json(\"rabi-job.json\")\\n)\\n'

Load JSON and pull results from Braket

In\u00a0[6]: Copied!
hw_future = HardwareBatchResult.load_json(\n    os.getcwd() + \"/docs/docs/examples/\" + \"rabi-job.json\"\n)\nhw_rydberg_densities = hw_future.report().rydberg_densities()\n
hw_future = HardwareBatchResult.load_json( os.getcwd() + \"/docs/docs/examples/\" + \"rabi-job.json\" ) hw_rydberg_densities = hw_future.report().rydberg_densities()

We can now plot the results from the hardware and emulation together.

In\u00a0[7]: Copied!
data = {\n    \"times\": np.around(np.arange(0, 21, 1) * 0.05, 13),\n    \"emu_densities\": emu_report.rydberg_densities()[0].to_list(),\n    \"hw_densities\": hw_rydberg_densities[0].to_list(),\n}\nsource = ColumnDataSource(data=data)\n\np = figure(\n    x_axis_label=\"Time (\u03bcs)\",\n    y_axis_label=\"Rydberg Density\",\n    toolbar_location=\"right\",\n    tools=[\"pan,wheel_zoom,box_zoom,reset,save\"],\n)\n\np.axis.axis_label_text_font_size = \"15pt\"\np.axis.major_label_text_font_size = \"10pt\"\n\nemu_line = p.line(\n    x=\"times\",\n    y=\"emu_densities\",\n    source=source,\n    legend_label=\"Emulator\",\n    color=\"grey\",\n    line_width=2,\n)\np.circle(x=\"times\", y=\"emu_densities\", source=source, color=\"grey\", size=8)\n# hardware densities\nhw_line = p.line(\n    x=\"times\",\n    y=\"hw_densities\",\n    source=source,\n    legend_label=\"Hardware\",\n    color=\"purple\",\n    line_width=2,\n)\np.circle(x=\"times\", y=\"hw_densities\", source=source, color=\"purple\", size=8)\n\nhw_hover_tool = HoverTool(\n    renderers=[hw_line],\n    tooltips=[\n        (\"Backend\", \"Hardware\"),\n        (\"Density\", \"@hw_densities\"),\n        (\"Time\", \"@times \u03bcs\"),\n    ],\n    mode=\"vline\",\n    attachment=\"right\",\n)\np.add_tools(hw_hover_tool)\nemu_hover_tool = HoverTool(\n    renderers=[emu_line],\n    tooltips=[\n        (\"Backend\", \"Emulator\"),\n        (\"Density\", \"@emu_densities\"),\n        (\"Time\", \"@times \u03bcs\"),\n    ],\n    mode=\"vline\",\n    attachment=\"left\",\n)\np.add_tools(emu_hover_tool)\ncross_hair_tool = CrosshairTool(dimensions=\"height\")\np.add_tools(cross_hair_tool)\n\nshow(p)\n
data = { \"times\": np.around(np.arange(0, 21, 1) * 0.05, 13), \"emu_densities\": emu_report.rydberg_densities()[0].to_list(), \"hw_densities\": hw_rydberg_densities[0].to_list(), } source = ColumnDataSource(data=data) p = figure( x_axis_label=\"Time (\u03bcs)\", y_axis_label=\"Rydberg Density\", toolbar_location=\"right\", tools=[\"pan,wheel_zoom,box_zoom,reset,save\"], ) p.axis.axis_label_text_font_size = \"15pt\" p.axis.major_label_text_font_size = \"10pt\" emu_line = p.line( x=\"times\", y=\"emu_densities\", source=source, legend_label=\"Emulator\", color=\"grey\", line_width=2, ) p.circle(x=\"times\", y=\"emu_densities\", source=source, color=\"grey\", size=8) # hardware densities hw_line = p.line( x=\"times\", y=\"hw_densities\", source=source, legend_label=\"Hardware\", color=\"purple\", line_width=2, ) p.circle(x=\"times\", y=\"hw_densities\", source=source, color=\"purple\", size=8) hw_hover_tool = HoverTool( renderers=[hw_line], tooltips=[ (\"Backend\", \"Hardware\"), (\"Density\", \"@hw_densities\"), (\"Time\", \"@times \u03bcs\"), ], mode=\"vline\", attachment=\"right\", ) p.add_tools(hw_hover_tool) emu_hover_tool = HoverTool( renderers=[emu_line], tooltips=[ (\"Backend\", \"Emulator\"), (\"Density\", \"@emu_densities\"), (\"Time\", \"@times \u03bcs\"), ], mode=\"vline\", attachment=\"left\", ) p.add_tools(emu_hover_tool) cross_hair_tool = CrosshairTool(dimensions=\"height\") p.add_tools(cross_hair_tool) show(p)"},{"location":"examples/rabi/#single-qubit-rabi-oscillations","title":"Single Qubit Rabi Oscillations\u00b6","text":""},{"location":"examples/rabi/#introduction","title":"Introduction\u00b6","text":"

In this example we show how to use Bloqade to emulate a Rabi oscillation as well as run it on hardware.

"},{"location":"reference/bloqade/","title":"Index","text":""},{"location":"reference/bloqade/#bloqade.start","title":"start module-attribute","text":"
start = ListOfLocations()\n
  • Program starting node
  • Possible Next

    -> start.rydberg :: address rydberg level coupling

    -> start.hyperfine :: address hyperfine level coupling

  • Possible Next

    -> start.add_locations(List[Tuple[int]]) :: add multiple atoms to current register

    -> start.add_location(Tuple[int]) :: add atom to current register

    "},{"location":"reference/bloqade/#bloqade.Literal","title":"Literal","text":"

    Bases: Real

    "},{"location":"reference/bloqade/#bloqade.ir.scalar.Literal.value","title":"value class-attribute","text":"
    value: Decimal\n

    Scalar Literal, which stores a decimaal value instance.

    Parameters:

    Name Type Description Default value Decimal

    decimal value instance

    required"},{"location":"reference/bloqade/#bloqade.Variable","title":"Variable","text":"

    Bases: Real

    Variable, which stores a variable name.

    Parameters:

    Name Type Description Default name str

    variable instance.

    required"},{"location":"reference/bloqade/#bloqade.cast","title":"cast","text":"
    cast(py)\n

    cast Real number (or list/tuple of Real numbers) to Scalar Literal.

    Parameters:

    Name Type Description Default py Union[Real, Tuple[Real], List[Real]]

    python object to cast

    required

    Returns:

    Type Description Any

    Union[Literal,Tuple[Literal],List[Literal]]

    Source code in src/bloqade/ir/scalar.py
    def cast(py) -> Any:\n\"\"\"cast Real number (or list/tuple of Real numbers)\n    to [`Scalar Literal`][bloqade.ir.scalar.Literal].\n    Args:\n        py (Union[Real,Tuple[Real],List[Real]]): python object to cast\n    Returns:\n        Union[Literal,Tuple[Literal],List[Literal]]\n    \"\"\"\nret = trycast(py)\nif ret is None:\nraise TypeError(f\"Cannot cast {type(py)} to Scalar Literal\")\nreturn ret\n
    "},{"location":"reference/bloqade/#bloqade.var","title":"var","text":"
    var(py)\n

    cast string (or list/tuple of strings) to Variable.

    Parameters:

    Name Type Description Default py Union[str, List[str], Tuple[str]]

    a string or list/tuple of strings

    required

    Returns:

    Type Description Any

    Union[Variable, List[Variable], Tuple[Variable]]

    Source code in src/bloqade/ir/scalar.py
    def var(py: Union[str, List[str]]) -> Any:\n\"\"\"cast string (or list/tuple of strings)\n    to [`Variable`][bloqade.ir.scalar.Variable].\n    Args:\n        py (Union[str, List[str], Tuple[str]]): a string or list/tuple of strings\n    Returns:\n       Union[Variable, List[Variable], Tuple[Variable]]\n    \"\"\"\nret = tryvar(py)\nif ret is None:\nraise TypeError(f\"Cannot cast {type(py)} to Variable\")\nreturn ret\n
    "},{"location":"reference/bloqade/builder/","title":"Index","text":""},{"location":"reference/bloqade/builder/coupling/","title":"Coupling","text":""},{"location":"reference/bloqade/builder/coupling/#bloqade.builder.coupling.Hyperfine","title":"Hyperfine","text":"

    Bases: LevelCoupling

    This node represent level coupling between hyperfine state.

    Examples:

    • To reach the node from the start node:
    >>> node = bloqade.start.hyperfine\n>>> type(node)\n<class 'bloqade.builder.coupling.Hyperfine'>\n
    • Hyperfine level coupling have two reachable field nodes:

      • detuning term (See also Detuning)
      • rabi term (See also Rabi)
    >>> hyp_detune = bloqade.start.hyperfine.detuning\n>>> hyp_rabi = bloqade.start.hyperfine.rabi\n
    "},{"location":"reference/bloqade/builder/coupling/#bloqade.builder.coupling.LevelCoupling","title":"LevelCoupling","text":"

    Bases: Builder

    "},{"location":"reference/bloqade/builder/coupling/#bloqade.builder.coupling.LevelCoupling.detuning","title":"detuning property","text":"
    detuning\n
    • Specify the Detuning field
    • Next-step:
    • Possible Next:

      -> ...detuning.location(int) :: Address atom at specific location

      -> ...detuning.uniform :: Address all atoms in register

      -> ...detuning.var(str) :: Address atom at location labeled by variable

    • "},{"location":"reference/bloqade/builder/coupling/#bloqade.builder.coupling.LevelCoupling.rabi","title":"rabi property","text":"
      rabi\n
      • Specify the Rabi term/field.
      • Possible Next:

        -> ...rabi.amplitude :: address rabi amplitude

        -> ...rabi.phase :: address rabi phase

      "},{"location":"reference/bloqade/builder/coupling/#bloqade.builder.coupling.Rydberg","title":"Rydberg","text":"

      Bases: LevelCoupling

      This node represent level coupling of rydberg state.

      Examples:

      • To reach the node from the start node:
      >>> node = bloqade.start.rydberg\n>>> type(node)\n<class 'bloqade.builder.coupling.Rydberg'>\n
      • Rydberg level coupling have two reachable field nodes:

        • detuning term (See also Detuning)
        • rabi term (See also Rabi)
      >>> ryd_detune = bloqade.start.rydberg.detuning\n>>> ryd_rabi = bloqade.start.rydberg.rabi\n
      "},{"location":"reference/bloqade/builder/emit/","title":"Emit","text":""},{"location":"reference/bloqade/builder/emit/#bloqade.builder.emit.Emit","title":"Emit","text":"
      Emit(\nbuilder,\nassignments={},\nbatch={},\nregister=None,\nsequence=None,\n)\n

      Bases: Builder

      Source code in src/bloqade/builder/emit.py
      def __init__(\nself,\nbuilder: Builder,\nassignments: Dict[str, Union[numbers.Real, List[numbers.Real]]] = {},\nbatch: Dict[str, Union[List[numbers.Real], List[List[numbers.Real]]]] = {},\nregister: Optional[Union[\"AtomArrangement\", \"ParallelRegister\"]] = None,\nsequence: Optional[ir.Sequence] = None,\n) -> None:\nsuper().__init__(builder)\nself.__batch__ = {}\nif batch:\nfirst_key, *other_keys = batch.keys()\nfirst_value = batch[first_key]\nbatch_size = len(first_value)\nself.__batch__[first_key] = first_value\nfor key in other_keys:\nvalue = batch[key]\nother_batch_size = len(value)\nif other_batch_size != batch_size:\nraise ValueError(\n\"mismatch in size of batches, found batch size \"\nf\"{batch_size} for {first_key} and a batch size of \"\nf\"{other_batch_size} for {key}\"\n)\nself.__batch__[key] = value\nself.__assignments__ = assignments\nself.__sequence__ = sequence\nself.__register__ = register\n
      "},{"location":"reference/bloqade/builder/emit/#bloqade.builder.emit.Emit.program","title":"program property","text":"
      program: Program\n

      Get the Program from the current builder. See also Program

      Returns:

      Type Description Program

      prog (Program)

      "},{"location":"reference/bloqade/builder/emit/#bloqade.builder.emit.Emit.register","title":"register property","text":"
      register: Union[AtomArrangement, ParallelRegister]\n

      Get the register from the current builder.

      Returns:

      Type Description Union[AtomArrangement, ParallelRegister]

      register (Union[\"AtomArrangement\", \"ParallelRegister\"])

      Note

      If the program is built with parallelize(), The the register will be a ParallelRegister. Otherwise it will be a AtomArrangement.

      "},{"location":"reference/bloqade/builder/emit/#bloqade.builder.emit.Emit.sequence","title":"sequence property","text":"
      sequence\n

      Get the sequence from the current builder.

      Returns:

      Type Description

      sequence (Sequence)

      "},{"location":"reference/bloqade/builder/emit/#bloqade.builder.emit.Emit.assign","title":"assign","text":"
      assign(**assignments)\n

      Assign values to variables declared previously in the program.

      Parameters:

      Name Type Description Default assignments Dict[str, Union[Number]] {}

      Examples:

      • Assign the value 0.0 to the variable \"ival\" and 0.5 to the variable \"span_time\".
      >>> reg = bloqade.start\n...       .add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> seq = reg.rydberg.detuning.uniform\n...       .linear(start=\"ival\",stop=1,duration=\"span_time\")\n>>> seq = seq.assign(span_time = 0.5, ival = 0.0)\n
      Source code in src/bloqade/builder/emit.py
      def assign(self, **assignments):\n\"\"\"\n    Assign values to variables declared previously in the program.\n    Args:\n        assignments (Dict[str, Union[Number]]):\n        The assignments, which should be a kwargs\n        where the key is the variable name and the\n        value is the value to assign to the variable.\n    Examples:\n        - Assign the value 0.0 to the variable \"ival\"\n        and 0.5 to the variable \"span_time\".\n        >>> reg = bloqade.start\n        ...       .add_positions([(0,0),(1,1),(2,2),(3,3)])\n        >>> seq = reg.rydberg.detuning.uniform\n        ...       .linear(start=\"ival\",stop=1,duration=\"span_time\")\n        >>> seq = seq.assign(span_time = 0.5, ival = 0.0)\n    \"\"\"\n# these methods terminate no build steps can\n# happens after this other than updating parameters\nnew_assignments = dict(self.__assignments__)\nnew_assignments.update(**assignments)\nreturn Emit(\nself,\nassignments=new_assignments,\nbatch=self.__batch__,\nregister=self.__register__,\nsequence=self.__sequence__,\n)\n
      "},{"location":"reference/bloqade/builder/emit/#bloqade.builder.emit.Emit.batch_assign","title":"batch_assign","text":"
      batch_assign(**batch)\n

      Assign values to variables declared previously in the program for launching batch jobs.

      Parameters:

      Name Type Description Default batch Dict[str, Union[Number]]

      The batch assignments of variables,

      {}

      Examples:

      • Assign the value [0.0,0.5] to the variable \"ival\" and [0.6,0.8] to the variable \"span_time\". This will create a job with two tasks of (value,ival) = (0.0,0.6) and (0.5,0.8) with each has 10 shots.
      >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> seq = reg.rydberg.detuning.uniform\n...       .linear(start=\"ival\",stop=1,duration=\"span_time\")\n>>> job = seq.batch_assign(span_time = [0.6,0.8], ival = [0.0,0.5]).mock(10)\n
      Note

      the length of the lists of values should be the same for each variable.

      Source code in src/bloqade/builder/emit.py
      def batch_assign(self, **batch):\n\"\"\"\n    Assign values to variables declared previously in the program\n    for launching batch jobs.\n    Args:\n        batch (Dict[str, Union[Number]]): The batch assignments of variables,\n        which should be a kwargs where the key is the variable name\n        and the value is the list of value assign to the variable.\n    Examples:\n        - Assign the value [0.0,0.5] to the variable \"ival\" and [0.6,0.8]\n        to the variable \"span_time\".\n        This will create a job with two tasks\n        of (value,ival) = (0.0,0.6) and (0.5,0.8) with each has 10 shots.\n        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n        >>> seq = reg.rydberg.detuning.uniform\n        ...       .linear(start=\"ival\",stop=1,duration=\"span_time\")\n        >>> job = seq.batch_assign(span_time = [0.6,0.8], ival = [0.0,0.5]).mock(10)\n    Note:\n        the length of the lists of values should be the same for each variable.\n    \"\"\"\nnew_batch = dict(self.__batch__)\nnew_batch.update(**batch)\nreturn Emit(\nself,\nassignments=self.__assignments__,\nbatch=new_batch,\nregister=self.__register__,\nsequence=self.__sequence__,\n)\n
      "},{"location":"reference/bloqade/builder/emit/#bloqade.builder.emit.Emit.braket","title":"braket","text":"
      braket(nshots)\n

      Compile the current builder to a Amazon braket HardwareBatchTask , which can be submit to run on QPU through braket service.

      Parameters:

      Name Type Description Default nshots int

      The number of shots to run.

      required

      Returns:

      Type Description HardwareBatchTask

      HardwareBatchTask

      Source code in src/bloqade/builder/emit.py
      def braket(self, nshots: int) -> \"HardwareBatchTask\":\n\"\"\"\n    Compile the current builder to a Amazon braket\n    [`HardwareBatchTask`][bloqade.task.hardware.HardwareBatchTask]\n    , which can be submit to run on QPU through braket service.\n    Args:\n        nshots (int): The number of shots to run.\n    Returns:\n        HardwareBatchTask\n    \"\"\"\nbackend = BraketBackend()\nreturn self.__compile_hardware(nshots, backend)\n
      "},{"location":"reference/bloqade/builder/emit/#bloqade.builder.emit.Emit.braket_local_simulator","title":"braket_local_simulator","text":"
      braket_local_simulator(nshots)\n

      Compile the current builder to a BraketEmulatorBatchTask , which can be submit to run on braket local simulator.

      Parameters:

      Name Type Description Default nshots int

      The number of shots to run.

      required

      Returns:

      Type Description

      BraketEmulatorJob

      Source code in src/bloqade/builder/emit.py
      def braket_local_simulator(self, nshots: int):\n\"\"\"\n    Compile the current builder to a\n    [`BraketEmulatorBatchTask`][bloqade.task.braket_simulator.BraketEmulatorBatchTask]\n    , which can be submit to run on braket local simulator.\n    Args:\n        nshots (int): The number of shots to run.\n    Returns:\n        BraketEmulatorJob\n    \"\"\"\nfrom bloqade.codegen.hardware.quera import SchemaCodeGen\nif isinstance(self.register, ParallelRegister):\nraise TypeError(\"Braket emulator doesn't support parallel registers.\")\ntasks = OrderedDict()\nfor task_number, assignments in enumerate(self.__assignments_iterator()):\nschema_compiler = SchemaCodeGen(assignments)\ntask_ir = schema_compiler.emit(nshots, self.program)\ntask = BraketEmulatorTask(task_ir=to_braket_task_ir(task_ir))\ntasks[task_number] = task\nreturn BraketEmulatorBatchTask(braket_emulator_tasks=tasks)\n
      "},{"location":"reference/bloqade/builder/emit/#bloqade.builder.emit.Emit.mock","title":"mock","text":"
      mock(nshots, state_file='.mock_state.txt')\n

      Compile the current builder to a Dummy mock HardwareBatchTask , which can be used for testing.

      Parameters:

      Name Type Description Default nshots int

      The number of shots to run.

      required state_file str

      The file to store the state of the mock backend.

      '.mock_state.txt'

      Returns:

      Type Description HardwareBatchTask

      HardwareBatchTask

      Source code in src/bloqade/builder/emit.py
      def mock(\nself, nshots: int, state_file: str = \".mock_state.txt\"\n) -> \"HardwareBatchTask\":\n\"\"\"\n    Compile the current builder to a Dummy mock\n    [`HardwareBatchTask`][bloqade.task.hardware.HardwareBatchTask]\n    , which can be used for testing.\n    Args:\n        nshots (int): The number of shots to run.\n        state_file (str): The file to store the state of the mock backend.\n    Returns:\n        HardwareBatchTask\n    \"\"\"\nbackend = DumbMockBackend(state_file=state_file)\nreturn self.__compile_hardware(nshots, backend)\n
      "},{"location":"reference/bloqade/builder/emit/#bloqade.builder.emit.Emit.parallelize","title":"parallelize","text":"
      parallelize(cluster_spacing)\n

      Parallelize the current problem (register & sequnece) to fill entire FOV with the given cluster spacing.

      Parameters:

      Name Type Description Default cluster_spacing Any, should be Real required

      Examples:

      • Parallelize the current problem with cluster spacing 7.2 um.
      >>> prob = (\n        bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n        .rydberg.detuning.uniform\n        .linear(start=0,stop=1,duration=1)\n        )\n>>> prob = prob.parallelize(7.2)\n
      Source code in src/bloqade/builder/emit.py
      def parallelize(self, cluster_spacing: Any) -> \"Emit\":\n\"\"\"\n    Parallelize the current problem (register & sequnece) to fill entire FOV\n    with the given cluster spacing.\n    Args:\n        cluster_spacing (Any, should be Real):\n        the spacing between parallel clusters.\n    Examples:\n        - Parallelize the current problem with cluster spacing 7.2 um.\n        >>> prob = (\n                bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n                .rydberg.detuning.uniform\n                .linear(start=0,stop=1,duration=1)\n                )\n        >>> prob = prob.parallelize(7.2)\n    \"\"\"\nif isinstance(self.register, ParallelRegister):\nraise TypeError(\"cannot parallelize a parallel register.\")\nparallel_register = ParallelRegister(self.register, cluster_spacing)\nreturn Emit(\nself,\nassignments=self.__assignments__,\nbatch=self.__batch__,\nregister=parallel_register,\nsequence=self.__sequence__,\n)\n
      "},{"location":"reference/bloqade/builder/emit/#bloqade.builder.emit.Emit.quera","title":"quera","text":"
      quera(nshots, config_file=None, **api_config)\n

      Compile the current builder to a QuEra HardwareBatchTask , which can be submit to run on QPU through QuEra service.

      Parameters:

      Name Type Description Default nshots int

      The number of shots to run.

      required config_file Optional[str]

      The path to the config file.

      None api_config Dict[str, Any]

      The api config.

      {}

      Returns:

      Type Description HardwareBatchTask

      HardwareBatchTask

      Source code in src/bloqade/builder/emit.py
      def quera(\nself, nshots: int, config_file: Optional[str] = None, **api_config\n) -> \"HardwareBatchTask\":\n\"\"\"\n    Compile the current builder to a QuEra\n    [`HardwareBatchTask`][bloqade.task.hardware.HardwareBatchTask]\n    , which can be submit to run on QPU through QuEra service.\n    Args:\n        nshots (int): The number of shots to run.\n        config_file (Optional[str]): The path to the config file.\n        api_config (Dict[str, Any]): The api config.\n    Returns:\n        HardwareBatchTask\n    \"\"\"\nif config_file is None:\npath = os.path.dirname(__file__)\nconfig_file = os.path.join(\npath,\n\"..\",\n\"submission\",\n\"quera_api_client\",\n\"config\",\n\"integ_quera_api.json\",\n)\nif len(api_config) == 0:\nwith open(config_file, \"r\") as io:\napi_config.update(**json.load(io))\nbackend = QuEraBackend(**api_config)\nreturn self.__compile_hardware(nshots, backend)\n
      "},{"location":"reference/bloqade/builder/field/","title":"Field","text":""},{"location":"reference/bloqade/builder/field/#bloqade.builder.field.Amplitude","title":"Amplitude","text":"

      Bases: SpatialModulation

      This node represent amplitude of a rabi field.

      Examples:

      • To specify rabi amplitude of rydberg coupling:
      >>> node = bloqade.start.rydberg.rabi.amplitude\n>>> type(node)\n<class 'bloqade.builder.field.Amplitude'>\n
      • To specify rabi amplitude of hyperfine coupling:
      >>> node = bloqade.start.hyperfine.rabi.amplitude\n>>> type(node)\n<class 'bloqade.builder.field.Amplitude'>\n
      Note

      This node is a SpatialModulation node. See SpatialModulation for additional options.

      "},{"location":"reference/bloqade/builder/field/#bloqade.builder.field.Detuning","title":"Detuning","text":"

      Bases: SpatialModulation

      This node represent detuning field of a specified level coupling (rydberg or hyperfine) type.

      Examples:

      • To specify detuning of rydberg coupling:
      >>> node = bloqade.start.rydberg.detuning\n>>> type(node)\n<class 'bloqade.builder.field.Detuning'>\n
      • To specify detuning of hyperfine coupling:
      >>> node = bloqade.start.hyperfine.detuning\n>>> type(node)\n<class 'bloqade.builder.field.Detuning'>\n
      Note

      This node is a SpatialModulation node. See SpatialModulation for additional options.

      "},{"location":"reference/bloqade/builder/field/#bloqade.builder.field.Phase","title":"Phase","text":"

      Bases: SpatialModulation

      This node represent phase of a rabi field.

      Examples:

      • To specify rabi phase of rydberg coupling:
      >>> node = bloqade.start.rydberg.rabi.phase\n>>> type(node)\n<class 'bloqade.builder.field.Phase'>\n
      • To specify rabi phase of hyperfine coupling:
      >>> node = bloqade.start.hyperfine.rabi.phase\n>>> type(node)\n<class 'bloqade.builder.field.Phase'>\n
      Note

      This node is a SpatialModulation node. See SpatialModulation for additional options.

      "},{"location":"reference/bloqade/builder/field/#bloqade.builder.field.Rabi","title":"Rabi","text":"

      Bases: Builder

      This node represent rabi field of a specified level coupling (rydberg or hyperfine) type.

      Examples:

      • To specify rabi of rydberg coupling:
      >>> node = bloqade.start.rydberg.rabi\n<class 'bloqade.builder.field.Rabi'>\n
      • To specify rabi of hyperfine coupling:
      >>> node = bloqade.start.hyperfine.rabi\n>>> type(node)\n<class 'bloqade.builder.field.Rabi'>\n
      "},{"location":"reference/bloqade/builder/field/#bloqade.builder.field.Rabi.amplitude","title":"amplitude property","text":"
      amplitude\n
      • Specify the amplitude of the rabi field.
      • Next-step:
      • Possible Next:

        -> ...amplitude.location(int) :: Address atom at specific location

        -> ...amplitude.uniform :: Address all atoms in register

        -> ...amplitude.var(str) :: Address atom at location labeled by variable

      • Examples:

        • rydberg coupling rabi amplitude (See also Amplitude)
        >>> ryd_rabi = bloqade.start.rydberg.rabi\n>>> ryd_rabi_amp = ryd_rabi.amplitude\n
        • hyperfine coupling rabi amplitude (See also Amplitude)
        >>> hyp_rabi = bloqade.start.hyperfine.rabi\n>>> hyp_rabi_amp = hyp_rabi.amplitude\n
        "},{"location":"reference/bloqade/builder/field/#bloqade.builder.field.Rabi.phase","title":"phase property","text":"
        phase\n
        • Specify the phase of the rabi field.
        • Next-step:
        • Possible Next:

          -> ...phase.location(int) :: Address atom at specific location

          -> ...phase.uniform :: Address all atoms in register

          -> ...phase.var(str) :: Address atom at location labeled by variable

        • Examples:

          • rydberg coupling rabi phase (See also Phase)
          >>> ryd_rabi = bloqade.start.rydberg.rabi\n>>> ryd_rabi_ph = ryd_rabi.phase\n
          • hyperfine coupling rabi phase (See also Phase)
          >>> hyp_rabi = bloqade.start.hyperfine.rabi\n>>> hyp_rabi_ph = hyp_rabi.phase\n
          "},{"location":"reference/bloqade/builder/location/","title":"Location","text":""},{"location":"reference/bloqade/builder/location/#bloqade.builder.location.Location","title":"Location","text":"
          Location(parent, label)\n

          Bases: Waveform

          Source code in src/bloqade/builder/location.py
          def __init__(self, parent: Builder, label: int) -> None:\nsuper().__init__(parent)\nself._label = label\n
          "},{"location":"reference/bloqade/builder/location/#bloqade.builder.location.Location.location","title":"location","text":"
          location(label)\n

          Append another location to the current location(s)

          Parameters:

          Name Type Description Default label int

          The label of the location

          required

          Examples:

          • Append location 1 to the current location 0.
          >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> loc = reg.rydberg.detuning.location(0)\n>>> loc = loc.location(1)\n
          • One can keep appending by concatenating location()
          >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> loc = reg.rydberg.detuning.location(0)\n>>> loc = loc.location(1).location(2)\n
          • Possible Next :

            -> ...location(int).location(int) :: keep adding location into current list

            -> ...location(int).scale(float) :: specify scaling factor to current location for the preceeding waveform

          • Possible Next :

            -> ...location(int).linear() :: apply linear waveform

            -> ...location(int).constant() :: apply constant waveform

            -> ...location(int).ploy() :: apply polynomial waveform

            -> ...location(int).apply() :: apply pre-constructed waveform

            -> ...location(int).piecewise_linear() :: apply piecewise linear waveform

            -> ...location(int).piecewise_constant() :: apply piecewise constant waveform

            -> ...location(int).fn() :: apply callable as waveform.

            Source code in src/bloqade/builder/location.py
            def location(self, label: int):\n\"\"\"\n    Append another location to the current location(s)\n    Args:\n        label (int): The label of the location\n    Examples:\n        - Append location 1 to the current location 0.\n        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n        >>> loc = reg.rydberg.detuning.location(0)\n        >>> loc = loc.location(1)\n        - One can keep appending by concatenating location()\n        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n        >>> loc = reg.rydberg.detuning.location(0)\n        >>> loc = loc.location(1).location(2)\n    - Possible Next <Location>:\n        -> `...location(int).location(int)`\n            :: keep adding location into current list\n        -> `...location(int).scale(float)`\n            :: specify scaling factor to current location\n            for the preceeding waveform\n    - Possible Next <WaveForm>:\n        -> `...location(int).linear()`\n            :: apply linear waveform\n        -> `...location(int).constant()`\n            :: apply constant waveform\n        -> `...location(int).ploy()`\n            :: apply polynomial waveform\n        -> `...location(int).apply()`\n            :: apply pre-constructed waveform\n        -> `...location(int).piecewise_linear()`\n            :: apply piecewise linear waveform\n        -> `...location(int).piecewise_constant()`\n            :: apply piecewise constant waveform\n        -> `...location(int).fn()`\n            :: apply callable as waveform.\n    \"\"\"\nreturn Location(self, label)\n
            "},{"location":"reference/bloqade/builder/location/#bloqade.builder.location.Location.scale","title":"scale","text":"
            scale(scale)\n

            Scale the preceeding waveform by the specified factor.

            Parameters:

            Name Type Description Default scale float

            The factor to scale (amplitude of)

            required

            Examples:

            • Scale the preceeding waveform that addressing location(0) by 1.2.
            >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> scaled = reg.rydberg.detuning.location(0).scale(1.2)\n
            • Scale multiple locations with different factors. (ex. loc 0 by 1.2, loc 1 by 0.5)
            >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> loc = reg.rydberg.detuning.location(0)\n>>> loc = loc.scale(1.2).location(1).scale(0.5)\n
            • Scale multiple locations with the same factor. (ex. loc 0 and 1 by 1.2)
            >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> scaled = reg.rydberg.detuning.location(0).location(1).scale(1.2)\n
            • Possible Next :

              -> ...scale(float).location(int) :: keep adding location into current list

            • Possible Next :

              -> ...scale(float).linear() :: apply linear waveform

              -> ...scale(float).constant() :: apply constant waveform

              -> ...scale(float).ploy() :: apply polynomial waveform

              -> ...scale(float).apply() :: apply pre-constructed waveform(s)

              -> ...scale(float).piecewise_linear() :: apply piecewise linear waveform

              -> ...scale(float).piecewise_constant() :: apply piecewise constant waveform

              -> ...scale(float).fn() :: apply callable as waveform.

              Source code in src/bloqade/builder/location.py
              def scale(self, scale: float):\n\"\"\"\n    Scale the preceeding waveform by the specified factor.\n    Args:\n        scale (float): The factor to scale (amplitude of)\n        the preceeding waveform.\n    Examples:\n        - Scale the preceeding waveform that addressing location(0) by 1.2.\n        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n        >>> scaled = reg.rydberg.detuning.location(0).scale(1.2)\n        - Scale multiple locations with different factors.\n        (ex. loc 0 by 1.2, loc 1 by 0.5)\n        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n        >>> loc = reg.rydberg.detuning.location(0)\n        >>> loc = loc.scale(1.2).location(1).scale(0.5)\n        - Scale multiple locations with the same factor. (ex. loc 0 and 1 by 1.2)\n        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n        >>> scaled = reg.rydberg.detuning.location(0).location(1).scale(1.2)\n    - Possible Next <Location>:\n        -> `...scale(float).location(int)`\n            :: keep adding location into current list\n    - Possible Next <WaveForm>:\n        -> `...scale(float).linear()`\n            :: apply linear waveform\n        -> `...scale(float).constant()`\n            :: apply constant waveform\n        -> `...scale(float).ploy()`\n            :: apply polynomial waveform\n        -> `...scale(float).apply()`\n            :: apply pre-constructed waveform(s)\n        -> `...scale(float).piecewise_linear()`\n            :: apply piecewise linear waveform\n        -> `...scale(float).piecewise_constant()`\n            :: apply piecewise constant waveform\n        -> `...scale(float).fn()`\n            :: apply callable as waveform.\n    \"\"\"\nreturn Scale(self, scale)\n
              "},{"location":"reference/bloqade/builder/location/#bloqade.builder.location.Scale","title":"Scale","text":"
              Scale(parent, scale)\n

              Bases: Waveform

              Source code in src/bloqade/builder/location.py
              def __init__(self, parent: Builder, scale) -> None:\nsuper().__init__(parent)\nself._scale = cast(scale)\n
              "},{"location":"reference/bloqade/builder/location/#bloqade.builder.location.Scale.location","title":"location","text":"
              location(label)\n
              • Append another location to the current location after scale the previous one

              Parameters:

              Name Type Description Default label int

              The label of the location

              required

              Examples:

              • Append location 1 after scale location 0 by 1.2.
              >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> loc = reg.rydberg.detuning.location(0).scale(1.2)\n>>> loc = loc.location(1)\n
              • Possible Next :

                -> ...location(int).location(int) :: keep adding location into current list

                -> ...location(int).scale(float) :: specify scaling factor to current location for the preceeding waveform

              • Possible Next :

                -> ...location(int).linear() :: apply linear waveform

                -> ...location(int).constant() :: apply constant waveform

                -> ...location(int).ploy() :: apply polynomial waveform

                -> ...location(int).apply() :: apply pre-constructed waveform

                -> ...location(int).piecewise_linear() :: apply piecewise linear waveform

                -> ...location(int).piecewise_constant() :: apply piecewise constant waveform

                -> ...location(int).fn() :: apply callable as waveform.

                Source code in src/bloqade/builder/location.py
                def location(self, label: int):\n\"\"\"\n    - Append another location to the current location after scale the previous one\n    Args:\n        label (int): The label of the location\n    Examples:\n        - Append location 1 after scale location 0 by 1.2.\n        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n        >>> loc = reg.rydberg.detuning.location(0).scale(1.2)\n        >>> loc = loc.location(1)\n    - Possible Next <Location>:\n        -> `...location(int).location(int)`\n            :: keep adding location into current list\n        -> `...location(int).scale(float)`\n            :: specify scaling factor to current location\n            for the preceeding waveform\n    - Possible Next <WaveForm>:\n        -> `...location(int).linear()`\n            :: apply linear waveform\n        -> `...location(int).constant()`\n            :: apply constant waveform\n        -> `...location(int).ploy()`\n            :: apply polynomial waveform\n        -> `...location(int).apply()`\n            :: apply pre-constructed waveform\n        -> `...location(int).piecewise_linear()`\n            :: apply piecewise linear waveform\n        -> `...location(int).piecewise_constant()`\n            :: apply piecewise constant waveform\n        -> `...location(int).fn()`\n            :: apply callable as waveform.\n    \"\"\"\nreturn Location(self, label)\n
                "},{"location":"reference/bloqade/builder/location/#bloqade.builder.location.Uniform","title":"Uniform","text":"

                Bases: Waveform

                The node specify a uniform spacial modulation. Which is ready to apply waveform (See Waveform for available waveform options)

                Examples:

                • To hit this node from the start node:
                >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> loc = reg.rydberg.detuning.uniform\n
                • Apply Linear waveform:
                >>> wv = bloqade.ir.Linear(start=0,stop=1,duration=0.5)\n>>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> loc = reg.rydberg.detuning.uniform.apply(wv)\n
                "},{"location":"reference/bloqade/builder/spatial/","title":"Spatial","text":""},{"location":"reference/bloqade/builder/spatial/#bloqade.builder.spatial.SpatialModulation","title":"SpatialModulation","text":"

                Bases: Builder

                SpatialModulation specifies which atom(s) should be addressed to apply the preceeding waveform ((See Waveform for available waveforms onward)

                "},{"location":"reference/bloqade/builder/spatial/#bloqade.builder.spatial.SpatialModulation.uniform","title":"uniform property","text":"
                uniform\n
                • Addressing all atom locations for preceeding waveform
                • Next-step:
                • Possible Next:

                  -> ...uniform.linear() :: apply linear waveform

                  -> ...uniform.constant() :: apply constant waveform

                  -> ...uniform.ploy() :: apply polynomial waveform

                  -> ...uniform.apply() :: apply pre-constructed waveform

                  -> ...uniform.piecewise_linear() :: apply piecewise linear waveform

                  -> ...uniform.piecewise_constant() :: apply piecewise constant waveform

                  -> ...uniform.fn() :: apply callable as waveform.

                • Examples:

                  • Addressing rydberg detuning to all atoms in the system with 4 sites
                  >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> loc = reg.rydberg.detuning.uniform\n
                  "},{"location":"reference/bloqade/builder/spatial/#bloqade.builder.spatial.SpatialModulation.location","title":"location","text":"
                  location(label)\n

                  Addressing one or multiple specific location(s) for preceeding waveform.

                  (See Location for more details])

                  Parameters:

                  Name Type Description Default label int

                  The label of the location to apply the following waveform to.

                  required

                  Examples:

                  • Addressing rydberg detuning to location 1 on a system with 4 sites.
                  >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> loc = reg.rydberg.detuning.location(1)\n
                  • Addressing rydberg detuning on both location 0 and 2 on a system with 4 sites.
                  >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> loc = reg.rydberg.detuning.location(1).location(2)\n
                  Note

                  label index start with 0, and should be positive.

                  • Possible Next :

                    -> ...location(int).location(int) :: adding location into current list

                    -> ...location(int).scale(float) :: specify scaling factor to current location for the preceeding waveform

                  • Possible Next :

                    -> ...location(int).linear() :: apply linear waveform

                    -> ...location(int).constant() :: apply constant waveform

                    -> ...location(int).ploy() :: apply polynomial waveform

                    -> ...location(int).apply() :: apply pre-constructed waveform

                    -> ...location(int).piecewise_linear() :: apply piecewise linear waveform

                    -> ...location(int).piecewise_constant() :: apply piecewise constant waveform

                    -> ...location(int).fn() :: apply callable as waveform.

                    Source code in src/bloqade/builder/spatial.py
                    def location(self, label: int):\n\"\"\"\n    Addressing one or multiple specific location(s) for preceeding waveform.\n    (See [`Location`][bloqade.builder.location.Location] for more details])\n    Args:\n        label (int): The label of the location to apply the following waveform to.\n    Examples:\n        - Addressing rydberg detuning to location 1 on a system with 4 sites.\n        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n        >>> loc = reg.rydberg.detuning.location(1)\n        - Addressing rydberg detuning on both location\n        0 and 2 on a system with 4 sites.\n        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n        >>> loc = reg.rydberg.detuning.location(1).location(2)\n    Note:\n        label index start with 0, and should be positive.\n    - Possible Next <Location>:\n        -> `...location(int).location(int)`\n            :: adding location into current list\n        -> `...location(int).scale(float)`\n            :: specify scaling factor to current location\n            for the preceeding waveform\n    - Possible Next <WaveForm>:\n        -> `...location(int).linear()`\n            :: apply linear waveform\n        -> `...location(int).constant()`\n            :: apply constant waveform\n        -> `...location(int).ploy()`\n            :: apply polynomial waveform\n        -> `...location(int).apply()`\n            :: apply pre-constructed waveform\n        -> `...location(int).piecewise_linear()`\n            :: apply piecewise linear waveform\n        -> `...location(int).piecewise_constant()`\n            :: apply piecewise constant waveform\n        -> `...location(int).fn()`\n            :: apply callable as waveform.\n    \"\"\"\nfrom .location import Location\nreturn Location(self, label)\n
                    "},{"location":"reference/bloqade/builder/spatial/#bloqade.builder.spatial.SpatialModulation.var","title":"var","text":"
                    var(name)\n
                    • Addressing atom location associate with given variable for preceeding waveform
                    • Possible Next :

                      -> ...location(int).linear() :: apply linear waveform

                      -> ...location(int).constant() :: apply constant waveform

                      -> ...location(int).ploy() :: apply polynomial waveform

                      -> ...location(int).apply() :: apply pre-constructed waveform

                      -> ...location(int).piecewise_linear() :: apply piecewise linear waveform

                      -> ...location(int).piecewise_constant() :: apply piecewise constant waveform

                      -> ...location(int).fn() :: apply callable as waveform.

                      Examples:

                      • Addressing rydberg detuning to atom location myatom in the system with 4 sites
                      >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n>>> loc = reg.rydberg.detuning.var('myatom')\n
                      Source code in src/bloqade/builder/spatial.py
                      def var(self, name: str):\n\"\"\"\n    - Addressing atom location associate with given variable for preceeding waveform\n    - Possible Next <WaveForm>:\n        -> `...location(int).linear()`\n            :: apply linear waveform\n        -> `...location(int).constant()`\n            :: apply constant waveform\n        -> `...location(int).ploy()`\n            :: apply polynomial waveform\n        -> `...location(int).apply()`\n            :: apply pre-constructed waveform\n        -> `...location(int).piecewise_linear()`\n            :: apply piecewise linear waveform\n        -> `...location(int).piecewise_constant()`\n            :: apply piecewise constant waveform\n        -> `...location(int).fn()`\n            :: apply callable as waveform.\n    Examples:\n        - Addressing rydberg detuning to atom location `myatom` in the system with\n        4 sites\n        >>> reg = bloqade.start.add_positions([(0,0),(1,1),(2,2),(3,3)])\n        >>> loc = reg.rydberg.detuning.var('myatom')\n    \"\"\"\nfrom .location import Var\nreturn Var(self, name)\n
                      "},{"location":"reference/bloqade/builder/start/","title":"Start","text":""},{"location":"reference/bloqade/builder/start/#bloqade.builder.start.ProgramStart","title":"ProgramStart","text":"

                      Bases: Builder

                      ProgramStart is the base class for a starting/entry node for building a program.

                      "},{"location":"reference/bloqade/builder/start/#bloqade.builder.start.ProgramStart.hyperfine","title":"hyperfine property","text":"
                      hyperfine\n
                      • Specify the Hyperfile level coupling.
                      • Possible Next:

                        -> ...hyperfine.rabi :: address rabi term

                        -> ...hyperfine.detuning :: address detuning field

                      Examples:

                      >>> node = bloqade.start.hyperfine\n>>> type(node)\n<class 'bloqade.builder.coupling.Hyperfine'>\n
                      • Hyperfine level coupling have two reachable field nodes:

                        • detuning term (See also Detuning)
                        • rabi term (See also Rabi)
                      >>> hyp_detune = bloqade.start.hyperfine.detuning\n>>> hyp_rabi = bloqade.start.hyperfine.rabi\n

                      See Hyperfine for more details.

                      "},{"location":"reference/bloqade/builder/start/#bloqade.builder.start.ProgramStart.rydberg","title":"rydberg property","text":"
                      rydberg\n
                      • Specify the Rydberg level coupling.
                      • Possible Next:

                        -> ...rydberg.rabi :: address rabi term

                        -> ...rydberg.detuning :: address detuning field

                      Examples:

                      >>> node = bloqade.start.rydberg\n>>> type(node)\n<class 'bloqade.builder.coupling.Rydberg'>\n
                      • Rydberg level coupling have two reachable field nodes:

                        • detuning term (See also Detuning)
                        • rabi term (See also Rabi)
                      >>> ryd_detune = bloqade.start.rydberg.detuning\n>>> ryd_rabi = bloqade.start.rydberg.rabi\n

                      See Rydberg for more details.

                      "},{"location":"reference/bloqade/builder/start/#bloqade.builder.start.ProgramStart.apply","title":"apply","text":"
                      apply(sequence)\n

                      apply an existing pulse sequence to the program.

                      Source code in src/bloqade/builder/start.py
                      def apply(self, sequence: SequenceExpr) -> \"Emit\":\n\"\"\"apply an existing pulse sequence to the program.\"\"\"\nfrom .emit import Emit\nif getattr(self, \"__sequence__\", None) is not None:\nraise NotImplementedError(\"Cannot apply multiple sequences\")\nreturn Emit(self, register=self.__register__, sequence=sequence)\n
                      "},{"location":"reference/bloqade/builder/waveform/","title":"Waveform","text":""},{"location":"reference/bloqade/builder/waveform/#bloqade.builder.waveform.Recordable","title":"Recordable","text":""},{"location":"reference/bloqade/builder/waveform/#bloqade.builder.waveform.Recordable.record","title":"record","text":"
                      record(name)\n

                      Record the value of the current waveform to a variable.

                      Possible Next:

                      • Possible Next :

                        -> .location(int) :: creating new channel to address another location(s)

                      • Possible Next :

                        -> .slice() :: slice the current waveform

                        -> .record(str) :: record the value of waveform at current time

                      • Possible Next :

                        :: Append waveform into current channel

                        -> .linear()

                        -> .constant()

                        -> .ploy()

                        -> .apply()

                        -> .piecewise_linear()

                        -> .piecewise_constant()

                        -> .fn()

                      • Possible Next :

                        -> .rydberg :: Create/Switch to new rydberg level coupling channel

                        -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

                      • Possible Next :

                        -> .assign() :: assign varialbe an actual value/number

                        -> .batch_assign() :: create batch job with different sets of values assign to each variable.

                      • Possible Next :

                        -> .quera() :: Compile current program to QuEra job

                        -> .braket() :: Compile current program to Amazon Braket job

                        -> .braket_local_simulator() :: Compile current program to local simulator job

                        Source code in src/bloqade/builder/waveform.py
                        def record(self, name: str):\n\"\"\"\n    Record the value of the current waveform to a variable.\n    Possible Next:\n    - Possible Next <Location>:\n        -> `.location(int)`\n            :: creating new channel to address\n            another location(s)\n    - Possible Next <WaveForm:: current>:\n        -> `.slice()`\n            :: slice the current waveform\n        -> `.record(str)`\n            :: record the value of waveform at current time\n    - Possible Next <WaveForm:: append>:\n        :: Append waveform into current channel\n        -> `.linear()`\n        -> `.constant()`\n        -> `.ploy()`\n        -> `.apply()`\n        -> `.piecewise_linear()`\n        -> `.piecewise_constant()`\n        -> `.fn()`\n    - Possible Next <LevelCoupling>:\n        -> `.rydberg`\n            :: Create/Switch to new rydberg level coupling channel\n        -> `.hyperfine`\n            :: Create/Switch to new hyperfine level coupling channel\n    - Possible Next <Emit:: Linking Vars>:\n        -> `.assign()`\n            :: assign varialbe an actual value/number\n        -> `.batch_assign()`\n            :: create batch job with different sets\n            of values assign to each variable.\n    - Possible Next <Compile>:\n        -> `.quera()`\n            :: Compile current program to QuEra job\n        -> `.braket()`\n            :: Compile current program to Amazon Braket job\n        -> `.braket_local_simulator()`\n            :: Compile current program to local simulator job\n    \"\"\"\nreturn Record(self, name)\n
                        "},{"location":"reference/bloqade/builder/waveform/#bloqade.builder.waveform.Sliceable","title":"Sliceable","text":""},{"location":"reference/bloqade/builder/waveform/#bloqade.builder.waveform.Sliceable.slice","title":"slice","text":"
                        slice(start=None, stop=None)\n

                        Slice current waveform

                        Possible Next:

                        • Possible Next :

                          -> .location(int) :: creating new channel to address another location(s)

                        • Possible Next :

                          -> .record(str) :: record the value of waveform at current time

                        • Possible Next :

                          :: Append waveform into current channel

                          -> .linear()

                          -> .constant()

                          -> .ploy()

                          -> .apply()

                          -> .piecewise_linear()

                          -> .piecewise_constant()

                          -> .fn()

                        • Possible Next :

                          -> .rydberg :: Create/Switch to new rydberg level coupling channel

                          -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

                        • Possible Next :

                          -> .assign() :: assign varialbe an actual value/number

                          -> .batch_assign() :: create batch job with different sets of values assign to each variable.

                        • Possible Next :

                          -> .quera() :: Compile current program to QuEra job

                          -> .braket() :: Compile current program to Amazon Braket job

                          -> .braket_local_simulator() :: Compile current program to local simulator job

                          Source code in src/bloqade/builder/waveform.py
                          def slice(\nself, start: Optional[ScalarType] = None, stop: Optional[ScalarType] = None\n):\n\"\"\"\n    Slice current waveform\n    Possible Next:\n    - Possible Next <Location>:\n        -> `.location(int)`\n            :: creating new channel to address\n            another location(s)\n    - Possible Next <WaveForm:: current>:\n        -> `.record(str)`\n            :: record the value of waveform at current time\n    - Possible Next <WaveForm:: append>:\n        :: Append waveform into current channel\n        -> `.linear()`\n        -> `.constant()`\n        -> `.ploy()`\n        -> `.apply()`\n        -> `.piecewise_linear()`\n        -> `.piecewise_constant()`\n        -> `.fn()`\n    - Possible Next <LevelCoupling>:\n        -> `.rydberg`\n            :: Create/Switch to new rydberg level coupling channel\n        -> `.hyperfine`\n            :: Create/Switch to new hyperfine level coupling channel\n    - Possible Next <Emit:: Linking Vars>:\n        -> `.assign()`\n            :: assign varialbe an actual value/number\n        -> `.batch_assign()`\n            :: create batch job with different sets\n            of values assign to each variable.\n    - Possible Next <Compile>:\n        -> `.quera()`\n            :: Compile current program to QuEra job\n        -> `.braket()`\n            :: Compile current program to Amazon Braket job\n        -> `.braket_local_simulator()`\n            :: Compile current program to local simulator job\n    \"\"\"\nreturn Slice(self, start, stop)\n
                          "},{"location":"reference/bloqade/builder/waveform/#bloqade.builder.waveform.Waveform","title":"Waveform","text":"

                          Bases: Builder

                          "},{"location":"reference/bloqade/builder/waveform/#bloqade.builder.waveform.Waveform.apply","title":"apply","text":"
                          apply(wf)\n

                          Apply a pre-defined waveform to the current location.

                          Parameters:

                          Name Type Description Default wf ir.Waveform

                          the waveform

                          required

                          Examples:

                          • apply a pre-defined waveform object to current sequence.
                          >>> node = bloqade.start.rydberg.detuning.uniform\n>>> wv = bloqade.ir.Linear(0,10,0.5)\n>>> node = node.apply(wv)\n

                          Possible Next:

                          • Possible Next :

                            -> .location(int) :: creating new channel to address another location(s)

                          • Possible Next :

                            -> .slice() :: slice current waveform

                            -> .record(str) :: record the value of waveform at current time

                          • Possible Next :

                            :: Append waveform into current channel

                            -> .linear()

                            -> .constant()

                            -> .ploy()

                            -> .apply()

                            -> .piecewise_linear()

                            -> .piecewise_constant()

                            -> .fn()

                          • Possible Next :

                            -> .rydberg :: Create/Switch to new rydberg level coupling channel

                            -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

                          • Possible Next :

                            -> .assign() :: assign varialbe an actual value/number

                            -> .batch_assign() :: create batch job with different sets of values assign to each variable.

                          • Possible Next :

                            -> .quera() :: Compile current program to QuEra job

                            -> .braket() :: Compile current program to Amazon Braket job

                            -> .braket_local_simulator() :: Compile current program to local simulator job

                            Source code in src/bloqade/builder/waveform.py
                            def apply(self, wf: ir.Waveform):\n\"\"\"\n    Apply a pre-defined waveform to the current location.\n    Args:\n        wf (ir.Waveform): the waveform\n    Examples:\n        - apply a pre-defined waveform object to current sequence.\n        >>> node = bloqade.start.rydberg.detuning.uniform\n        >>> wv = bloqade.ir.Linear(0,10,0.5)\n        >>> node = node.apply(wv)\n    Possible Next:\n    - Possible Next <Location>:\n        -> `.location(int)`\n            :: creating new channel to address another location(s)\n    - Possible Next <WaveForm:: current>:\n        -> `.slice()`\n            :: slice current waveform\n        -> `.record(str)`\n            :: record the value of waveform at current time\n    - Possible Next <WaveForm:: append>:\n        :: Append waveform into current channel\n        -> `.linear()`\n        -> `.constant()`\n        -> `.ploy()`\n        -> `.apply()`\n        -> `.piecewise_linear()`\n        -> `.piecewise_constant()`\n        -> `.fn()`\n    - Possible Next <LevelCoupling>:\n        -> `.rydberg`\n            :: Create/Switch to new rydberg level coupling channel\n        -> `.hyperfine`\n            :: Create/Switch to new hyperfine level coupling channel\n    - Possible Next <Emit:: Linking Vars>:\n        -> `.assign()`\n            :: assign varialbe an actual value/number\n        -> `.batch_assign()`\n            :: create batch job with different sets\n            of values assign to each variable.\n    - Possible Next <Compile>:\n        -> `.quera()`\n            :: Compile current program to QuEra job\n        -> `.braket()`\n            :: Compile current program to Amazon Braket job\n        -> `.braket_local_simulator()`\n            :: Compile current program to local simulator job\n    \"\"\"\nreturn Apply(self, wf)\n
                            "},{"location":"reference/bloqade/builder/waveform/#bloqade.builder.waveform.Waveform.constant","title":"constant","text":"
                            constant(value, duration)\n

                            Append/assign a constant waveform to the current location.

                            Parameters:

                            Name Type Description Default value ScalarType Union[float, str]

                            The value of the waveform

                            required duration ScalarType Union[float, str]

                            The duration of the waveform

                            required

                            Examples:

                            • specify a constant waveform of value 1 with duration 0.5 for (spatial) uniform rydberg detuning
                            >>> node = bloqade.start.rydberg.detuning.uniform\n>>> node = node.constant(value=1,duration=0.5)\n

                            Possible Next:

                            • Possible Next :

                              -> .location(int) :: creating new channel to address another location(s)

                            • Possible Next :

                              -> .slice() :: slice current waveform

                              -> .record(str) :: record the value of waveform at current time

                            • Possible Next :

                              :: Append waveform into current channel

                              -> .linear()

                              -> .constant()

                              -> .ploy()

                              -> .apply()

                              -> .piecewise_linear()

                              -> .piecewise_constant()

                              -> .fn()

                            • Possible Next :

                              -> .rydberg :: Create/Switch to new rydberg level coupling channel

                              -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

                            • Possible Next :

                              -> .assign() :: assign varialbe an actual value/number

                              -> .batch_assign() :: create batch job with different sets of values assign to each variable.

                            • Possible Next :

                              -> .quera() :: Compile current program to QuEra job

                              -> .braket() :: Compile current program to Amazon Braket job

                              -> .braket_local_simulator() :: Compile current program to local simulator job

                              Source code in src/bloqade/builder/waveform.py
                              def constant(self, value: ScalarType, duration: ScalarType):\n\"\"\"\n    Append/assign a constant waveform to the current location.\n    Args:\n        value (ScalarType Union[float, str]): The value of the waveform\n        duration (ScalarType Union[float, str]): The duration of the waveform\n    Examples:\n        - specify a constant waveform of value 1 with duration 0.5\n        for (spatial) uniform rydberg detuning\n        >>> node = bloqade.start.rydberg.detuning.uniform\n        >>> node = node.constant(value=1,duration=0.5)\n    Possible Next:\n    - Possible Next <Location>:\n        -> `.location(int)`\n            :: creating new channel to address another location(s)\n    - Possible Next <WaveForm:: current>:\n        -> `.slice()`\n            :: slice current waveform\n        -> `.record(str)`\n            :: record the value of waveform at current time\n    - Possible Next <WaveForm:: append>:\n        :: Append waveform into current channel\n        -> `.linear()`\n        -> `.constant()`\n        -> `.ploy()`\n        -> `.apply()`\n        -> `.piecewise_linear()`\n        -> `.piecewise_constant()`\n        -> `.fn()`\n    - Possible Next <LevelCoupling>:\n        -> `.rydberg`\n            :: Create/Switch to new rydberg level coupling channel\n        -> `.hyperfine`\n            :: Create/Switch to new hyperfine level coupling channel\n    - Possible Next <Emit:: Linking Vars>:\n        -> `.assign()`\n            :: assign varialbe an actual value/number\n        -> `.batch_assign()`\n            :: create batch job with different sets\n            of values assign to each variable.\n    - Possible Next <Compile>:\n        -> `.quera()`\n            :: Compile current program to QuEra job\n        -> `.braket()`\n            :: Compile current program to Amazon Braket job\n        -> `.braket_local_simulator()`\n            :: Compile current program to local simulator job\n    \"\"\"\nreturn Constant(self, value, duration)\n
                              "},{"location":"reference/bloqade/builder/waveform/#bloqade.builder.waveform.Waveform.fn","title":"fn","text":"
                              fn(fn, duration)\n

                              Append/assign a waveform defined by a python function to the current location.

                              This function create a waveform with user-defined python function fn(t) with duration duration.

                              Parameters:

                              Name Type Description Default fn Callable

                              The python function defining the waveform

                              required duration ScalarType

                              The durations of each constant segment

                              required Note
                              • ScalarType can be either float or str.
                              • The python function should take a single argument t and return a float.

                              Examples:

                              • create a cosine waveform with duration 0.5 for (spatial) uniform rydberg detuning.
                              >>> import numpy as np\n>>> def my_fn(t):\n>>>     return np.cos(2*np.pi*t)\n>>> node = bloqade.start.rydberg.detuning.uniform\n>>> node = node.fn(my_fn,duration=0.5)\n

                              Possible Next:

                              • Possible Next :

                                -> .location(int) :: creating new channel to address another location(s)

                              • Possible Next :

                                -> .slice() :: slice current waveform

                                -> .record(str) :: record the value of waveform at current time

                                -> .sample() :: sample current callable at given time points

                              • Possible Next :

                                :: Append waveform into current channel

                                -> .linear()

                                -> .constant()

                                -> .ploy()

                                -> .apply()

                                -> .piecewise_linear()

                                -> .piecewise_constant()

                                -> .fn()

                              • Possible Next :

                                -> .rydberg :: Create/Switch to new rydberg level coupling channel

                                -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

                              • Possible Next :

                                -> .assign() :: assign varialbe an actual value/number

                                -> .batch_assign() :: create batch job with different sets of values assign to each variable.

                              • Possible Next :

                                -> .quera() :: Compile current program to QuEra job

                                -> .braket() :: Compile current program to Amazon Braket job

                                -> .braket_local_simulator() :: Compile current program to local simulator job

                                Source code in src/bloqade/builder/waveform.py
                                def fn(self, fn: Callable, duration: ScalarType):\n\"\"\"\n    Append/assign a waveform defined by a python function to the current location.\n    This function create a waveform with user-defined\n    python function `fn(t)` with duration `duration`.\n    Args:\n        fn (Callable): The python function defining the waveform\n        duration (ScalarType): The durations of each constant segment\n    Note:\n        - ScalarType can be either float or str.\n        - The python function should take a single argument `t` and return a float.\n    Examples:\n        - create a cosine waveform with duration 0.5\n        for (spatial) uniform rydberg detuning.\n        >>> import numpy as np\n        >>> def my_fn(t):\n        >>>     return np.cos(2*np.pi*t)\n        >>> node = bloqade.start.rydberg.detuning.uniform\n        >>> node = node.fn(my_fn,duration=0.5)\n    Possible Next:\n    - Possible Next <Location>:\n        -> `.location(int)`\n            :: creating new channel to address another location(s)\n    - Possible Next <WaveForm:: current>:\n        -> `.slice()`\n            :: slice current waveform\n        -> `.record(str)`\n            :: record the value of waveform at current time\n        -> `.sample()`\n            :: sample current callable at given time points\n    - Possible Next <WaveForm:: append>:\n        :: Append waveform into current channel\n        -> `.linear()`\n        -> `.constant()`\n        -> `.ploy()`\n        -> `.apply()`\n        -> `.piecewise_linear()`\n        -> `.piecewise_constant()`\n        -> `.fn()`\n    - Possible Next <LevelCoupling>:\n        -> `.rydberg`\n            :: Create/Switch to new rydberg level coupling channel\n        -> `.hyperfine`\n            :: Create/Switch to new hyperfine level coupling channel\n    - Possible Next <Emit:: Linking Vars>:\n        -> `.assign()`\n            :: assign varialbe an actual value/number\n        -> `.batch_assign()`\n            :: create batch job with different sets\n            of values assign to each variable.\n    - Possible Next <Compile>:\n        -> `.quera()`\n            :: Compile current program to QuEra job\n        -> `.braket()`\n            :: Compile current program to Amazon Braket job\n        -> `.braket_local_simulator()`\n            :: Compile current program to local simulator job\n    \"\"\"\nreturn PythonFn(self, fn, duration)\n
                                "},{"location":"reference/bloqade/builder/waveform/#bloqade.builder.waveform.Waveform.linear","title":"linear","text":"
                                linear(start, stop, duration)\n

                                Append/assign a linear waveform to the current location.

                                Parameters:

                                Name Type Description Default start ScalarType Union[float, str]

                                The start value of the waveform

                                required stop ScalarType Union[float, str]

                                The stop value of the waveform

                                required duration ScalarType Union[float, str]

                                The duration of the waveform

                                required

                                Examples:

                                • specify a linear waveform for (spatial) uniform rydberg detuning from 0 to 1 in 0.5 us.
                                >>> node = bloqade.start.rydberg.detuning.uniform\n>>> node = node.linear(start=0,stop=1,duration=0.5)\n

                                Possible Next:

                                • Possible Next :

                                  -> .location(int) :: creating new channel to address another location(s)

                                • Possible Next :

                                  -> .slice() :: slice current waveform

                                  -> .record(str) :: record the value of waveform at current time

                                • Possible Next :

                                  :: Append waveform into current channel

                                  -> .linear()

                                  -> .constant()

                                  -> .ploy()

                                  -> .apply()

                                  -> .piecewise_linear()

                                  -> .piecewise_constant()

                                  -> .fn()

                                • Possible Next :

                                  -> .rydberg :: Create/Switch to new rydberg level coupling channel

                                  -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

                                • Possible Next :

                                  -> .assign() :: assign varialbe an actual value/number

                                  -> .batch_assign() :: create batch job with different sets of values assign to each variable.

                                • Possible Next :

                                  -> .quera() :: Compile current program to QuEra job

                                  -> .braket() :: Compile current program to Amazon Braket job

                                  -> .braket_local_simulator() :: Compile current program to local simulator job

                                  Source code in src/bloqade/builder/waveform.py
                                  def linear(self, start: ScalarType, stop: ScalarType, duration: ScalarType):\n\"\"\"\n    Append/assign a linear waveform to the current location.\n    Args:\n        start (ScalarType Union[float, str]): The start value of the waveform\n        stop (ScalarType Union[float, str]): The stop value of the waveform\n        duration (ScalarType Union[float, str]): The duration of the waveform\n    Examples:\n        - specify a linear waveform for (spatial) uniform rydberg detuning\n        from 0 to 1 in 0.5 us.\n        >>> node = bloqade.start.rydberg.detuning.uniform\n        >>> node = node.linear(start=0,stop=1,duration=0.5)\n    Possible Next:\n    - Possible Next <Location>:\n        -> `.location(int)`\n            :: creating new channel to address another location(s)\n    - Possible Next <WaveForm:: current>:\n        -> `.slice()`\n            :: slice current waveform\n        -> `.record(str)`\n            :: record the value of waveform at current time\n    - Possible Next <WaveForm:: append>:\n        :: Append waveform into current channel\n        -> `.linear()`\n        -> `.constant()`\n        -> `.ploy()`\n        -> `.apply()`\n        -> `.piecewise_linear()`\n        -> `.piecewise_constant()`\n        -> `.fn()`\n    - Possible Next <LevelCoupling>:\n        -> `.rydberg`\n            :: Create/Switch to new rydberg level coupling channel\n        -> `.hyperfine`\n            :: Create/Switch to new hyperfine level coupling channel\n    - Possible Next <Emit:: Linking Vars>:\n        -> `.assign()`\n            :: assign varialbe an actual value/number\n        -> `.batch_assign()`\n            :: create batch job with different\n            sets of values assign to each variable.\n    - Possible Next <Emit:: Compile >:\n        -> `.quera()`\n            :: Compile current program to QuEra job\n        -> `.braket()`\n            :: Compile current program to Amazon Braket job\n        -> `.braket_local_simulator()`\n            :: Compile current program to local simulator job\n    \"\"\"\nreturn Linear(self, start, stop, duration)\n
                                  "},{"location":"reference/bloqade/builder/waveform/#bloqade.builder.waveform.Waveform.piecewise_constant","title":"piecewise_constant","text":"
                                  piecewise_constant(durations, values)\n

                                  Append/assign a piecewise constant waveform to the current location. The durations should have number of elements = len(values).

                                  This function create a waveform of piecewise_constant of values[i] with duration durations[i].

                                  Parameters:

                                  Name Type Description Default durations List[ScalarType]

                                  The durations of each constant segment

                                  required values List[ScalarType]

                                  The values of each constant segment

                                  required Note

                                  ScalarType can be either float or str.

                                  Examples:

                                  • specify a piecewise constant of [0.5,1.5] with duration [0.1,3.8] for (spatial) uniform rydberg detuning.
                                  >>> node = bloqade.start.rydberg.detuning.uniform\n>>> node = node.piecewise_constant(values=[0.5,1.5],durations=[0.1,3.8])\n

                                  Possible Next:

                                  • Possible Next :

                                    -> .location(int) :: creating new channel to address another location(s)

                                  • Possible Next :

                                    -> .slice() :: slice current waveform

                                    -> .record(str) :: record the value of waveform at current time

                                  • Possible Next :

                                    :: Append waveform into current channel

                                    -> .linear()

                                    -> .constant()

                                    -> .ploy()

                                    -> .apply()

                                    -> .piecewise_linear()

                                    -> .piecewise_constant()

                                    -> .fn()

                                  • Possible Next :

                                    -> .rydberg :: Create/Switch to new rydberg level coupling channel

                                    -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

                                  • Possible Next :

                                    -> .assign() :: assign varialbe an actual value/number

                                    -> .batch_assign() :: create batch job with different sets of values assign to each variable.

                                  • Possible Next :

                                    -> .quera() :: Compile current program to QuEra job

                                    -> .braket() :: Compile current program to Amazon Braket job

                                    -> .braket_local_simulator() :: Compile current program to local simulator job

                                    Source code in src/bloqade/builder/waveform.py
                                    def piecewise_constant(self, durations: List[ScalarType], values: List[ScalarType]):\n\"\"\"\n    Append/assign a piecewise constant waveform to the current location.\n    The durations should have number of elements = len(values).\n    This function create a waveform of piecewise_constant of\n    `values[i]` with duration `durations[i]`.\n    Args:\n        durations (List[ScalarType]): The durations of each constant segment\n        values (List[ScalarType]): The values of each constant segment\n    Note:\n        ScalarType can be either float or str.\n    Examples:\n        - specify a piecewise constant of [0.5,1.5] with duration [0.1,3.8]\n        for (spatial) uniform rydberg detuning.\n        >>> node = bloqade.start.rydberg.detuning.uniform\n        >>> node = node.piecewise_constant(values=[0.5,1.5],durations=[0.1,3.8])\n    Possible Next:\n    - Possible Next <Location>:\n        -> `.location(int)`\n            :: creating new channel to address another location(s)\n    - Possible Next <WaveForm:: current>:\n        -> `.slice()`\n            :: slice current waveform\n        -> `.record(str)`\n            :: record the value of waveform at current time\n    - Possible Next <WaveForm:: append>:\n        :: Append waveform into current channel\n        -> `.linear()`\n        -> `.constant()`\n        -> `.ploy()`\n        -> `.apply()`\n        -> `.piecewise_linear()`\n        -> `.piecewise_constant()`\n        -> `.fn()`\n    - Possible Next <LevelCoupling>:\n        -> `.rydberg`\n            :: Create/Switch to new rydberg level coupling channel\n        -> `.hyperfine`\n            :: Create/Switch to new hyperfine level coupling channel\n    - Possible Next <Emit:: Linking Vars>:\n        -> `.assign()`\n            :: assign varialbe an actual value/number\n        -> `.batch_assign()`\n            :: create batch job with different sets\n            of values assign to each variable.\n    - Possible Next <Compile>:\n        -> `.quera()`\n            :: Compile current program to QuEra job\n        -> `.braket()`\n            :: Compile current program to Amazon Braket job\n        -> `.braket_local_simulator()`\n            :: Compile current program to local simulator job\n    \"\"\"\nbuilder = self\nif len(durations) != len(values):\nraise ValueError(\"durations and values lists must have same length.\")\nfor duration, value in zip(durations, values):\nbuilder = builder.constant(value, duration)\nreturn builder\n
                                    "},{"location":"reference/bloqade/builder/waveform/#bloqade.builder.waveform.Waveform.piecewise_linear","title":"piecewise_linear","text":"
                                    piecewise_linear(durations, values)\n

                                    Append/assign a piecewise linear waveform to the current location. The durations should have number of elements = len(values) - 1.

                                    This function create a waveform by connecting values[i], values[i+1] with linear segments.

                                    Parameters:

                                    Name Type Description Default durations List[ScalarType]

                                    The durations of each linear segment

                                    required values List[ScalarType]

                                    The values of each linear segment

                                    required

                                    Examples:

                                    • specify a piecewise linear of [0,1,1,0] with duration [0.1,3.8,0.1] for (spatial) uniform rydberg detuning.
                                    >>> node = bloqade.start.rydberg.detuning.uniform\n>>> node = node.piecewise_linear(values=[0,1,1,0],durations=[0.1,3.8,0.1])\n
                                    Note

                                    ScalarType can be either float or str.

                                    Possible Next:

                                    • Possible Next :

                                      -> .location(int) :: creating new channel to address another location(s)

                                    • Possible Next :

                                      -> .slice() :: slice current waveform

                                      -> .record(str) :: record the value of waveform at current time

                                    • Possible Next :

                                      :: Append waveform into current channel

                                      -> .linear()

                                      -> .constant()

                                      -> .ploy()

                                      -> .apply()

                                      -> .piecewise_linear()

                                      -> .piecewise_constant()

                                      -> .fn()

                                    • Possible Next :

                                      -> .rydberg :: Create/Switch to new rydberg level coupling channel

                                      -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

                                    • Possible Next :

                                      -> .assign() :: assign varialbe an actual value/number

                                      -> .batch_assign() :: create batch job with different sets of values assign to each variable.

                                    • Possible Next :

                                      -> .quera() :: Compile current program to QuEra job

                                      -> .braket() :: Compile current program to Amazon Braket job

                                      -> .braket_local_simulator() :: Compile current program to local simulator job

                                      Source code in src/bloqade/builder/waveform.py
                                      def piecewise_linear(self, durations: List[ScalarType], values: List[ScalarType]):\n\"\"\"\n    Append/assign a piecewise linear waveform to the current location.\n    The durations should have number of elements = len(values) - 1.\n    This function create a waveform by connecting `values[i], values[i+1]`\n    with linear segments.\n    Args:\n        durations (List[ScalarType]): The durations of each linear segment\n        values (List[ScalarType]): The values of each linear segment\n    Examples:\n        - specify a piecewise linear of [0,1,1,0] with duration [0.1,3.8,0.1]\n        for (spatial) uniform rydberg detuning.\n        >>> node = bloqade.start.rydberg.detuning.uniform\n        >>> node = node.piecewise_linear(values=[0,1,1,0],durations=[0.1,3.8,0.1])\n    Note:\n        ScalarType can be either float or str.\n    Possible Next:\n    - Possible Next <Location>:\n        -> `.location(int)`\n            :: creating new channel to address another location(s)\n    - Possible Next <WaveForm:: current>:\n        -> `.slice()`\n            :: slice current waveform\n        -> `.record(str)`\n            :: record the value of waveform at current time\n    - Possible Next <WaveForm:: append>:\n        :: Append waveform into current channel\n        -> `.linear()`\n        -> `.constant()`\n        -> `.ploy()`\n        -> `.apply()`\n        -> `.piecewise_linear()`\n        -> `.piecewise_constant()`\n        -> `.fn()`\n    - Possible Next <LevelCoupling>:\n        -> `.rydberg`\n            :: Create/Switch to new rydberg level coupling channel\n        -> `.hyperfine`\n            :: Create/Switch to new hyperfine level coupling channel\n    - Possible Next <Emit:: Linking Vars>:\n        -> `.assign()`\n            :: assign varialbe an actual value/number\n        -> `.batch_assign()`\n            :: create batch job with different sets\n            of values assign to each variable.\n    - Possible Next <Compile>:\n        -> `.quera()`\n            :: Compile current program to QuEra job\n        -> `.braket()`\n            :: Compile current program to Amazon Braket job\n        -> `.braket_local_simulator()`\n            :: Compile current program to local simulator job\n    \"\"\"\nbuilder = self\nif len(durations) != len(values) - 1:\nraise ValueError(\"len(durations) must be len(values)-1.\")\nfor duration, start, stop in zip(durations, values[:-1], values[1:]):\nbuilder = builder.linear(start, stop, duration)\nreturn builder\n
                                      "},{"location":"reference/bloqade/builder/waveform/#bloqade.builder.waveform.Waveform.poly","title":"poly","text":"
                                      poly(coeffs, duration)\n

                                      Append/assign a waveform with polynomial profile to the current location.

                                      with form

                                      wv(t) = coeffs[0] + coeffs[1]*t + coeffs[2]*t^2 + ... + coeffs[n]*t^n

                                      Parameters:

                                      Name Type Description Default coeffs ScalarType Union[float, str]

                                      The coefficients of the polynomial

                                      required duration ScalarType Union[float, str]

                                      The duration of the waveform

                                      required

                                      Examples:

                                      • specify a second order polynomial with duration 0.5 for (spatial) uniform rydberg detuning
                                      >>> node = bloqade.start.rydberg.detuning.uniform\n>>> node = node.poly(coeffs=[1,2,3],duration=0.5)\n

                                      Possible Next:

                                      • Possible Next :

                                        -> .location(int) :: creating new channel to address another location(s)

                                      • Possible Next :

                                        -> .slice() :: slice current waveform

                                        -> .record(str) :: record the value of waveform at current time

                                      • Possible Next :

                                        :: Append waveform into current channel

                                        -> .linear()

                                        -> .constant()

                                        -> .ploy()

                                        -> .apply()

                                        -> .piecewise_linear()

                                        -> .piecewise_constant()

                                        -> .fn()

                                      • Possible Next :

                                        -> .rydberg :: Create/Switch to new rydberg level coupling channel

                                        -> .hyperfine :: Create/Switch to new hyperfine level coupling channel

                                      • Possible Next :

                                        -> .assign() :: assign varialbe an actual value/number

                                        -> .batch_assign() :: create batch job with different sets of values assign to each variable.

                                      • Possible Next :

                                        -> .quera() :: Compile current program to QuEra job

                                        -> .braket() :: Compile current program to Amazon Braket job

                                        -> .braket_local_simulator() :: Compile current program to local simulator job

                                        Source code in src/bloqade/builder/waveform.py
                                        def poly(self, coeffs: ScalarType, duration: ScalarType):\n\"\"\"\n    Append/assign a waveform with polynomial profile to the current location.\n    with form:\n        wv(t) = coeffs[0] + coeffs[1]*t + coeffs[2]*t^2 + ... + coeffs[n]*t^n\n    Args:\n        coeffs (ScalarType Union[float, str]): The coefficients of the polynomial\n        duration (ScalarType Union[float, str]): The duration of the waveform\n    Examples:\n        - specify a second order polynomial with duration 0.5\n        for (spatial) uniform rydberg detuning\n        >>> node = bloqade.start.rydberg.detuning.uniform\n        >>> node = node.poly(coeffs=[1,2,3],duration=0.5)\n    Possible Next:\n    - Possible Next <Location>:\n        -> `.location(int)`\n            :: creating new channel to address another location(s)\n    - Possible Next <WaveForm:: current>:\n        -> `.slice()`\n            :: slice current waveform\n        -> `.record(str)`\n            :: record the value of waveform at current time\n    - Possible Next <WaveForm:: append>:\n        :: Append waveform into current channel\n        -> `.linear()`\n        -> `.constant()`\n        -> `.ploy()`\n        -> `.apply()`\n        -> `.piecewise_linear()`\n        -> `.piecewise_constant()`\n        -> `.fn()`\n    - Possible Next <LevelCoupling>:\n        -> `.rydberg`\n            :: Create/Switch to new rydberg level coupling channel\n        -> `.hyperfine`\n            :: Create/Switch to new hyperfine level coupling channel\n    - Possible Next <Emit:: Linking Vars>:\n        -> `.assign()`\n            :: assign varialbe an actual value/number\n        -> `.batch_assign()`\n            :: create batch job with different sets\n            of values assign to each variable.\n    - Possible Next <Compile>:\n        -> `.quera()`\n            :: Compile current program to QuEra job\n        -> `.braket()`\n            :: Compile current program to Amazon Braket job\n        -> `.braket_local_simulator()`\n            :: Compile current program to local simulator job\n    \"\"\"\nreturn Poly(self, coeffs, duration)\n
                                        "},{"location":"reference/bloqade/ir/","title":"Index","text":""},{"location":"reference/bloqade/ir/#bloqade.ir.AlignedWaveform","title":"AlignedWaveform","text":"

                                        Bases: Waveform

                                        <padded waveform> ::= <waveform> | <waveform> <alignment> <value>\n<alignment> ::= 'left aligned' | 'right aligned'\n<value> ::= 'left value' | 'right value' | <scalar expr>\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.Constant","title":"Constant","text":"
                                        Constant(value, duration)\n

                                        Bases: Instruction

                                        <constant> ::= 'constant' <scalar expr>\n

                                        f(t=0:duration) = value

                                        Parameters:

                                        Name Type Description Default value Scalar

                                        the constant value

                                        required duration Scalar

                                        the time span of the constant waveform.

                                        required Source code in src/bloqade/ir/control/waveform.py
                                        def __init__(self, value, duration):\nself.value = cast(value)\nself._duration = cast(duration)\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.Field","title":"Field","text":"

                                        Field node in the IR. Which contains collection(s) of Waveform

                                        <field> ::= ('field' <spatial modulation>  <padded waveform>)*\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.Linear","title":"Linear","text":"
                                        Linear(start, stop, duration)\n

                                        Bases: Instruction

                                        <linear> ::= 'linear' <scalar expr> <scalar expr>\n

                                        f(t=0:duration) = start + (stop-start)/duration * t

                                        Parameters:

                                        Name Type Description Default start Scalar

                                        start value

                                        required stop Scalar

                                        stop value

                                        required duration Scalar

                                        the time span of the linear waveform.

                                        required Source code in src/bloqade/ir/control/waveform.py
                                        def __init__(self, start, stop, duration):\nself.start = cast(start)\nself.stop = cast(stop)\nself._duration = cast(duration)\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.Literal","title":"Literal","text":"

                                        Bases: Real

                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.scalar.Literal.value","title":"value class-attribute","text":"
                                        value: Decimal\n

                                        Scalar Literal, which stores a decimaal value instance.

                                        Parameters:

                                        Name Type Description Default value Decimal

                                        decimal value instance

                                        required"},{"location":"reference/bloqade/ir/#bloqade.ir.Poly","title":"Poly","text":"
                                        Poly(checkpoints, duration)\n

                                        Bases: Instruction

                                        <poly> ::= <scalar>+\n

                                        f(t=0:duration) = c[0] + c[1]t + c[2]t^2 + ... + c[n-1]t^n-1 + c[n]t^n

                                        Parameters:

                                        Name Type Description Default checkpoints List[Scalar]

                                        the coefficients c[] of the polynomial.

                                        required duration Scalar

                                        the time span of the waveform.

                                        required Source code in src/bloqade/ir/control/waveform.py
                                        def __init__(self, checkpoints, duration):\nself.checkpoints = cast(checkpoints)\nself._duration = cast(duration)\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.Program","title":"Program","text":"
                                        Program(register, sequence)\n

                                        Program is a dummy type that bundle register and sequence together.

                                        Source code in src/bloqade/ir/program.py
                                        def __init__(\nself,\nregister: Union[\"AtomArrangement\", \"ParallelRegister\"],\nsequence: Sequence,\n):\nself._sequence = sequence\nself._register = register\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.program.Program.register","title":"register property","text":"
                                        register\n

                                        Get the register of the program.

                                        Returns:

                                        Type Description

                                        register (Union[\"AtomArrangement\", \"ParallelRegister\"])

                                        Note

                                        If the program is built with parallelize(), The the register will be a ParallelRegister. Otherwise it will be a AtomArrangement.

                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.program.Program.sequence","title":"sequence property","text":"
                                        sequence\n

                                        Get the sequence of the program.

                                        Returns:

                                        Name Type Description Sequence

                                        the sequence of the program. See also Sequence.

                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.Pulse","title":"Pulse","text":"
                                        Pulse(field_pairs)\n

                                        Bases: PulseExpr

                                        <pulse> ::= (<field name> <field>)+\n
                                        Source code in src/bloqade/ir/control/pulse.py
                                        def __init__(self, field_pairs):\nvalue = dict()\nfor k, v in field_pairs.items():\nif isinstance(v, Field):\nvalue[k] = v\nelif isinstance(v, dict):\nvalue[k] = Field(v)\nelse:\nraise TypeError(f\"Expected Field or dict, got {type(v)}\")\nself.value = value\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.PythonFn","title":"PythonFn","text":"
                                        PythonFn(fn, duration)\n

                                        Bases: Instruction

                                        <python-fn> ::= 'python-fn' <python function def> <scalar expr>\n
                                        Source code in src/bloqade/ir/control/waveform.py
                                        def __init__(self, fn: Callable, duration: Any):\nself.fn = fn\nself._duration = cast(duration)\nsignature = inspect.getfullargspec(fn)\nif signature.varargs is not None:\nraise ValueError(\"Cannot have varargs\")\nif signature.varkw is not None:\nraise ValueError(\"Cannot have varkw\")\nself.parameters = list(signature.args[1:]) + list(signature.kwonlyargs)\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.Record","title":"Record","text":"

                                        Bases: Waveform

                                        <record> ::= 'record' <waveform> <var>\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.Sample","title":"Sample","text":"

                                        Bases: Waveform

                                        <sample> ::= 'sample' <waveform> <interpolation> <scalar>\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.Scalar","title":"Scalar","text":"

                                        Base class for all scalar expressions.

                                        <scalar> ::= <literal>\n| <variable>\n| <default>\n| <negative>\n| <add>\n| <mul>\n| <min>\n| <max>\n| <slice>\n| <inverval>\n<mul> ::= <scalar> '*' <scalar>\n<add> ::= <scalar> '+' <scalar>\n<min> ::= 'min' <scalar>+\n<max> ::= 'max' <scalar>+\n<slice> ::= <scalar expr> '[' <interval> ']'\n<interval> ::= <scalar expr> '..' <scalar expr>\n<real> ::= <literal> | <var>\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.Sequence","title":"Sequence","text":"
                                        Sequence(seq_pairs=None)\n

                                        Bases: SequenceExpr

                                        Sequence of a program, which includes pulses informations.

                                        Source code in src/bloqade/ir/control/sequence.py
                                        def __init__(self, seq_pairs: Dict | None = None):\nif seq_pairs is None:\nself.value = {}\nreturn\nvalue = {}\nfor level_coupling, pulse in seq_pairs.items():\nif not isinstance(level_coupling, LevelCoupling):\nraise TypeError(f\"Unexpected type {type(level_coupling)}\")\nif isinstance(pulse, PulseExpr):\nvalue[level_coupling] = pulse\nelif isinstance(pulse, dict):\nvalue[level_coupling] = Pulse(pulse)\nelse:\nraise TypeError(f\"Unexpected type {type(pulse)}\")\nself.value = value\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.Variable","title":"Variable","text":"

                                        Bases: Real

                                        Variable, which stores a variable name.

                                        Parameters:

                                        Name Type Description Default name str

                                        variable instance.

                                        required"},{"location":"reference/bloqade/ir/#bloqade.ir.Waveform","title":"Waveform","text":"

                                        Waveform node in the IR.

                                        • <instruction>
                                        • <smooth>
                                        • <slice>
                                        • <apppend>
                                        • <negative>
                                        • <scale>
                                        • <add>
                                        • <record>
                                        • <sample>
                                        <waveform> ::= <instruction>\n    | <smooth>\n    | <slice>\n    | <append>\n    | <negative>\n    | <scale>\n    | <add>\n    | <record>\n    | <sample>\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.control.waveform.Waveform.plot","title":"plot","text":"
                                        plot(**assignments)\n

                                        Plot the waveform.

                                        Returns:

                                        Name Type Description figure

                                        a bokeh figure

                                        Source code in src/bloqade/ir/control/waveform.py
                                        def plot(self, **assignments):\n\"\"\"Plot the waveform.\n    Returns:\n        figure: a bokeh figure\n    \"\"\"\nduration = self.duration(**assignments)\ntimes = np.linspace(0, duration, 1001)\nvalues = [self.__call__(time, **assignments) for time in times]\nfig = figure(width=250, height=250)\nfig.line(times, values)\nreturn fig\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.cast","title":"cast","text":"
                                        cast(py)\n

                                        cast Real number (or list/tuple of Real numbers) to Scalar Literal.

                                        Parameters:

                                        Name Type Description Default py Union[Real, Tuple[Real], List[Real]]

                                        python object to cast

                                        required

                                        Returns:

                                        Type Description Any

                                        Union[Literal,Tuple[Literal],List[Literal]]

                                        Source code in src/bloqade/ir/scalar.py
                                        def cast(py) -> Any:\n\"\"\"cast Real number (or list/tuple of Real numbers)\n    to [`Scalar Literal`][bloqade.ir.scalar.Literal].\n    Args:\n        py (Union[Real,Tuple[Real],List[Real]]): python object to cast\n    Returns:\n        Union[Literal,Tuple[Literal],List[Literal]]\n    \"\"\"\nret = trycast(py)\nif ret is None:\nraise TypeError(f\"Cannot cast {type(py)} to Scalar Literal\")\nreturn ret\n
                                        "},{"location":"reference/bloqade/ir/#bloqade.ir.var","title":"var","text":"
                                        var(py)\n

                                        cast string (or list/tuple of strings) to Variable.

                                        Parameters:

                                        Name Type Description Default py Union[str, List[str], Tuple[str]]

                                        a string or list/tuple of strings

                                        required

                                        Returns:

                                        Type Description Any

                                        Union[Variable, List[Variable], Tuple[Variable]]

                                        Source code in src/bloqade/ir/scalar.py
                                        def var(py: Union[str, List[str]]) -> Any:\n\"\"\"cast string (or list/tuple of strings)\n    to [`Variable`][bloqade.ir.scalar.Variable].\n    Args:\n        py (Union[str, List[str], Tuple[str]]): a string or list/tuple of strings\n    Returns:\n       Union[Variable, List[Variable], Tuple[Variable]]\n    \"\"\"\nret = tryvar(py)\nif ret is None:\nraise TypeError(f\"Cannot cast {type(py)} to Variable\")\nreturn ret\n
                                        "},{"location":"reference/bloqade/ir/program/","title":"Program","text":""},{"location":"reference/bloqade/ir/program/#bloqade.ir.program.Program","title":"Program","text":"
                                        Program(register, sequence)\n

                                        Program is a dummy type that bundle register and sequence together.

                                        Source code in src/bloqade/ir/program.py
                                        def __init__(\nself,\nregister: Union[\"AtomArrangement\", \"ParallelRegister\"],\nsequence: Sequence,\n):\nself._sequence = sequence\nself._register = register\n
                                        "},{"location":"reference/bloqade/ir/program/#bloqade.ir.program.Program.register","title":"register property","text":"
                                        register\n

                                        Get the register of the program.

                                        Returns:

                                        Type Description

                                        register (Union[\"AtomArrangement\", \"ParallelRegister\"])

                                        Note

                                        If the program is built with parallelize(), The the register will be a ParallelRegister. Otherwise it will be a AtomArrangement.

                                        "},{"location":"reference/bloqade/ir/program/#bloqade.ir.program.Program.sequence","title":"sequence property","text":"
                                        sequence\n

                                        Get the sequence of the program.

                                        Returns:

                                        Name Type Description Sequence

                                        the sequence of the program. See also Sequence.

                                        "},{"location":"reference/bloqade/ir/scalar/","title":"Scalar","text":""},{"location":"reference/bloqade/ir/scalar/#bloqade.ir.scalar.Literal","title":"Literal","text":"

                                        Bases: Real

                                        "},{"location":"reference/bloqade/ir/scalar/#bloqade.ir.scalar.Literal.value","title":"value class-attribute","text":"
                                        value: Decimal\n

                                        Scalar Literal, which stores a decimaal value instance.

                                        Parameters:

                                        Name Type Description Default value Decimal

                                        decimal value instance

                                        required"},{"location":"reference/bloqade/ir/scalar/#bloqade.ir.scalar.Scalar","title":"Scalar","text":"

                                        Base class for all scalar expressions.

                                        <scalar> ::= <literal>\n| <variable>\n| <default>\n| <negative>\n| <add>\n| <mul>\n| <min>\n| <max>\n| <slice>\n| <inverval>\n<mul> ::= <scalar> '*' <scalar>\n<add> ::= <scalar> '+' <scalar>\n<min> ::= 'min' <scalar>+\n<max> ::= 'max' <scalar>+\n<slice> ::= <scalar expr> '[' <interval> ']'\n<interval> ::= <scalar expr> '..' <scalar expr>\n<real> ::= <literal> | <var>\n
                                        "},{"location":"reference/bloqade/ir/scalar/#bloqade.ir.scalar.Variable","title":"Variable","text":"

                                        Bases: Real

                                        Variable, which stores a variable name.

                                        Parameters:

                                        Name Type Description Default name str

                                        variable instance.

                                        required"},{"location":"reference/bloqade/ir/scalar/#bloqade.ir.scalar.cast","title":"cast","text":"
                                        cast(py)\n

                                        cast Real number (or list/tuple of Real numbers) to Scalar Literal.

                                        Parameters:

                                        Name Type Description Default py Union[Real, Tuple[Real], List[Real]]

                                        python object to cast

                                        required

                                        Returns:

                                        Type Description Any

                                        Union[Literal,Tuple[Literal],List[Literal]]

                                        Source code in src/bloqade/ir/scalar.py
                                        def cast(py) -> Any:\n\"\"\"cast Real number (or list/tuple of Real numbers)\n    to [`Scalar Literal`][bloqade.ir.scalar.Literal].\n    Args:\n        py (Union[Real,Tuple[Real],List[Real]]): python object to cast\n    Returns:\n        Union[Literal,Tuple[Literal],List[Literal]]\n    \"\"\"\nret = trycast(py)\nif ret is None:\nraise TypeError(f\"Cannot cast {type(py)} to Scalar Literal\")\nreturn ret\n
                                        "},{"location":"reference/bloqade/ir/scalar/#bloqade.ir.scalar.var","title":"var","text":"
                                        var(py)\n

                                        cast string (or list/tuple of strings) to Variable.

                                        Parameters:

                                        Name Type Description Default py Union[str, List[str], Tuple[str]]

                                        a string or list/tuple of strings

                                        required

                                        Returns:

                                        Type Description Any

                                        Union[Variable, List[Variable], Tuple[Variable]]

                                        Source code in src/bloqade/ir/scalar.py
                                        def var(py: Union[str, List[str]]) -> Any:\n\"\"\"cast string (or list/tuple of strings)\n    to [`Variable`][bloqade.ir.scalar.Variable].\n    Args:\n        py (Union[str, List[str], Tuple[str]]): a string or list/tuple of strings\n    Returns:\n       Union[Variable, List[Variable], Tuple[Variable]]\n    \"\"\"\nret = tryvar(py)\nif ret is None:\nraise TypeError(f\"Cannot cast {type(py)} to Variable\")\nreturn ret\n
                                        "},{"location":"reference/bloqade/ir/control/","title":"Index","text":""},{"location":"reference/bloqade/ir/control/field/","title":"Field","text":""},{"location":"reference/bloqade/ir/control/field/#bloqade.ir.control.field.Field","title":"Field","text":"

                                        Field node in the IR. Which contains collection(s) of Waveform

                                        <field> ::= ('field' <spatial modulation>  <padded waveform>)*\n
                                        "},{"location":"reference/bloqade/ir/control/pulse/","title":"Pulse","text":""},{"location":"reference/bloqade/ir/control/pulse/#bloqade.ir.control.pulse.Append","title":"Append","text":"

                                        Bases: PulseExpr

                                        <append> ::= <expr>+\n
                                        "},{"location":"reference/bloqade/ir/control/pulse/#bloqade.ir.control.pulse.Pulse","title":"Pulse","text":"
                                        Pulse(field_pairs)\n

                                        Bases: PulseExpr

                                        <pulse> ::= (<field name> <field>)+\n
                                        Source code in src/bloqade/ir/control/pulse.py
                                        def __init__(self, field_pairs):\nvalue = dict()\nfor k, v in field_pairs.items():\nif isinstance(v, Field):\nvalue[k] = v\nelif isinstance(v, dict):\nvalue[k] = Field(v)\nelse:\nraise TypeError(f\"Expected Field or dict, got {type(v)}\")\nself.value = value\n
                                        "},{"location":"reference/bloqade/ir/control/pulse/#bloqade.ir.control.pulse.PulseExpr","title":"PulseExpr","text":"
                                        <expr> ::= <pulse>\n  | <append>\n  | <slice>\n  | <named>\n
                                        "},{"location":"reference/bloqade/ir/control/sequence/","title":"Sequence","text":""},{"location":"reference/bloqade/ir/control/sequence/#bloqade.ir.control.sequence.Sequence","title":"Sequence","text":"
                                        Sequence(seq_pairs=None)\n

                                        Bases: SequenceExpr

                                        Sequence of a program, which includes pulses informations.

                                        Source code in src/bloqade/ir/control/sequence.py
                                        def __init__(self, seq_pairs: Dict | None = None):\nif seq_pairs is None:\nself.value = {}\nreturn\nvalue = {}\nfor level_coupling, pulse in seq_pairs.items():\nif not isinstance(level_coupling, LevelCoupling):\nraise TypeError(f\"Unexpected type {type(level_coupling)}\")\nif isinstance(pulse, PulseExpr):\nvalue[level_coupling] = pulse\nelif isinstance(pulse, dict):\nvalue[level_coupling] = Pulse(pulse)\nelse:\nraise TypeError(f\"Unexpected type {type(pulse)}\")\nself.value = value\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/","title":"Waveform","text":""},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Add","title":"Add","text":"

                                        Bases: Waveform

                                        <add> ::= <waveform> '+' <waveform>\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.AlignedWaveform","title":"AlignedWaveform","text":"

                                        Bases: Waveform

                                        <padded waveform> ::= <waveform> | <waveform> <alignment> <value>\n<alignment> ::= 'left aligned' | 'right aligned'\n<value> ::= 'left value' | 'right value' | <scalar expr>\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Append","title":"Append","text":"

                                        Bases: Waveform

                                        <append> ::= <waveform>+\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Constant","title":"Constant","text":"
                                        Constant(value, duration)\n

                                        Bases: Instruction

                                        <constant> ::= 'constant' <scalar expr>\n

                                        f(t=0:duration) = value

                                        Parameters:

                                        Name Type Description Default value Scalar

                                        the constant value

                                        required duration Scalar

                                        the time span of the constant waveform.

                                        required Source code in src/bloqade/ir/control/waveform.py
                                        def __init__(self, value, duration):\nself.value = cast(value)\nself._duration = cast(duration)\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Instruction","title":"Instruction","text":"

                                        Bases: Waveform

                                        Instruction node in the IR.

                                        • <linear>
                                        • <constant>
                                        • <poly>
                                        • <python-fn>
                                        <instruction> ::= <linear>\n    | <constant>\n    | <poly>\n    | <python-fn>\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Linear","title":"Linear","text":"
                                        Linear(start, stop, duration)\n

                                        Bases: Instruction

                                        <linear> ::= 'linear' <scalar expr> <scalar expr>\n

                                        f(t=0:duration) = start + (stop-start)/duration * t

                                        Parameters:

                                        Name Type Description Default start Scalar

                                        start value

                                        required stop Scalar

                                        stop value

                                        required duration Scalar

                                        the time span of the linear waveform.

                                        required Source code in src/bloqade/ir/control/waveform.py
                                        def __init__(self, start, stop, duration):\nself.start = cast(start)\nself.stop = cast(stop)\nself._duration = cast(duration)\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Negative","title":"Negative","text":"

                                        Bases: Waveform

                                        <negative> ::= '-' <waveform>\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Poly","title":"Poly","text":"
                                        Poly(checkpoints, duration)\n

                                        Bases: Instruction

                                        <poly> ::= <scalar>+\n

                                        f(t=0:duration) = c[0] + c[1]t + c[2]t^2 + ... + c[n-1]t^n-1 + c[n]t^n

                                        Parameters:

                                        Name Type Description Default checkpoints List[Scalar]

                                        the coefficients c[] of the polynomial.

                                        required duration Scalar

                                        the time span of the waveform.

                                        required Source code in src/bloqade/ir/control/waveform.py
                                        def __init__(self, checkpoints, duration):\nself.checkpoints = cast(checkpoints)\nself._duration = cast(duration)\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.PythonFn","title":"PythonFn","text":"
                                        PythonFn(fn, duration)\n

                                        Bases: Instruction

                                        <python-fn> ::= 'python-fn' <python function def> <scalar expr>\n
                                        Source code in src/bloqade/ir/control/waveform.py
                                        def __init__(self, fn: Callable, duration: Any):\nself.fn = fn\nself._duration = cast(duration)\nsignature = inspect.getfullargspec(fn)\nif signature.varargs is not None:\nraise ValueError(\"Cannot have varargs\")\nif signature.varkw is not None:\nraise ValueError(\"Cannot have varkw\")\nself.parameters = list(signature.args[1:]) + list(signature.kwonlyargs)\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Record","title":"Record","text":"

                                        Bases: Waveform

                                        <record> ::= 'record' <waveform> <var>\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Sample","title":"Sample","text":"

                                        Bases: Waveform

                                        <sample> ::= 'sample' <waveform> <interpolation> <scalar>\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Scale","title":"Scale","text":"
                                        Scale(scalar, waveform)\n

                                        Bases: Waveform

                                        <scale> ::= <scalar expr> '*' <waveform>\n
                                        Source code in src/bloqade/ir/control/waveform.py
                                        def __init__(self, scalar, waveform: Waveform):\nself.scalar = cast(scalar)\nself.waveform = waveform\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Slice","title":"Slice","text":"

                                        Bases: Waveform

                                        <slice> ::= <waveform> <scalar.interval>\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Smooth","title":"Smooth","text":"

                                        Bases: Waveform

                                        <smooth> ::= 'smooth' <kernel> <waveform>\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Waveform","title":"Waveform","text":"

                                        Waveform node in the IR.

                                        • <instruction>
                                        • <smooth>
                                        • <slice>
                                        • <apppend>
                                        • <negative>
                                        • <scale>
                                        • <add>
                                        • <record>
                                        • <sample>
                                        <waveform> ::= <instruction>\n    | <smooth>\n    | <slice>\n    | <append>\n    | <negative>\n    | <scale>\n    | <add>\n    | <record>\n    | <sample>\n
                                        "},{"location":"reference/bloqade/ir/control/waveform/#bloqade.ir.control.waveform.Waveform.plot","title":"plot","text":"
                                        plot(**assignments)\n

                                        Plot the waveform.

                                        Returns:

                                        Name Type Description figure

                                        a bokeh figure

                                        Source code in src/bloqade/ir/control/waveform.py
                                        def plot(self, **assignments):\n\"\"\"Plot the waveform.\n    Returns:\n        figure: a bokeh figure\n    \"\"\"\nduration = self.duration(**assignments)\ntimes = np.linspace(0, duration, 1001)\nvalues = [self.__call__(time, **assignments) for time in times]\nfig = figure(width=250, height=250)\nfig.line(times, values)\nreturn fig\n
                                        "},{"location":"reference/bloqade/ir/location/","title":"Index","text":""},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.start","title":"start module-attribute","text":"
                                        start = ListOfLocations()\n
                                        • Program starting node
                                        • Possible Next

                                          -> start.rydberg :: address rydberg level coupling

                                          -> start.hyperfine :: address hyperfine level coupling

                                        • Possible Next

                                          -> start.add_locations(List[Tuple[int]]) :: add multiple atoms to current register

                                          -> start.add_location(Tuple[int]) :: add atom to current register

                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.AtomArrangement","title":"AtomArrangement","text":"
                                          AtomArrangement()\n

                                          Bases: ProgramStart

                                          Source code in src/bloqade/ir/location/base.py
                                          def __init__(self) -> None:\nsuper().__init__(register=self)\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.base.AtomArrangement.n_atoms","title":"n_atoms property","text":"
                                          n_atoms: int\n

                                          number of atoms in the register.

                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.base.AtomArrangement.n_dims","title":"n_dims property","text":"
                                          n_dims: int\n

                                          number of dimensions in the register.

                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.base.AtomArrangement.add_position","title":"add_position","text":"
                                          add_position(position, filled=True)\n

                                          add a position to existing atom arrangement.

                                          Source code in src/bloqade/ir/location/base.py
                                          def add_position(\nself, position: Tuple[Any, Any], filled: bool = True\n) -> \"ListOfLocations\":\n\"\"\"add a position to existing atom arrangement.\"\"\"\nfrom .list import ListOfLocations\nlocation_list = [LocationInfo(position, filled)]\nfor location_info in self.enumerate():\nlocation_list.append(location_info)\nreturn ListOfLocations(location_list)\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.base.AtomArrangement.add_positions","title":"add_positions","text":"
                                          add_positions(positions, filling=None)\n

                                          add a list of positions to existing atom arrangement.

                                          Source code in src/bloqade/ir/location/base.py
                                          def add_positions(\nself, positions: List[Tuple[Any, Any]], filling: Optional[List[bool]] = None\n) -> \"ListOfLocations\":\n\"\"\"add a list of positions to existing atom arrangement.\"\"\"\nfrom .list import ListOfLocations\nlocation_list = []\nif filling:\nfor position, filled in zip(positions, filling):\nlocation_list.append(LocationInfo(position, filled))\nelse:\nfor position in positions:\nlocation_list.append(LocationInfo(position, True))\nfor location_info in self.enumerate():\nlocation_list.append(location_info)\nreturn ListOfLocations(location_list)\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.base.AtomArrangement.apply_defect_count","title":"apply_defect_count","text":"
                                          apply_defect_count(n_defects, rng=np.random.default_rng())\n

                                          apply n_defects randomly to existing atom arrangement.

                                          Source code in src/bloqade/ir/location/base.py
                                          def apply_defect_count(\nself, n_defects: int, rng: np.random.Generator = np.random.default_rng()\n) -> \"ListOfLocations\":\n\"\"\"apply n_defects randomly to existing atom arrangement.\"\"\"\nfrom .list import ListOfLocations\nlocation_list = []\nfor location_info in self.enumerate():\nlocation_list.append(location_info)\nfor _ in range(n_defects):\nidx = rng.integers(0, len(location_list))\nlocation_list[idx] = LocationInfo(\nlocation_list[idx].position,\n(False if location_list[idx].filling is SiteFilling.filled else True),\n)\nreturn ListOfLocations(location_list)\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.base.AtomArrangement.apply_defect_density","title":"apply_defect_density","text":"
                                          apply_defect_density(\ndefect_probability, rng=np.random.default_rng()\n)\n

                                          apply defect_probability randomly to existing atom arrangement.

                                          Source code in src/bloqade/ir/location/base.py
                                          def apply_defect_density(\nself,\ndefect_probability: float,\nrng: np.random.Generator = np.random.default_rng(),\n) -> \"ListOfLocations\":\n\"\"\"apply defect_probability randomly to existing atom arrangement.\"\"\"\nfrom .list import ListOfLocations\np = min(1, max(0, defect_probability))\nlocation_list = []\nfor location_info in self.enumerate():\nif rng.random() < p:\nlocation_list.append(\nLocationInfo(\nlocation_info.position,\n(\nFalse\nif location_info.filling is SiteFilling.filled\nelse True\n),\n)\n)\nelse:\nlocation_list.append(location_info)\nreturn ListOfLocations(location_list=location_list)\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.base.AtomArrangement.enumerate","title":"enumerate","text":"
                                          enumerate()\n

                                          enumerate all locations in the register.

                                          Source code in src/bloqade/ir/location/base.py
                                          def enumerate(self) -> Generator[LocationInfo, None, None]:\n\"\"\"enumerate all locations in the register.\"\"\"\nraise NotImplementedError\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.base.AtomArrangement.figure","title":"figure","text":"
                                          figure(**assignments)\n

                                          obtain a figure object from the atom arrangement.

                                          Source code in src/bloqade/ir/location/base.py
                                          def figure(self, **assignments):\n\"\"\"obtain a figure object from the atom arrangement.\"\"\"\nxs_filled, ys_filled, labels_filled = [], [], []\nxs_vacant, ys_vacant, labels_vacant = [], [], []\nx_min = np.inf\nx_max = -np.inf\ny_min = np.inf\ny_max = -np.inf\nfor idx, location_info in enumerate(self.enumerate()):\n(x_var, y_var) = location_info.position\n(x, y) = (float(x_var(**assignments)), float(y_var(**assignments)))\nx_min = min(x, x_min)\ny_min = min(y, y_min)\nx_max = max(x, x_max)\ny_max = max(y, y_max)\nif location_info.filling is SiteFilling.filled:\nxs_filled.append(x)\nys_filled.append(y)\nlabels_filled.append(idx)\nelse:\nxs_vacant.append(x)\nys_vacant.append(y)\nlabels_vacant.append(idx)\n# Ly = y_max - y_min\n# Lx = x_max - x_min\n# scale_x = (Lx+2)/(Ly+2)\nif self.n_atoms > 0:\nlength_scale = max(y_max - y_min, x_max - x_min, 1)\nelse:\nlength_scale = 1\nsource_filled = ColumnDataSource(\ndata=dict(x=xs_filled, y=ys_filled, labels=labels_filled)\n)\nsource_vacant = ColumnDataSource(\ndata=dict(x=xs_vacant, y=ys_vacant, labels=labels_vacant)\n)\nsource_all = ColumnDataSource(\ndata=dict(\nx=xs_vacant + xs_filled,\ny=ys_vacant + ys_filled,\nlabels=labels_vacant + labels_filled,\n)\n)\nTOOLTIPS = [\n(\"(x,y)\", \"(@x, @y)\"),\n(\"index: \", \"@labels\"),\n]\n## remove box_zoom since we don't want to change the scale\np = figure(\nwidth=400,\nheight=400,\ntools=\"hover,wheel_zoom,reset, undo, redo, pan\",\ntooltips=TOOLTIPS,\ntoolbar_location=\"above\",\n)\np.x_range = Range1d(x_min - 1, x_min + length_scale + 1)\np.y_range = Range1d(y_min - 1, y_min + length_scale + 1)\np.circle(\n\"x\", \"y\", source=source_filled, radius=0.015 * length_scale, fill_alpha=1\n)\np.circle(\n\"x\",\n\"y\",\nsource=source_vacant,\nradius=0.015 * length_scale,\nfill_alpha=0.25,\ncolor=\"grey\",\nline_width=0.2 * length_scale,\n)\ncr = p.circle(\n\"x\",\n\"y\",\nsource=source_all,\nradius=0,  # in the same unit as the data\nfill_alpha=0,\nline_width=0.15 * length_scale,\nvisible=True,  # display by default\n)\n# adding rydberg radis input\n# bind sources:\nBrad_input = NumericInput(\nvalue=0, low=0, title=\"Bloqade radius (um):\", mode=\"float\"\n)\n# js link toggle btn\ntoggle_button = Button(label=\"Toggle\")\ntoggle_button.js_on_event(\n\"button_click\",\nCustomJS(args=dict(cr=cr), code=\"\"\"cr.visible = !cr.visible;\"\"\"),\n)\n# js link radius\nBrad_input.js_link(\"value\", cr.glyph, \"radius\")\nreturn p, row(Brad_input, toggle_button)\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.base.AtomArrangement.scale","title":"scale","text":"
                                          scale(scale)\n

                                          scale the atom arrangement with a given factor

                                          Source code in src/bloqade/ir/location/base.py
                                          def scale(self, scale: float | Scalar) -> \"ListOfLocations\":\n\"\"\"scale the atom arrangement with a given factor\"\"\"\nfrom .list import ListOfLocations\nscale = cast(scale)\nlocation_list = []\nfor location_info in self.enumerate():\nx, y = location_info.position\nnew_position = (scale * x, scale * y)\nlocation_list.append(\nLocationInfo(new_position, bool(location_info.filling.value))\n)\nreturn ListOfLocations(location_list)\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.base.AtomArrangement.show","title":"show","text":"
                                          show(**assignments)\n

                                          show the register.

                                          Source code in src/bloqade/ir/location/base.py
                                          def show(self, **assignments) -> None:\n\"\"\"show the register.\"\"\"\nshow(column(*self.figure(**assignments)))\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.Chain","title":"Chain","text":"
                                          Chain(L, lattice_spacing=1.0)\n

                                          Bases: BoundedBravais

                                          Chain lattice.

                                          • 1D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1,0).
                                          • unit cell (1 atom(s))
                                            • loc (0,0)

                                          Parameters:

                                          Name Type Description Default L int

                                          number of sites in the chain

                                          required lattice_spacing Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(self, L: int, lattice_spacing: Any = 1.0):\nsuper().__init__(L, lattice_spacing=lattice_spacing)\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.Honeycomb","title":"Honeycomb","text":"
                                          Honeycomb(L, lattice_spacing=1.0)\n

                                          Bases: BoundedBravais

                                          Honeycomb lattice.

                                          • 2D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1, 0)
                                            • a2 = (\u00bd, sqrt(3)/2)
                                          • unit cell (2 atom(s))
                                            • loc1 (0, 0)
                                            • loc2 (\u00bd, 1/(2*sqrt(3))

                                          Parameters:

                                          Name Type Description Default L int

                                          number of sites in linear direction. n_atoms = L * L * 2.

                                          required lattice_spacing Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(self, L: int, lattice_spacing: Any = 1.0):\nsuper().__init__(L, L, lattice_spacing=lattice_spacing)\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.Kagome","title":"Kagome","text":"
                                          Kagome(L, lattice_spacing=1.0)\n

                                          Bases: BoundedBravais

                                          Kagome lattice.

                                          • 2D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1, 0)
                                            • a2 = (\u00bd, sqrt(3)/2)
                                          • unit cell (3 atom(s))
                                            • loc1 (0, 0)
                                            • loc2 (0.5, 0)
                                            • loc3 (0.25 ,0.25sqrt(3))

                                          Parameters:

                                          Name Type Description Default L int

                                          number of sites in linear direction. n_atoms = L * L.

                                          required lattice_spacing Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(self, L: int, lattice_spacing: Any = 1.0):\nsuper().__init__(L, L, lattice_spacing=lattice_spacing)\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.Lieb","title":"Lieb","text":"
                                          Lieb(L, lattice_spacing=1.0)\n

                                          Bases: BoundedBravais

                                          Lieb lattice.

                                          • 2D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1, 0)
                                            • a2 = (0, 1)
                                          • unit cell (3 atom(s))
                                            • loc1 (0, 0)
                                            • loc2 (0.5, 0)
                                            • loc3 (0 ,0.5)

                                          Parameters:

                                          Name Type Description Default L int

                                          number of sites in linear direction. n_atoms = L * L.

                                          required lattice_spacing Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(self, L: int, lattice_spacing: Any = 1.0):\nsuper().__init__(L, L, lattice_spacing=lattice_spacing)\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.Rectangular","title":"Rectangular","text":"
                                          Rectangular(\nwidth,\nheight,\nlattice_spacing_x=1.0,\nlattice_spacing_y=None,\n)\n

                                          Bases: BoundedBravais

                                          Rectangular lattice.

                                          • 2D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1,0)
                                            • a2 = (0,1)
                                          • unit cell (1 atom(s))
                                            • loc (0,0)

                                          Parameters:

                                          Name Type Description Default width int

                                          number of sites in x direction.

                                          required height int

                                          number of sites in y direction.

                                          required lattice_spacing_x Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0 lattice_spacing_y Scalar, Real

                                          lattice spacing in y direction. optional.

                                          None
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(\nself,\nwidth: int,\nheight: int,\nlattice_spacing_x: Any = 1.0,\nlattice_spacing_y: Optional[Any] = None,\n):\nif lattice_spacing_y is None:\nself.ratio = cast(1.0) / cast(lattice_spacing_x)\nelse:\nself.ratio = cast(lattice_spacing_y) / cast(lattice_spacing_x)\nsuper().__init__(width, height, lattice_spacing=lattice_spacing_x)\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.Square","title":"Square","text":"
                                          Square(L, lattice_spacing=1.0)\n

                                          Bases: BoundedBravais

                                          Square lattice.

                                          • 2D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1,0)
                                            • a2 = (0,1)
                                          • unit cell (1 atom(s))
                                            • loc (0,0)

                                          Parameters:

                                          Name Type Description Default L int

                                          number of sites in linear direction. n_atoms = L * L.

                                          required lattice_spacing Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(self, L: int, lattice_spacing: Any = 1.0):\nsuper().__init__(L, L, lattice_spacing=lattice_spacing)\n
                                          "},{"location":"reference/bloqade/ir/location/#bloqade.ir.location.Triangular","title":"Triangular","text":"
                                          Triangular(L, lattice_spacing=1.0)\n

                                          Bases: BoundedBravais

                                          Triangular lattice.

                                          • 2D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1, 0)
                                            • a2 = (\u00bd, sqrt(3)/2)
                                          • unit cell (1 atom(s))
                                            • loc (0, 0)

                                          Parameters:

                                          Name Type Description Default L int

                                          number of sites in linear direction. n_atoms = L * L.

                                          required lattice_spacing Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(self, L: int, lattice_spacing: Any = 1.0):\nsuper().__init__(L, L, lattice_spacing=lattice_spacing)\n
                                          "},{"location":"reference/bloqade/ir/location/base/","title":"Base","text":""},{"location":"reference/bloqade/ir/location/base/#bloqade.ir.location.base.AtomArrangement","title":"AtomArrangement","text":"
                                          AtomArrangement()\n

                                          Bases: ProgramStart

                                          Source code in src/bloqade/ir/location/base.py
                                          def __init__(self) -> None:\nsuper().__init__(register=self)\n
                                          "},{"location":"reference/bloqade/ir/location/base/#bloqade.ir.location.base.AtomArrangement.n_atoms","title":"n_atoms property","text":"
                                          n_atoms: int\n

                                          number of atoms in the register.

                                          "},{"location":"reference/bloqade/ir/location/base/#bloqade.ir.location.base.AtomArrangement.n_dims","title":"n_dims property","text":"
                                          n_dims: int\n

                                          number of dimensions in the register.

                                          "},{"location":"reference/bloqade/ir/location/base/#bloqade.ir.location.base.AtomArrangement.add_position","title":"add_position","text":"
                                          add_position(position, filled=True)\n

                                          add a position to existing atom arrangement.

                                          Source code in src/bloqade/ir/location/base.py
                                          def add_position(\nself, position: Tuple[Any, Any], filled: bool = True\n) -> \"ListOfLocations\":\n\"\"\"add a position to existing atom arrangement.\"\"\"\nfrom .list import ListOfLocations\nlocation_list = [LocationInfo(position, filled)]\nfor location_info in self.enumerate():\nlocation_list.append(location_info)\nreturn ListOfLocations(location_list)\n
                                          "},{"location":"reference/bloqade/ir/location/base/#bloqade.ir.location.base.AtomArrangement.add_positions","title":"add_positions","text":"
                                          add_positions(positions, filling=None)\n

                                          add a list of positions to existing atom arrangement.

                                          Source code in src/bloqade/ir/location/base.py
                                          def add_positions(\nself, positions: List[Tuple[Any, Any]], filling: Optional[List[bool]] = None\n) -> \"ListOfLocations\":\n\"\"\"add a list of positions to existing atom arrangement.\"\"\"\nfrom .list import ListOfLocations\nlocation_list = []\nif filling:\nfor position, filled in zip(positions, filling):\nlocation_list.append(LocationInfo(position, filled))\nelse:\nfor position in positions:\nlocation_list.append(LocationInfo(position, True))\nfor location_info in self.enumerate():\nlocation_list.append(location_info)\nreturn ListOfLocations(location_list)\n
                                          "},{"location":"reference/bloqade/ir/location/base/#bloqade.ir.location.base.AtomArrangement.apply_defect_count","title":"apply_defect_count","text":"
                                          apply_defect_count(n_defects, rng=np.random.default_rng())\n

                                          apply n_defects randomly to existing atom arrangement.

                                          Source code in src/bloqade/ir/location/base.py
                                          def apply_defect_count(\nself, n_defects: int, rng: np.random.Generator = np.random.default_rng()\n) -> \"ListOfLocations\":\n\"\"\"apply n_defects randomly to existing atom arrangement.\"\"\"\nfrom .list import ListOfLocations\nlocation_list = []\nfor location_info in self.enumerate():\nlocation_list.append(location_info)\nfor _ in range(n_defects):\nidx = rng.integers(0, len(location_list))\nlocation_list[idx] = LocationInfo(\nlocation_list[idx].position,\n(False if location_list[idx].filling is SiteFilling.filled else True),\n)\nreturn ListOfLocations(location_list)\n
                                          "},{"location":"reference/bloqade/ir/location/base/#bloqade.ir.location.base.AtomArrangement.apply_defect_density","title":"apply_defect_density","text":"
                                          apply_defect_density(\ndefect_probability, rng=np.random.default_rng()\n)\n

                                          apply defect_probability randomly to existing atom arrangement.

                                          Source code in src/bloqade/ir/location/base.py
                                          def apply_defect_density(\nself,\ndefect_probability: float,\nrng: np.random.Generator = np.random.default_rng(),\n) -> \"ListOfLocations\":\n\"\"\"apply defect_probability randomly to existing atom arrangement.\"\"\"\nfrom .list import ListOfLocations\np = min(1, max(0, defect_probability))\nlocation_list = []\nfor location_info in self.enumerate():\nif rng.random() < p:\nlocation_list.append(\nLocationInfo(\nlocation_info.position,\n(\nFalse\nif location_info.filling is SiteFilling.filled\nelse True\n),\n)\n)\nelse:\nlocation_list.append(location_info)\nreturn ListOfLocations(location_list=location_list)\n
                                          "},{"location":"reference/bloqade/ir/location/base/#bloqade.ir.location.base.AtomArrangement.enumerate","title":"enumerate","text":"
                                          enumerate()\n

                                          enumerate all locations in the register.

                                          Source code in src/bloqade/ir/location/base.py
                                          def enumerate(self) -> Generator[LocationInfo, None, None]:\n\"\"\"enumerate all locations in the register.\"\"\"\nraise NotImplementedError\n
                                          "},{"location":"reference/bloqade/ir/location/base/#bloqade.ir.location.base.AtomArrangement.figure","title":"figure","text":"
                                          figure(**assignments)\n

                                          obtain a figure object from the atom arrangement.

                                          Source code in src/bloqade/ir/location/base.py
                                          def figure(self, **assignments):\n\"\"\"obtain a figure object from the atom arrangement.\"\"\"\nxs_filled, ys_filled, labels_filled = [], [], []\nxs_vacant, ys_vacant, labels_vacant = [], [], []\nx_min = np.inf\nx_max = -np.inf\ny_min = np.inf\ny_max = -np.inf\nfor idx, location_info in enumerate(self.enumerate()):\n(x_var, y_var) = location_info.position\n(x, y) = (float(x_var(**assignments)), float(y_var(**assignments)))\nx_min = min(x, x_min)\ny_min = min(y, y_min)\nx_max = max(x, x_max)\ny_max = max(y, y_max)\nif location_info.filling is SiteFilling.filled:\nxs_filled.append(x)\nys_filled.append(y)\nlabels_filled.append(idx)\nelse:\nxs_vacant.append(x)\nys_vacant.append(y)\nlabels_vacant.append(idx)\n# Ly = y_max - y_min\n# Lx = x_max - x_min\n# scale_x = (Lx+2)/(Ly+2)\nif self.n_atoms > 0:\nlength_scale = max(y_max - y_min, x_max - x_min, 1)\nelse:\nlength_scale = 1\nsource_filled = ColumnDataSource(\ndata=dict(x=xs_filled, y=ys_filled, labels=labels_filled)\n)\nsource_vacant = ColumnDataSource(\ndata=dict(x=xs_vacant, y=ys_vacant, labels=labels_vacant)\n)\nsource_all = ColumnDataSource(\ndata=dict(\nx=xs_vacant + xs_filled,\ny=ys_vacant + ys_filled,\nlabels=labels_vacant + labels_filled,\n)\n)\nTOOLTIPS = [\n(\"(x,y)\", \"(@x, @y)\"),\n(\"index: \", \"@labels\"),\n]\n## remove box_zoom since we don't want to change the scale\np = figure(\nwidth=400,\nheight=400,\ntools=\"hover,wheel_zoom,reset, undo, redo, pan\",\ntooltips=TOOLTIPS,\ntoolbar_location=\"above\",\n)\np.x_range = Range1d(x_min - 1, x_min + length_scale + 1)\np.y_range = Range1d(y_min - 1, y_min + length_scale + 1)\np.circle(\n\"x\", \"y\", source=source_filled, radius=0.015 * length_scale, fill_alpha=1\n)\np.circle(\n\"x\",\n\"y\",\nsource=source_vacant,\nradius=0.015 * length_scale,\nfill_alpha=0.25,\ncolor=\"grey\",\nline_width=0.2 * length_scale,\n)\ncr = p.circle(\n\"x\",\n\"y\",\nsource=source_all,\nradius=0,  # in the same unit as the data\nfill_alpha=0,\nline_width=0.15 * length_scale,\nvisible=True,  # display by default\n)\n# adding rydberg radis input\n# bind sources:\nBrad_input = NumericInput(\nvalue=0, low=0, title=\"Bloqade radius (um):\", mode=\"float\"\n)\n# js link toggle btn\ntoggle_button = Button(label=\"Toggle\")\ntoggle_button.js_on_event(\n\"button_click\",\nCustomJS(args=dict(cr=cr), code=\"\"\"cr.visible = !cr.visible;\"\"\"),\n)\n# js link radius\nBrad_input.js_link(\"value\", cr.glyph, \"radius\")\nreturn p, row(Brad_input, toggle_button)\n
                                          "},{"location":"reference/bloqade/ir/location/base/#bloqade.ir.location.base.AtomArrangement.scale","title":"scale","text":"
                                          scale(scale)\n

                                          scale the atom arrangement with a given factor

                                          Source code in src/bloqade/ir/location/base.py
                                          def scale(self, scale: float | Scalar) -> \"ListOfLocations\":\n\"\"\"scale the atom arrangement with a given factor\"\"\"\nfrom .list import ListOfLocations\nscale = cast(scale)\nlocation_list = []\nfor location_info in self.enumerate():\nx, y = location_info.position\nnew_position = (scale * x, scale * y)\nlocation_list.append(\nLocationInfo(new_position, bool(location_info.filling.value))\n)\nreturn ListOfLocations(location_list)\n
                                          "},{"location":"reference/bloqade/ir/location/base/#bloqade.ir.location.base.AtomArrangement.show","title":"show","text":"
                                          show(**assignments)\n

                                          show the register.

                                          Source code in src/bloqade/ir/location/base.py
                                          def show(self, **assignments) -> None:\n\"\"\"show the register.\"\"\"\nshow(column(*self.figure(**assignments)))\n
                                          "},{"location":"reference/bloqade/ir/location/base/#bloqade.ir.location.base.ParallelRegister","title":"ParallelRegister","text":"
                                          ParallelRegister(register, cluster_spacing)\n

                                          Bases: ProgramStart

                                          Parallel Register

                                          Source code in src/bloqade/ir/location/base.py
                                          def __init__(self, register: AtomArrangement, cluster_spacing: Any):\nif register.n_atoms > 0:\n# calculate bounding box\n# of this register\nlocation_iter = register.enumerate()\n(x, y) = next(location_iter).position\nx_min = x\nx_max = x\ny_min = y\ny_max = y\nfor location_info in location_iter:\n(x, y) = location_info.position\nx_min = x.min(x_min)\nx_max = x.max(x_max)\ny_min = y.min(y_min)\ny_max = y.max(y_max)\nshift_x = (x_max - x_min) + cluster_spacing\nshift_y = (y_max - y_min) + cluster_spacing\nregister_locations = [\nlist(location_info.position) for location_info in register.enumerate()\n]\nregister_filling = [\nlocation_info.filling.value for location_info in register.enumerate()\n]\nshift_vectors = [[shift_x, cast(0)], [cast(0), shift_y]]\nelse:\nraise ValueError(\"No locations to parallelize.\")\nself.register_locations = register_locations\nself.register_filling = register_filling\nself.shift_vectors = shift_vectors\nsuper().__init__(register=self)\n
                                          "},{"location":"reference/bloqade/ir/location/bravais/","title":"Bravais","text":""},{"location":"reference/bloqade/ir/location/bravais/#bloqade.ir.location.bravais.BoundedBravais","title":"BoundedBravais","text":"
                                          BoundedBravais(*shape, lattice_spacing=1.0)\n

                                          Bases: AtomArrangement

                                          Base classe for Bravais lattices AtomArrangement.

                                          • Square
                                          • Chain
                                          • Honeycomb
                                          • Triangular
                                          • Lieb
                                          • Kagome
                                          • Rectangular
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(self, *shape: int, lattice_spacing: Any = 1.0):\nsuper().__init__()\nself.shape = shape\nself.lattice_spacing = cast(lattice_spacing)\nself.__n_atoms = None\nself.__n_dims = None\n
                                          "},{"location":"reference/bloqade/ir/location/bravais/#bloqade.ir.location.bravais.BoundedBravais.n_atoms","title":"n_atoms property","text":"
                                          n_atoms\n

                                          number of atoms

                                          Returns:

                                          Name Type Description int

                                          number of atoms in the lattice

                                          "},{"location":"reference/bloqade/ir/location/bravais/#bloqade.ir.location.bravais.BoundedBravais.n_dims","title":"n_dims property","text":"
                                          n_dims\n

                                          dimension of the lattice

                                          Returns:

                                          Name Type Description int

                                          dimension of the lattice

                                          "},{"location":"reference/bloqade/ir/location/bravais/#bloqade.ir.location.bravais.BoundedBravais.coordinates","title":"coordinates","text":"
                                          coordinates(index)\n

                                          calculate the coordinates of a cell in the lattice given the cell index.

                                          Source code in src/bloqade/ir/location/bravais.py
                                          def coordinates(self, index: List[int]) -> NDArray:\n\"\"\"calculate the coordinates of a cell in the lattice\n    given the cell index.\n    \"\"\"\n# damn! this is like stone age broadcasting\nvectors = np.array(self.cell_vectors())\nindex = np.array(index)\npos = np.sum(vectors.T * index, axis=1)\nreturn pos + np.array(self.cell_atoms())\n
                                          "},{"location":"reference/bloqade/ir/location/bravais/#bloqade.ir.location.bravais.BoundedBravais.scale","title":"scale","text":"
                                          scale(factor)\n

                                          Scale the current location with a factor.

                                          (x,y) -> factor*(x,y)

                                          Parameters:

                                          Name Type Description Default factor float | Scalar

                                          scale factor

                                          required

                                          Returns:

                                          Name Type Description BoundedBravais BoundedBravais

                                          The lattice with the scaled locations

                                          Source code in src/bloqade/ir/location/bravais.py
                                          def scale(self, factor: float | Scalar) -> \"BoundedBravais\":\n\"\"\"Scale the current location with a factor.\n    (x,y) -> factor*(x,y)\n    Args:\n        factor (float | Scalar): scale factor\n    Returns:\n        BoundedBravais: The lattice with the scaled locations\n    \"\"\"\nfactor = cast(factor)\nobj = self.__new__(type(self))\nfor f in fields(self):\nif f.name == \"lattice_spacing\":\nobj.lattice_spacing = factor * self.lattice_spacing\nelse:\nsetattr(obj, f.name, getattr(self, f.name))\nreturn obj\n
                                          "},{"location":"reference/bloqade/ir/location/bravais/#bloqade.ir.location.bravais.Chain","title":"Chain","text":"
                                          Chain(L, lattice_spacing=1.0)\n

                                          Bases: BoundedBravais

                                          Chain lattice.

                                          • 1D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1,0).
                                          • unit cell (1 atom(s))
                                            • loc (0,0)

                                          Parameters:

                                          Name Type Description Default L int

                                          number of sites in the chain

                                          required lattice_spacing Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(self, L: int, lattice_spacing: Any = 1.0):\nsuper().__init__(L, lattice_spacing=lattice_spacing)\n
                                          "},{"location":"reference/bloqade/ir/location/bravais/#bloqade.ir.location.bravais.Honeycomb","title":"Honeycomb","text":"
                                          Honeycomb(L, lattice_spacing=1.0)\n

                                          Bases: BoundedBravais

                                          Honeycomb lattice.

                                          • 2D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1, 0)
                                            • a2 = (\u00bd, sqrt(3)/2)
                                          • unit cell (2 atom(s))
                                            • loc1 (0, 0)
                                            • loc2 (\u00bd, 1/(2*sqrt(3))

                                          Parameters:

                                          Name Type Description Default L int

                                          number of sites in linear direction. n_atoms = L * L * 2.

                                          required lattice_spacing Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(self, L: int, lattice_spacing: Any = 1.0):\nsuper().__init__(L, L, lattice_spacing=lattice_spacing)\n
                                          "},{"location":"reference/bloqade/ir/location/bravais/#bloqade.ir.location.bravais.Kagome","title":"Kagome","text":"
                                          Kagome(L, lattice_spacing=1.0)\n

                                          Bases: BoundedBravais

                                          Kagome lattice.

                                          • 2D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1, 0)
                                            • a2 = (\u00bd, sqrt(3)/2)
                                          • unit cell (3 atom(s))
                                            • loc1 (0, 0)
                                            • loc2 (0.5, 0)
                                            • loc3 (0.25 ,0.25sqrt(3))

                                          Parameters:

                                          Name Type Description Default L int

                                          number of sites in linear direction. n_atoms = L * L.

                                          required lattice_spacing Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(self, L: int, lattice_spacing: Any = 1.0):\nsuper().__init__(L, L, lattice_spacing=lattice_spacing)\n
                                          "},{"location":"reference/bloqade/ir/location/bravais/#bloqade.ir.location.bravais.Lieb","title":"Lieb","text":"
                                          Lieb(L, lattice_spacing=1.0)\n

                                          Bases: BoundedBravais

                                          Lieb lattice.

                                          • 2D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1, 0)
                                            • a2 = (0, 1)
                                          • unit cell (3 atom(s))
                                            • loc1 (0, 0)
                                            • loc2 (0.5, 0)
                                            • loc3 (0 ,0.5)

                                          Parameters:

                                          Name Type Description Default L int

                                          number of sites in linear direction. n_atoms = L * L.

                                          required lattice_spacing Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(self, L: int, lattice_spacing: Any = 1.0):\nsuper().__init__(L, L, lattice_spacing=lattice_spacing)\n
                                          "},{"location":"reference/bloqade/ir/location/bravais/#bloqade.ir.location.bravais.Rectangular","title":"Rectangular","text":"
                                          Rectangular(\nwidth,\nheight,\nlattice_spacing_x=1.0,\nlattice_spacing_y=None,\n)\n

                                          Bases: BoundedBravais

                                          Rectangular lattice.

                                          • 2D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1,0)
                                            • a2 = (0,1)
                                          • unit cell (1 atom(s))
                                            • loc (0,0)

                                          Parameters:

                                          Name Type Description Default width int

                                          number of sites in x direction.

                                          required height int

                                          number of sites in y direction.

                                          required lattice_spacing_x Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0 lattice_spacing_y Scalar, Real

                                          lattice spacing in y direction. optional.

                                          None
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(\nself,\nwidth: int,\nheight: int,\nlattice_spacing_x: Any = 1.0,\nlattice_spacing_y: Optional[Any] = None,\n):\nif lattice_spacing_y is None:\nself.ratio = cast(1.0) / cast(lattice_spacing_x)\nelse:\nself.ratio = cast(lattice_spacing_y) / cast(lattice_spacing_x)\nsuper().__init__(width, height, lattice_spacing=lattice_spacing_x)\n
                                          "},{"location":"reference/bloqade/ir/location/bravais/#bloqade.ir.location.bravais.Square","title":"Square","text":"
                                          Square(L, lattice_spacing=1.0)\n

                                          Bases: BoundedBravais

                                          Square lattice.

                                          • 2D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1,0)
                                            • a2 = (0,1)
                                          • unit cell (1 atom(s))
                                            • loc (0,0)

                                          Parameters:

                                          Name Type Description Default L int

                                          number of sites in linear direction. n_atoms = L * L.

                                          required lattice_spacing Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(self, L: int, lattice_spacing: Any = 1.0):\nsuper().__init__(L, L, lattice_spacing=lattice_spacing)\n
                                          "},{"location":"reference/bloqade/ir/location/bravais/#bloqade.ir.location.bravais.Triangular","title":"Triangular","text":"
                                          Triangular(L, lattice_spacing=1.0)\n

                                          Bases: BoundedBravais

                                          Triangular lattice.

                                          • 2D lattice
                                          • primitive (cell) vector(s)
                                            • a1 = (1, 0)
                                            • a2 = (\u00bd, sqrt(3)/2)
                                          • unit cell (1 atom(s))
                                            • loc (0, 0)

                                          Parameters:

                                          Name Type Description Default L int

                                          number of sites in linear direction. n_atoms = L * L.

                                          required lattice_spacing Scalar, Real

                                          lattice spacing. Defaults to 1.0.

                                          1.0
                                          • Possible Next: continue with . to see possible next step in auto-prompt supported setting (IPython, IDE ...)
                                          Source code in src/bloqade/ir/location/bravais.py
                                          def __init__(self, L: int, lattice_spacing: Any = 1.0):\nsuper().__init__(L, L, lattice_spacing=lattice_spacing)\n
                                          "},{"location":"reference/bloqade/ir/location/list/","title":"List","text":""},{"location":"reference/bloqade/ir/location/list/#bloqade.ir.location.list.start","title":"start module-attribute","text":"
                                          start = ListOfLocations()\n
                                          • Program starting node
                                          • Possible Next

                                            -> start.rydberg :: address rydberg level coupling

                                            -> start.hyperfine :: address hyperfine level coupling

                                          • Possible Next

                                            -> start.add_locations(List[Tuple[int]]) :: add multiple atoms to current register

                                            -> start.add_location(Tuple[int]) :: add atom to current register

                                            "},{"location":"reference/bloqade/ir/location/quera_task_result/","title":"Quera task result","text":""},{"location":"reference/bloqade/ir/location/quera_task_result/#bloqade.ir.location.quera_task_result.QuEraTaskResults","title":"QuEraTaskResults","text":"

                                            Bases: BaseModel

                                            "},{"location":"reference/bloqade/ir/location/quera_task_result/#bloqade.ir.location.quera_task_result.QuEraTaskResults.export_as_probabilities","title":"export_as_probabilities","text":"
                                            export_as_probabilities()\n

                                            converts from shot results to probabilities

                                            Returns:

                                            Name Type Description TaskProbabilities TaskProbabilities

                                            The task results as probabilties

                                            Source code in src/bloqade/ir/location/quera_task_result.py
                                            def export_as_probabilities(self) -> TaskProbabilities:\n\"\"\"converts from shot results to probabilities\n    Returns:\n        TaskProbabilities: The task results as probabilties\n    \"\"\"\ncounts = dict()\nnshots = len(self.shot_outputs)\nfor shot_result in self.shot_outputs:\npre_sequence_str = \"\".join(str(bit) for bit in shot_result.pre_sequence)\npost_sequence_str = \"\".join(str(bit) for bit in shot_result.post_sequence)\nconfiguration = (pre_sequence_str, post_sequence_str)\n# iterative average\ncurrent_count = counts.get(configuration, 0)\ncounts[configuration] = current_count + 1\nprobabilities = [(config, count / nshots) for config, count in counts.items()]\nreturn TaskProbabilities(probabilities=probabilities)\n
                                            "},{"location":"reference/bloqade/submission/","title":"Index","text":""},{"location":"reference/bloqade/submission/base/","title":"Base","text":""},{"location":"reference/bloqade/submission/braket/","title":"Braket","text":""},{"location":"reference/bloqade/submission/capabilities/","title":"Capabilities","text":""},{"location":"reference/bloqade/submission/mock/","title":"Mock","text":""},{"location":"reference/bloqade/submission/quera/","title":"Quera","text":""},{"location":"reference/bloqade/submission/ir/","title":"Index","text":""},{"location":"reference/bloqade/submission/ir/braket/","title":"Braket","text":""},{"location":"reference/bloqade/submission/ir/capabilities/","title":"Capabilities","text":""},{"location":"reference/bloqade/submission/ir/parallel/","title":"Parallel","text":""},{"location":"reference/bloqade/submission/ir/parallel/#bloqade.submission.ir.parallel.ClusterLocationInfo","title":"ClusterLocationInfo","text":"

                                            Bases: BaseModel

                                            Class that stores the mapping of batched jobs.

                                            Parameters:

                                            Name Type Description Default cluster_index int

                                            the index of the cluster a site belongs to

                                            required global_location_index int

                                            the index of the site in the multplexed system

                                            required cluster_location_index int

                                            the index of the site in the original system

                                            required"},{"location":"reference/bloqade/submission/ir/task_results/","title":"Task results","text":""},{"location":"reference/bloqade/submission/ir/task_results/#bloqade.submission.ir.task_results.QuEraTaskResults","title":"QuEraTaskResults","text":"

                                            Bases: BaseModel

                                            "},{"location":"reference/bloqade/submission/ir/task_results/#bloqade.submission.ir.task_results.QuEraTaskResults.export_as_probabilities","title":"export_as_probabilities","text":"
                                            export_as_probabilities()\n

                                            converts from shot results to probabilities

                                            Returns:

                                            Name Type Description TaskProbabilities TaskProbabilities

                                            The task results as probabilties

                                            Source code in src/bloqade/submission/ir/task_results.py
                                            def export_as_probabilities(self) -> TaskProbabilities:\n\"\"\"converts from shot results to probabilities\n    Returns:\n        TaskProbabilities: The task results as probabilties\n    \"\"\"\ncounts = dict()\nnshots = len(self.shot_outputs)\nfor shot_result in self.shot_outputs:\npre_sequence_str = \"\".join(str(bit) for bit in shot_result.pre_sequence)\npost_sequence_str = \"\".join(str(bit) for bit in shot_result.post_sequence)\nconfiguration = (pre_sequence_str, post_sequence_str)\n# iterative average\ncurrent_count = counts.get(configuration, 0)\ncounts[configuration] = current_count + 1\nprobabilities = [(config, count / nshots) for config, count in counts.items()]\nreturn TaskProbabilities(probabilities=probabilities)\n
                                            "},{"location":"reference/bloqade/submission/ir/task_specification/","title":"Task specification","text":""},{"location":"reference/bloqade/submission/quera_api_client/","title":"Index","text":""},{"location":"reference/bloqade/submission/quera_api_client/api/","title":"Api","text":""},{"location":"reference/bloqade/submission/quera_api_client/api/#bloqade.submission.quera_api_client.api.ApiRequest","title":"ApiRequest","text":"
                                            ApiRequest(\napi_hostname, qpu_id, api_stage=\"v0\", proxy=None\n)\n

                                            Class that defines base methods for API requests.

                                            @param qpu_id: The QPU ID, for example qpu1-mock. @param api_stage: Specify which version of the API to call from this object. @param proxy: Optional, the hostname for running the API via some proxy endpoint.

                                            Source code in src/bloqade/submission/quera_api_client/api.py
                                            def __init__(\nself,\napi_hostname: str,\nqpu_id: str,\napi_stage=\"v0\",\nproxy: Optional[str] = None,\n):\n\"\"\"\n    Create an instance of `ApiRequest`.\n    @param api_hostname: hostname of the API instance.\n    @param qpu_id: The QPU ID, for example `qpu1-mock`.\n    @param api_stage: Specify which version of the API to call from this object.\n    @param proxy: Optional, the hostname for running the API via some proxy\n    endpoint.\n    \"\"\"\nif proxy is None:\nself.hostname = None\nself.aws_host = api_hostname\nuri_with_version = api_hostname + f\"/{api_stage}\"\nelse:\nself.hostname = api_hostname\nself.aws_host = proxy\nuri_with_version = proxy + f\"/{api_stage}\"\nself.base_url = \"https://\" + uri_with_version\nself.qpu_id = qpu_id\nself.logger = logging.getLogger(self.__class__.__name__)\n
                                            "},{"location":"reference/bloqade/submission/quera_api_client/api/#bloqade.submission.quera_api_client.api.AwsApiRequest","title":"AwsApiRequest","text":"
                                            AwsApiRequest(\napi_hostname,\nqpu_id,\napi_stage=\"v0\",\nproxy=None,\nregion=\"us-east-1\",\naccess_key=None,\nsecret_key=None,\nsession_token=None,\nsession_expires=3600,\nrole_arn=None,\nrole_session_name=\"awsrequest\",\nprofile=None,\n)\n

                                            Bases: ApiRequest

                                            @param qpu_id: The QPU ID, for example qpu1-mock. @param api_stage: Specify which version of the API to call from this object. @param proxy: Optional, the hostname for running the API via some proxy endpoint. @param region: AWS region, default value: \"us-east-1\" @param access_key: Optional, AWS account access key @param secret_key: Optional, AWS account secret key @param session_token: Optional, AWS session token @param session_expires: int, time before current tokens expire, default value 3600 @param role_arn: Optional, AWS role ARN @param role_session_name: AWS role session name, defualy value: 'awsrequest', @param profile: Optional, AWS profile to use credentials for.

                                            Source code in src/bloqade/submission/quera_api_client/api.py
                                            def __init__(\nself,\napi_hostname: str,\nqpu_id: str,\napi_stage=\"v0\",\nproxy: Optional[str] = None,\n# Sigv4Request arguments\nregion: str = \"us-east-1\",\naccess_key: Optional[str] = None,\nsecret_key: Optional[str] = None,\nsession_token: Optional[str] = None,\nsession_expires: int = 3600,\nrole_arn: Optional[str] = None,\nrole_session_name: str = \"awsrequest\",\nprofile: Optional[str] = None,\n):\n\"\"\"\n    Create an instance of `AwsApiRequest`.\n    @param api_hostname: hostname of the API instance.\n    @param qpu_id: The QPU ID, for example `qpu1-mock`.\n    @param api_stage: Specify which version of the API to call from this object.\n    @param proxy: Optional, the hostname for running the API via some proxy\n    endpoint.\n    @param region: AWS region, default value: \"us-east-1\"\n    @param access_key: Optional, AWS account access key\n    @param secret_key: Optional, AWS account secret key\n    @param session_token: Optional, AWS session token\n    @param session_expires: int, time before current tokens expire, default value\n    3600\n    @param role_arn: Optional, AWS role ARN\n    @param role_session_name: AWS role session name, defualy value: 'awsrequest',\n    @param profile: Optional, AWS profile to use credentials for.\n    \"\"\"\nsuper().__init__(api_hostname, qpu_id, api_stage=api_stage, proxy=proxy)\nself.request = Sigv4Request(\nregion=region,\naccess_key=access_key,\nsecret_key=secret_key,\nsession_token=session_token,\nsession_expires=session_expires,\nrole_arn=role_arn,\nrole_session_name=role_session_name,\nprofile=profile,\n)\n
                                            "},{"location":"reference/bloqade/submission/quera_api_client/api/#bloqade.submission.quera_api_client.api.QueueApi","title":"QueueApi","text":"
                                            QueueApi(\napi_hostname,\nqpu_id,\napi_stage=\"v0\",\nproxy=None,\n**request_sigv4_kwargs\n)\n

                                            Simple interface to the QCS task API.

                                            Example (replace URIs, QPU ID with correct values):

                                            task_json = { ... \"nshots\": 10, ... \"lattice\": { ... \"sites\":[[0,0]], ... \"filling\":[1], ... }, ... \"effective_hamiltonian\": { ... \"rydberg\": { ... \"rabi_frequency_amplitude\":{ ... \"global\": { ... \"times\":[0.0, 0.1e-6, 3.9e-6, 4.0e-6], ... \"values\":[0.0, 15.0e6, 15.0e6, 0.0], ... } ... }, ... \"rabi_frequency_phase\": { ... \"global\": { ... \"times\":[0.0, 4.0e-6], ... \"values\":[0.0, 0.0], ... } ... }, ... \"detuning\":{ ... \"global\": { ... \"times\":[0.0, 4.0e-6], ... \"values\":[0.0, 0.0], ... } ... } ... } ... } ... } To Use this class with API-Gateway: api_hostname = \"XXX.execute-api.us-east-1.amazonaws.com\" vpce_uri = \"vpce-XXX-XXX.execute-api.us-east-1.vpce.amazonaws.com\" api = QueueApi(api_hostname, \"qpu1-mock\", proxy=vpce_uri) print(api.get_capabilities())

                                            @param qpu_id: The QPU ID, for example qpu1-mock. @param api_stage: Specify which version of the API to call from this object. @param proxy: Optional, the hostname for running the API via some proxy endpoint.

                                            request_sigv4_kwargs:

                                            @param region: AWS region, default value: \"us-east-1\" @param access_key: Optional, AWS account access key @param secret_key: Optional, AWS account secret key @param session_token: Optional, AWS session token @param session_expires: int, time before current tokens expire, default value 3600 @param role_arn: Optional, AWS role ARN @param role_session_name: AWS role session name, defualy value: 'awsrequest', @param profile: Optional, AWS profile to use credentials for.

                                            Source code in src/bloqade/submission/quera_api_client/api.py
                                            def __init__(\nself,\napi_hostname: str,\nqpu_id: str,\napi_stage=\"v0\",\nproxy: Optional[str] = None,\n**request_sigv4_kwargs,\n):\n\"\"\"\n    Create an instance of `QueueApi`.\n    @param api_hostname: hostname of the API instance.\n    @param qpu_id: The QPU ID, for example `qpu1-mock`.\n    @param api_stage: Specify which version of the API to call from this object.\n    @param proxy: Optional, the hostname for running the API via some proxy\n    endpoint.\n    request_sigv4_kwargs:\n    @param region: AWS region, default value: \"us-east-1\"\n    @param access_key: Optional, AWS account access key\n    @param secret_key: Optional, AWS account secret key\n    @param session_token: Optional, AWS session token\n    @param session_expires: int, time before current tokens expire, default value\n    3600\n    @param role_arn: Optional, AWS role ARN\n    @param role_session_name: AWS role session name, defualy value: 'awsrequest',\n    @param profile: Optional, AWS profile to use credentials for.\n    \"\"\"\nself.api_http_request = AwsApiRequest(\napi_hostname,\nqpu_id,\napi_stage=api_stage,\nproxy=proxy,\n**request_sigv4_kwargs,\n)\nself.logger = logging.getLogger(self.__class__.__name__)\n
                                            "},{"location":"reference/bloqade/submission/quera_api_client/api/#bloqade.submission.quera_api_client.api.QueueApi.get_capabilities","title":"get_capabilities","text":"
                                            get_capabilities()\n

                                            Request the QPU capabilities from the task API. @return: dictionary containing different fields for capabilities.

                                            Source code in src/bloqade/submission/quera_api_client/api.py
                                            def get_capabilities(self) -> Dict:\n\"\"\"\n    Request the QPU capabilities from the task API.\n    @return: dictionary containing different fields for capabilities.\n    \"\"\"\nresult = self.api_http_request.get(\"capabilities\")\nmatch result.status_code:\ncase 200:\nmessage = \"Successfully fetched capabilities.\"\nself.logger.error(message)\ncase 404:\nmessage = f\"QPU {self.api_http_request.qpu_id} not found.\"\nself.logger.error(message)\nraise QueueApi.NotFound(message)\ncase 403:\nmessage = \"QPU return authentication error, check AWS credentials.\"\nself.logger.error(message)\nraise QueueApi.AuthenticationError(message)\ncase _:\nmessage = f\"QPU returned unhandled status {result.status_code}.\"\nself.logger.error(message)\nraise QueueApi.QueueApiError(message)\nreturn ApiRequest._result_as_json(result)\n
                                            "},{"location":"reference/bloqade/submission/quera_api_client/api/#bloqade.submission.quera_api_client.api.QueueApi.get_task_results","title":"get_task_results","text":"
                                            get_task_results(task_id)\n

                                            Return task results as given by API. @return: Parsed JSON of the task results. @param task_id: Task ID.

                                            Source code in src/bloqade/submission/quera_api_client/api.py
                                            def get_task_results(self, task_id: Union[str, uuid.UUID]) -> Dict:\n\"\"\"\n    Return task results as given by API.\n    @return: Parsed JSON of the task results.\n    @param task_id: Task ID.\n    \"\"\"\nqueue_status = self.get_task_status_in_queue(task_id)\n# TODO: Revisit this mapping when the queue API is\n#       has task result fetching build into the API\nmatch queue_status:  # overwrite the\ncase \"Created\" | \"Enqueued\" | \"Accepted\":\nreturn {\"task_status\": \"Created\", \"shot_outputs\": []}\ncase \"Executing\":\nreturn {\"task_status\": \"Running\", \"shot_outputs\": []}\ncase \"Failed\" | \"Cancelled\":\nreturn {\"task_status\": queue_status, \"shot_outputs\": []}\ncase \"Unaccepted\":\nraise QueueApi.ValidationError(\nf\"Task: {task_id} has validation error, \"\n\"unable to fetch error message.\"\n)\ncase \"Completed\" | \"Partial\":\npass\ncase _:\nraise QueueApi.QueueApiError(\nf\"Undocumented queue status: {queue_status}\"\n)\nresult = self.api_http_request.get(\"task\", str(task_id), \"results\")\nmatch result.status_code:\ncase 200:\nmessage = f\"Successfully fetch task results for task_id {task_id}\"\nself.logger.debug(message)\ncase 400:\nmessage = QueueApi.bad_request\nself.logger.debug(message)\nraise QueueApi.InvalidRequestError(message)\ncase 404:\nmessage = QueueApi.qpu_or_task_not_found\nself.logger.debug(message)\nraise QueueApi.NotFound(message)\ncase 403:\nmessage = \"QPU return authentication error, check AWS credentials.\"\nself.logger.error(message)\nraise QueueApi.AuthenticationError(message)\ncase _:\nmessage = f\"QPU returned unhandled status {result.status_code}.\"\nself.logger.error(message)\nraise QueueApi.QueueApiError(message)\nreturn ApiRequest._result_as_json(result)\n
                                            "},{"location":"reference/bloqade/submission/quera_api_client/api/#bloqade.submission.quera_api_client.api.QueueApi.get_task_status_in_queue","title":"get_task_status_in_queue","text":"
                                            get_task_status_in_queue(task_id)\n

                                            Request task status in a queue for a given task. @param task_id: Task ID. @return: Parsed JSON of the task status.

                                            Source code in src/bloqade/submission/quera_api_client/api.py
                                            def get_task_status_in_queue(self, task_id: Union[str, uuid.UUID]) -> str:\n\"\"\"\n    Request task status in a queue for a given task.\n    @param task_id: Task ID.\n    @return: Parsed JSON of the task status.\n    \"\"\"\nresult = self.api_http_request.get(\"queue\", \"task\", str(task_id))\nmatch result.status_code:\ncase 200:\nmessage = \"Successfully checked queue.\"\nself.logger.debug(message)\ncase 400:\nmessage = (\n\"The request is invalid. This may indicate an error when parsing a \"\n\"parameter.\"\n)\nself.logger.error(message)\nraise QueueApi.InvalidRequestError(message)\ncase 404:\nmessage = (\nf\"QPU {self.api_http_request.qpu_id} or task {task_id} not found.\"\n)\nself.logger.error(message)\nraise QueueApi.NotFound(message)\ncase _:\nmessage = f\"QPU returned unhandled status {result.status_code}.\"\nself.logger.error(message)\nraise QueueApi.QueueApiError(message)\nresult_json = ApiRequest._result_as_json(result)\nreturn result_json[\"status\"]\n
                                            "},{"location":"reference/bloqade/submission/quera_api_client/api/#bloqade.submission.quera_api_client.api.QueueApi.get_task_summary","title":"get_task_summary","text":"
                                            get_task_summary(task_id)\n

                                            Request the task summary for a given task. The summary contains the status of the current task. @param task_id: Task ID. @return: Parsed JSON of the task summary. @see: TaskSummary in https://github.com/QuEra-QCS/QCS-API/blob/master/qcs-api/openapi.yaml

                                            Source code in src/bloqade/submission/quera_api_client/api.py
                                            def get_task_summary(self, task_id: Union[str, uuid.UUID]) -> Dict:\n\"\"\"\n    Request the task summary for a given task. The summary contains the status of\n    the current task.\n    @param task_id: Task ID.\n    @return: Parsed JSON of the task summary.\n    @see: `TaskSummary` in https://github.com/QuEra-QCS/QCS-API/blob/master/qcs-api/openapi.yaml\n    \"\"\"\nif self.get_task_status_in_queue(task_id) != \"Completed\":\nraise QueueApi.QueueApiError(\n\"Task is not completed, can't fetch task summary.\"\n)\nresult = self.api_http_request.get(\"task\", str(task_id))\nmatch result.status_code:\ncase 200:\nmessage = \"Successfully checked task summary.\"\nself.logger.warning(message)\ncase 404:\nmessage = (\nf\"QPU {self.api_http_request.qpu_id} or task {task_id} not found.\"\n)\nself.logger.error(message)\nraise QueueApi.NotFound(message)\ncase 403:\nmessage = \"QPU return authentication error, check AWS credentials.\"\nself.logger.error(message)\nraise QueueApi.AuthenticationError(message)\ncase _:\nmessage = f\"QPU returned unhandled status {result.status_code}.\"\nself.logger.error(message)\nraise QueueApi.QueueApiError(message)\nreturn ApiRequest._result_as_json(result)\n
                                            "},{"location":"reference/bloqade/submission/quera_api_client/api/#bloqade.submission.quera_api_client.api.QueueApi.is_task_stopped","title":"is_task_stopped","text":"
                                            is_task_stopped(task_id)\n

                                            Check whether a task is stopped (because it is completed, failed, or cancelled). @param task_id: @return: True if task is stopped.

                                            Source code in src/bloqade/submission/quera_api_client/api.py
                                            def is_task_stopped(self, task_id: Union[str, uuid.UUID]) -> bool:\n\"\"\"\n    Check whether a task is stopped (because it is completed, failed, or cancelled).\n    @param task_id:\n    @return: `True` if task is stopped.\n    \"\"\"\nreturn self.get_task_status_in_queue(task_id) in (\n\"Completed\",\n\"Failed\",\n\"Cancelled\",\n)\n
                                            "},{"location":"reference/bloqade/submission/quera_api_client/api/#bloqade.submission.quera_api_client.api.QueueApi.post_task","title":"post_task","text":"
                                            post_task(task_json)\n

                                            Submit a task to the QPU via the task API. @param content: Task specification as a JSON string or dictionary.

                                            Source code in src/bloqade/submission/quera_api_client/api.py
                                            def post_task(self, task_json: Union[str, dict]) -> str:\n\"\"\"\n    Submit a task to the QPU via the task API.\n    @param content: Task specification as a JSON string or dictionary.\n    \"\"\"\nresult = self.api_http_request.post(\"queue\", \"task\", content=task_json)\nmatch result.status_code:\ncase 201:\nmessage = \"Successfully posted task.\"\nself.logger.warning(message)\ncase 404:\nmessage = f\"QPU {self.api_http_request.qpu_id} not found.\"\nself.logger.error(message)\nraise QueueApi.NotFound(message)\ncase 400:\nmessage = (\n\"The request is invalid. This may indicate an error when parsing \"\n\"a parameter.\"\n)\nself.logger.error(message)\nraise QueueApi.InvalidRequestError(message)\ncase 403:\nmessage = \"QPU return authentication error, check AWS credentials.\"\nself.logger.error(message)\nraise QueueApi.AuthenticationError(message)\ncase _:\nmessage = f\"QPU returned unhandled status {result.status_code}.\"\nself.logger.error(message)\nraise QueueApi.QueueApiError(message)\nresult_json = ApiRequest._result_as_json(result)\ntry:\ntask_id = result_json[\"task_id\"]\nself.logger.info(\nf\"QPU {self.api_http_request.qpu_id} accepted \"\nf\"task with task id {task_id}.\"\n)\nreturn task_id\nexcept KeyError:\nraise QueueApi.InvalidResponseError('Response did not contain \"task_id\".')\n
                                            "},{"location":"reference/bloqade/submission/quera_api_client/aws_login/","title":"Aws login","text":""},{"location":"reference/bloqade/submission/quera_api_client/aws_login/#bloqade.submission.quera_api_client.aws_login.sso_login","title":"sso_login","text":"
                                            sso_login(profile=None)\n

                                            checks if aws has log-in, and performs attempt of sso login if not. by default profile should be set as env variable AWS_PROFILE, but can be specified as a parameter.

                                            Source code in src/bloqade/submission/quera_api_client/aws_login.py
                                            def sso_login(profile: Optional[str] = None):\n\"\"\"\n    checks if aws has log-in, and performs attempt of sso login if not.\n    by default profile should be set as env variable `AWS_PROFILE`,\n    but can be specified as a parameter.\n    \"\"\"\nif profile is not None:\nos.environ[\"AWS_PROFILE\"] = profile\ncode = os.system(\"aws sts get-caller-identity \")\nif code != 0:\nprint(\"login rsp code is \" + str(code) + \". attempting to sso login:\")\nos.system(\"aws sso login\")\n
                                            "},{"location":"reference/bloqade/task/","title":"Index","text":""},{"location":"reference/bloqade/task/#bloqade.task.HardwareBatchTask","title":"HardwareBatchTask","text":"

                                            Bases: CloudBatchTask[HardwareTask, HardwareBatchResult]

                                            A compiled batch-tasks that can be submitted to run on quantum hardware with specified backend.

                                            "},{"location":"reference/bloqade/task/base/","title":"Base","text":""},{"location":"reference/bloqade/task/braket_simulator/","title":"Braket simulator","text":""},{"location":"reference/bloqade/task/braket_simulator/#bloqade.task.braket_simulator.BraketEmulatorBatchTask","title":"BraketEmulatorBatchTask","text":"

                                            Bases: JSONInterface, BatchTask[BraketEmulatorTask, BraketEmulatorBatchResult]

                                            A compiled batch-tasks that can be submitted to run on Amazon Braket's local simulator.

                                            "},{"location":"reference/bloqade/task/braket_simulator/#bloqade.task.braket_simulator.BraketEmulatorBatchTask.submit","title":"submit","text":"
                                            submit(\nmultiprocessing=False,\nmax_workers=None,\nprogress_bar=False,\n**kwargs\n)\n

                                            Submit the batch tasks to run on Amazon Braket's local simulator.

                                            Parameters:

                                            Name Type Description Default multiprocessing bool

                                            Running with multiprocess. Defaults to False.

                                            False max_workers Optional[int]

                                            . Defaults to None. None progress_bar bool

                                            Display progess bar. Defaults to False.

                                            False

                                            Returns:

                                            Type Description BraketEmulatorBatchResult

                                            BraketEmulatorBatchResult

                                            Source code in src/bloqade/task/braket_simulator.py
                                            def submit(\nself,\nmultiprocessing: bool = False,\nmax_workers: Optional[int] = None,\nprogress_bar: bool = False,\n**kwargs,\n) -> BraketEmulatorBatchResult:\n\"\"\"Submit the batch tasks to run on Amazon Braket's local simulator.\n    Args:\n        multiprocessing (bool, optional):\n            Running with multiprocess. Defaults to False.\n        max_workers (Optional[int], optional):\n            <TODO>. Defaults to None.\n        progress_bar (bool, optional):\n            Display progess bar. Defaults to False.\n    Returns:\n        BraketEmulatorBatchResult\n    \"\"\"\nif multiprocessing:\nfutures = OrderedDict()\nwith ProcessPoolExecutor(max_workers=max_workers) as executor:\nfor task_number, task in self.tasks.items():\nfutures[task_number] = executor.submit(task.submit, **kwargs)\nif progress_bar:\niterator = tqdm.tqdm(futures.items())\nelse:\niterator = futures.items()\ntask_results = OrderedDict()\nfor task_number, future in iterator:\ntask_results[task_number] = future.result()\nelse:\nif progress_bar:\niterator = tqdm.tqdm(self.tasks.items())\nelse:\niterator = self.tasks.items()\ntask_results = OrderedDict()\nfor task_number, task in iterator:\ntask_results[task_number] = task.submit(**kwargs)\nreturn BraketEmulatorBatchResult(braket_emulator_task_results=task_results)\n
                                            "},{"location":"reference/bloqade/task/cloud_base/","title":"Cloud base","text":""},{"location":"reference/bloqade/task/cloud_base/#bloqade.task.cloud_base.CloudTask","title":"CloudTask","text":"

                                            Bases: JSONInterface, Task

                                            "},{"location":"reference/bloqade/task/cloud_base/#bloqade.task.cloud_base.CloudTask.backend","title":"backend property","text":"
                                            backend: SubmissionBackend\n

                                            The backend that is used to call the web-API.

                                            "},{"location":"reference/bloqade/task/hardware/","title":"Hardware","text":""},{"location":"reference/bloqade/task/hardware/#bloqade.task.hardware.HardwareBatchTask","title":"HardwareBatchTask","text":"

                                            Bases: CloudBatchTask[HardwareTask, HardwareBatchResult]

                                            A compiled batch-tasks that can be submitted to run on quantum hardware with specified backend.

                                            "},{"location":"reference/bloqade/task/report/","title":"Report","text":""},{"location":"reference/bloqade/visualization/","title":"Index","text":""},{"location":"tree/builder/","title":"Builder workflow:","text":"
                                            graph TD\n\n  ProgramStart(ProgramStart)\n\n  Coupling[\"[Coupling]\n  Rydberg , Hyperfine\"]\n\n  Detuning[Detuning]\n  Rabi[Rabi]\n\n  Amplitude[Amplitude]\n  Phase[Phase]\n\n  SpaceModulation(SpaceModulation)\n  Waveform{Waveform}\n\n  Codegen([\"[Compile]\n  quera()\n  mock()\n  braket()\n  braket_local_simulator()\"])\n\n  Submit(\"[Submission]\n  submit()\")\n\n  ProgramStart --> Coupling;\n  Coupling --> Detuning;\n  Coupling --> Rabi;\n\n  Rabi --> Amplitude;\n  Rabi --> Phase;\n\n  Detuning --> SpaceModulation;\n  Amplitude --> SpaceModulation;\n  Phase --> SpaceModulation;\n\n  SpaceModulation --> Waveform;\n\n  Waveform --> Coupling;\n  Waveform --> Codegen;\n  Codegen --> Submit;
                                            "}]} \ No newline at end of file diff --git a/dev/sitemap.xml b/dev/sitemap.xml new file mode 100644 index 0000000000..be4ce2ab58 --- /dev/null +++ b/dev/sitemap.xml @@ -0,0 +1,298 @@ + + + + https://bloqade.quera.com/dev/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/getting-started/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/license/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/philosophy/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/blog/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/blog/posts/bloqade-release/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/contributing/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/contributing/creating-a-reproduction/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/contributing/reporting-a-bug/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/contributing/reporting-a-docs-issue/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/contributing/requesting-a-change/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/contributing/setup/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/examples/rabi/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/builder/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/builder/coupling/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/builder/emit/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/builder/field/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/builder/location/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/builder/spatial/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/builder/start/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/builder/waveform/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ir/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ir/program/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ir/scalar/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ir/control/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ir/control/field/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ir/control/pulse/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ir/control/sequence/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ir/control/waveform/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ir/location/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ir/location/base/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ir/location/bravais/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ir/location/list/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/ir/location/quera_task_result/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/base/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/braket/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/capabilities/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/mock/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/quera/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/ir/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/ir/braket/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/ir/capabilities/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/ir/parallel/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/ir/task_results/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/ir/task_specification/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/quera_api_client/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/quera_api_client/api/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/submission/quera_api_client/aws_login/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/task/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/task/base/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/task/braket_simulator/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/task/cloud_base/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/task/hardware/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/task/report/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/reference/bloqade/visualization/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/tree/builder/ + 2023-08-04 + daily + + + https://bloqade.quera.com/dev/tutorials/ + 2023-08-04 + daily + + \ No newline at end of file diff --git a/dev/sitemap.xml.gz b/dev/sitemap.xml.gz new file mode 100644 index 0000000000..8879960f20 Binary files /dev/null and b/dev/sitemap.xml.gz differ diff --git a/dev/tree/builder/builder.md b/dev/tree/builder/builder.md new file mode 100644 index 0000000000..88850517e4 --- /dev/null +++ b/dev/tree/builder/builder.md @@ -0,0 +1,46 @@ + +# Builder workflow: + +``` mermaid +graph TD + + ProgramStart(ProgramStart) + + Coupling["[Coupling] + Rydberg , Hyperfine"] + + Detuning[Detuning] + Rabi[Rabi] + + Amplitude[Amplitude] + Phase[Phase] + + SpaceModulation(SpaceModulation) + Waveform{Waveform} + + Codegen(["[Compile] + quera() + mock() + braket() + braket_local_simulator()"]) + + Submit("[Submission] + submit()") + + ProgramStart --> Coupling; + Coupling --> Detuning; + Coupling --> Rabi; + + Rabi --> Amplitude; + Rabi --> Phase; + + Detuning --> SpaceModulation; + Amplitude --> SpaceModulation; + Phase --> SpaceModulation; + + SpaceModulation --> Waveform; + + Waveform --> Coupling; + Waveform --> Codegen; + Codegen --> Submit; +``` diff --git a/dev/tree/builder/index.html b/dev/tree/builder/index.html new file mode 100644 index 0000000000..8cde484111 --- /dev/null +++ b/dev/tree/builder/index.html @@ -0,0 +1,41 @@ + Builder workflow - The Neutral Atom SDK

                                            Builder workflow:

                                            graph TD
                                            +
                                            +  ProgramStart(ProgramStart)
                                            +
                                            +  Coupling["[Coupling]
                                            +  Rydberg , Hyperfine"]
                                            +
                                            +  Detuning[Detuning]
                                            +  Rabi[Rabi]
                                            +
                                            +  Amplitude[Amplitude]
                                            +  Phase[Phase]
                                            +
                                            +  SpaceModulation(SpaceModulation)
                                            +  Waveform{Waveform}
                                            +
                                            +  Codegen(["[Compile]
                                            +  quera()
                                            +  mock()
                                            +  braket()
                                            +  braket_local_simulator()"])
                                            +
                                            +  Submit("[Submission]
                                            +  submit()")
                                            +
                                            +  ProgramStart --> Coupling;
                                            +  Coupling --> Detuning;
                                            +  Coupling --> Rabi;
                                            +
                                            +  Rabi --> Amplitude;
                                            +  Rabi --> Phase;
                                            +
                                            +  Detuning --> SpaceModulation;
                                            +  Amplitude --> SpaceModulation;
                                            +  Phase --> SpaceModulation;
                                            +
                                            +  SpaceModulation --> Waveform;
                                            +
                                            +  Waveform --> Coupling;
                                            +  Waveform --> Codegen;
                                            +  Codegen --> Submit;
                                            \ No newline at end of file diff --git a/dev/tutorials/index.html b/dev/tutorials/index.html new file mode 100644 index 0000000000..b01d8e0569 --- /dev/null +++ b/dev/tutorials/index.html @@ -0,0 +1 @@ + Index - The Neutral Atom SDK
                                            \ No newline at end of file diff --git a/dev/tutorials/index.md b/dev/tutorials/index.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/versions.json b/versions.json new file mode 100644 index 0000000000..b7522b8f13 --- /dev/null +++ b/versions.json @@ -0,0 +1 @@ +[{"version": "dev", "title": "dev", "aliases": []}] \ No newline at end of file