I have several, let's say six, different values. Can be numbers from 1 to 6.
I want to quickly list all unique combinations of four, so 1-2-3-4, 1-2-3-5 ... 3-4-5-6, all of them, but without any numbers showing more than once.
I'd like to do it in Libre Office Calc or Libre Office Base, but thus far I haven't had much luck searching for a way to do it. I'd be really grateful for any ideas.
there you go:
1234 1235 1236 1243 1245 1246 1253 1254 1256 1263 1264 1265 1324 1325 1326 1342 1345 1346 1352 1354 1356 1362 1364 1365 1423 1425 1426 1432 1435 1436 1452 1453 1456 1462 1463 1465 1523 1524 1526 1532 1534 1536 1542 1543 1546 1562 1563 1564 1623 1624 1625 1632 1634 1635 1642 1643 1645 1652 1653 1654 2134 2135 2136 2143 2145 2146 2153 2154 2156 2163 2164 2165 2314 2315 2316 2341 2345 2346 2351 2354 2356 2361 2364 2365 2413 2415 2416 2431 2435 2436 2451 2453 2456 2461 2463 2465 2513 2514 2516 2531 2534 2536 2541 2543 2546 2561 2563 2564 2613 2614 2615 2631 2634 2635 2641 2643 2645 2651 2653 2654 3124 3125 3126 3142 3145 3146 3152 3154 3156 3162 3164 3165 3214 3215 3216 3241 3245 3246 3251 3254 3256 3261 3264 3265 3412 3415 3416 3421 3425 3426 3451 3452 3456 3461 3462 3465 3512 3514 3516 3521 3524 3526 3541 3542 3546 3561 3562 3564 3612 3614 3615 3621 3624 3625 3641 3642 3645 3651 3652 3654 4123 4125 4126 4132 4135 4136 4152 4153 4156 4162 4163 4165 4213 4215 4216 4231 4235 4236 4251 4253 4256 4261 4263 4265 4312 4315 4316 4321 4325 4326 4351 4352 4356 4361 4362 4365 4512 4513 4516 4521 4523 4526 4531 4532 4536 4561 4562 4563 4612 4613 4615 4621 4623 4625 4631 4632 4635 4651 4652 4653 5123 5124 5126 5132 5134 5136 5142 5143 5146 5162 5163 5164 5213 5214 5216 5231 5234 5236 5241 5243 5246 5261 5263 5264 5312 5314 5316 5321 5324 5326 5341 5342 5346 5361 5362 5364 5412 5413 5416 5421 5423 5426 5431 5432 5436 5461 5462 5463 5612 5613 5614 5621 5623 5624 5631 5632 5634 5641 5642 5643 6123 6124 6125 6132 6134 6135 6142 6143 6145 6152 6153 6154 6213 6214 6215 6231 6234 6235 6241 6243 6245 6251 6253 6254 6312 6314 6315 6321 6324 6325 6341 6342 6345 6351 6352 6354 6412 6413 6415 6421 6423 6425 6431 6432 6435 6451 6452 6453 6512 6513 6514 6521 6523 6524 6531 6532 6534 6541 6542 6543
PS: i don't think that there is a way to generate them in libre office, since i'm not aware of programming languages in that program, however you can compute them online or with a your script
If you need the script, save this code in a .html file and open it in a browser
<html>
<body>
<script>
function finish(arr, n){
for(let el in arr)
if(el != n)
return true;
return false;
}
function updateIndexes(arr, n){
for( i = 0; i < arr.length ; i++ ){
if(arr[i] < n-1){
arr[i]++;
return true;
}
arr[i] = 0;
}
return false
}
let from = [1,2,3,4,5,6].map((el)=>el.toString());
let length = 4;
let separator = '-'
let indexes = Array(length).fill().map(el=>el=0);
let results = [];
do{
results.push(indexes.map(index => from[index]).join(separator));
} while (updateIndexes(indexes, from.length));
body = document.getElementsByTagName('body')[0];
results.filter((el)=>{
for(i = 0; i < el.length ; i++)
for(j = i+1 ; j < el.length ; j++)
if(el.charAt(i) == el.charAt(j) && el.charAt(i) != separator)
return false;
return true;
}).forEach(el => body.innerHTML+= el.toString()+'<br>');
</script>
</body>
</html>
what you can customize is:
let from = [1,2,3,4,5,6]; to what numbers/letters you want
let length = 4; to the length of the string you want
let separator = '-' to the separator you want (the separator here intended is the one between each sequence generated, so in this case will be 1-2-3-4 for example)
Python has a library called itertools that does this.
import itertools
l = itertools.permutations(range(1,7), 4) # between 1 and 6 of length 4
for t in list(l):
print("{}, ".format("-".join(str(i) for i in t)), end='')
Result:
1-2-3-4, 1-2-3-5, 1-2-3-6, 1-2-4-3, 1-2-4-5, 1-2-4-6, 1-2-5-3, 1-2-5-4, 1-2-5-6, 1-2-6-3, 1-2-6-4, 1-2-6-5, 1-3-2-4, 1-3-2-5, 1-3-2-6, 1-3-4-2, 1-3-4-5, 1-3-4-6, 1-3-5-2, 1-3-5-4, 1-3-5-6, 1-3-6-2, 1-3-6-4, 1-3-6-5, 1-4-2-3, 1-4-2-5, 1-4-2-6, 1-4-3-2, 1-4-3-5, 1-4-3-6, 1-4-5-2, 1-4-5-3, 1-4-5-6, 1-4-6-2, 1-4-6-3, 1-4-6-5, 1-5-2-3, 1-5-2-4, 1-5-2-6, 1-5-3-2, 1-5-3-4, 1-5-3-6, 1-5-4-2, 1-5-4-3, 1-5-4-6, 1-5-6-2, 1-5-6-3, 1-5-6-4, 1-6-2-3, 1-6-2-4, 1-6-2-5, 1-6-3-2, 1-6-3-4, 1-6-3-5, 1-6-4-2, 1-6-4-3, 1-6-4-5, 1-6-5-2, 1-6-5-3, 1-6-5-4, 2-1-3-4, 2-1-3-5, 2-1-3-6, 2-1-4-3, 2-1-4-5, 2-1-4-6, 2-1-5-3, 2-1-5-4, 2-1-5-6, 2-1-6-3, 2-1-6-4, 2-1-6-5, 2-3-1-4, 2-3-1-5, 2-3-1-6, 2-3-4-1, 2-3-4-5, 2-3-4-6, 2-3-5-1, 2-3-5-4, 2-3-5-6, 2-3-6-1, 2-3-6-4, 2-3-6-5, 2-4-1-3, 2-4-1-5, 2-4-1-6, 2-4-3-1, 2-4-3-5, 2-4-3-6, 2-4-5-1, 2-4-5-3, 2-4-5-6, 2-4-6-1, 2-4-6-3, 2-4-6-5, 2-5-1-3, 2-5-1-4, 2-5-1-6, 2-5-3-1, 2-5-3-4, 2-5-3-6, 2-5-4-1, 2-5-4-3, 2-5-4-6, 2-5-6-1, 2-5-6-3, 2-5-6-4, 2-6-1-3, 2-6-1-4, 2-6-1-5, 2-6-3-1, 2-6-3-4, 2-6-3-5, 2-6-4-1, 2-6-4-3, 2-6-4-5, 2-6-5-1, 2-6-5-3, 2-6-5-4, 3-1-2-4, 3-1-2-5, 3-1-2-6, 3-1-4-2, 3-1-4-5, 3-1-4-6, 3-1-5-2, 3-1-5-4, 3-1-5-6, 3-1-6-2, 3-1-6-4, 3-1-6-5, 3-2-1-4, 3-2-1-5, 3-2-1-6, 3-2-4-1, 3-2-4-5, 3-2-4-6, 3-2-5-1, 3-2-5-4, 3-2-5-6, 3-2-6-1, 3-2-6-4, 3-2-6-5, 3-4-1-2, 3-4-1-5, 3-4-1-6, 3-4-2-1, 3-4-2-5, 3-4-2-6, 3-4-5-1, 3-4-5-2, 3-4-5-6, 3-4-6-1, 3-4-6-2, 3-4-6-5, 3-5-1-2, 3-5-1-4, 3-5-1-6, 3-5-2-1, 3-5-2-4, 3-5-2-6, 3-5-4-1, 3-5-4-2, 3-5-4-6, 3-5-6-1, 3-5-6-2, 3-5-6-4, 3-6-1-2, 3-6-1-4, 3-6-1-5, 3-6-2-1, 3-6-2-4, 3-6-2-5, 3-6-4-1, 3-6-4-2, 3-6-4-5, 3-6-5-1, 3-6-5-2, 3-6-5-4, 4-1-2-3, 4-1-2-5, 4-1-2-6, 4-1-3-2, 4-1-3-5, 4-1-3-6, 4-1-5-2, 4-1-5-3, 4-1-5-6, 4-1-6-2, 4-1-6-3, 4-1-6-5, 4-2-1-3, 4-2-1-5, 4-2-1-6, 4-2-3-1, 4-2-3-5, 4-2-3-6, 4-2-5-1, 4-2-5-3, 4-2-5-6, 4-2-6-1, 4-2-6-3, 4-2-6-5, 4-3-1-2, 4-3-1-5, 4-3-1-6, 4-3-2-1, 4-3-2-5, 4-3-2-6, 4-3-5-1, 4-3-5-2, 4-3-5-6, 4-3-6-1, 4-3-6-2, 4-3-6-5, 4-5-1-2, 4-5-1-3, 4-5-1-6, 4-5-2-1, 4-5-2-3, 4-5-2-6, 4-5-3-1, 4-5-3-2, 4-5-3-6, 4-5-6-1, 4-5-6-2, 4-5-6-3, 4-6-1-2, 4-6-1-3, 4-6-1-5, 4-6-2-1, 4-6-2-3, 4-6-2-5, 4-6-3-1, 4-6-3-2, 4-6-3-5, 4-6-5-1, 4-6-5-2, 4-6-5-3, 5-1-2-3, 5-1-2-4, 5-1-2-6, 5-1-3-2, 5-1-3-4, 5-1-3-6, 5-1-4-2, 5-1-4-3, 5-1-4-6, 5-1-6-2, 5-1-6-3, 5-1-6-4, 5-2-1-3, 5-2-1-4, 5-2-1-6, 5-2-3-1, 5-2-3-4, 5-2-3-6, 5-2-4-1, 5-2-4-3, 5-2-4-6, 5-2-6-1, 5-2-6-3, 5-2-6-4, 5-3-1-2, 5-3-1-4, 5-3-1-6, 5-3-2-1, 5-3-2-4, 5-3-2-6, 5-3-4-1, 5-3-4-2, 5-3-4-6, 5-3-6-1, 5-3-6-2, 5-3-6-4, 5-4-1-2, 5-4-1-3, 5-4-1-6, 5-4-2-1, 5-4-2-3, 5-4-2-6, 5-4-3-1, 5-4-3-2, 5-4-3-6, 5-4-6-1, 5-4-6-2, 5-4-6-3, 5-6-1-2, 5-6-1-3, 5-6-1-4, 5-6-2-1, 5-6-2-3, 5-6-2-4, 5-6-3-1, 5-6-3-2, 5-6-3-4, 5-6-4-1, 5-6-4-2, 5-6-4-3, 6-1-2-3, 6-1-2-4, 6-1-2-5, 6-1-3-2, 6-1-3-4, 6-1-3-5, 6-1-4-2, 6-1-4-3, 6-1-4-5, 6-1-5-2, 6-1-5-3, 6-1-5-4, 6-2-1-3, 6-2-1-4, 6-2-1-5, 6-2-3-1, 6-2-3-4, 6-2-3-5, 6-2-4-1, 6-2-4-3, 6-2-4-5, 6-2-5-1, 6-2-5-3, 6-2-5-4, 6-3-1-2, 6-3-1-4, 6-3-1-5, 6-3-2-1, 6-3-2-4, 6-3-2-5, 6-3-4-1, 6-3-4-2, 6-3-4-5, 6-3-5-1, 6-3-5-2, 6-3-5-4, 6-4-1-2, 6-4-1-3, 6-4-1-5, 6-4-2-1, 6-4-2-3, 6-4-2-5, 6-4-3-1, 6-4-3-2, 6-4-3-5, 6-4-5-1, 6-4-5-2, 6-4-5-3, 6-5-1-2, 6-5-1-3, 6-5-1-4, 6-5-2-1, 6-5-2-3, 6-5-2-4, 6-5-3-1, 6-5-3-2, 6-5-3-4, 6-5-4-1, 6-5-4-2, 6-5-4-3,
LibreOffice allows Python scripting, so the code can be added to Calc or Base by including it in a Python-UNO macro.
I'm having trouble with saving/updating a value to my database table after the Httpresponse is created and am looking for any tips, help, pointers, etc. I am passing a pdf object from my database to the browser, which works perfectly when the updating code is not in the model. With the code as below, I get a Django Unicode Decode Error. The exception states : "'utf8' codec can't decode bytes in position 564-565: invalid data." The odd thing is that this error does not occur when I am not trying to update the pdf_printed field (meaning no decoding error occurs normally, I get the pdf object to display without this problem), so wondering if those two methods are somehow clashing... seems like the obj.save may be the issue. Again, thanks for any insight to this issue!
I should also add that the update code manages to update the field; it just doesn't display the pdf object.
from django.contrib import admin
from django.contrib.auth.models import User
from django.pdf.models import ABC
from django.http import HttpResponse
class ABCAdmin(admin.ModelAdmin):
actions = ['print_selected_pdf']
def get_user(self):
return '%s'%(self.user.username)
def create_pdf(self, queryset):
response = HttpResponse(mimetype="application/pdf")
response['Content-Disposition'] = 'attachment; filename=form.pdf'
for obj in queryset:
response.write(obj.form)
#update the pdf_printed to true
obj.pdf_printed=True
obj.save()
return response
def print_selected_pdf(self, request, queryset):
# prints the pdfs for those that are selected,
# regardless if the pdf_printed field is true or false
qs = queryset.filter(pdf_printed__exact=0)
return self.create_pdf(qs)
print_selected_pdf.short_description = "Print PDF"
admin.site.register(ABC, ABCAdmin)
Traceback:
Environment:
Request Method: POST
Request URL: http://127.0.0.1:8000/admin/pdf/abc/
Django Version: 1.1
Python Version: 2.5.2
Installed Applications:
['django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.admin',
'djangostuff.pdf']
Installed Middleware:
('django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware')
Traceback:
File "/usr/lib/python2.5/site-packages/django/core/handlers/base.py" in get_response
92. response = callback(request, *callback_args, **callback_kwargs)
File "/usr/lib/python2.5/site-packages/django/contrib/admin/options.py" in wrapper
226. return self.admin_site.admin_view(view)(*args, **kwargs)
File "/usr/lib/python2.5/site-packages/django/views/decorators/cache.py" in _wrapped_view_func
44. response = view_func(request, *args, **kwargs)
File "/usr/lib/python2.5/site-packages/django/contrib/admin/sites.py" in inner
186. return view(request, *args, **kwargs)
File "/usr/lib/python2.5/site-packages/django/contrib/admin/options.py" in changelist_view
912. response = self.response_action(request, queryset=cl.get_query_set())
File "/usr/lib/python2.5/site-packages/django/contrib/admin/options.py" in response_action
694. response = func(self, request, queryset.filter(pk__in=selected))
File "/home/user/django/djangostuff/../djangostuff/pdf/admin.py" in print_selected_pdf
50. return self.create_pdf(qs)
File "/home/user/django/djangostuff/../djangostuff/pdf/admin.py" in create_pdf
43. obj.save()
File "/usr/lib/python2.5/site-packages/django/db/models/base.py" in save
410. self.save_base(force_insert=force_insert, force_update=force_update)
File "/usr/lib/python2.5/site-packages/django/db/models/base.py" in save_base
474. rows = manager.filter(pk=pk_val)._update(values)
File "/usr/lib/python2.5/site-packages/django/db/models/query.py" in _update
444. return query.execute_sql(None)
File "/usr/lib/python2.5/site-packages/django/db/models/sql/subqueries.py" in execute_sql
120. cursor = super(UpdateQuery, self).execute_sql(result_type)
File "/usr/lib/python2.5/site-packages/django/db/models/sql/query.py" in execute_sql
2369. cursor.execute(sql, params)
File "/usr/lib/python2.5/site-packages/django/db/backends/util.py" in execute
22. sql = self.db.ops.last_executed_query(self.cursor, sql, params)
File "/usr/lib/python2.5/site-packages/django/db/backends/__init__.py" in last_executed_query
213. u_params = tuple([to_unicode(val) for val in params])
File "/usr/lib/python2.5/site-packages/django/db/backends/__init__.py" in <lambda>
211. to_unicode = lambda s: force_unicode(s, strings_only=True)
File "/usr/lib/python2.5/site-packages/django/utils/encoding.py" in force_unicode
92. raise DjangoUnicodeDecodeError(s, *e.args)
Exception Type: DjangoUnicodeDecodeError at /admin/pdf/abc/
Exception Value: 'utf8' codec can't decode bytes in position 564-565: invalid data. You passed in '%PDF-1.3\n1 0 obj\n<<\n/Kids [ 4 0 R 5 0 R ]\n/Type /Pages\n/Count 2\n>>\nendobj\n2 0 obj\n<<\n/Producer (Python PDF Library \\055 http\\072\\057\\057pybrary\\056net\\057pyPdf\\057)\n>>\nendobj\n3 0 obj\n<<\n/Type /Catalog\n/Pages 1 0 R\n>>\nendobj\n4 0 obj\n<<\n/Parent 1 0 R\n/Contents 6 0 R\n/Resources 7 0 R\n/Rotate 0\n/CropBox [ 0 0 612 792 ]\n/MediaBox [ 0 0 612 792 ]\n/Type /Page\n>>\nendobj\n5 0 obj\n<<\n/Parent 1 0 R\n/Contents 17 0 R\n/Resources 18 0 R\n/Rotate 0\n/CropBox [ 0 0 612 792 ]\n/MediaBox [ 0 0 612 792 ]\n/Type /Page\n>>\nendobj\n6 0 obj\n<<\n/Length 4167\n/Filter /FlateDecode\n>>\nstream\nh\xde\xec[[o\xe36\x16~\xcf\xaf \n\x14\x90\x8a\xb1*\x92\xbaP}Yt\xda\xed\xec\x14\xdb\xe9l\x93\xc5b1\xe9\x83b\xcb\xb1&\x8e\x94Jr\x82\xfc\xfb=\x17\xd2\x96\x14G\xee\xb4\xc5n\x84m\x06cQ\x14/\xe7;<$?\x1e\x92_\xbe9\x97\xe2\xba={}q\xf6\xe5\xc5\x85\x12R\\\xac\xcf\xa4\x0e\xb2$5"\x84\x7f.\xac\xb2\xc0(\x91\xa4:0\xe2\xe2\xf6,\x14\xd7\xf0\xffb\x89?\x0fg\xdewe\xd3v\xe2]~[\xf8\x17\x1f\xcf\xfezq&\xe9\xfb\x1bx~\x0f\x85|\x142\x08\xd3L<\x08\x19\x8a\x1f\xc4\x87\x9fC\xb1\x82O\xa58Sq\x14D"I\xd2#\x1b\xb1P*\nb|FA\x98\x88\xa68{\xfd\x05$\xfb(\xce~\x01\xc1H\x1a\'G\x92\x04&\x12\xcb[\x8aEq\x16J\x07Rl\xcf\xce\xf7)\xa5\tR\x05\xa1?\x13\xbd\x84Dg\xff#\x1b;jYF\x07lY2r\xa6\xe5\xfd=?fO`\tq\x02\xd9"2\x00\xa8k\xa1L\x18\xa4\xd1\xb4\xc5p\xf9\x90A=\xb5\x98\xe4W\x01\xf83\xd5\xff]*k\xaf*\x08\x95\xce8\x83\rk\x19$J\xc4\xa1\x0c2g\xae\x8b \x0cU\x82\xc3\xe1\x07\xef\xed\xbb\xf3\x0b\x7f\x91\x05\xda\xfb\xe9\x9f\xdf#(\x82\xd0\xdb\x1f\xdf\x9d\xfb\x8b\x18B_\t\xff\xe7\x8b\xefq\xac\x8dx\xac5\x814:\x85\xe2/\xbe\xa5bb\x85\xc5# Iqd\xfd\xe0}W7\xa2\xc8\x97\x1bQ\xafE\xe7/\xa4\x0c\x8c\xb7\xf1\xe1\xa7\x10\xebz\xeb/` \xf4\xb66\xbe~(m\xa8\xba~\x85U\xa7\x9e\xb8s\x1f\x8b\x9c\xaa\x06\x18*\x89\x13\xae\x11\xe5\x8em\x85\xa1\xe1\n\xdb\xc2\xc74\x9e(\xab\x95o\x82\xd8+\xb1$\xe9-9:\xf7S\xf8\xed\nz\x88G_\xeb \xf2j_C\xc2\x1d%o\xfc\x04\xbfl9\xc5=\xc5qx+jz[s\n[ \xe7\xadz_\xcaU/SE\x9fmZ[k\xc9\xa9\x05\xa7\xe3\x02\xca\xea\xda\x97\x18\x10\xdd\xc6!\xc8\xf9\xb9d\x91\xcb\xfb>\x9c\xae\xec\x1eI!\x0b\x15\x06Q\x94i\xb1\x90\xd0\xf6*\xb5zI"\xd4\x0b6I\x94\xb1b\x1e|\x19B\xee\x08t\xd9m\xb0d\xc4\x9d\xc2\xef\x8e_:\xb1\xad9\xd4\x02\x0c\x8d\x15\x91\xfc\x14u\xcd\x0fT\x18\xccu\x9eM\xb8\xa3\xfc\r\x14\x0c\x12\x89+z\x03\xa1\x13x\xdb\xdagE\x91\x80\x1f\xa4\x03\xfc\x14\'l\xf6CFz-8\xd1\x92\x13\xb1l\xb7~\x0c\xf2\x96\xdc\xf4`\x812\x8a\x0f\xc6\xa6\x9c\xb1A$A\x04\x1d\x1aH.vU\xdb\x15\xf9\xea\xd1W\x06mh\xdd\xd4\xb7b\xb9\xa9\xeb\xb6t)\xea\n\xdb\x02\xb4\x8df\xb9\xb1\xe1\xbb\x82\xeb\x81\xea\x8d2{\x13C\x05\xb2*\xe3\x88\xebi\xa0\x90\x04\x05\x8d\xe0Q\xf8\x19\xfcV h\xe6u9\xbd\x80\xb6\xf0\x8d\xbf\x88;\xfaT#\xd8\x0c\xda\x99\x9f]K-\xc1\xfd\t\xac&S=`\\#\x04R\xdb\x8b\xea\n;O\x02Bn\xfc\x85\xc6\xa2E\xbb\xcc\xb7\x1cU\x10#6\x06h\x9d\xd4d\x86\x8c!M\xd3\xbd\xa6\xb4-P\xdb^\x12~..\xbd\xaa\x16\xcb\xbaZ\x97\xab\x82t]AO\x83\xb6]\xf2\xdb\xa5/\xba\x1a\x08O\xf8\xb9\x8f-\x0e\xc9\x97\x14_\xdf\xdem\x8b\xae\xd8\xba&\xc9\xb4\xd6{U\x85N\xf0Pq=`/\xd8y\xa1\xb3\xc4\xa0\x8a\x1a\x0c+\xf3\xaa\xb5\x8fz\xc3jA\x15\xa8:\x89\n\xb9\xf4):\x10o}\x99Qg\xc2WaK\xe0\xac;\xb1\xe2\x80\xa8\xe8QsV\xec\x8bX\xd2\x8e^\x1b\xca\xc8\xbf\x05\xd5\xcb\x89;\x1c\xc3Ro\xebdb\x04#\xe02\xa9\x18\xc1\x07\xcf\x15O\x9d\x10\x8b\xc4N\x18RccA\xd8\t\xf1{\xc9Eu\xae\xa8\xb2\x12\xbf\xecl\x8e\xb6+k\xae\xf0\x15\xb6\x15\x14\xd1\xb1,.qneBYW\xb6\xd9\xa0\x0f+\xb0\xe2q\xb3EV\x9d0\xe0\x91:\xcb\xdb\xfc\x9al\x0f\x04\xc8hl\x01\x88bS?\x88%\xb5\xd2\xbe55\xb7&\xf6j\x1a\xe3p\x98\xa1\xf7\x9dx\xa8w\xb6\xf1`\xb2P&;\x98\x9dt\xad\xa7l\x7fZ\x89\xabB\x94k,\x02\x1a~\'68z\x1a\x88\x06U\xf2\xd0\x85C\x11\xb4\x89\x8b\xd8PD!\xf2%%\xb4\xb1%\xea!\xf6\xeeK\xfbN\xc5\x05h\xbc0\xa2\xbc\xf5\x95\x04U\xae\xfdA\x9b\xa8,I\x9eZ\x95\x94{\xab\xc2y\x03$\xaa\xb8\xbdX\xc1\xb7>\xe0f\xedB\xd7\xb0M\x9d\xd0\x80#\xa9Z\x9aw\xe8\xbbm\x04\xf1\x00\x19c\x97\xe7\x86\x06al\x16\xd7\xea\xb6\x9dW\xd6(j\xd1\xb7\x0f\x1e}\xa1O\xc0*\x80Z\xce\xe0$J\x12K\xed\x86\x0c\x0c\xa1\xc8P \x0emlB)\x0f\xaf8\xa3\xa2\t\xd1`_7>\x0cA\x9b\x9a>nW\xdc\xe9j\xdb\x94\nS\xd6\xa2\xad\x81Q&^?\x16\x07M64(\x03\x8b\xc8\xb1\x0eL%l\xc9\x9czG\xc5/)\xb7\xa2\xdc\x18\xbb\x86\xc8\x92\xeb\xc2,\x1c\x89\x89\xa8\x00,\xaa\x85v\xc1)kMp\x15\x8c\xd3Q\xa8{C\xb0\x9b~\xad\xc5\xecgT\xb0\xb3\xa2\xb1\xf3\xdd\xaeEs\xc5\xc9\xe0\x1a\x15\xd7\xda\xe8vwwW70\x10\xbay]\xc6=&\xe1\xc6viK\x0ex\xb0\xc3\xd1!\x81\x96A{I\xb1:\x18\xe2q\x1c#\xcb&\xf3L\xbd{\xb0\xbf\xca~\xc0n\t\x1d\x12\xed\x0e\x90W\xad\xedn`-\xd0\xa5F\xbd-rX\xec\xa0\x9b_\xd5;\xa6,`\xe3y\xd5\x02\xa0\x12\x85\xc0I\x8d\x0c\xfa\xda\'\x89\xb02\x8d}\xcbr\x1cL\xb1\xe1\x14\x80U\x94\xb6\x08\xfb\xa5\xb8u\x9d/\xcez\x8aD\xfa\xc2}\xcf\xf1\x98W4q(4\xe5\x94fG\xc4\x93\xfb8\xfa\xb7\xfc\x02\rd\xc8\xac\x17\xf0{\x83Uc\xc2\r\xe5\x02\x1d\xacn\xcb\xaal\xbb&\xef\xea&\xa0Ja%\x12\xa4:\x02\xca\x87,\xd0\x00\x17\x84uG$\xe2(\x0c\xb4\x884\x10D\\\x83\xacG\xcb\xe9c$\x12\x87\x0e\xa1\xa3\x04\xb3X\x169\x00\xc1\x18$6\x9a\xc2\xb95\x08\x82\x07\xd0\x03\xf6)\xb0*\xe6|8\xb3\xdf\x08~\x05\xeb\xa4\xf1\x04\xc3\xbb\n\x07\x98\x88\x86\x13M\xac\x01\xbfa\xd7\xa0\xaf-\xbf\xff\xc5!\xc2\xb5\xd5a\xb9\x14\xc3H*\xb4\xc2i\xb0\xcf\x8c\x15\xae\xba\x16`\xbd\x89\x80^\x07\xc1\x18\x92Q\x08\xba\xa9\xc1\'GKZ\x8fqj\x0e\x87\x98B\xdae\x1a\xc5\x9b}\x01\x87\x1fHC\x85\xd3KhS\x86\x94\xf9\xea\x0b&\xe3\x07\xd2|L\xa31\xad\x005\x10\xf8\xf4\x88\x83\x02&\xe1\xc3B\xf2\x00V\x86P\xa9z\x99p\x8f\x81\x94!\x18\x8c\x19\xa2\xf4dx\x1c\x1b\xb6\xe4\x9c\xb0a\x0b\x8e\xb1\xa9g\xb0efV\xd8\x14\xd8\xd9\x13l\xfa86\x05\x83Bdf\x84\r\xecLF#l\xd13\xd8\xb2h^\xd8\xc0\xce\x9e`\x8b\x8fc\xd3\x91\n\xe2\x17:t\x1e\x9d\x82\xc0\xce\xd4\x08Z\xf2\x0c\xb4,\x9c\x1740\xb31\xb4\xf48\xb4H\x9bYA\x8b\xc0\xca\xc6\xd0\xcc3\xd0\x0c\xf0\xbc\x19!\x03#S\xa3\x19\xdc\xcb\x8eC\x8b\x91\x80\xce\x07Z\x0cF\xa6\xe2,{2q3-\x99\xdey\x01\xa6\tB%\ndK0\xab\xf7m\xde=q\x8b\'\x19\xf2\xc9\x04\x17~F\xa0\x13C\x8f\xb7QT\x8c\x9f&R(i\x02sH\x91F\xb8\xd12\xe5X\xb7\x82I\xdc\x12\xfa\x9d\xfb\x02\xa0\x81\xc4j \t\xd28Q\x9c\xd3\x86S\x1c\xa8\xe2,A\xcd;\xdd}i5p\x10\xc7\xa4A\xf6\xc7HsL\x06\tKA\x9d\xf4\xa48"\x81\x8cHY\xbfS\x86?z\xcf\xe5`]`B\xb0\x1ad\xd3t\xe1\x14\x9d\x9f"\x85,\xe4\xcd\xa6\x95\x94[\xc6)\xbb\xf4\xbe\xd8\x14\xe2k\xf64/a\xed\x9b\xe2J\x0c\x97\xcb%,!\x13\xef\x9e\xfd\xa9\xa5u\x97\x94E\xbbh\xef\x8ae\xb9.\x97\xe2u\xce\x1f\xb7\xf6Y-\x0b\xf1\rfF\x7f\x14\xc7\xacmY\xab\x02?^z\xfc\xfa5\'zm\x13_\xfav\x81~\xbet%R\xdd\xc5~U\x06z\x7f\x18\x18g\x1c\x07\x19\x0c\x94\x19\x02\xeb)Gc+BY\xd8N\x02 A\x07Kl\xd7\x8f1\x06\x97\x956\x11\x05y\\\xc0\x10d\xd2\x82\xd3-\\\xd6\x05\xe5\xa5\xd2\x16\xe8n\xa14<\x1elz\x8d\xb4#?\x82\x19\xb6\xd2\x13A\xd4^\x10h\x10\xae\x1e\x02{Q\xa2h/\x0b\x04\xf7\xc2`\xd8\xe5\x9f\x90\xa6\x05[P\x81\x8c\xcdHK\xd0\xbd!c\x04\xf4\x14\x1e{\xe9\x16lU\xf6\xd17\xb7\x85L\x03\x05_\xf4!1z\x9f\xd0_\xaa\xf0\xd1O\x0bc\xb4"\x88YrH\x9d\xa2\xfab\x1c6\xfbI\xb9\x0c.\xa2\'ELP\xa4\xb1\xc6\xfc\xcb\x99R\xbc^3\x19\xf6B\xdc\n\x14\xd460>\xfdKT\xa7\x17\x89.\x7f\xa6p\x9b\x87\xc6\x92\xfd\x12\xf1\x9d\xed\xcf\xbfb\xad\xa9\xd0[\xd1/\x06\xbaM\xa6\xad\xc3%S\xd6\xfd\xf1#\xfa-\xd0\x11\x8b\xbb#\xbc\'R\xde\xf8\x8b\x8c72\x16\x86\xb60\xd0\xa9\x11\x05\x19\xf9;\xd0\xadT\xb6\xfe"5\xb8S\xf4\xaciK\x18\x83\x90\x94\xc2C\'\xff\x13\xdb\x9e\x9a\xeb\x8c\xc4\n\x86\xaaQ\xbc5\xf6\x1d\x80\xcf`\xf8(\xb7[\xdc\xc2Yhr\x0c-A\x15\xec\xcfCGY\x03\xfa0\xb4\xe1\xc1\xb1\xdb\xc2\x06P/\n\xd3\x93\x12M\xe2\xb9\x0f\xa4B\xdc\xa6\x00\x15*t\x10\x95.)\xab\x10\x86\x8b0K\xc0\xba\xc0d\x94\xdc\xbb\x8b\xf6.Q\xeb.z\xbf-r\xda\xdah\x0b\xf6U\xd1K\x03\xe3\x9d\xf1\x04\xbf\xa0\xef\x08\x87#\xc3[p\x92\x9cc\x9c\x87\\G\xb1\x87\x8e\xeb\x18?t5:\xea\xc4\xd5\xf0\xb3\xa8\xd7n\x83$U\xb2\xef\xabK\xdc\xf6\xc2\xc1\r\xa8\x0c\xed\x13\xa13p\xd7\x88\xfc\x8a\\\x80\xe4\xcd\x8ah\xec\xa5\xb7\x8e\xdfl\xeaW\xa0\x01\xac}g\xf7i"O\\m9\xe1\xae\x10u\x03o\xf9\xf2\x06t\x7f\x13\xf4\x9d?\xec\xcbR)\xf9\x0b\xd0\x97\x05\x1d\xf678\xb3\xd0\x97\xd2\xdf\x11\r\xa5\x9bG\xac\xd7Y\x917\x0b\xc5\xb2\xde,i]\xc7\x99G;1\xa9w#vw\xe8\xc8\xa5m\x1f\x121e\xafu\xf8\xc4\xa3/\xed\xae\xdc\xaa~#\xe7\xa4A\x9f"\xab~\xc3\x81B\xb4]\x8e\x9b}^\xd3\x0e|]\xee,\xca\xd8\xe9\x85\x07\x05\xf4\x1c\x9d^*\xcd\xa0k~\xaa\xd3\xebE\xc2\x9dpz\rP\x9epz\xcd\x07\x1b;\xbd\x86\xd8\xa6\x9d^\xb3\xc1f\x9d^Cl\xd3N\xaf\xf9`c\xa7\xd7\x10\xdb\xb4\xd3k>\xd8\xd8\xe95\xc46\xed\xf4\x9a\r6vz\r\xa1M;\xbd\xe6\x03\x8d\x9c^Ch\xd3N\xaf\xd9#c\xa7\xd7\x10\xda\xa4\xd3k>\xc8\xd8\xe95\x846\xe9\xf4\x9a\r\xb4\xbd\xd3k<q\xefi\xc9`+U\xa1\x0bB\xb9\xadT\x85\x1c\xf4S\xd8\xa7\x8a5N6\x87\xadTi\xdc\t\x02\xb7\x1d\xad\x89~&\xbc\x99zE\x87\xa5b\xafZ\x89\xfa\x9e\xceZ\x14\xb4\x19\xddp\xb4\xe0\x83\x1a\xf0\xf5\xae\\\xd2\x87\x1b>\xaa\xc1\xfc\x1dF\x868;vh\xcf\x92\xd2\xdd\x1d\x12~\xdc`\x16-\x1fSp\xa7\xf0J\xf6\xa3\xd8\xefwE#\xd6\x96\x08\xc3\xca\x07wpo\x89\xc0\xa6tDi\xf4\xa9\xe2\xf8\x0e\x97\x11\x0b+\xa6X\xee\x0f\xff\xd9\x9a\x8a\x8e\xf2\xa1\xcc\xf6x`]7S\x9b\xbdJ\xa7A\x92\xcc\x91\xf7\xe2\xb9\x1c\xf3\xe9\xc4\xf7%\xe2\x9d"\xbe\x03\x98\xa7\x98\xefl\xc0Y\xe6;\x04w\x82\xfa\xce\x05\x9c\xa3\xbeCp\'\xb8\xefl\xc0Y\xee;\x04w\x82\xfc\xce\x06\x9c%\xbfCp\'\xd8\xef\\\xc0Y\xf6;\xc4v\x82\xfe\xce\x06\x1b\xd3\xdf!\xb6\x13\xfcw.\xd8,\xff\x1db\x9b&\xc0\xb3\x81f\t\xf0\x10\xdb4\x03\x9e\x0b\xb6\x03\x03\x1e\xcf\xe0\x03\x82\xc2\xfcW\xa6f\xcf\x7f\x93\xdfB\x80\xf1T<\xf9\\\x0f\x1eX{\x9aP\xba\xe3\xc8\x11\x10H:\x07\xaa\xf1~B\xc0Nix#I\xb1{mp\xa7M\xe3m\x11H\xbb\xdc\xf0\xf9]b\x94\x11\xf9\xa3!\xb6aZ\x0b\x03\xa5w\xeb\'t"\x11b\xc9\xd1\x9c\xb8\x87XRdEg\x16S\xc7\x9be\xa0L\xda;\xa7\xafG\xa7_\x91\xd8f\xc0X\xed\x03\xeb\xd9\x14[\xf6\xe7\xb2\x08\x18\xd9\x89\xe2\xb1\x10[*Z\x12oW\xde\xbdK6\xc5te\xa6\xe6\xc9t%n\x16}:\xd3}\x91x\'\x98\xee\x10\xe6\t\xa6;\x1fp\xcctG\xe0\xa6\x99\xeel\xc0Y\xa6;\x027\xcdt\xe7\x03\x8e\x99\xee\x08\xdc4\xd3\x9d\x0f8f\xba#p\xd3Lw6\xe0\x98\xe9\x8e\xb0M3\xdd\xf9`#\xa6;\xc26\xcdtg\x83\x8d\x99\xee\x08\xdb$\xd3\x9d\x0f4f\xba#l\x93Lw6\xd8\xf6L\xf7\xc9\x0c~\xdc\xd9+5\xcd\xf7\xb1\x06\xaa\x18\t\xa0\xbc\x9fv\xd4#&q\xa0\xa2!\xd7=\\\x9d\xb1\xa7\xd6br\xf7\xe2\xad\xa9 `\xcfh\xd0v9\xfa{+\xf1X\xef\x1a\xbe\x01\xd4\x95w]]\xb4\x02?pT\xe1\xae\xd0\xe1\x15\xec#W\xfb\xec\x15V\xbc\x92\xbdF\x12\x8c\x17\xc4\xf0\xfeP\x83\xb7\xcb\xf0"n\nE(\xba$\\\xf2u\xbd\xca\xc7\x0b\xc0"\xbf\xaa\xef\x0br+S\xfdbS\xe4\xabI\xb6\x1ae\xa8\xcb\x19\xb2\xd5(\x0e\xe2O\'\xab/\x11\xee\x14Y\xed\xa3<\xc5Ug\x83\xcdr\xd5\x01\xb6\x13Tu.\xd8\x1cU\x1d`;\xc1Tg\x83\xcd2\xd5\x01\xb6\x13Du6\xd8,Q\x1d`;\xc1S\xe7\x82\xcd\xf2\xd4\x01\xb4\x134u6\xd0\x98\xa6\x0e\xa0\x9d`\xa9s\x81fY\xea\x00\xda4I\x9d\r2KR\x07\xd0\xa69\xea\\\xa0\x1d8\xeah\xe2\x1e\xd0\x92X\xc6x\xcf\x06\xf8)(#\xc1\xe3\xf5J\xe3E\x98\x1e=M\x9e\xbf\xab\x13\xcb\x8c\xbc\xb7\xd1\xc0\xd33\xbe\xac\x83\xe6\x0e\xa9\xa4"2\xbb\x00\xa1\xe82\x8eQ\xf6\xc8\xed\xeb/N\x13a\x15I0\xc14\x0b\xfa\xd7\xc7\xa5\xde\x9fy\xb0\x17\xc8\xdf\xfbR\xf3\xe9\x03\xf8\xcd\x97>\x1e\x9b\x96t\xe8ZJ\xbeB\xae\xbd\xb2\xc2#\x0e\x9eh;?\xf6(xC\x89\x1a\x8c\xdc\xec\x83\xcc\x8b\xf1N\x80\xd2:\x15P?\x0c\xb6\xe9\x9e\x1f\xefO0\xdb\x9a\x85\xb8\xf4~\xa8+<\xcc\x80\x8e\xe3K_\xd0\x1f\x15\x02\xfa\x8f\x8d=?\x11\xba\xf3\xbc\x89\xcdw\xe9}\x9b?B}.\x07g\x812L\xa2{||\x7f\xb88u\xf5\xd1\xdf\xa5\xf7\xef"\xf7\xf1D}s\xe9S\xce\x1ec=v\xbb*\xa1k\xe3I\x12H\xe3.\xc0D\xda\xc9d\x97\x12\x9f\xfd\xcd\xdeYy\xe0\xa7X\xe2Y\x0c0\x11tJ\xa3+\xbd\\\xf1kQu"o8\xae#\x96\xcf\xd1\xa2\xdb\xe4\x1d\xbc\xf2\xdbN\xd8bJX&d\xdev+\x9c\x9c\xae\xbd\xe3 \x8c\xdd\xf1plL}\xe0\xd0U\xddYsB\x8a\xa2Ar:\xd0\x0fv\x07\xa6\nM2\xb0\xd4\t\xdc\n\x96P\xd0\xcd\x86\xc0Q\x97\x0c\xdc\xeat\x0b\x9a\x8cq}\x83v\xd2\x02"X\xbe$\xee\x1d\x960W\xf96\xc7k;x\xb4\x9c#d`\x9dao\xd9\x14\xed\xef\x12Y\xb3(\x96\xb8\x85#;\x07R\xa31\xe2\xbd\x88]\xc5qm\x07K"\x0e>\xa2\x92"o\xc3o\x05-\xd9\x82 \xf8l\xac\xaac]\x03d\x84\x95H\x86\xe4tx\xc5\xe3}\xd1\xb4\xb0\xfa\xfb\xa9\xb8\xab\x9b\xae\xac\xae\xbf\xea\xf5\xcc\xf1\xe56\x1e\xa8\xf0N\xc6\xbc\x96`x\x84_\x99\xc1\xf2\xd8\xe1~(\xbb\x8dx\xdd\xe4e%\xdeV\x1fw\xcd\xe33\xb4\x9e(\xd4\x8b\x84~t\xc9\x92\xd1\xf5\xc01\xe6\xf3\xf2\xba\xc2;h9t\xc9\x1f\xbbM\xd1\x1c\'UR\xbe\xd8v>J\xaad|\x0cju\xbd-\xc4\xfb\xa6^\x17m[\xd6U\xbe=\xceE\xd0\xd1\xa2\xe6\x036\x8a4\xdeH}j\xce=\xa0\xe2\x9b\xbaj\x8b\xaa\xdd\xb5=\xc8\xca\xd0eM\xbc\xf2\x9a\xe0,\x8e\x1e\'j\xe7#N\xa6\x10\x06\'76\xda\xb0\xcb\x9e\xeeG\x10\xac4\xbf. K\xbd\x16\xea\xbfG\x17\x94D\xff_\n\x84E\xe3\x11G\xe4\x07\xfcK\xe5K\xf1\xc6\xdd\x0ec\x90)^\xe1AB\x81\xeb\\\xfb\x80\x94\xe7P\xf0\x9bc\xd7\xffPAP\xba\t\xcc\xc0\xc9(S\xbe\x9f\xc7O\xf7\x867\xf0\xe2\x84s\x9c\x94\'\xce\xc8\xd4>U\xa0\x18/rE"\x85Y\xa9g\xa0,A\xb8\x97h\xd1\x17\x89U\xc4\x17\x08Ok\x08~\x01\xeb\xaf\x17\x08,\x10O\x03\x11\xde\xde\xc5\xc4\xbd#\x8b\xe7ttZ \xab\xa2O\x95\xc8\xaah$\xd2XE\x03\x81\xb0\r\xb0\x953#\x12\x98\x1b\x15~M\x93\'\x02I\xa0v\xa1\xb2\xca_`JC\xaafs>\xb7\xe6l\x9e\xef7\xb1\xc6J\xd38F\\`\xce\xf0\xd3\x10\x8cP|/\x90\xf9\x82^\x1e \xfb\x0f\x82-=\xccT\x08\xdaRafM\xfe?\x02\x0c\x00.\xce\xb1\x1d\n\nendstream\nendobj\n7 0 obj\n<<\n/ExtGState <<\n/GS1 8 0 R\n>>\n/Font <<\n/TT8 9 0 R\n/TT2 11 0 R\n/TT4 13 0 R\n/TT6 15 0 R\n>>\n/ProcSet [ /PDF /Text ]\n>>\nendobj\n8 0 obj\n<<\n/OPM 1\n/Type /ExtGState\n/SM 0.02000\n/OP false\n/SA false\n/op false\n>>\nendobj\n9 0 obj\n<<\n/FirstChar 48\n/Widths [ 600 0 600 600 0 600 600 0 600 600 ]\n/Encoding /WinAnsiEncoding\n/Type /Font\n/BaseFont /CourierNewPSMT\n/LastChar 57\n/FontDescriptor 10 0 R\n/Subtype /TrueType\n>>\nendobj\n10 0 obj\n<<\n/FontBBox [ -21 -680 638 1021 ]\n/StemV 42\n/Descent -300\n/XHeight -578\n/Flags 34\n/FontStretch /Normal\n/Ascent 832\n/FontName /CourierNewPSMT\n/Type /FontDescriptor\n/FontWeight 400\n/ItalicAngle 0\n/FontFamily (Courier New)\n/CapHeight 578\n>>\nendobj\n11 0 obj\n<<\n/FirstChar 32\n/Widths [ 250 0 0 0 0 0 0 0 333 333 0 0 0 333 250 0 500 500 500 500 500 500 500 500 500 500 333 0 0 0 0 500 0 722 667 722 722 0 611 0 0 389 0 0 667 944 722 778 611 0 722 556 667 722 0 0 0 722 0 0 0 0 0 0 0 500 556 444 556 444 333 500 556 278 0 556 278 833 556 500 556 0 444 389 333 556 500 722 0 500 ]\n/Encoding /WinAnsiEncoding\n/Type /Font\n/BaseFont /TimesNewRomanPS-BoldMT\n/LastChar 121\n/FontDescriptor 12 0 R\n/Subtype /TrueType\n>>\nendobj\n12 0 obj\n<<\n/FontBBox [ -558 -307 2000 1026 ]\n/StemV 136\n/Descent -216\n/XHeight -546\n/Flags 34\n/FontStretch /Normal\n/Ascent 891\n/FontName /TimesNewRomanPS-BoldMT\n/Type /FontDescriptor\n/FontWeight 700\n/ItalicAngle 0\n/FontFamily (Times New Roman)\n/CapHeight 656\n>>\nendobj\n13 0 obj\n<<\n/FirstChar 32\n/Widths [ 250 0 408 0 0 833 0 0 333 333 0 0 250 0 250 0 500 500 500 500 500 500 500 500 500 500 278 0 0 0 0 0 0 0 667 667 0 0 556 0 722 333 0 0 0 0 722 722 556 0 0 556 611 0 0 0 0 0 0 0 0 0 0 0 0 444 500 444 500 444 333 500 500 278 278 500 278 778 500 500 500 500 333 389 278 500 500 722 0 500 ]\n/Encoding /WinAnsiEncoding\n/Type /Font\n/BaseFont /TimesNewRomanPSMT\n/LastChar 121\n/FontDescriptor 14 0 R\n/Subtype /TrueType\n>>\nendobj\n14 0 obj\n<<\n/FontBBox [ -568 -307 2000 1007 ]\n/StemV 82\n/Descent -216\n/XHeight -546\n/Flags 34\n/FontStretch /Normal\n/Ascent 891\n/FontName /TimesNewRomanPSMT\n/Type /FontDescriptor\n/FontWeight 400\n/ItalicAngle 0\n/FontFamily (Times New Roman)\n/CapHeight 656\n>>\nendobj\n15 0 obj\n<<\n/FirstChar 47\n/Widths [ 278 556 556 556 556 556 556 556 556 556 556 ]\n/Encoding /WinAnsiEncoding\n/Type /Font\n/BaseFont /ArialMT\n/LastChar 57\n/FontDescriptor 16 0 R\n/Subtype /TrueType\n>>\nendobj\n16 0 obj\n<<\n/FontBBox [ -665 -325 2000 1006 ]\n/StemV 88\n/Descent -211\n/XHeight 515\n/Flags 32\n/FontStretch /Normal\n/Ascent 905\n/FontName /ArialMT\n/Type /FontDescriptor\n/FontWeight 400\n/ItalicAngle 0\n/FontFamily (Arial)\n/CapHeight 718\n>>\nendobj\n17 0 obj\n<<\n/Length 3133\n/Filter /FlateDecode\n>>\nstream\nh\xde\xd4\x9bK\x8f\xe3\xb8\x11\x80\xef\xfe\x15\xc4\x02\x01\xa4\x00\xe6\x8a\x14II\xa7\x00\xc1\x06\x13\x0c\xb0#\x82\xf1m\xb0\x07\x8f[\xfd\xd8\xf1\xb4:\xb6;\x8d\xfe\xf7\xa9b\x95l\x8bvS\x9e[\n\x03\xd8zR\xf5U\xf1\xf1y\xec\xd6M\xed\xd4\xc3\xe2\xd7O_\x8cz\xd8/\xeaJ\xb7N\x05[\xe9\xe0\x94w\x95\xae\x95\xb3\xba\x0bj\xd7/\xee\x17\x7f_-~]\xad\xac2ju\xbf0VW\xb6\xeeT\x05\xff\xc6\xed\xdaj\xdb\xaa\xe0\xad\x0eV\xad~,*hz\xa9\xab\xcaz\xb5\xda,`\xc3\xa9\xd5\xdb\xe2k\xa1\x1a\xad\x94\xd6\xe5\xb2)\xf4\xfe\xad\\\xb6\xba+\xfa\xfeE\x1d\x1e{u_.M\xad\xdbb[.\x9d6\xc50\xec\xfeV\xfe\xb1\xfa\xbc\xf8\xc7j\x01!r\x84\xbeq\xda\xc6\x00\xbb$\xc0LXU\xd0\xa6\xad\xccy`\xb8\x17\x033\x96#kcd\x1a\x82\n\xda\x17\xeb\xedw5\xbc\x1e\xf6Ow}\xd9\xe9P\xc4\x08\x1f\x87\xd2C\xc0\xaf\xfb^\xc5\xc8\xe01\xa6\xf6\xf8\xc8\xd5o\xb1\xd5\xba\x99\xe2\x1e\x06\xb5V\x9b\xf5N\xbd`\xab\xaeX\x97V\xd7\xc5\xee;\xed\xf5w\xf4\xae\x9e\x80\x1c2^<\xc3;\xee\xe3\xb3\xf8\xdc\xae\x0c\xc5x\xfa\xbf\xf1\xee\xfe-\xee\x9ab\xfd~\xcc\x8f\xa6br\x8al\xa3\x9b\xab5\xfc8E\xde\x03\xe4Y\x8a0Cn\xccP\xe0\x0cu\x94\xa1\x87\xbe\x8c\xcf?\x94X&\xf5\xf4|\x18b\x1c^\xbb\xda\xd9S2\xc6\xfb\xbd\xe7\xfb\x87\x1d\xa6T\rXh\x0f$\x94\x9b+Ev\xad\x1d\t\xc2\xed\x08\xc6M\x10\xaa1|~\xbc\x81LV\xa5)\x8ee6&V$`\x87\x0bP\xe2\xef\nw6#\xd5#\xda;x\x1d\xe0\xf2\xfd\x1e\xc2|Y\xc7 ;\xed\xad1g\xe5\x0e#"\xa7\x08\xaa\x05)\x89\xe5\xad\xb1l^[,*\xee=\xa8-\xed\x0f\xe5\x12FIqP\xd09\x0e\x8ft\xb2\x8f\xf7\xa9\x1f\xa5\x81\xb2\xd2y\xbez\x1b\x8bm\x8b\xeb\xa5v5\xdcm\x7f\xb2\xd6.\xb4p\xf5\xf9X\x181\xac\x1dS\x05\xb5\x84Wx9e\xcbBdx\x18"j \xa0\xef\xea\xf5\x05*\ny\x82\xc0\xef\x867\x1c\xd2\x80ZS]wk`q\xc5\x0b\x1d\xb8R\xe2\xba\xedt\xdb\xfe\xe4#v\xd6\xe86\x9c\xf7Q\xcb\x91W\xdd\xb1\xc8\x10\x9b-\r\xbcj\x9cO`4\x1d\xab\x8d\x04\x81r\x8aC\xeb;t]\xec\x82\xc8\xd0\x15C\x1c\xf8\xb6\x88\xe3\xbd+\xee\xa0\x18\x10\xe1\xf4\x8e-\x8fO\xbe\xf4\x11+\xe5\x0b\xbaaG3\x02t\x9e\xda7\xa7.b\xc6\x19\xc1sn\xfb\xb2-\xd4K?\xbclq\xf6\xabi\x7fW\xe2\x93\x96\xd0\xe5^\x9e\xe8\xf0\x1d\x9f~Wq\x964|\x1af\xa5\x97\xf5\xfe\xa0\xde\x87\xd7\xeb=\xa2v\x90\xf0\xf6\'{D\xddx\x1cigy\x1d{Du\x1a<\xd0\'k\xc8k\xe0.\xb1\xde\x95qR\xea\xcb8\x94\xbf\xbdB\xc1\xb1\xc3\xbe\xf4t\xfc\x0eg\xb5\x00]\x02b\xc0y\xf0\xdb{lbD\x0fpcL\x18\xcc\xf8\xaeqg\xb3F\xc7\x8fn\x1a\x9e6\xd6{\x18\n\x05"+\xaac\x8d\xc9\xa8\xa1\xd9-\xcd\xd5\xdf\xb1G\xc6)\x9a6v\xc3+m<#\xbc\xa6xLN\xf7\xb1\xb4M\xd2\xc866\xed\xaf\xf5U\xdb\xb5\xc7\x9c\xde>\x1f\xd5uu\x96\xd4\x886\xf6V_sV]\xec\xa3-\xf6)\x8d\xd14\xd8i[z\xc3\xbd=.\x85uq\x80\x15r\x88\xf3HL%\xce\xa34\x87\xfa\xe2>\xce\x0f\x90\x9e5\x9fW=\xdf\xb4Y\xc7)\xa4%N\x0b7\xee\xd4\xd8G\x9d7g\x13u5\xa6\x9c\xbbh\x1c\xed\xd0\xc2c\x89\xbd\xfd\t\xb3\x16\xf3\x13;{\xac\xc3z\x07\xdd\x16\x9a\x86\x15q{\xf7\xf4\x1c\x9bmu\xe8\x9a\xe6\xca\xe4\xe8\xb8\x90\x0f\xccP\xd3\xb2\xb8[?\xf1\xdc\xc6S]2_^\xef\xdf\x16\x15#\xfcd\xff\xb6-\x14\xba\x9dLyGd\x7f\x9a\xf2L\xe1K=.\x10\xfb\x98\xf4x4Nk\x812O\xd8t\xfc>\xe6\xc9\xe2;\xce\x88P\x02H\xfe&^\xb1\xc6\x86\xb6k^\x19\xb1\x93\xb7\xf6\xac\x93\xdbn\xea\t\xbb\xd8\xb3]\xcc\xf9R\xc7\x15\xbf\xa3\x9c\xbb\x98\xf3GLM\x80\xa5\xa3\xc6f\xe9\xe4\xdd\xf9\x95\xcfq\x872\xec)\xd6\x97\xf5n\xd3s\x0b{\xb5\x7f\xa5\x13\x9bG\x18\x07\xeb\x03\x85\x15tU\xd7\xe7\xeb\x19F\xf55\x0e5\xbc\xba)`}~~\xa6\xcd\xe1\x80\xc5\xc6\xe6\x02>:\x9e\x1d\xf8\\\\\xc9z\xaahGk\x97\x1bc\x0b1\xb6\xe6\xac\x9e\xa7\x81\x15\x82\xd1\xcdQ7k(\xd9-6\xd7\xc1\xc8\x98H\xa6k\xc7q\xc5\xab#\xd0\xf8d\x98\x95\x14oh\x1a\x12\xbc\x17\x07\x08\x8c$\x1c2\re\x12\xbbv\xc4i\xe2XR\x9bG\xda\x8c}\x14G\xc1N\x1d\xaf\x86\x18\xd7\xe3\xf9(\xad\xb8v\x0fq\xc9\xd9)n{\xc0.\xd3\x16\xb4\x86\xf4\x90\x00\xd0\xa5\xc7\xb1\xadgz\xde\xb5\x8c\xd8\n\xdc\xed4\xd5\xdc\x98\x12\xd8\xd2M\x98\n\xae\x1b\x87_0\xdc\xc3\x03O6m\x9cl\xd0\xddb>L\xc1{\xd8\x05C\xb1\xde\xf2Z\x89\xfe\x8b\x900\\#T\x83\xf5\x8c+$\x1d\xed9_5\xf9+\xde\xb2\x89\xc3\xe2]\x9d\xae\x8f\x87\xef\xa2\xb2\x1a\x9a\x88X\xb7,\xcd\xda\\\x8cf:\xedV\xea\x13\xbc\x7f\x86\x8f\x1b\x7f*\xa3\xab\xa6So\xcaT\xeaw\xf5\xf5\x8fJ\xdd\xc1\xa9\'\xb5\xf8\x8f2\x94\t\x10?\r\xb3\x19\xa8\x9fvj\xf3#\x1e\xc44\xc0\xdc\xe0\x14$\x1a\x12\x01+\x14l\x82\xbc\xd0\xd6f\x81K+\xef\xe0\x14\x04}\x90\xae\xa6\xed\n\xaf\xa0\xcd%\x1do\x8f\r\x9c^\xe0\x9a\xd8x\xdc\xa9\xf8\xca*\xde\xfc\xed\xaf\x8b\x7f\xf3g&\xf7\xf1g&\xef\xb0\xd4\xa1\x89\nw.\xad\x15\x16\xac\xa8\xfeR\xae\xfe\x1c3r\xa25\x15\xcc\x01\xee\xff\x12\xf7\x1a\xa4\x81\xcf^)da\xaa\xebhXIAhP\xc0\x0b4\xfb\x01Z\xd7IB\xb3\x95\xbdD\xab\xaf\xa3Y\x07\x8b\x9f\x1c2_\xe1G\x88\x04\xcd}\x80\xd6yIh\xa0\xa9\x97h\xfe:\x1a~N\xb0A\x0c[\xed\xc0mm\xca\x16>`\xeb\x8c(\xb6\xce]ak\xae\xb39X\xea\x05\xb19T\xf4\x0b\xb6\xf6\x03\xb6\xb6\xc1\xab\xc4\xb0u\x15~\xaaH\xd8\xba\xebl\xbe\xf6\x92\xd8<xbwe\xdd\xfe#JX\xc1\xa0ov\x12\xe0H\xbc\xa0"\xed\x89mF\xb7\x84\xa0\xb1nM\xd1ftK\n\x1a\xe9\xd6\x14mF\xb7\x84\xa0\xb1nM\xd1\xf2\xba%\x85\x8cuk\x8a\x96\xd7-)h\xac[S\xb4\x19\xdd\x12\xc26\xea\xd6\x94mF\xb7\xa4\xb0\xb1nM\xd9ftK\x08\xdb\xa8[S\xb6\x19\xdd\x92\xc2\xc6\xba5e\x9b\xd1-)F\xc2\xba\x95\xae\xdbY\xdd\xf2\x1d\xa8\x89\x18\xdd\xf2m\x87\xff\x99y\x9bnIA#\xddJ\xd0\xf2\xba%\x06-\xeaV\x82\x96\xd7-)h\xa4[\tZV\xb7\xc4\x90\x91n%hY\xdd\x12\x83F\xba\x95\xa0\xe5uK\n\x1b\xebV\xc2\x96\xd7-1l\xa4[\t[^\xb7\xa4\xb0\xb1n%ly\xdd\x12\xc3F\xba\x95\xb0\xe5uK\x8c\x91\x90n]\xac\xdby\xdd\xc2A*G\xb7\xa0k\xb6\xf6\xf4\x95\xf0\x9cp\t\x81c\xe1J\xe1f\x94K\n\x1c)W\n7#]B\xe0X\xbaR\xb8\xbcvIac\xedJ\xe1\xf2\xe2%\x05\x8e\xc5+\x85\x9bQ/!t\xa3z\xa5t3\xf2%\x85\x8e\xe5+\xa5\x9b\xd1/!t\xa3~\xa5t3\x02&\x85\x8e\x05,\xa5\x9bQ0)\x96\xc2\nv\xb9\x92\xe7%\xac2\xdaY1\x16\xe6\xba\x06\x7f\x9fw\xa3\x83Ia#\tK\xd8f\x14L\x0c[t\xb0\x84m\xc6\xc0\xa4\xb0\x91\x82%ly\x01\x13\x83F\x06\x96\xb0\xe5\xfdK\x0c\x1b\tX\xc26\xa3_R\xe0\xd8\xbf\x12\xb8\x19\xfb\x12\x03G\xfa\x95\xc0\xcd\xc8\x97\x148\xb6\xaf\x04n\xc6\xbd\xc4\xc0\x91|%p3\xea%\xc6M\xc8\xbd.\x16\xf0\xacy9\xef\xb5\tr\xcc\x0b\xa2\xaen5/1ll^S\xb6\xbcy\xc9a#\xf3\x9a\xb2\xe5\xcdK\x0c\x1b\x9b\xd7\x94-k^r\xd0\xd8\xbc\xa6lY\xf3\x92\xc3\xc6\xe65e\xcb\x9b\x97\x18\xb8\xd1\xbc\xa6py\xf3\x92\x03\xc7\xe65\x85\xcb\x9b\x97\x18\xb8\xd1\xbc\xa6py\xf3\x92\x03\xc7\xe65\x85\xcb\x9b\x97\x1c7a\xf3J\x17\xf0\xbcyU\x8d\xa0\xdfy\xb9*\xfeQ\xf6\x8d\xe2%\x04\x8d\xbdk\x8a6\xe3]R\xd0H\xbb\xa6h3\xda%\x04\x8d\xadk\x8a\x96\xb7.)d,]S\xb4\xbctIAc\xe7\x9a\xa2\xcd8\x97\x10\xb6Q\xb9\xa6l3\xca%\x85\x8d\x8dk\xca6c\\B\xd8F\xe1\x9a\xb2\xcd\x08\x97\x146\xf6\xad)\xdb\x8coI1\x12\xd6\xadt\xdd\xce\xeaV\x1d\x8c\xf6bt\xab\xf6\r\xfe\xa7\xe3m\xba%\x05\x8dt+A\xcb\xeb\x96\x18\xb4\xa8[\tZ^\xb7\xa4\xa0\x91n%hY\xdd\x12CF\xba\x95\xa0euK\x0c\x1a\xe9V\x82\x96\xd7-)l\xac[\t[^\xb7\xc4\xb0\x91n%ly\xdd\x92\xc2\xc6\xba\x95\xb0\xe5uK\x0c\x1b\xe9V\xc2\x96\xd7-1FB\xbau\xb1n\xe7u\xcb\x04\xfc\x11\xbe\x18\xdf2F\xb7\xb7~\xaf(\x86\x8d\x85k\xca6#\\b\xd8\xc8\xb8\xa6l3\xc6%\x85\x8d\x95k\xca\x96W.1h\xec\\S\xb6\xbcs\x89ac\xe9\x9a\xb2\xcdH\x97\x14\xb8\xd1\xba\xa6p3\xd6%\x06\x8e\xb5k\n7\xa3]R\xe0F\xef\x9a\xc2\xcdx\x97\x188\x16\xaf)\xdc\x8cx\x89q\x136\xaft\x01\xcf\x9a\x97\r\x9dn\xe4\xfc\xa2\xcb\x06\xafC{\xf3_4\x8a\xa1#\xf7\xba\xa0\xcb\xdb\x97\x1c\xbah_\x17ty\xff\x12CG\xfeuA\x97509pd`\x17tY\x07\x93CG\x0evA\x97\xb701xla\x17xy\x0f\x93\x83G\x1ev\x81\x97711xlb\x17xy\x17\x93\x83G.v\x81\x97\xb719\xbeB6veI\xcf\xfb\x98\x85\xc7\xb4r|\xcc\x1a\xed\xaa\xdb}L\n\x1d\xfbXJ7\xe3cb\xe8\xc8\xc7R\xba\x19\x1f\x93B\xc7>\x96\xd2\xe5}L\x0c\x1c\xfbXJ\x97\xf711t\xecc)\xdd\x8c\x8fI\xc1\x1b},\xc5\x9b\xf111x\xecc)\xde\x8c\x8fI\xc1\x1b},\xc5\x9b\xf111x\xecc)\xde\x8c\x8f\x89\xf1\x15\xf6\xb1\xcb%\x9d\x94\xc5\xd4\xba\x0b`4\xf1\x1e\xde\xae\x8d\x0eV5pK\x15\xbf\xca\\\xea\xaa\xf2N R\n>>\n/ProcSet [ /PDF /Text ]\n>>\nendobj\nxref\n0 19\n0000000000 65535 f \n0000000009 00000 n \n0000000074 00000 n \n0000000175 00000 n \n0000000224 00000 n \n0000000365 00000 n \n0000000508 00000 n \n0000004748 00000 n \n0000004880 00000 n \n0000004967 00000 n \n0000005168 00000 n \n0000005423 00000 n \n0000005890 00000 n \n0000006160 00000 n \n0000006616 00000 n \n0000006880 00000 n \n0000007085 00000 n \n0000007328 00000 n \n0000010535 00000 n \ntrailer\n<<\n/Size 19\n/Root 3 0 R\n/Info 2 0 R\n>>\nstartxref\n10668\n%%EOF\n' (<type 'str'>)
Currently Django doesn't support storing binary data in the database. I guess you inserted your data some other way. Anytime you call save() on your model containing binary data, you'll get a UnicodeDecodeError exception.
Anyway, as you state in your comment, using QuerySet.update works (since the value of this field isn't submitted to the database). If your model has the auto-generated id AutoField, you can try something like this as a workaround:
ABC.objects.filter(pk=obj.pk).update(pdf_printed='1')