0xc5e3…9b18

All memos sent from and to 0xc5e3…9b18.

QmcqHUztpV5tuKDir6VcSw2cHTwfANy9iYWwU7pgdJLx361lwmJrIjcprzItcxs1BQFikpVjJdEG90ShDzRKoCz5QisQRjzHIlqNmYW0KtboDm2gtJjg3dhRb_iV7sW8f_3gAltjames x KAIBisousbits 001First in a collaboration between Altjames (100 Bisous) and KAI. Paired with the piece: Excess BisousBits 001.BisousBits
Generative music in 40-140 bytes on-chain. ByteBeats are miniature functions that synthesize audio (and video) via bitwise operations (&^|<<*+/%>>). Because bits form groups in powers of 2, 4/4 beat-driven music emergently self-organizes. Each function in this drop is itself randomly generated, grouped into six families of composition and four families of visualizers. Some ByteBeats loop, some generate new patterns indefinitely. Some are for headbanging, some are for climbing forever through oceans of phase cancelation. (Instructions: click to play ...)
var hash,seeds,hashChunks,playing,sound;function resetSeeds(){(hashChunks=hash.match(/../g)).shift(),seeds=hashChunks.map(t=>parseInt(t,16))}function notRandom(){return seeds.length>0?seeds.pop()/256:0}function choose(t){return t[Math.floor(notRandom()*t.length)]}function init(){const t=document.getElementsByTagName("canvas")[0];let e=Math.min(document.body.clientWidth,document.body.clientHeight);t.style.position="fixed",t.style.top=0,t.style.left=0,t.style.imageRendering="pixelated",t.style.width=`${e}px`,t.style.height=`${e}px`,t.style.backgroundColor="#000";let a=generateParameters(hash=tokenData.hasOwnProperty("hash")?tokenData.hash:tokenData);drawToken(t,hash,a),getMetadata(hash)}function generateParameters(t){resetSeeds();let e=parseFloat(notRandom());console.log("hue",e);let a=choose(["bytes","bytes","bits","waveform","starry"]),s=choose(Array(8).fill("melodic").concat(Array(6).fill("heavy")).concat(Array(3).fill("wobbly")).concat(Array(3).fill("powerclimb")).concat(Array(3).fill("absurdities")).concat(Array(3).fill("permutations")).concat(Array(0).fill("crazy3"))),o=Math.ceil(12*notRandom()),r=Math.round(3951.07*Math.pow(2,(o+-6)/12));console.log(s);let i=bytebeatFamilyFunction(s)(),n=i.match(/\,c\=b\%(\d)/),c=n&&n.length>=2?parseInt(n[1]):0;return"powerclimb"==s&&(c="Infinity"),{hue:e,visual:a,family:s,bytebeat:new_bytebeat(i,r),sr:r,progressions:c,pitch_number:o}}function getMetadata(t){let e=generateParameters(t),a=parseInt(360*e.hue),s=a<36?"Fire":"";s=a>=36&&a<=63?"Goldenrod":s,s=a>=64&&a<=133?"Electric":s,s=73===a?"Emerald Dragon":s,s=a>=134&&a<=171?"Froggy":s,s=a>=172&&a<=181?"Turquoise":s,s=a>=182&&a<=191?"Sky":s,s=a>=192&&a<=211?"Cobalt":s,s=a>=212&&a<=255?"Royal":s,s=a>=256&&a<=281?"Regal":s,s=a>=282&&a<=323?"Neon":s,s=a>=324&&a<=333?"Sexbomb":s,s=a>333?"Lipstick":s,console.log("hue",a,"tint",s);let o=e.visual.capitalize(),r=e.family.capitalize().replace("_"," ");"Absurdities"==r?r="Inconsistent Absurdities":"Permutations"==r?r="Permutations":"Crazy3"==r?r="####":"Heavy"==r?r="Heavy Melodic":"Melodic"==r?r="Melodic":"Powerclimb"==r?r="Powerclimb":"Wobbly"==r&&(r="Wobbly");let i={tint:s,visual:o,family:r,sample_rate:e.sr,progressions:e.progressions,code:e.bytebeat.code};return console.table(i),i}window.addEventListener("load",init,!1),window.addEventListener("keydown",()=>{playpause()},!1),window.addEventListener("mousedown",()=>{playpause()},!1),String.prototype.capitalize=function(){return this.charAt(0).toUpperCase()+this.slice(1)};class VizSquare{constructor(t,e,a,s,o,r,i){this.name=e,this.size=a,this.visual=o,this.params=i,this.canvas=t,this.canvas.id="canvas_"+e,this.canvas.width=a,this.canvas.height=a,this.ctx=this.canvas.getContext("2d"),this.f=r,"bytes"!=o&&"bits"!=o||(this.imageData=this.ctx.createImageData(this.size,this.size),this.buffer=new ArrayBuffer(this.imageData.data.length),this.byteArray=new Uint8ClampedArray(this.buffer),this.intArray=new Uint32Array(this.buffer)),this.slow_factor=s,this.last_draw_t=-1}draw(t){var e=Math.floor(t/this.size/this.slow_factor)*this.size*this.slow_factor,a=e-this.last_draw_t;0!=a&&(this.last_draw_t=e,"bytes"==this.visual?draw_bytes(this.ctx,this.imageData,this.byteArray,this.intArray,this.f,this.size,this.size,e,a,this.params.r,this.params.g,this.params.b):"bits"==this.visual?draw_bits(this.ctx,this.imageData,this.byteArray,this.intArray,this.f,this.size,this.size,e,this.params.r,this.params.g,this.params.b):"waveform"==this.visual?draw_waveform(this.ctx,this.f,this.size,this.size,e,this.params.thickness,this.params.color):"starry"==this.visual&&draw_starry(this.ctx,this.f,this.size,this.size,e,this.params.ppc,this.params.thickness,this.params.color))}}function playpause(){if(playing)return console.log("STOP PLAYING"),void(playing=!1);sound&&sound.resume(),playing=!0,console.log("START PLAYING")}function make_sample_function(t){try{return new Function('"use strict"; return function(t){ var a=0,b=0,c=0,d=0,e=0; return '+t+";};")()}catch(t){return void console.error("FAILED FUNCTION")}}function drawToken(t,e,a){var s;playing=!1,window.playpause=playpause;(sound=new(window.AudioContext||window.webkitAudioContext)({sampleRate:44100})).createBuffer(1,1024,sound.sampleRate);var o=sound.createBufferSource(),r=sound.createScriptProcessor(1024,1,1),n=sound.createGain();n.gain.setValueAtTime(.25,sound.currentTime),o.connect(r),r.connect(n),n.connect(sound.destination),o.loop=!0;var c=0,h=0;r.onaudioprocess=function(t){var e=t.outputBuffer.getChannelData(0),a=-1,o=0;l.draw(h);for(var r=0;r<e.length;r++){var i=Math.floor(s.sr*c/sound.sampleRate);h=i,playing?(a!=i&&(o=s.f(i),o=((o&=255)-128)/256),e[r]=o,a=i,c++):e[r]=0}},s=a.bytebeat,console.log(s,s.f(0));let l=null,u=Math.min(document.body.clientWidth,document.body.clientHeight);t.width=u,t.height=u;(l=function(){var e=a.visual,o=a.hue;if("bytes"==e){var r=choose([64,128,256]),i=choose([1]),n=hsvToRgb(o,1,1);return new VizSquare(t,"_",r,i,e,s.f,{r:n[0],g:n[1],b:n[2],reflect:!1})}if("bits"==e)return r=choose([64,128]),i=choose([1]),n=hsvToRgb(o,1,1),new VizSquare(t,"_",r,i,e,s.f,{r:n[0],g:n[1],b:n[2]});if("waveform"==e){r=choose([128,256]);var c=choose([1,2]);return i=choose([1]),n=hsvToRgb(o,1,1),new VizSquare(t,"_",r,i,e,s.f,{thickness:c,color:"rgb("+n[0]+","+n[1]+","+n[2]+")"})}if("starry"==e){r=choose([128]),c=choose([1,2]);var h=choose([2,4]);return i=choose([1]),n=hsvToRgb(o,1,1),new VizSquare(t,"_",r,i,e,s.f,{thickness:c,ppc:h,color:"rgb("+n[0]+","+n[1]+","+n[2]+")"})}}()).draw(h);let b=0,d=0;for(i=0;i<1e5;i+=1e3){l.draw(i);let t=getDensity(l.canvas);t>b&&(b=t,d=i)}l.draw(d),console.log(`FINAL DENSITY: ${getDensity(l.canvas)} at ${d}`)}function getDensity(t){let e=t.getContext("2d"),a=t.width;return e.getImageData(0,0,a,a).data.reduce((t,e)=>e+t,0)/Math.pow(a,2)}function bytebeatFamilyFunction(t){switch(t){case"melodic":return make_melodic;case"heavy":return make_heavy;case"absurdities":return make_absurdities;case"permutations":return make_permutations;case"crazy3":return make_crazy3;case"wobbly":return make_wobbly;case"powerclimb":return make_powerclimb}}function make_melodic(){let t=choose([4,5,6,7,8,9]),e=choose([18,18,18,17,17,17,15,14]),a=choose(["c=b%2+1","c=b%3+1","c=b%3+1","c=b%4+1","c=b%5+1","c=b%6+1","c=b%24+1"]),s=choose([7,6,5,4]),o=choose([4,3,3,3,3,3,2]),r=choose(["(t*(a/2)/c&t>>10)|(t*a/c&t>>9)","(t*(a/2)/c&t>>10)|(t*a/c&t>>9)"]),i=choose(["|(t*(a*4/c)&t>>8)|(t*(a*5/c)&t>>"+s+")|(t*(a*6/c)&t>>"+o+")","|(t*(a*4/c)&t>>8)|(t*(a*5/c)&t>>"+s+")|(t*(a*6/c)&t>>"+o+")","|(t*(a*2/c)&t>>8)|(t*(a*3/c)&t>>"+s+")|(t*(a*4/c)&t>>"+o+")","|(t*(a*5/c)&t>>8)|(t*(a*6/c)&t>>"+s+")|(t*(a*7/c)&t>>"+o+")"]);return bb="a="+t+",",bb+="b=((t>>"+e+")&0xFF),",bb+=a+",",bb+=r,bb+=i,bb}function make_absurdities(){let t=choose([5,6,7,8,9,10,11,12,13]),e=choose([5,6,7,8,9,10,11,12,13]),a=choose([5,6,7,8,9,10,11,12,13]),s=choose([5,6,7,8,9,10,11,12,13]);return"t*(0x"+choose([69,9,4,5,6])+"+(0xABCDEF&t>>10))*(("+t+"&t>>"+e+")|("+e+"&t>>"+a+")|("+a+"&t>>"+s+")|("+s+"&t>>"+t+"))"}function make_permutations(){return"a=0.5,b="+choose([1,2])+",c="+choose([1,2,10,20,40,50])+",(t/a*((-c*(t/a|t/a*b>>5)/4)>>7))"}function make_crazy3(){return"a="+choose([1,2,3,4,5,6,7,8,12,24])+",b=a/"+choose([1,2,3])+",t=t*a,c=(-(t>>b|t>>10)>>4)/4,t*("+choose(["(c/8<<8)|(c/4<<4)|(c/2<<3)","(c/6<<8)|(c/5<<7)|(c/4<<4)"])+")"}function make_powerclimb(){return"a=0xFF,b="+choose([1.6,1.7,1.8])+",c="+choose([.05,.08,.1,.15,.18,.2])+",((1*(pow(t,b+c*0))>>14)&a)^((1*(pow(t,b+c*1))>>14)&a)^((1*(pow(t,b+c*2))>>14)&a)^((1*(pow(t,b+c*3))>>14)&a*"+choose([0,1])+")"}function make_heavy(){let t=choose([17,17,16,16,15,14]),e=choose(["c=b%2+1","c=b%3+1","c=b%3+2","c=b%3+3","c=b%3+4","c=b%4+1","c=b%6+1"]),a=choose([1,2,3,4,5,6,7,8,9,11]),s=choose([1,2,3]);return"b=((t>>("+t+"))&0xFF),"+e+",((t>>7)|(t>>"+choose([8,9])+")|(t*"+a+"))*(t/c<<"+s+")"}function make_wobbly(){return"a="+choose([2,3,4,5])+",f="+choose([1,8,16,32,42,64,69,99])+",b=(((t>>14)&0xFE)+1+f)%0xFE,d=1/4,((t*a*b*(t*a>>(t*a*d>>10)%16)))"}function new_bytebeat(t,e){let a=t;return t=replace_all(t,"pow","Math.pow"),t=replace_all(t,"sqrt","Math.sqrt"),f=make_sample_function(t),{f:f,sr:e,code:t,original_code:a}}function draw_bytes(t,e,a,s,o,r,i,n,c,h,l,u){for(var b=0;b<s.length;b++){var d=samplePos2graph(b,r,i);if(b<c&&c<s.length)s[d]=s[samplePos2graph(b+c,i)];else{let t=255&o(b+n);brightness=2*Math.abs(t-128),s[d]=brightness<<24|u<<16|l<<8|h}}e.data.set(a),t.putImageData(e,0,0)}function draw_bits(t,e,a,s,o,r,i,n,c,h,l){for(var u=0;u<r;u++){let t=255&o(u+n);for(var b=0;b<i;b++){let e=255*((t>>Math.floor(b/i*8))%2);e=Math.floor(e),s[b+u*i]=e<<24|l<<16|h<<8|c}}e.data.set(a),t.putImageData(e,0,0)}function draw_waveform(t,e,a,s,o,r,i){t.clearRect(0,0,a,s),t.beginPath();for(var n=0;n<a;n++){let a=255&e(n+o);0==n?t.moveTo(n,a):t.lineTo(n,a)}t.lineWidth=r,t.strokeStyle=i,t.stroke()}function draw_starry(t,e,a,s,o,r,i,n){t.clearRect(0,0,a,s),t.beginPath();for(var c=0;c<a;c++)for(var h=0;h<r;h++){let a=255&e(c*r+h+o);0==c?t.moveTo(c,a):(t.moveTo(c,a),t.fillRect(c,a,i,i))}t.strokeStyle=n,t.fillStyle=n,t.stroke()}function replace_all(t,e,a){return t.split(e).join(a)}function hsvToRgb(t,e,a){var s,o,r,i=Math.floor(6*t),n=6*t-i,c=a*(1-e),h=a*(1-n*e),l=a*(1-(1-n)*e);switch(i%6){case 0:s=a,o=l,r=c;break;case 1:s=h,o=a,r=c;break;case 2:s=c,o=a,r=l;break;case 3:s=c,o=h,r=a;break;case 4:s=l,o=c,r=a;break;case 5:s=a,o=c,r=h}return[255*s,255*o,255*r]}function samplePos2graph(t,e,a){return e*(t%a)+Math.floor(t/a)}function graphPos2sample(t,e){return t.x*e+t.y}
function init(){const e=document.getElementsByTagName("canvas")[0];e.width=document.body.clientWidth,e.height=document.body.clientHeight,drawToken(e,tokenData.hasOwnProperty("hash")?tokenData.hash:tokenData),getMetadata(tokenData.hasOwnProperty("hash")?tokenData.hash:tokenData)}function drawToken(e,a){const t=e.getContext("2d");t.webkitImageSmoothingEnabled=!1;let l=Math.min(e.width,e.height),n=l/64,i=!(parseInt(a.substr(-1,1),16)>0),s=i?360:60,o=parseInt(a.substr(-3,2),16)/256,u=parseInt(a.substr(-5,2),16)/256;t.fillStyle=i?"hsl(42,100%,95%)":"hsl(192,100%,90%)",t.fillRect(0,0,l,l);let h={hue:204+parseInt(o*s-s/2),sat:100,baseLum:parseInt(20*u+80),lum:0,baseAlpha:i?.3:.2,alpha:0,index:5,direction:!0,remaining:0,value:0};h.lum=h.baseLum,h.alpha=h.baseAlpha,h.update=(()=>{if(h.remaining>0)h.remaining--;else{h.index++;let e=parseInt(a.substr(-1*h.index,1),16)-8;h.direction=e>0,h.remaining=Math.abs(e)}if(h.value=h.direction?h.value+1:h.value-1,h.direction=h.value>24||h.value<-12?!h.direction:h.direction,h.lum=4*h.value+h.baseLum,h.value>12){let e=Math.abs(h.value)-12;h.alpha=.1*e+h.baseAlpha}else h.alpha=h.baseAlpha;h.lum=h.lum>50?h.lum:50,h.lum=h.lum<100?h.lum:100,h.alpha=h.alpha>.2?h.alpha:.2,h.alpha=h.alpha<1?h.alpha:1});for(let e=0;e<64;e++){h.update();let a=`hsla(${h.hue},${h.sat}%,${h.lum}%,${h.alpha})`;for(let t=0;t<=e;t++)r(e-t,t,a)}for(let e=1;e<64;e++){h.update();let a=`hsla(${h.hue},${h.sat}%,${h.lum}%,${h.alpha})`,t=e,l=63;for(let n=0;n<64-e;n++)r(t,l,a),t++,l--}function r(e,a,l){t.fillStyle=l,t.fillRect(e*n,a*n,n,n)}}function getMetadata(e){let a=!(parseInt(e.substr(-1,1),16)>0),t=a?360:60,l=parseInt(e.substr(-3,2),16)/256,n=204+parseInt(l*t-t/2),i=n<36?"Fire":"";i=n>=36&&n<=63?"Goldenrod":i,i=n>=64&&n<=133?"Electric":i,i=73===n?"Emerald Dragon":i,i=n>=134&&n<=171?"Froggy":i,i=n>=172&&n<=181?"Turquoise":i,i=n>=182&&n<=191?"Sky":i,i=n>=192&&n<=211?"Cobalt":i,i=n>=212&&n<=255?"Royal":i,i=n>=256&&n<=281?"Regal":i,i=n>=282&&n<=323?"Neon":i,i=n>=324&&n<=333?"Sexbomb":i;let s={infused:a?"Yes":"No",tint:i=n>333?"Lipstick":i};return console.table(s),s}window.addEventListener("load",init,!1);
window.addEventListener('load', init, false) function init() { const canvas = document.getElementsByTagName("canvas")[0] canvas.width = document.body.clientWidth canvas.height = document.body.clientHeight let seed = parseInt(tokenData.hash.substr(-7),16) drawToken(canvas,seed) getMetadata(tokenData.hash) } function drawToken(canvas,seed){ const c = canvas.getContext('2d') c.webkitImageSmoothingEnabled = false const colorSeed = seed & 0xfff const segmentSeed = (seed & 0x7f000) >> 12 const rSeed = ((seed >> 19) & 0xff) === 1 ? 5 : ((seed >> 19) & 0xf) === 1 ? 3 : 4 let outerSize = Math.min(canvas.width,canvas.height) c.fillStyle = '#C4CDD5' c.fillRect(0,0,outerSize,outerSize) let innerSize = Math.pow(2,parseInt(Math.log2(outerSize))) offset = Math.floor((outerSize-innerSize)/2) let scale = Math.pow(2,rSeed) let factor = innerSize / 2048.0 drawPattern(colorSeed,offset,offset,scale*factor,innerSize) draw7Segment(segmentSeed,factor,offset) function drawPattern(bitmap,dx,dy,scale,size){ for(x=dx;x<dx+size;x+=scale*2){ for(y=dy;y<dy+size;y+=scale*2){ for(var i=0;i<4;i++){ let byte = bitmap >> (3*i) let [r,g,b] = [ (byte & 4) ? 'F' : '0', (byte & 2) ? 'F' : '0', (byte & 1) ? 'F' : '0' ] c.fillStyle = `#${r}${g}${b}` let [xOffset,yOffset] = [ (i%2)*scale, parseInt(i/2)*scale ] c.fillRect(x+xOffset,y+yOffset,scale,scale) } } } } function draw7Segment(mask,factor,offset){ const [scale,sprite,segments,dx,dy] = [ 32*factor, [32760,65532,131070,262143,131070,65532,32760], [[1,0,0,1,4,0],[0,1,-1,0,7,4],[0,1,-1,0,26,4],[1,0,0,1,4,19],[0,1,-1,0,7,23],[0,1,-1,0,26,23],[1,0,0,1,4,38],], 19,9 ] segments.map((translation,i)=>{ let bit = Math.pow(2,i) mask & bit && draw(sprite, translation, dx, dy, scale, offset) }) function draw(sprite,translation,dx,dy,scale,offset){ c.setTransform(1,0,0,1,dx*scale+offset,dy*scale+offset) c.transform(...translation.map(o=>scale*o)) sprite.map((bits,dy)=>{ for(dx=0;bits>0;dx++){ if(bits & 1){ c.fillStyle = `#FFF` c.fillRect(dx,dy,1,1) } bits = bits >> 1 } }) } } } function getMetadata(e){const s=parseInt(e.substr(-7),16),a=4095&s,c=(520192&s)>>12,t=1==(s>>19&255)?5:1==(s>>19&15)?3:4,h=5===t?"LoRes 32x32":3===t?"HiRes 8x8":"VGA 16x16";let i="Glitch";switch(c){case 0:i="Ghost";break;case 63:case 122:case 83:case 124:case 91:case 27:case 58:case 116:case 82:case 56:case 31:case 118:case 62:case 110:i="Alphabetic";break;case 93:case 109:case 46:case 123:case 37:case 111:case 54:i="Numeric";break;case 18:case 36:case 119:case 107:i="Alphanumeric";break;case 127:i="Lucky 8";break;case 70:i="OTTO"}let u=[],r=7&a,p=(56&a)>>3,l=(448&a)>>6,n=(3584&a)>>9;switch(0===r&&0===p&&0===l&&0===n?0===c?u.push("Blackout"):u.push("Binary"):7===r&&7===p&&7===l&&7===n?u.push("Whiteout"):r===p&&p===l&&l===n?u.push("Solid"):0!==r&&7!==r||0!==p&&7!==p||0!==l&&7!==l||0!==n&&7!==n||u.push("Black & White"),r===l&&p===n&&r!==p&&u.push("Bars"),r===p&&l===n&&r!==l&&(0===r||0===l?u.push("Scanlines"):u.push("Stripes")),r===n&&p===l&&r!==p&&u.push("Checkerboard"),(r===p&&r===l&&r!==n||r!==p&&r===l&&r===n||r===p&&r!==l&&r===n||r!==p&&p===l&&p===n)&&u.push("Pointillist"),a){case 3826:case 3994:case 2006:case 1726:case 3539:case 3259:case 1439:case 1271:u.push("Highlighter")}0===u.length&&u.push("Mix");let o={glyph:i,res:h,pattern:u};return console.table(o),o}
The essence of all things digital is– the bit. One or Zero. On or Off. Where digital becomes analog. This piece pays tribute to our digital legacy of 8-bit color and 7-segment LED displays– technological limitations which are mirrored in the constraints of putting art on the blockchain. Although the image represents the art, the art of the token itself is the code– which renders everything bitwise, pixel by pixel, all contained within 27-bits of information.
Qmendb62QbRjzfwSA81YoBvqhv7yJAhAXWQLzMNCsipbAbCFGx2i7Uv3ShcnybDKOGh_zXK3-m_cDfbtcuJgD6LtwisQRjzHIlqNmYW0KtboDm2gtJjg3dhRb_iV7sW8f_3gBOUNTY 002: Jolly Roger – Special EditionSpace Pirates are everywhere these days. Unlike the elusive Blackbeard, who remains at-large, the more boisterous Jolly Roger was a well-known figure at the seedier outposts in the system, and was therefore easier to track down. He lost more from boozing and gambling than he earned through smuggling, so the bounty hunters were dispatched. Now he’s paying off his debts mining sulfur deposits in the Restricted Quadrant.BOUNTY 002 SE
Qmendb62QbRjzfwSA81YoBvqhv7yJAhAXWQLzMNCsipbAbKFLuTXOFm3CED2HrOHBpD-yLM07vrqD-ybqhRUH_5fQisQRjzHIlqNmYW0KtboDm2gtJjg3dhRb_iV7sW8f_3gBOUNTY 002: Jolly Roger – Special EditionSpace Pirates are everywhere these days. Unlike the elusive Blackbeard, who remains at-large, the more boisterous Jolly Roger was a well-known figure at the seedier outposts in the system, and was therefore easier to track down. He lost more from boozing and gambling than he earned through smuggling, so the bounty hunters were dispatched. Now he’s paying off his debts mining sulfur deposits in the Restricted Quadrant.BOUNTY 002 SE
NFTartan AlphaThe first NFTartan minted.<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="640" height="640"><defs><pattern id="R-texture" patternUnits="userSpaceOnUse" width="4" height="4"><path d="M-1,1 l2,-2 M0,4 l4,-4 M3,5 l2,-2" style="stroke:#DB0000;stroke-width:1.5"/></pattern><pattern id="K-texture" patternUnits="userSpaceOnUse" width="4" height="4"><path d="M-1,1 l2,-2 M0,4 l4,-4 M3,5 l2,-2" style="stroke:#101010;stroke-width:1.5"/></pattern><pattern id="W-texture" patternUnits="userSpaceOnUse" width="4" height="4"><path d="M-1,1 l2,-2 M0,4 l4,-4 M3,5 l2,-2" style="stroke:#FFFFFF;stroke-width:1.5"/></pattern><pattern id="K-texture" patternUnits="userSpaceOnUse" width="4" height="4"><path d="M-1,1 l2,-2 M0,4 l4,-4 M3,5 l2,-2" style="stroke:#101010;stroke-width:1.5"/></pattern><pattern id="B-texture" patternUnits="userSpaceOnUse" width="4" height="4"><path d="M-1,1 l2,-2 M0,4 l4,-4 M3,5 l2,-2" style="stroke:#030069;stroke-width:1.5"/></pattern><pattern id="K-texture" patternUnits="userSpaceOnUse" width="4" height="4"><path d="M-1,1 l2,-2 M0,4 l4,-4 M3,5 l2,-2" style="stroke:#101010;stroke-width:1.5"/></pattern><pattern id="tartan" patternUnits="userSpaceOnUse" width="104" height="104"><rect x="0" y="0" width="16" height="104" style="fill:#DB0000"/><rect x="16" y="0" width="8" height="104" style="fill:#101010"/><rect x="24" y="0" width="16" height="104" style="fill:#FFFFFF"/><rect x="40" y="0" width="4" height="104" style="fill:#101010"/><rect x="44" y="0" width="4" height="104" style="fill:#030069"/><rect x="48" y="0" width="24" height="104" style="fill:#101010"/><rect x="72" y="0" width="4" height="104" style="fill:#030069"/><rect x="76" y="0" width="4" height="104" style="fill:#101010"/><rect x="80" y="0" width="16" height="104" style="fill:#FFFFFF"/><rect x="96" y="0" width="8" height="104" style="fill:#101010"/><rect x="0" y="0" width="104" height="16" style="fill:url(#R-texture)"/><rect x="0" y="16" width="104" height="8" style="fill:url(#K-texture)"/><rect x="0" y="24" width="104" height="16" style="fill:url(#W-texture)"/><rect x="0" y="40" width="104" height="4" style="fill:url(#K-texture)"/><rect x="0" y="44" width="104" height="4" style="fill:url(#B-texture)"/><rect x="0" y="48" width="104" height="24" style="fill:url(#K-texture)"/><rect x="0" y="72" width="104" height="4" style="fill:url(#B-texture)"/><rect x="0" y="76" width="104" height="4" style="fill:url(#K-texture)"/><rect x="0" y="80" width="104" height="16" style="fill:url(#W-texture)"/><rect x="0" y="96" width="104" height="8" style="fill:url(#K-texture)"/></pattern></defs><rect x="0" y="0" width="640" height="640" style="fill:url(#tartan)"/></svg>
QmQd8XZxFYwuG6FpDrbRVqJr7kWnxJQwbEPeMHDxNca5HQY0yusakD7HlstkSJeGgeth_ibdtuBEwFId7atGKI2Tcu19D42Fdp0r5Jtdin3lXjpkKs6gd1XiMBk6QpTkqLw8Jatin PathiJolly RogerSpecial commission of Jolly Roger, the second Avastars bounty from 12 July 2020. ABOUT THE ARTIST: [Jatin Pathi](https://forever_3vil.artstation.com/)Golden Age of NFTs
QmNaoAHNYMk4YYPL2STp7Hm4g4HUBqBkbysnSBbw1oQ2Er3iTLK9gCiz1uOdsJ2gdTX9b3rjTz21TlJMh36WvsnX03iTLK9gCiz1uOdsJ2gdTX9b3rjTz21TlJMh36WvsnX0BOUNTY 002:Space Pirates are everywhere these days. Unlike the elusive Blackbeard, who remains at-large, the more boisterous Jolly Roger was a well-known figure at the seedier outposts in the system, and was therefore easier to track down. He lost more from boozing and gambling than he earned through smuggling, so the bounty hunters were dispatched. Now he’s paying off his debts mining sulfur deposits in the Restricted Quadrant. LIMITED EDITION: 10, NAME: JOLLY ROGER, DATE POSTED: 12 JUNE 2020, COMPLETED: 24 BOUNTY 002 LE
QmP2A8qoNJbJJmJdBVQGSLJfBnDZfZ3F897vbiqLmJ5GDM2j_p33tYYFHP0qlK4GwjO8wUS6t_t534zPqL7jBkL_A2j_p33tYYFHP0qlK4GwjO8wUS6t_t534zPqL7jBkL_ABOUNTY 001: Lass in Space - SPECIAL EDITIONCommemorating the very first bounty – issued on 12 June 2020 This fine young astronaut drifted off on a spacewalk, resulting in the inaugural Bounty Hunt – as hunters gathered across the galaxy to find her among the Avastars. She wasn’t too difficult to find, but she’ll forever be remembered as the one who started the tradition. SPECIAL EDITION: 5, NAME: LASS IN SPACE, DATE POSTED: 12 JUNE 2020, COMPLETED: 24BOUNTY 001
QmQQqGEq8emvNb5zXjFe84Pjpcq2Gsd3nxL6RSLS1M7sbFfRsBaXebJvfhSoKiMnqsQgcFu3gSXy_86mtId547iu0fRsBaXebJvfhSoKiMnqsQgcFu3gSXy_86mtId547iu0BOUNTY 001: Lass in SpaceCommemorating the very first bounty – issued on 12 June 2020 This fine young astronaut drifted off on a spacewalk, resulting in the inaugural Bounty Hunt – as hunters gathered across the galaxy to find her among the Avastars. She wasn’t too difficult to find, but she’ll forever be remembered as the one who started the tradition. [LIMITED EDITION: 10] [BOUNTY: 001] [NAME: LASS IN SPACE] [RANK:D, Novice] [DATE POSTED: 12 JUNE 2020] [ODDS: 1 in 13,333] [COMPLETED: 24]BOUNTY 001