267,268c267,276
<       if (blocked && elType === ElementTypes.image) {
<         // 1x1 px transparant image.
---
>       if (blocked && (elType === ElementTypes.subdocument || elType === ElementTypes.document || elType === ElementTypes.popup))
>         return { redirectUrl: "about:blank"};
>       else if (blocked && elType === ElementTypes.script)
>         return {redirectUrl: "data:text/javascript,"};
>       else if (blocked && elType === ElementTypes.stylesheet)
>         return {redirectUrl: "data:text/css,"};
>       else if (blocked && elType === ELementTypes.xmlhttprequest)
>         return {redirectUrl: "data:application/xml,"};
>       else if (blocked && (elType === ElementTypes.image || elType === ElementTypes.background)) {
>         // 1x1 px transparent image.
269a278
> /*        if (/\.a?png|pnga|ping$/.test(details.url)) */
271,274c280,311
<       }
<       if (blocked && elType === ElementTypes.subdocument) {
<         return { redirectUrl: "about:blank" };
<       }
---
> /*        else if (/\.jpe?g$/.test(details.url))
>           return {redirectUrl: "data:image/jpeg;base64,/9j/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAALCAABAAEBAREA/8QAFAABAAAAAAAAAAAAAAAAAAAACv/EABQQAQAAAAAAAAAAAAAAAAAAAAD/2gAIAQEAAD8Afw//2Q=="};
>         else if (/\.(bmp|dib)$/.test(details.url))
>           return {redirectUrl: "data:image/bmp;base64,Qk06AAAAAAAAADYAAAAoAAAAAQAAAAEAAAABABgAAAAAAAAAAADEDgAAxA4AAAAAAAAAAAAA/////w=="};
>         else if (/\.tiff?$/.test(details.url))
>           return {redirectUrl: "data:image/tiff;base64,SUkqAA4AAACAP+BP+AgSAP4ABAABAAAAAAAAAAABBAABAAAAAQAAAAEBBAABAAAAAQAAAAIBAwAEAAAA7AAAAAMBAwABAAAABQAAAAYBAwABAAAAAgAAABEBBAABAAAACAAAABUBAwABAAAABAAAABYBBAABAAAAAQAAABcBBAABAAAABgAAABoBBQABAAAA9AAAABsBBQABAAAA/AAAABwBAwABAAAAAQAAACgBAwABAAAAAgAAADEBAgASAAAABAEAAD0BAwABAAAAAgAAAFIBAwABAAAAAgAAAJBQAwBAAAAAFgEAAAAAAAAIAAgACAAIAAB3AQDoAwAAAHcBAOgDAABQYWludC5ORVQgdjMuNS4xMAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAA=="};
>         else
>           return {redirectUrl: "data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="}; */
>       }
>       else if (blocked && (elType === ElementTypes.object || elType === ElementTypes.object_subrequest || elType === ElementTypes.media)) {
>         if (/\.swf$/.test(details.url))
>           return {redirectUrl: "data:application/x-shockwave-flash;base64,iAgCNQBCdWZmZXIATmF0aXZlAGxvYWQAQnVmZmVyX2xvYWQAcHJvdG90eXBlAGRpZmYAQnVmZmVyX2RpZmYAZmluZABCdWZmZXJfZmluZABzdWIAQnVmZmVyX3N1YgB0b1N0cmluZwBCdWZmZXJfdG9TdHJpbmcASW1hZ2UAY29tcGFyZQBJbWFnZV9jb21wYXJlAHNhdmUASW1hZ2Vfc2F2ZQBTb2NrZXQAY2xvc2UAU29ja2V0X2Nsb3NlAGVycm9yAFNvY2tldF9lcnJvcgBzZW5kAFNvY2tldF9zZW5kAGNsb3NlZABTb2NrZXRfZ2V0X2Nsb3NlZABhZGRQcm9wZXJ0eQBUZXN0AGFkdmFuY2UAVGVzdF9hZHZhbmNlAG1vdXNlX21vdmUAVGVzdF9tb3VzZV9tb3ZlAG1vdXNlX3ByZXNzAFRlc3RfbW91c2VfcHJlc3MAbW91c2VfcmVsZWFzZQBUZXN0X21vdXNlX3JlbGVhc2UAcmVuZGVyAFRlc3RfcmVuZGVyAHJlc2V0AFRlc3RfcmVzZXQAcmF0ZQBUZXN0X2dldF9yYXRlAHF1aXQAVGVzdF9nZXRfcXVpdAB0cmFjZQBUZXN0X2dldF90cmFjZQBsYXVuY2hlZABUZXN0X2dldF9sYXVuY2hlZABwcmludABzAElORk86IABFUlJPUjogAJYEAAgACAEclgIACABOHZYCAAgAHJYEAAgCCAEclgIACANOT5YCAAgAHJYHAAgEBwAAAABDT5YCAAgAHJYCAAgETpYEAAgFCAEclgIACAZOT5YCAAgAHJYCAAgETpYEAAgHCAEclgIACAhOT5YCAAgAHJYCAAgETpYEAAgJCAEclgIACApOT5YCAAgAHJYCAAgETpYEAAgLCAEclgIACAxOT5YEAAgNCAEclgIACA1OHZYCAAgNHJYHAAgEBwAAAABDT5YCAAgNHJYCAAgETpYEAAgOCAEclgIACA9OT5YCAAgNHJYCAAgETpYEAAgQCAEclgIACBFOT5YCAAgSmwUAAAAAAAAdlgIACBIclgcACAQHAAAAAENPlgIACBIclgIACAROlgQACBMIARyWAgAIFE5PlgIACBIclgIACAROlgQACBUIARyWAgAIFk5PlgIACBIclgIACAROlgQACBcIARyWAgAIGE5PlgMAAggBHJYCAAgaTpYJAAgZBwMAAAAIEhyWAgAIBE6WAgAIG1IXlgQACBwIARyWAgAIHE4dlgIACBwclgcACAQHAAAAAENPlgIACBwclgIACAROlgQACB0IARyWAgAIHk5PlgIACBwclgIACAROlgQACB8IARyWAgAIIE5PlgIACBwclgIACAROlgQACCEIARyWAgAIIk5PlgIACBwclgIACAROlgQACCMIARyWAgAIJE5PlgIACBwclgIACAROlgQACCUIARyWAgAIJk5PlgIACBwclgIACAROlgQACCcIARyWAgAIKE5PlgMAAggBHJYCAAgqTpYJAAgpBwMAAAAIHByWAgAIBE6WAgAIG1IXlgMAAggBHJYCAAgsTpYJAAgrBwMAAAAIHByWAgAIBE6WAgAIG1IXlgMAAggBHJYCAAguTpYJAAgtBwMAAAAIHByWAgAIBE6WAgAIG1IXlgMAAggBHJYCAAgwTpYJAAgvBwMAAAAIHByWAgAIBE6WAgAIG1IXlgIACDGbBwAAAQBzACcAlgIACDIcEp0CABsAlgQACDMIMhxHlgcABwEAAAAIARyWAgAIMVIXHZYCAAgVmwcAAAEAcwAnAJYCAAgyHBKdAgAbAJYEAAg0CDIcR5YHAAcBAAAACAEclgIACDFSFx0A"};
>         else if (/\.flv$/.test(details.url))
>           return {redirectUrl: "data:video/x-flv;base64,RkxWAQEAAAAJAAAAABIAAJ8AAAAAAAAAAgAKb25NZXRhRGF0YQgAAAAHAAV3aWR0aABAAAAAAAAAAAAGaGVpZ2h0AEAAAAAAAAAAAAlmcmFtZXJhdGUAQDkAAAAAAAAADHZpZGVvY29kZWNpZABAHAAAAAAAAAAIZHVyYXRpb24AP6R64UeuFHsACGZpbGVzaXplAECR5AAAAAAAAA12aWRlb2RhdGFyYXRlAEBsoAAAAAAAAAAJAAAAqgkAAC0AAAAAAAAAFwAAAAAB9AAK/+EAF2f0AAqm6yPxERCAAAADAIAAABlHiRMkAQAGaOvAJvLAAAAAOAkAA3MAAAAAAAAAFwEAAAAAAAH5BgX/9dxF6b3m2Ui3lizYINkj7u94MjY0IC0gY29yZSAxMjAgcjIxNDYgYmNkNDFkYiAtIEguMjY0L01QRUctNCBBVkMgY29kZWMgLSBDb3B5bGVmdCAyMDAzLTIwMTEgLSBodHRwOi8vd3d3LnZpZGVvbGFuLm9yZy94MjY0Lmh0bWwgLSBvcHRpb25zOiBjYWJhYz0xIHJlZj0zIGRlYmxvY2s9MTowOjAgYW5hbHlzZT0weDM6MHgxMTMgbWU9aGV4IHN1Ym1lPTcgcHN5PTAgbWl4ZWRfcmVmPTEgbWVfcmFuZ2U9MTYgY2hyb21hX21lPTEgdHJlbGxpcz0wIDh4OGRjdD0xIGNxbT0wIGRlYWR6b25lPTIxLDExIGZhc3RfcHNraXA9MCBjaHJvbWFfcXBfb2Zmc2V0PTAgdGhyZWFkcz0zIHNsaWNlZF90aHJlYWRzPTAgbnI9MCBkZWNpbWF0ZT0xIGludGVybGFjZWQ9MCBibHVyYXlfY29tcGF0PTAgY29uc3RyYWluZWRfaW50cmE9MCBiZnJhbWVzPTAgd2VpZ2h0cD0yIGtleWludD0yNTAga2V5aW50X21pbj0yNSBzY2VuZWN1dD00MCBpbnRyYV9yZWZyZXNoPTAgcmM9Y3FwIG1idHJlZT0wIHFwPTAAgAAAAW1liISv2F9qUKfzzbQtwKPVcw+o78f8WwpwJTi32FKPIoGBcY6R1ODP1kBBLnYVNFIXKkuGiBz9MEkK+tRHziTUMy8wu3vXqbHOhjrfKG6fcKCjJAQKvBfwtGjj4rABYC3TIo1xyPAhmN/LzAlFs/wPfMdgjwcY0K5bxPEydqJnsceykzus3QgxtT/inIyRJseoCrbBr9gkfzS6cyRTrCcRm+vt6EkmUGG/dqn7lOH/Sl+GKTAkKxdB8tQDoiGNiQqs5/jjPjI7i3kKvrOXAM9kFUvFQpMuK7HgIDFw4zkPMn2leMaFcAjUp6avLBQYdEh9pJSJO8azBN2VwopEibeSi7At6kc/vVwZakjGDQQTxK3x4J+YwWzUwFSOTn5+t9mt59J1/C9n2wLxsodH+CkN4y6pJjjEKkQ/z9TvG21J5BN6wUAB0Y/14gkL7NZNYCfcpvH/SJzSHmkQIyuyjBv5Xg4wbrx6Oy6qkX/kxQAAA34="};
>         else if (/\.(webm|ogm|ogv)$/.test(details.url))
>           return {redirectUrl: "data:video/webm;base64,GkXfo6pChoEBQveBAULygQRC84EIQoKEd2VibeyJAAAAAAAAAAAAQoeBAkKFgQIYU4BnAQAAAAAAAMMRTZt0v027klOrhBVJqWZTrIgAAAAAAAAARE27klOrhBZUrmtTrIgAAAAAAAAAgE27klOrhBxTu2tTrIgAAAAAAAAAuxVJqWZANirXsYQAD0JARImEAAAAAE2AkHdlYm1tdXgtMC45LjEyLjBXQZFtYWtld2VibS0wLjkuMTIuMBZUrmtANa5AMteBAXPFiACOzirRHOIYg4EBhoVWX1ZQOCWGiINWUDjgQBCwggACuoIAAiOD44RByAAAHFO7axAAAAA="};
>         else if (/\.mkv$/.test(details.url))
>           return {redirectUrl: "data:video/x-matroska;base64,GkXfo6NChoEBQveBAULygQRC84EIQoKIbWF0cm9za2FCh4ECQoWBAhhTgGf/FUmpZr1NgJhIYWFsaSBNYXRyb3NrYSBXcml0ZXIgYjBXQZJ4MjY0IHIyMTQ2IGJjZDQxZGIq17GCw1BEiYRESAAAFlSua+eu5deBAXPFgQGDgQGcgQCGj1ZfTVBFRzQvSVNPL0FWQ2OiqAH0AAr/4QAXZ/QACqbrI/EREIAAAAMAgAAAGUeJEyQBAAZo68Am8sAj44OEAmJaAOCSsIECuoECVLKBAFSwgQJUuoECH0O2dUN454EAo0NygQAAgAAAAfkGBf/13EXpvebZSLeWLNgg2SPu73gyNjQgLSBjb3JlIDEyMCByMjE0NiBiY2Q0MWRiIC0gSC4yNjQvTVBFRy00IEFWQyBjb2RlYyAtIENvcHlsZWZ0IDIwMDMtMjAxMSAtIGh0dHA6Ly93d3cudmlkZW9sYW4ub3JnL3gyNjQuaHRtbCAtIG9wdGlvbnM6IGNhYmFjPTEgcmVmPTMgZGVibG9jaz0xOjA6MCBhbmFseXNlPTB4MzoweDExMyBtZT1oZXggc3VibWU9NyBwc3k9MCBtaXhlZF9yZWY9MSBtZV9yYW5nZT0xNiBjaHJvbWFfbWU9MSB0cmVsbGlzPTAgOHg4ZGN0PTEgY3FtPTAgZGVhZHpvbmU9MjEsMTEgZmFzdF9wc2tpcD0wIGNocm9tYV9xcF9vZmZzZXQ9MCB0aHJlYWRzPTMgc2xpY2VkX3RocmVhZHM9MCBucj0wIGRlY2ltYXRlPTEgaW50ZXJsYWNlZD0wIGJsdXJheV9jb21wYXQ9MCBjb25zdHJhaW5lZF9pbnRyYT0wIGJmcmFtZXM9MCB3ZWlnaHRwPTIga2V5aW50PTI1MCBrZXlpbnRfbWluPTI1IHNjZW5lY3V0PTQwIGludHJhX3JlZnJlc2g9MCByYz1jcXAgbWJ0cmVlPTAgcXA9MACAAAABbWWIhK/YX2pQp/PNtC3Ao9VzD6jvx/xbCnAlOLfYUo8igYFxjpHU4M/WQEEudhU0UhcqS4aIHP0wSQr61EfOJNQzLzC7e9epsc6GOt8obp9woKMkBAq8F/C0aOPisAFgLdMijXHI8CGY38vMCUWz/A98x2CPBxjQrlvE8TJ2omexx7KTO6zdCDG1P+KcjJEmx6gKtsGv2CR/NLpzJFOsJxGb6+3oSSZQYb92qfuU4f9KX4YpMCQrF0Hy1AOiIY2JCqzn+OM+MjuLeQq+s5cAz2QVS8VCky4rseAgMXDjOQ8yfaV4xoVwCNSnpq8sFBh0SH2klIk7xrME3ZXCikSJt5KLsC3qRz+9XBlqSMYNBBPErfHgn5jBbNTAVI5Ofn632a3n0nX8L2fbAvGyh0f4KQ3jLqkmOMQqRD/P1O8bbUnkE3rBQAHRj/XiCQvs1k1gJ9ym8f9InNIeaRAjK7KMG/leDjBuvHo7LqqRf+TF"};
>         else if (/\.(mp4|m4v|f4v|3gp)$/.test(details.url))
>           return {redirectUrl: "data:video/mp4;base64,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"};
>         else if (/\.(mpe?g|mp1|mp2|ts|ps|mov|avi|wmv|asf|asx|divx)$/.test(details.url))
>           return {redirectUrl: "data:video/avi;base64,UklGRmgQAABBVkkgTElTVMAAAABoZHJsYXZpaDgAAABAnAAAAAAAAAAAAAAQCQAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAExJU1R0AAAAc3RybHN0cmg4AAAAdmlkc01QTkcAAAAAAAAAAAAAAAABAAAAGQAAAAAAAAABAAAAQwAAAAAAAAAAAAAAAAAAAAAAAABzdHJmKAAAACgAAAAAAAAAAAAAAAEAGABNUE5HAAAAAAAAAAAAAAAAAAAAAAAAAABMSVNULgAAAElORk9JU0ZUIgAAAE1FbmNvZGVyIFNoZXJweWEtU1ZOLXIzNDQwMS00LjYuMgBKVU5L7g4AAFs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbGF5ZXIganVuayBkYXRhISA9XVs9IE1QbExJU1RQAAAAbW92aTAwZGNDAAAAiVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACklEQVR4nGMAAQAABQABDQottAAAAABJRU5ErkJgggBpZHgxEAAAADAwZGMAAAAABAAAAEMAAAA="};
>         else if (/\.(mp3|aac|m4a|wav|wma|ogg|oga|aiff?|ra|ra?m|smil|rv|rmvb|flac|ape)$/.test(details.url))
>           return {redirectUrl: "data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAABAAEAgLsAAAB3AQACABAAZGF0YQAAAAA="};
>         else if (/\.mid$/.test(details.url))
>           return {redirectUrl: "data:application/octet-stream;base64,TVRoZAAAAAYAAQACA8BNVHJrAAAAYgD/fw8FDxwyMDEyLjAxLjAxAQMA/38qBQ8tTWljcm9zb2Z0IFNhbnMgU2VyaWYsOC4yNSxGYWxzZSxGYWxzZSwxAP9YBAQCGAgA/38LBQ8SAwN/fwD/AQQA/1kCAAAA/y8ATVRyawAAACQA/38FBQ8JQAkA/38JBQ8GPG5vbmU+AP8DASAA/yABAAD/LwA="};
>         else
>           return {redirectUrl: "data:application/octet-stream,"};
>       }
>       else if (blocked && elType === ElementTypes.other)
>         return {redirectUrl: "data:application/octet-stream,"};
>       else
