first comit
This commit is contained in:
commit
5031e5f2b6
18
.VSCodeCounter/details.md
Normal file
18
.VSCodeCounter/details.md
Normal file
@ -0,0 +1,18 @@
|
||||
# Details
|
||||
|
||||
Date : 2020-07-21 11:53:50
|
||||
|
||||
Directory /home/mreenen/projecten/labvoeding front
|
||||
|
||||
Total : 3 files, 116 codes, 20 comments, 34 blanks, all 170 lines
|
||||
|
||||
[summary](results.md)
|
||||
|
||||
## Files
|
||||
| filename | language | code | comment | blank | total |
|
||||
| :--- | :--- | ---: | ---: | ---: | ---: |
|
||||
| [corner radius simulation.html](/corner radius simulation.html) | HTML | 61 | 0 | 8 | 69 |
|
||||
| [dat.gui.min.js](/dat.gui.min.js) | JavaScript | 1 | 12 | 2 | 15 |
|
||||
| [front.py](/front.py) | Python | 54 | 8 | 24 | 86 |
|
||||
|
||||
[summary](results.md)
|
||||
5
.VSCodeCounter/results.csv
Normal file
5
.VSCodeCounter/results.csv
Normal file
@ -0,0 +1,5 @@
|
||||
"filename", "language", "HTML", "Python", "JavaScript", "comment", "blank", "total"
|
||||
"/home/mreenen/projecten/labvoeding front/corner radius simulation.html", "HTML", 61, 0, 0, 0, 8, 69
|
||||
"/home/mreenen/projecten/labvoeding front/dat.gui.min.js", "JavaScript", 0, 0, 1, 12, 2, 15
|
||||
"/home/mreenen/projecten/labvoeding front/front.py", "Python", 0, 54, 0, 8, 24, 86
|
||||
"Total", "-", 61, 54, 1, 20, 34, 170
|
||||
|
23
.VSCodeCounter/results.md
Normal file
23
.VSCodeCounter/results.md
Normal file
@ -0,0 +1,23 @@
|
||||
# Summary
|
||||
|
||||
Date : 2020-07-21 11:53:50
|
||||
|
||||
Directory /home/mreenen/projecten/labvoeding front
|
||||
|
||||
Total : 3 files, 116 codes, 20 comments, 34 blanks, all 170 lines
|
||||
|
||||
[details](details.md)
|
||||
|
||||
## Languages
|
||||
| language | files | code | comment | blank | total |
|
||||
| :--- | ---: | ---: | ---: | ---: | ---: |
|
||||
| HTML | 1 | 61 | 0 | 8 | 69 |
|
||||
| Python | 1 | 54 | 8 | 24 | 86 |
|
||||
| JavaScript | 1 | 1 | 12 | 2 | 15 |
|
||||
|
||||
## Directories
|
||||
| path | files | code | comment | blank | total |
|
||||
| :--- | ---: | ---: | ---: | ---: | ---: |
|
||||
| . | 3 | 116 | 20 | 34 | 170 |
|
||||
|
||||
[details](details.md)
|
||||
29
.VSCodeCounter/results.txt
Normal file
29
.VSCodeCounter/results.txt
Normal file
@ -0,0 +1,29 @@
|
||||
Date : 2020-07-21 11:53:50
|
||||
Directory : /home/mreenen/projecten/labvoeding front
|
||||
Total : 3 files, 116 codes, 20 comments, 34 blanks, all 170 lines
|
||||
|
||||
Languages
|
||||
+------------+------------+------------+------------+------------+------------+
|
||||
| language | files | code | comment | blank | total |
|
||||
+------------+------------+------------+------------+------------+------------+
|
||||
| HTML | 1 | 61 | 0 | 8 | 69 |
|
||||
| Python | 1 | 54 | 8 | 24 | 86 |
|
||||
| JavaScript | 1 | 1 | 12 | 2 | 15 |
|
||||
+------------+------------+------------+------------+------------+------------+
|
||||
|
||||
Directories
|
||||
+------------------------------------------------------------------------+------------+------------+------------+------------+------------+
|
||||
| path | files | code | comment | blank | total |
|
||||
+------------------------------------------------------------------------+------------+------------+------------+------------+------------+
|
||||
| . | 3 | 116 | 20 | 34 | 170 |
|
||||
+------------------------------------------------------------------------+------------+------------+------------+------------+------------+
|
||||
|
||||
Files
|
||||
+------------------------------------------------------------------------+------------+------------+------------+------------+------------+
|
||||
| filename | language | code | comment | blank | total |
|
||||
+------------------------------------------------------------------------+------------+------------+------------+------------+------------+
|
||||
| /home/mreenen/projecten/labvoeding front/corner radius simulation.html | HTML | 61 | 0 | 8 | 69 |
|
||||
| /home/mreenen/projecten/labvoeding front/dat.gui.min.js | JavaScript | 1 | 12 | 2 | 15 |
|
||||
| /home/mreenen/projecten/labvoeding front/front.py | Python | 54 | 8 | 24 | 86 |
|
||||
| Total | | 116 | 20 | 34 | 170 |
|
||||
+------------------------------------------------------------------------+------------+------------+------------+------------+------------+
|
||||
3
.vscode/settings.json
vendored
Normal file
3
.vscode/settings.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"python.pythonPath": "/bin/python"
|
||||
}
|
||||
BIN
__pycache__/mathobjects.cpython-37.pyc
Normal file
BIN
__pycache__/mathobjects.cpython-37.pyc
Normal file
Binary file not shown.
467
base64
Normal file
467
base64
Normal file
@ -0,0 +1,467 @@
|
||||
%!PS-Adobe-3.0
|
||||
%%Creator: (ImageMagick)
|
||||
%%Title: (base64)
|
||||
%%CreationDate: (2020-07-20T17:12:40+00:00)
|
||||
%%BoundingBox: 1043 694 1126 775
|
||||
%%HiResBoundingBox: 1043 694 1126 775
|
||||
%%DocumentData: Clean7Bit
|
||||
%%LanguageLevel: 1
|
||||
%%Orientation: Portrait
|
||||
%%PageOrder: Ascend
|
||||
%%Pages: 1
|
||||
%%EndComments
|
||||
|
||||
%%BeginDefaults
|
||||
%%EndDefaults
|
||||
|
||||
%%BeginProlog
|
||||
%
|
||||
% Display a color image. The image is displayed in color on
|
||||
% Postscript viewers or printers that support color, otherwise
|
||||
% it is displayed as grayscale.
|
||||
%
|
||||
/DirectClassPacket
|
||||
{
|
||||
%
|
||||
% Get a DirectClass packet.
|
||||
%
|
||||
% Parameters:
|
||||
% red.
|
||||
% green.
|
||||
% blue.
|
||||
% length: number of pixels minus one of this color (optional).
|
||||
%
|
||||
currentfile color_packet readhexstring pop pop
|
||||
compression 0 eq
|
||||
{
|
||||
/number_pixels 3 def
|
||||
}
|
||||
{
|
||||
currentfile byte readhexstring pop 0 get
|
||||
/number_pixels exch 1 add 3 mul def
|
||||
} ifelse
|
||||
0 3 number_pixels 1 sub
|
||||
{
|
||||
pixels exch color_packet putinterval
|
||||
} for
|
||||
pixels 0 number_pixels getinterval
|
||||
} bind def
|
||||
|
||||
/DirectClassImage
|
||||
{
|
||||
%
|
||||
% Display a DirectClass image.
|
||||
%
|
||||
systemdict /colorimage known
|
||||
{
|
||||
columns rows 8
|
||||
[
|
||||
columns 0 0
|
||||
rows neg 0 rows
|
||||
]
|
||||
{ DirectClassPacket } false 3 colorimage
|
||||
}
|
||||
{
|
||||
%
|
||||
% No colorimage operator; convert to grayscale.
|
||||
%
|
||||
columns rows 8
|
||||
[
|
||||
columns 0 0
|
||||
rows neg 0 rows
|
||||
]
|
||||
{ GrayDirectClassPacket } image
|
||||
} ifelse
|
||||
} bind def
|
||||
|
||||
/GrayDirectClassPacket
|
||||
{
|
||||
%
|
||||
% Get a DirectClass packet; convert to grayscale.
|
||||
%
|
||||
% Parameters:
|
||||
% red
|
||||
% green
|
||||
% blue
|
||||
% length: number of pixels minus one of this color (optional).
|
||||
%
|
||||
currentfile color_packet readhexstring pop pop
|
||||
color_packet 0 get 0.299 mul
|
||||
color_packet 1 get 0.587 mul add
|
||||
color_packet 2 get 0.114 mul add
|
||||
cvi
|
||||
/gray_packet exch def
|
||||
compression 0 eq
|
||||
{
|
||||
/number_pixels 1 def
|
||||
}
|
||||
{
|
||||
currentfile byte readhexstring pop 0 get
|
||||
/number_pixels exch 1 add def
|
||||
} ifelse
|
||||
0 1 number_pixels 1 sub
|
||||
{
|
||||
pixels exch gray_packet put
|
||||
} for
|
||||
pixels 0 number_pixels getinterval
|
||||
} bind def
|
||||
|
||||
/GrayPseudoClassPacket
|
||||
{
|
||||
%
|
||||
% Get a PseudoClass packet; convert to grayscale.
|
||||
%
|
||||
% Parameters:
|
||||
% index: index into the colormap.
|
||||
% length: number of pixels minus one of this color (optional).
|
||||
%
|
||||
currentfile byte readhexstring pop 0 get
|
||||
/offset exch 3 mul def
|
||||
/color_packet colormap offset 3 getinterval def
|
||||
color_packet 0 get 0.299 mul
|
||||
color_packet 1 get 0.587 mul add
|
||||
color_packet 2 get 0.114 mul add
|
||||
cvi
|
||||
/gray_packet exch def
|
||||
compression 0 eq
|
||||
{
|
||||
/number_pixels 1 def
|
||||
}
|
||||
{
|
||||
currentfile byte readhexstring pop 0 get
|
||||
/number_pixels exch 1 add def
|
||||
} ifelse
|
||||
0 1 number_pixels 1 sub
|
||||
{
|
||||
pixels exch gray_packet put
|
||||
} for
|
||||
pixels 0 number_pixels getinterval
|
||||
} bind def
|
||||
|
||||
/PseudoClassPacket
|
||||
{
|
||||
%
|
||||
% Get a PseudoClass packet.
|
||||
%
|
||||
% Parameters:
|
||||
% index: index into the colormap.
|
||||
% length: number of pixels minus one of this color (optional).
|
||||
%
|
||||
currentfile byte readhexstring pop 0 get
|
||||
/offset exch 3 mul def
|
||||
/color_packet colormap offset 3 getinterval def
|
||||
compression 0 eq
|
||||
{
|
||||
/number_pixels 3 def
|
||||
}
|
||||
{
|
||||
currentfile byte readhexstring pop 0 get
|
||||
/number_pixels exch 1 add 3 mul def
|
||||
} ifelse
|
||||
0 3 number_pixels 1 sub
|
||||
{
|
||||
pixels exch color_packet putinterval
|
||||
} for
|
||||
pixels 0 number_pixels getinterval
|
||||
} bind def
|
||||
|
||||
/PseudoClassImage
|
||||
{
|
||||
%
|
||||
% Display a PseudoClass image.
|
||||
%
|
||||
% Parameters:
|
||||
% class: 0-PseudoClass or 1-Grayscale.
|
||||
%
|
||||
currentfile buffer readline pop
|
||||
token pop /class exch def pop
|
||||
class 0 gt
|
||||
{
|
||||
currentfile buffer readline pop
|
||||
token pop /depth exch def pop
|
||||
/grays columns 8 add depth sub depth mul 8 idiv string def
|
||||
columns rows depth
|
||||
[
|
||||
columns 0 0
|
||||
rows neg 0 rows
|
||||
]
|
||||
{ currentfile grays readhexstring pop } image
|
||||
}
|
||||
{
|
||||
%
|
||||
% Parameters:
|
||||
% colors: number of colors in the colormap.
|
||||
% colormap: red, green, blue color packets.
|
||||
%
|
||||
currentfile buffer readline pop
|
||||
token pop /colors exch def pop
|
||||
/colors colors 3 mul def
|
||||
/colormap colors string def
|
||||
currentfile colormap readhexstring pop pop
|
||||
systemdict /colorimage known
|
||||
{
|
||||
columns rows 8
|
||||
[
|
||||
columns 0 0
|
||||
rows neg 0 rows
|
||||
]
|
||||
{ PseudoClassPacket } false 3 colorimage
|
||||
}
|
||||
{
|
||||
%
|
||||
% No colorimage operator; convert to grayscale.
|
||||
%
|
||||
columns rows 8
|
||||
[
|
||||
columns 0 0
|
||||
rows neg 0 rows
|
||||
]
|
||||
{ GrayPseudoClassPacket } image
|
||||
} ifelse
|
||||
} ifelse
|
||||
} bind def
|
||||
|
||||
/DisplayImage
|
||||
{
|
||||
%
|
||||
% Display a DirectClass or PseudoClass image.
|
||||
%
|
||||
% Parameters:
|
||||
% x & y translation.
|
||||
% x & y scale.
|
||||
% label pointsize.
|
||||
% image label.
|
||||
% image columns & rows.
|
||||
% class: 0-DirectClass or 1-PseudoClass.
|
||||
% compression: 0-none or 1-RunlengthEncoded.
|
||||
% hex color packets.
|
||||
%
|
||||
gsave
|
||||
/buffer 512 string def
|
||||
/byte 1 string def
|
||||
/color_packet 3 string def
|
||||
/pixels 768 string def
|
||||
|
||||
currentfile buffer readline pop
|
||||
token pop /x exch def
|
||||
token pop /y exch def pop
|
||||
x y translate
|
||||
currentfile buffer readline pop
|
||||
token pop /x exch def
|
||||
token pop /y exch def pop
|
||||
currentfile buffer readline pop
|
||||
token pop /pointsize exch def pop
|
||||
x y scale
|
||||
currentfile buffer readline pop
|
||||
token pop /columns exch def
|
||||
token pop /rows exch def pop
|
||||
currentfile buffer readline pop
|
||||
token pop /class exch def pop
|
||||
currentfile buffer readline pop
|
||||
token pop /compression exch def pop
|
||||
class 0 gt { PseudoClassImage } { DirectClassImage } ifelse
|
||||
grestore
|
||||
showpage
|
||||
} bind def
|
||||
%%EndProlog
|
||||
%%Page: 1 1
|
||||
%%PageBoundingBox: 1043 694 1126 775
|
||||
DisplayImage
|
||||
1043 694
|
||||
83 81
|
||||
12
|
||||
83 81
|
||||
1
|
||||
1
|
||||
1
|
||||
8
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
%%PageTrailer
|
||||
%%Trailer
|
||||
%%EOF
|
||||
80
corner radius simulation.html
Normal file
80
corner radius simulation.html
Normal file
@ -0,0 +1,80 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>sqare round inside corner</title>
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id='fps'></div>
|
||||
<svg viewbox="0 0 15 15">
|
||||
<rect width="10" height="10" x="0" y="0" stroke="green" stroke-width="0.1" fill="none" />
|
||||
<circle cx='0' cy='0', r='1' />
|
||||
<line y1="0" x1="5" y2="10" x2="5" stroke="red" stroke-width="0.05" />
|
||||
<line y1="0" x1="5" y2="10" x2="10" stroke="red" stroke-width="0.05" />
|
||||
<circle cx="10" cy="0" r="0.05" fill="blue" />
|
||||
</svg>
|
||||
|
||||
<script>
|
||||
|
||||
|
||||
var drow = function(){
|
||||
a.drow(a)
|
||||
}
|
||||
|
||||
class corner{
|
||||
|
||||
grow = 0.1;
|
||||
fpsSlower = 0;
|
||||
radius = 1;
|
||||
|
||||
constructor(svg){
|
||||
this.last = new Date().getTime();
|
||||
this.svg = svg;
|
||||
this.circle = svg.getElementsByTagName('circle')[0]
|
||||
this.dot = svg.getElementsByTagName('circle')[1]
|
||||
this.line = svg.getElementsByTagName('line')[0]
|
||||
this.line2 = svg.getElementsByTagName('line')[1]
|
||||
this.fps = document.getElementById('fps')
|
||||
this.drow(this)
|
||||
}
|
||||
|
||||
drow(self){
|
||||
if(typeof self != 'object'){
|
||||
self = a
|
||||
}
|
||||
requestAnimationFrame(self.drow)
|
||||
//setTimeout(self.drow, 100)
|
||||
if(self.fpsSlower == 10){
|
||||
var last = new Date().getTime()
|
||||
self.fps.innerHTML = Math.round(10*100*1000/(last - self.last))/100 + " fps"
|
||||
self.last = last
|
||||
self.fpsSlower = 0
|
||||
}
|
||||
self.fpsSlower += 1;
|
||||
self.circle.r.baseVal.value = self.radius;
|
||||
self.circle.cx.baseVal.value = self.circle.cy.baseVal.value = 10 - (Math.SQRT2/2 * self.radius);
|
||||
self.line.x1.baseVal.value = self.line.y1.baseVal.value = 10 - (Math.SQRT2/2 * self.radius);
|
||||
self.line2.x1.baseVal.value = self.line2.y1.baseVal.value = 10 - (Math.SQRT2/2 * self.radius);
|
||||
self.line.x2.baseVal.value = 10 - (self.radius * 1.414);
|
||||
self.dot.cy.baseVal.value = 10 - (self.radius * 1.414);
|
||||
|
||||
self.radius += self.grow
|
||||
if((self.radius >= 7.07 && self.grow > 0)|| (self.radius <= 0.01 && self.grow < 0))
|
||||
self.grow = -self.grow
|
||||
}
|
||||
}
|
||||
|
||||
window.onload = function() {
|
||||
a = new corner(document.getElementsByTagName('svg')[0])
|
||||
var gui = new dat.GUI();
|
||||
gui.add(a, 'radius', 0.01, 7.07).step(0.001).listen();
|
||||
gui.add(a, 'grow', 0, 4)
|
||||
};
|
||||
|
||||
</script>
|
||||
<script type="text/javascript" src="dat.gui.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
14
dat.gui.min.js
vendored
Normal file
14
dat.gui.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
94
front.py
Executable file
94
front.py
Executable file
@ -0,0 +1,94 @@
|
||||
#!/bin/python
|
||||
|
||||
import cadquery as cq
|
||||
import base64
|
||||
import subprocess
|
||||
import math
|
||||
from mathobjects import *
|
||||
|
||||
pannelSize = Vec(400, 300, 5)
|
||||
tool = 4
|
||||
|
||||
def drowOnPos(f, pos, fn):
|
||||
f = f.center(pos.x - f.plane.origin[0], pos.y - f.plane.origin[1], pos.z - f.plane.origin[2])
|
||||
return fn(f)
|
||||
|
||||
def rectWitchInsideRadius(f, w, h, r):
|
||||
cs = math.sqrt(2) * r
|
||||
f = f.center(w/2 - cs, h/2 - cs)
|
||||
f = f.threePointArc((cs, 0), (cs, -cs))
|
||||
f = f.lineTo(cs, -(h - cs))
|
||||
f = f.threePointArc((cs, -h), (0, -h))
|
||||
f = f.lineTo(-(w - 2*cs), -h)
|
||||
f = f.threePointArc((-(w-cs), -h), (-(w-cs), -(h-cs)))
|
||||
f = f.lineTo(-(w-cs), -cs)
|
||||
f = f.threePointArc((-(w-cs), 0), (-(w-2*cs), 0))
|
||||
f = f.close()
|
||||
f = f.center(-w/2 + cs, -h/2 + cs)
|
||||
return f
|
||||
|
||||
def holeWithFlets(f, r, fw):
|
||||
fl = math.sqrt(math.pow(r, 2) - math.pow(fw/2, 2))
|
||||
f = f.center(fw/2, fl/2)
|
||||
f = f.threePointArc((-fw/2, r - fl/2), (-fw, 0))
|
||||
f = f.lineTo(-fw, -fl)
|
||||
f = f.threePointArc((-fw/2, -(fl/2 + r)), (0, -fl))
|
||||
f = f.close()
|
||||
f = f.center(-fw/2, -fl/2)
|
||||
return f
|
||||
|
||||
def femailBananaConnHole(f):
|
||||
return holeWithFlets(f, 6, 10.5)
|
||||
|
||||
def LPSCut(f):
|
||||
global pannelSize, tool
|
||||
displaySize = (77, 39)
|
||||
clearence = 15
|
||||
connPoss = [displaySize[0]/3, displaySize[1]/2 + 30]
|
||||
|
||||
# display
|
||||
f = f.center(0, 10)
|
||||
f = rectWitchInsideRadius(f, displaySize[0], displaySize[1], tool/2)
|
||||
|
||||
# connectors
|
||||
f = f.center(connPoss[0], -connPoss[1])
|
||||
f = femailBananaConnHole(f)
|
||||
f = f.center(-2*connPoss[0], 0)
|
||||
f = femailBananaConnHole(f)
|
||||
|
||||
# f = f.center()
|
||||
return f
|
||||
|
||||
def LPSText(f):
|
||||
f = f.rect(95, 50)
|
||||
|
||||
|
||||
def frontPannle():
|
||||
global pannelSize
|
||||
f = cq.Workplane('XZ')
|
||||
|
||||
LPSPos = Vec(125, 0, 100)
|
||||
|
||||
f = f.rect(pannelSize.x, pannelSize.z)
|
||||
|
||||
f = drowOnPos(f, LPSPos, LPSCut)
|
||||
|
||||
f = f.extrude(pannelSize.y)
|
||||
|
||||
f = drowOnPos(f, LPSPos, LPSText)
|
||||
|
||||
return f
|
||||
|
||||
|
||||
f = frontPannle()
|
||||
|
||||
cq.exporters.exportShape(f, 'STEP', open('front.step', 'w'))
|
||||
|
||||
subprocess.run(["/usr/lib64/freecad/bin/FreeCAD", './front.step'])
|
||||
|
||||
# svg = f.toSvg().encode('ascii')
|
||||
# svg = base64.b64encode(svg)
|
||||
# url = 'data:image/svg+xml;base64,' + svg.decode('ascii')
|
||||
|
||||
# subprocess.run(["firefox", url])
|
||||
|
||||
1957
front.step
Normal file
1957
front.step
Normal file
File diff suppressed because it is too large
Load Diff
226
front.stl
Normal file
226
front.stl
Normal file
@ -0,0 +1,226 @@
|
||||
solid
|
||||
facet normal -0.000000e+00 0.000000e+00 -1.000000e+00
|
||||
outer loop
|
||||
vertex 2.000000e+02 0.000000e+00 -1.500000e+02
|
||||
vertex -2.000000e+02 -5.000000e+00 -1.500000e+02
|
||||
vertex -2.000000e+02 0.000000e+00 -1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 -0.000000e+00 -1.000000e+00
|
||||
outer loop
|
||||
vertex 2.000000e+02 0.000000e+00 -1.500000e+02
|
||||
vertex 2.000000e+02 -5.000000e+00 -1.500000e+02
|
||||
vertex -2.000000e+02 -5.000000e+00 -1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1.000000e+00 0.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 2.000000e+02 -5.000000e+00 1.500000e+02
|
||||
vertex 2.000000e+02 -5.000000e+00 -1.500000e+02
|
||||
vertex 2.000000e+02 0.000000e+00 -1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1.000000e+00 0.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 2.000000e+02 0.000000e+00 1.500000e+02
|
||||
vertex 2.000000e+02 -5.000000e+00 1.500000e+02
|
||||
vertex 2.000000e+02 0.000000e+00 -1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -0.000000e+00 0.000000e+00 1.000000e+00
|
||||
outer loop
|
||||
vertex -2.000000e+02 0.000000e+00 1.500000e+02
|
||||
vertex 2.000000e+02 -5.000000e+00 1.500000e+02
|
||||
vertex 2.000000e+02 0.000000e+00 1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 0.000000e+00 1.000000e+00
|
||||
outer loop
|
||||
vertex -2.000000e+02 0.000000e+00 1.500000e+02
|
||||
vertex -2.000000e+02 -5.000000e+00 1.500000e+02
|
||||
vertex 2.000000e+02 -5.000000e+00 1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1.000000e+00 0.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex -2.000000e+02 -5.000000e+00 -1.500000e+02
|
||||
vertex -2.000000e+02 -5.000000e+00 1.500000e+02
|
||||
vertex -2.000000e+02 0.000000e+00 1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1.000000e+00 0.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex -2.000000e+02 0.000000e+00 -1.500000e+02
|
||||
vertex -2.000000e+02 -5.000000e+00 -1.500000e+02
|
||||
vertex -2.000000e+02 0.000000e+00 1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1.000000e+00 0.000000e+00 -0.000000e+00
|
||||
outer loop
|
||||
vertex 1.080000e+02 0.000000e+00 9.600000e+01
|
||||
vertex 1.080000e+02 0.000000e+00 1.350000e+02
|
||||
vertex 1.080000e+02 -5.000000e+00 1.350000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1.000000e+00 0.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 1.080000e+02 0.000000e+00 9.600000e+01
|
||||
vertex 1.080000e+02 -5.000000e+00 1.350000e+02
|
||||
vertex 1.080000e+02 -5.000000e+00 9.600000e+01
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 0.000000e+00 -1.000000e+00
|
||||
outer loop
|
||||
vertex 1.080000e+02 -5.000000e+00 1.350000e+02
|
||||
vertex 1.850000e+02 0.000000e+00 1.350000e+02
|
||||
vertex 1.850000e+02 -5.000000e+00 1.350000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 0.000000e+00 -1.000000e+00
|
||||
outer loop
|
||||
vertex 1.080000e+02 0.000000e+00 1.350000e+02
|
||||
vertex 1.850000e+02 0.000000e+00 1.350000e+02
|
||||
vertex 1.080000e+02 -5.000000e+00 1.350000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1.000000e+00 0.000000e+00 -0.000000e+00
|
||||
outer loop
|
||||
vertex 1.850000e+02 0.000000e+00 1.350000e+02
|
||||
vertex 1.850000e+02 0.000000e+00 9.600000e+01
|
||||
vertex 1.850000e+02 -5.000000e+00 9.600000e+01
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1.000000e+00 -0.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 1.850000e+02 0.000000e+00 1.350000e+02
|
||||
vertex 1.850000e+02 -5.000000e+00 9.600000e+01
|
||||
vertex 1.850000e+02 -5.000000e+00 1.350000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 0.000000e+00 1.000000e+00
|
||||
outer loop
|
||||
vertex 1.850000e+02 -5.000000e+00 9.600000e+01
|
||||
vertex 1.080000e+02 0.000000e+00 9.600000e+01
|
||||
vertex 1.080000e+02 -5.000000e+00 9.600000e+01
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 0.000000e+00 1.000000e+00
|
||||
outer loop
|
||||
vertex 1.850000e+02 0.000000e+00 9.600000e+01
|
||||
vertex 1.080000e+02 0.000000e+00 9.600000e+01
|
||||
vertex 1.850000e+02 -5.000000e+00 9.600000e+01
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 1.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 1.080000e+02 0.000000e+00 9.600000e+01
|
||||
vertex -2.000000e+02 0.000000e+00 -1.500000e+02
|
||||
vertex -2.000000e+02 0.000000e+00 1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 1.000000e+00 -0.000000e+00
|
||||
outer loop
|
||||
vertex 1.080000e+02 0.000000e+00 9.600000e+01
|
||||
vertex -2.000000e+02 0.000000e+00 1.500000e+02
|
||||
vertex 1.080000e+02 0.000000e+00 1.350000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 1.000000e+00 -0.000000e+00
|
||||
outer loop
|
||||
vertex 1.850000e+02 0.000000e+00 1.350000e+02
|
||||
vertex 1.080000e+02 0.000000e+00 1.350000e+02
|
||||
vertex 2.000000e+02 0.000000e+00 1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 1.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 1.850000e+02 0.000000e+00 9.600000e+01
|
||||
vertex 1.850000e+02 0.000000e+00 1.350000e+02
|
||||
vertex 2.000000e+02 0.000000e+00 1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 1.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 2.000000e+02 0.000000e+00 -1.500000e+02
|
||||
vertex 1.080000e+02 0.000000e+00 9.600000e+01
|
||||
vertex 1.850000e+02 0.000000e+00 9.600000e+01
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 1.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 2.000000e+02 0.000000e+00 -1.500000e+02
|
||||
vertex -2.000000e+02 0.000000e+00 -1.500000e+02
|
||||
vertex 1.080000e+02 0.000000e+00 9.600000e+01
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 1.000000e+00 -0.000000e+00
|
||||
outer loop
|
||||
vertex 2.000000e+02 0.000000e+00 -1.500000e+02
|
||||
vertex 1.850000e+02 0.000000e+00 9.600000e+01
|
||||
vertex 2.000000e+02 0.000000e+00 1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 1.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 2.000000e+02 0.000000e+00 1.500000e+02
|
||||
vertex 1.080000e+02 0.000000e+00 1.350000e+02
|
||||
vertex -2.000000e+02 0.000000e+00 1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -0.000000e+00 -1.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 1.080000e+02 -5.000000e+00 9.600000e+01
|
||||
vertex -2.000000e+02 -5.000000e+00 1.500000e+02
|
||||
vertex -2.000000e+02 -5.000000e+00 -1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 -1.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 1.080000e+02 -5.000000e+00 9.600000e+01
|
||||
vertex 1.080000e+02 -5.000000e+00 1.350000e+02
|
||||
vertex -2.000000e+02 -5.000000e+00 1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 -1.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 1.850000e+02 -5.000000e+00 1.350000e+02
|
||||
vertex 2.000000e+02 -5.000000e+00 1.500000e+02
|
||||
vertex 1.080000e+02 -5.000000e+00 1.350000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 -1.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 1.850000e+02 -5.000000e+00 9.600000e+01
|
||||
vertex 2.000000e+02 -5.000000e+00 1.500000e+02
|
||||
vertex 1.850000e+02 -5.000000e+00 1.350000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 -1.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 2.000000e+02 -5.000000e+00 -1.500000e+02
|
||||
vertex 1.850000e+02 -5.000000e+00 9.600000e+01
|
||||
vertex 1.080000e+02 -5.000000e+00 9.600000e+01
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 -1.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 2.000000e+02 -5.000000e+00 -1.500000e+02
|
||||
vertex 1.080000e+02 -5.000000e+00 9.600000e+01
|
||||
vertex -2.000000e+02 -5.000000e+00 -1.500000e+02
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000e+00 -1.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 2.000000e+02 -5.000000e+00 -1.500000e+02
|
||||
vertex 2.000000e+02 -5.000000e+00 1.500000e+02
|
||||
vertex 1.850000e+02 -5.000000e+00 9.600000e+01
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -0.000000e+00 -1.000000e+00 0.000000e+00
|
||||
outer loop
|
||||
vertex 2.000000e+02 -5.000000e+00 1.500000e+02
|
||||
vertex -2.000000e+02 -5.000000e+00 1.500000e+02
|
||||
vertex 1.080000e+02 -5.000000e+00 1.350000e+02
|
||||
endloop
|
||||
endfacet
|
||||
endsolid
|
||||
74
lenen en rekenen.html
Normal file
74
lenen en rekenen.html
Normal file
@ -0,0 +1,74 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>sqare round inside corner</title>
|
||||
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div id=fps></div>
|
||||
<script>
|
||||
|
||||
var drow = function(){
|
||||
a.drow(a)
|
||||
}
|
||||
|
||||
class corner{
|
||||
|
||||
totaal = 21230;
|
||||
zelfBetalen = 5000;
|
||||
termijnen = 4;
|
||||
rente = 6.9;
|
||||
betalen = 500;
|
||||
|
||||
update(self){
|
||||
if(typeof self != 'object'){
|
||||
self = a
|
||||
}
|
||||
requestAnimationFrame(self.update)
|
||||
//setTimeout(self.drow, 100)
|
||||
if(self.fpsSlower == 10){
|
||||
var last = new Date().getTime()
|
||||
self.fps.innerHTML = Math.round(10*100*1000/(last - self.last))/100 + " fps"
|
||||
self.last = last
|
||||
self.fpsSlower = 0
|
||||
}
|
||||
self.fpsSlower += 1;
|
||||
|
||||
self.teLenen = self.totaal - self.zelfBetalen
|
||||
self.renteB = 0
|
||||
nogBetalen = self.teLenen
|
||||
for(var i=0; i<self.termijnen*12; i++){
|
||||
self.renteB += nogBetalen * self.rente / 100
|
||||
nogBetalen
|
||||
}
|
||||
self.bedragPM = (self.teLenen + self.renteB) / (self.termijnen * 12)
|
||||
self.kwijt = (self.betalen) * (self.termijnen * 12)
|
||||
self.verschil = self.kwijt - (self.teLenen + self.renteB)
|
||||
self.werkelijkeRente = ((self.verschil / self.teLenen))*100
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
window.onload = function() {
|
||||
a = new corner()
|
||||
a.update()
|
||||
var gui = new dat.GUI();
|
||||
gui.add(a, 'totaal', 1000, 30000);
|
||||
gui.add(a, 'zelfBetalen', 0, 10000);
|
||||
gui.add(a, 'termijnen', 1, 10);
|
||||
gui.add(a, 'betalen');
|
||||
gui.add(a, 'teLenen').listen();
|
||||
gui.add(a, 'renteB').listen();
|
||||
gui.add(a, 'bedragPM').listen();
|
||||
gui.add(a, 'kwijt').listen();
|
||||
gui.add(a, 'verschil').listen();
|
||||
gui.add(a, 'werkelijkeRente').listen();
|
||||
};
|
||||
|
||||
</script>
|
||||
<script type="text/javascript" src="dat.gui.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
33
mathTest.py
Executable file
33
mathTest.py
Executable file
@ -0,0 +1,33 @@
|
||||
#!/bin/python
|
||||
import mathobjects as mo
|
||||
|
||||
# a = mo.Const(5)
|
||||
# b = mo.Const(10)
|
||||
|
||||
# c = mo.Var('c')
|
||||
|
||||
# f = a*(b//(a**(b/a-mo.Sin(5))))-b+2 == c-b
|
||||
# # f = a + b == c + b
|
||||
|
||||
# print(f)
|
||||
|
||||
# # f = f.simplify()
|
||||
|
||||
# print(f)
|
||||
|
||||
# y = f.solve({"c": 2})
|
||||
|
||||
# print(y)
|
||||
|
||||
k = mo.Vec(5, 6, 7)
|
||||
|
||||
print(str(k))
|
||||
|
||||
k[1] = 3
|
||||
|
||||
print(str(k))
|
||||
print(str(k[2]))
|
||||
|
||||
|
||||
# print("a is b: " + str(a is b))
|
||||
# print("a is not b: " + str(a is not b))
|
||||
728
mathobjects.py
Executable file
728
mathobjects.py
Executable file
@ -0,0 +1,728 @@
|
||||
import math
|
||||
|
||||
__all__ = [
|
||||
# value types
|
||||
'Const',
|
||||
'Var',
|
||||
# math functions
|
||||
'Add',
|
||||
'Div',
|
||||
'Round',
|
||||
'Pow',
|
||||
'Mod',
|
||||
'Mul',
|
||||
'Neg',
|
||||
'Sub',
|
||||
'Lt',
|
||||
'Le',
|
||||
'Eql',
|
||||
'NEql',
|
||||
'Ge',
|
||||
'Gt',
|
||||
'Sin',
|
||||
'Sinh',
|
||||
'Cos',
|
||||
'Cosh',
|
||||
'Tan',
|
||||
'Tanh',
|
||||
# other types
|
||||
'Vec'
|
||||
]
|
||||
|
||||
"""
|
||||
bracketLevel:
|
||||
0: never
|
||||
1: add, sub
|
||||
2: mul, div
|
||||
3: always
|
||||
"""
|
||||
def addBrackets(f, bl):
|
||||
s = str(f)
|
||||
if ( (bl >= 1 and isinstance(f, (Add, Sub)))
|
||||
or (bl >= 2 and isinstance(f, (Mul, Div)))
|
||||
or (bl >= 3 and not isinstance(f, (Const, Var)))):
|
||||
s = "(" + s + ")"
|
||||
return s
|
||||
|
||||
# =================================================================
|
||||
# == function =====================================================
|
||||
# =================================================================
|
||||
|
||||
class Func:
|
||||
def __init__(self, left, right):
|
||||
if isinstance(left, (int, float)):
|
||||
self.left = Const(left)
|
||||
else:
|
||||
self.left = left
|
||||
if isinstance(right, (int, float)):
|
||||
self.right = Const(right)
|
||||
else:
|
||||
self.right = right
|
||||
|
||||
def solve(self, vars):
|
||||
l = self.left.solve(vars)
|
||||
r = self.right.solve(vars)
|
||||
val = self.fn(l, r)
|
||||
print("solve(): " + str(self.copy()(l, r)) + ' = ' + str(val))
|
||||
return val
|
||||
# return self.fn(self.left.solve(vars), self.right.solve(vars))
|
||||
|
||||
def simplify(self):
|
||||
left = self.left.simplify()
|
||||
right = self.right.simplify()
|
||||
if isinstance(left, Const) and isinstance(right, Const):
|
||||
return Const(self.solve({}))
|
||||
else:
|
||||
return self.copy()(left, right)
|
||||
|
||||
def __add__(self, other): # self + other
|
||||
return Add(self, other)
|
||||
def __truediv__(self, other): # self / other
|
||||
return Div(self, other)
|
||||
def __floordiv__(self, other): # self // other
|
||||
return Round(Div(self, other))
|
||||
def __pow__(self, other): # self ** other
|
||||
return Pow(self, other)
|
||||
def __mod__(self, other): # self % other
|
||||
return Mod(self, other)
|
||||
def __mul__(self, other): # self * other
|
||||
return Mul(self, other)
|
||||
def __neg__(self): # -self
|
||||
return Neg(self)
|
||||
def __sub__(self, other): # self - other
|
||||
return Sub(self, other)
|
||||
def __lt__(self, other): # self < other
|
||||
return Lt(self, other)
|
||||
def __le__(self, other): # self <= other
|
||||
return Le(self, other)
|
||||
def __eq__(self, other): # self == other
|
||||
return Eql(self, other)
|
||||
def __ne__(self, other): # self != other
|
||||
return NEql(self, other)
|
||||
def __ge__(self, other): # self >= other
|
||||
return Ge(self, other)
|
||||
def __gt__(self, other): # self > other
|
||||
return Gt(self, other)
|
||||
|
||||
def __str__ (self):
|
||||
s = addBrackets(self.left, self.bracketLevel)
|
||||
s += ' ' + self.symbol + ' '
|
||||
s += addBrackets(self.right, self.bracketLevel)
|
||||
return s
|
||||
|
||||
|
||||
# =================================================================
|
||||
# == Const ========================================================
|
||||
# =================================================================
|
||||
|
||||
class Const(Func):
|
||||
def __init__(self, value):
|
||||
self.value = value
|
||||
|
||||
def solve(self, vars):
|
||||
return self.value
|
||||
|
||||
def copy(self):
|
||||
return Const
|
||||
|
||||
def simplify(self):
|
||||
return self
|
||||
|
||||
def __str__(self):
|
||||
return str(self.value)
|
||||
|
||||
# =================================================================
|
||||
# == Var ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Var(Func):
|
||||
def __init__ (self, name):
|
||||
self.name = name
|
||||
|
||||
def solve(self, vars):
|
||||
return vars[self.name]
|
||||
|
||||
def copy(self):
|
||||
return Var
|
||||
|
||||
def simplify(self):
|
||||
return self
|
||||
|
||||
def __str__(self):
|
||||
return str(self.name)
|
||||
|
||||
# =================================================================
|
||||
# == Add ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Add(Func):
|
||||
symbol = '+'
|
||||
bracketLevel = 0
|
||||
|
||||
def fn(self, a, b):
|
||||
return a + b
|
||||
|
||||
def copy(self):
|
||||
return Add
|
||||
|
||||
# =================================================================
|
||||
# == Div ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Div(Func):
|
||||
symbol = '/'
|
||||
bracketLevel = 1
|
||||
|
||||
def fn(self, a, b):
|
||||
return a / b
|
||||
|
||||
def copy(self):
|
||||
return Div
|
||||
|
||||
# =================================================================
|
||||
# == Round ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Round(Func):
|
||||
def __init__(self, function, p=0):
|
||||
if isinstance(function, (int, float)):
|
||||
self.function = Const(function)
|
||||
else:
|
||||
self.function = function
|
||||
self.p = 10**p
|
||||
|
||||
def solve(self, vars):
|
||||
anser = self.function.solve(vars)
|
||||
anser = float(int(anser*self.p + 0.5)) / self.p
|
||||
return anser
|
||||
|
||||
def copy(self):
|
||||
return Round
|
||||
|
||||
def simplify(self):
|
||||
f = self.function.simplify()
|
||||
if isinstance(f, Const):
|
||||
return Const(self.solve({}))
|
||||
else:
|
||||
return Round(f)
|
||||
|
||||
def __str__(self):
|
||||
return "round(" + str(self.function) + ")"
|
||||
|
||||
# =================================================================
|
||||
# == Pow ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Pow(Func):
|
||||
symbol = '^'
|
||||
bracketLevel = 3
|
||||
|
||||
def fn(self, a, b):
|
||||
return a ** b
|
||||
|
||||
def copy(self):
|
||||
return Pow
|
||||
|
||||
# =================================================================
|
||||
# == Mod ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Mod(Func):
|
||||
symbol = '%'
|
||||
bracketLevel = 3
|
||||
|
||||
def fn(self, a, b):
|
||||
return a % b
|
||||
|
||||
def copy(self):
|
||||
return Mod
|
||||
|
||||
# =================================================================
|
||||
# == Mul ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Mul(Func):
|
||||
symbol = '*'
|
||||
bracketLevel = 1
|
||||
|
||||
def fn(self, a, b):
|
||||
return a * b
|
||||
|
||||
def copy(self):
|
||||
return Mul
|
||||
|
||||
# =================================================================
|
||||
# == Neg ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Neg(Func):
|
||||
def __init__(self, function):
|
||||
if isinstance(function, (int, float)):
|
||||
self.function = Const(function)
|
||||
else:
|
||||
self.function = function
|
||||
|
||||
def solve(self, vars):
|
||||
return -self.function.solve(vars)
|
||||
|
||||
def copy(self):
|
||||
return Neg
|
||||
|
||||
def simplify(self):
|
||||
f = self.function.simplify()
|
||||
if isinstance(f, Const):
|
||||
return Const(self.solve({}))
|
||||
else:
|
||||
return Round(f)
|
||||
|
||||
def __str__(self):
|
||||
return "-" + addBrackets(self.function, 3) + ")"
|
||||
|
||||
# =================================================================
|
||||
# == Sub ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Sub(Func):
|
||||
symbol = '-'
|
||||
bracketLevel = 2
|
||||
|
||||
def fn(self, a, b):
|
||||
return a - b
|
||||
|
||||
def copy(self):
|
||||
return Sub
|
||||
|
||||
def __str__ (self):
|
||||
s = addBrackets(self.left, 0)
|
||||
s += ' ' + self.symbol + ' '
|
||||
s += addBrackets(self.right, self.bracketLevel)
|
||||
return s
|
||||
|
||||
# =================================================================
|
||||
# == Lt ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Lt(Func):
|
||||
symbol = '<'
|
||||
bracketLevel = 3
|
||||
|
||||
def fn(self, a, b):
|
||||
return a < b
|
||||
|
||||
def copy(self):
|
||||
return Lt
|
||||
|
||||
# =================================================================
|
||||
# == Le ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Le(Func):
|
||||
symbol = '<='
|
||||
bracketLevel = 3
|
||||
|
||||
def fn(self, a, b):
|
||||
return a <= b
|
||||
|
||||
def copy(self):
|
||||
return Le
|
||||
|
||||
# =================================================================
|
||||
# == Eql ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Eql(Func):
|
||||
symbol = '='
|
||||
bracketLevel = 0
|
||||
|
||||
def fn(self, a, b):
|
||||
return a == b
|
||||
|
||||
def copy(self):
|
||||
return Eql
|
||||
|
||||
def simplify(self):
|
||||
if ( (isinstance(self.left,self.right.copy())) # same opperation
|
||||
and (not isinstance(self.left, (Const, Var, Round))) # not const, var or Round
|
||||
and (self.left.right is self.right.right)): # subthing is the same
|
||||
return self.copy()(self.left.left.simplify(), self.right.left.simplify())
|
||||
return self.copy()(self.left.simplify(), self.right.simplify())
|
||||
|
||||
# =================================================================
|
||||
# == NEql ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class NEql(Func):
|
||||
symbol = '!='
|
||||
bracketLevel = 3
|
||||
|
||||
def fn(self, a, b):
|
||||
return a != b
|
||||
|
||||
def copy(self):
|
||||
return NEql
|
||||
|
||||
# =================================================================
|
||||
# == Ge ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Ge(Func):
|
||||
symbol = '>='
|
||||
bracketLevel = 3
|
||||
|
||||
def fn(self, a, b):
|
||||
return a >= b
|
||||
|
||||
def copy(self):
|
||||
return Ge
|
||||
|
||||
# =================================================================
|
||||
# == Gt ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Gt(Func):
|
||||
symbol = '>'
|
||||
bracketLevel = 3
|
||||
|
||||
def fn(self, a, b):
|
||||
return a > b
|
||||
|
||||
def copy(self):
|
||||
return Gt
|
||||
|
||||
# =================================================================
|
||||
# == Sin ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Sin(Func):
|
||||
def __init__(self, function):
|
||||
if isinstance(function, (int, float)):
|
||||
self.function = Const(function)
|
||||
else:
|
||||
self.function = function
|
||||
|
||||
def solve(self, vars):
|
||||
return math.sin(self.function.solve(vars))
|
||||
|
||||
def copy(self):
|
||||
return Sin
|
||||
|
||||
def simplify(self):
|
||||
f = self.function.simplify()
|
||||
if isinstance(f, Const):
|
||||
return Const(self.solve({}))
|
||||
else:
|
||||
return Round(f)
|
||||
|
||||
def __str__ (self):
|
||||
return 'sin(' + str(self.function) + ')'
|
||||
|
||||
# =================================================================
|
||||
# == Sinh =========================================================
|
||||
# =================================================================
|
||||
|
||||
class Sinh(Func):
|
||||
def __init__(self, function):
|
||||
if isinstance(function, (int, float)):
|
||||
self.function = Const(function)
|
||||
else:
|
||||
self.function = function
|
||||
|
||||
def solve(self, vars):
|
||||
return math.sinh(self.function.solve(vars))
|
||||
|
||||
def copy(self):
|
||||
return Sinh
|
||||
|
||||
def simplify(self):
|
||||
f = self.function.simplify()
|
||||
if isinstance(f, Const):
|
||||
return Const(self.solve({}))
|
||||
else:
|
||||
return Round(f)
|
||||
|
||||
def __str__ (self):
|
||||
return 'sinh(' + str(self.function) + ')'
|
||||
|
||||
# =================================================================
|
||||
# == Cos ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Cos(Func):
|
||||
def __init__(self, function):
|
||||
if isinstance(function, (int, float)):
|
||||
self.function = Const(function)
|
||||
else:
|
||||
self.function = function
|
||||
|
||||
def solve(self, vars):
|
||||
return math.Cos(self.function.solve(vars))
|
||||
|
||||
def copy(self):
|
||||
return Cos
|
||||
|
||||
def simplify(self):
|
||||
f = self.function.simplify()
|
||||
if isinstance(f, Const):
|
||||
return Const(self.solve({}))
|
||||
else:
|
||||
return Round(f)
|
||||
|
||||
def __str__ (self):
|
||||
return 'Cos(' + str(self.function) + ')'
|
||||
|
||||
# =================================================================
|
||||
# == Cosh =========================================================
|
||||
# =================================================================
|
||||
|
||||
class Cosh(Func):
|
||||
def __init__(self, function):
|
||||
if isinstance(function, (int, float)):
|
||||
self.function = Const(function)
|
||||
else:
|
||||
self.function = function
|
||||
|
||||
def solve(self, vars):
|
||||
return math.Cosh(self.function.solve(vars))
|
||||
|
||||
def copy(self):
|
||||
return Cosh
|
||||
|
||||
def simplify(self):
|
||||
f = self.function.simplify()
|
||||
if isinstance(f, Const):
|
||||
return Const(self.solve({}))
|
||||
else:
|
||||
return Round(f)
|
||||
|
||||
def __str__ (self):
|
||||
return 'Cosh(' + str(self.function) + ')'
|
||||
|
||||
# =================================================================
|
||||
# == Tan ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Tan(Func):
|
||||
def __init__(self, function):
|
||||
if isinstance(function, (int, float)):
|
||||
self.function = Const(function)
|
||||
else:
|
||||
self.function = function
|
||||
|
||||
def solve(self, vars):
|
||||
return math.tan(self.function.solve(vars))
|
||||
|
||||
def copy(self):
|
||||
return tan
|
||||
|
||||
def simplify(self):
|
||||
f = self.function.simplify()
|
||||
if isinstance(f, Const):
|
||||
return Const(self.solve({}))
|
||||
else:
|
||||
return Round(f)
|
||||
|
||||
def __str__ (self):
|
||||
return 'tan(' + str(self.function) + ')'
|
||||
|
||||
# =================================================================
|
||||
# == Tanh =========================================================
|
||||
# =================================================================
|
||||
|
||||
class Tanh(Func):
|
||||
def __init__(self, function):
|
||||
if isinstance(function, (int, float)):
|
||||
self.function = Const(function)
|
||||
else:
|
||||
self.function = function
|
||||
|
||||
def solve(self, vars):
|
||||
return math.tanh(self.function.solve(vars))
|
||||
|
||||
def copy(self):
|
||||
return tanh
|
||||
|
||||
def simplify(self):
|
||||
f = self.function.simplify()
|
||||
if isinstance(f, Const):
|
||||
return Const(self.solve({}))
|
||||
else:
|
||||
return Round(f)
|
||||
|
||||
def __str__ (self):
|
||||
return 'tanh(' + str(self.function) + ')'
|
||||
|
||||
# =================================================================
|
||||
# == Vec ==========================================================
|
||||
# =================================================================
|
||||
|
||||
class Vec:
|
||||
def __init__ (self, x: float, y: float, z: float) -> None:
|
||||
...
|
||||
def __init__ (self, x: float, y: float) -> None:
|
||||
...
|
||||
def __init__ (self, x: float) -> None:
|
||||
...
|
||||
def __init__ (self, x: "Vec") -> None:
|
||||
...
|
||||
def __init__ (self) -> None:
|
||||
...
|
||||
def __init__ (self, *args) -> None:
|
||||
if len(args) == 3:
|
||||
self.cartesian(*args)
|
||||
elif len(args) == 2:
|
||||
self.cartesian(*args, 0.0)
|
||||
elif len(args) == 1:
|
||||
if(isinstance(args[0], Vec)):
|
||||
self.cartesian(args[0].getCartasian())
|
||||
self.cartesian(*args, 0.0, 0.0)
|
||||
|
||||
|
||||
def cartesian(self, x: float, y: float, z: float) -> tuple:
|
||||
...
|
||||
def cartesian(self, corts: tuple) -> tuple:
|
||||
...
|
||||
def cartesian(self, *args) -> tuple:
|
||||
if len(args) == 3:
|
||||
self.x = args[0]
|
||||
self.y = args[1]
|
||||
self.z = args[2]
|
||||
elif len(args) == 1:
|
||||
self.x = args[0][0]
|
||||
self.y = args[0][1]
|
||||
self.z = args[0][2]
|
||||
return (self.x, self.y, self.z)
|
||||
|
||||
|
||||
def polar(self, a: tuple, l: float) -> None:
|
||||
...
|
||||
def polar(self) -> tuple:
|
||||
...
|
||||
def polar(self, *args):
|
||||
if len(args) == 2:
|
||||
# xy angle xz angle yz angle
|
||||
self.x = math.sin(args[0][0]) * math.sin(args[0][1])
|
||||
self.y = math.cos(args[0][0]) * math.sin(args[0][2])
|
||||
self.z = math.cos(args[0][1]) * math.cos(args[0][2])
|
||||
self = self * l
|
||||
elif len(args) == 0:
|
||||
return (
|
||||
(
|
||||
math.tanh(self.y, self.x),
|
||||
math.tanh(self.z, self.x),
|
||||
0.0
|
||||
),
|
||||
self.length(),
|
||||
)
|
||||
|
||||
def rotate(self, angle):
|
||||
p = self.polar()
|
||||
a = [p[0][0] + angle[0], p[0][1] + angle[1], p[0][2] + angle[2]]
|
||||
self.polar(a, p[1])
|
||||
|
||||
def length(self, l: float):
|
||||
...
|
||||
def length(self):
|
||||
...
|
||||
def length(self, *args):
|
||||
if(len(args) == 0):
|
||||
l = self.x**2 + self.y**2 + self.z**2
|
||||
return math.sqrt(l)
|
||||
else:
|
||||
m = args[0] / self.length()
|
||||
return self * m
|
||||
|
||||
def __rmul__ (self, other):
|
||||
return self.mul(other, self)
|
||||
def __mul__(self, other):
|
||||
return self.mul(self, other)
|
||||
def mul(self, a, b=None):
|
||||
if not isinstance(a, Vec):
|
||||
# flip a and b
|
||||
b = a
|
||||
a = self
|
||||
if(isinstance(b, Vec)):
|
||||
result = a.x * b.x
|
||||
result += a.y * b.y
|
||||
result += a.z * b.z
|
||||
return result
|
||||
elif(isinstance(b, (int, float))):
|
||||
n = Vec()
|
||||
n.x = a.x * b
|
||||
n.y = a.y * b
|
||||
n.z = a.z * b
|
||||
return n
|
||||
else:
|
||||
print('WARNING: tried to multiply Vec with ' + str(type(b)))
|
||||
return b
|
||||
|
||||
def __neg__(self):
|
||||
return ~self
|
||||
def __inv__(self):
|
||||
return Vec(-self.x, -self.y, -self.z)
|
||||
|
||||
#TODO: alow scaler
|
||||
def __pow__(self, other):
|
||||
n = Vec()
|
||||
n.x = self.y * other.z - self.z * other.y
|
||||
n.y = self.z * other.x - self.x * other.z
|
||||
n.z = self.x * other.y - self.y * other.x
|
||||
return n
|
||||
|
||||
def __add__(self, other):
|
||||
if isinstance(other, Vec):
|
||||
n = Vec()
|
||||
n.x = self.y + other.z
|
||||
n.y = self.z + other.x
|
||||
n.z = self.x + other.y
|
||||
return n
|
||||
elif isinstance(other, (tuple, list)):
|
||||
n = Vec()
|
||||
n.x = self.y + other[0]
|
||||
n.y = self.z + other[1]
|
||||
n.z = self.x + other[2]
|
||||
return n
|
||||
elif isinstance(other, (float, int)):
|
||||
n = Vec(self.cartesian())
|
||||
n.length(self.length() + other)
|
||||
return n
|
||||
else:
|
||||
print('WARNING: tried to add Vec with ' + str(type(other)))
|
||||
return other
|
||||
|
||||
def setitem(self, index, value):
|
||||
if(index == 0):
|
||||
self.x = value
|
||||
elif(index == 1):
|
||||
self.y = value
|
||||
elif(index == 2):
|
||||
self.z = value
|
||||
else:
|
||||
print('ERROR: tried to set index ' + str(index) + ' of a Vec')
|
||||
def getitem(self, index):
|
||||
if(index == 0):
|
||||
return self.x
|
||||
elif(index == 1):
|
||||
return self.y
|
||||
elif(index == 2):
|
||||
return self.z
|
||||
else:
|
||||
print('ERROR: tried to get index ' + str(index) + ' of a Vec')
|
||||
return None
|
||||
|
||||
def __str__(self):
|
||||
return "Vec" + str(self.cartesian())
|
||||
|
||||
def __lt__(self, other):
|
||||
return self.length() < other.length()
|
||||
def __le__(self, other):
|
||||
return self.length() <= other.length()
|
||||
def __eq__(self, other):
|
||||
return self.length() == other.length()
|
||||
def __ne__(self, other):
|
||||
return self.length() != other.length()
|
||||
def __ge__(self, other):
|
||||
return self.length() >= other.length()
|
||||
def __gt__(self, other):
|
||||
return self.length() > other.length()
|
||||
|
||||
|
||||
404
subprocess
Normal file
404
subprocess
Normal file
@ -0,0 +1,404 @@
|
||||
%!PS-Adobe-3.0
|
||||
%%Creator: (ImageMagick)
|
||||
%%Title: (subprocess)
|
||||
%%CreationDate: (2020-07-20T17:12:41+00:00)
|
||||
%%BoundingBox: 1122 681 1175 765
|
||||
%%HiResBoundingBox: 1122 681 1175 765
|
||||
%%DocumentData: Clean7Bit
|
||||
%%LanguageLevel: 1
|
||||
%%Orientation: Portrait
|
||||
%%PageOrder: Ascend
|
||||
%%Pages: 1
|
||||
%%EndComments
|
||||
|
||||
%%BeginDefaults
|
||||
%%EndDefaults
|
||||
|
||||
%%BeginProlog
|
||||
%
|
||||
% Display a color image. The image is displayed in color on
|
||||
% Postscript viewers or printers that support color, otherwise
|
||||
% it is displayed as grayscale.
|
||||
%
|
||||
/DirectClassPacket
|
||||
{
|
||||
%
|
||||
% Get a DirectClass packet.
|
||||
%
|
||||
% Parameters:
|
||||
% red.
|
||||
% green.
|
||||
% blue.
|
||||
% length: number of pixels minus one of this color (optional).
|
||||
%
|
||||
currentfile color_packet readhexstring pop pop
|
||||
compression 0 eq
|
||||
{
|
||||
/number_pixels 3 def
|
||||
}
|
||||
{
|
||||
currentfile byte readhexstring pop 0 get
|
||||
/number_pixels exch 1 add 3 mul def
|
||||
} ifelse
|
||||
0 3 number_pixels 1 sub
|
||||
{
|
||||
pixels exch color_packet putinterval
|
||||
} for
|
||||
pixels 0 number_pixels getinterval
|
||||
} bind def
|
||||
|
||||
/DirectClassImage
|
||||
{
|
||||
%
|
||||
% Display a DirectClass image.
|
||||
%
|
||||
systemdict /colorimage known
|
||||
{
|
||||
columns rows 8
|
||||
[
|
||||
columns 0 0
|
||||
rows neg 0 rows
|
||||
]
|
||||
{ DirectClassPacket } false 3 colorimage
|
||||
}
|
||||
{
|
||||
%
|
||||
% No colorimage operator; convert to grayscale.
|
||||
%
|
||||
columns rows 8
|
||||
[
|
||||
columns 0 0
|
||||
rows neg 0 rows
|
||||
]
|
||||
{ GrayDirectClassPacket } image
|
||||
} ifelse
|
||||
} bind def
|
||||
|
||||
/GrayDirectClassPacket
|
||||
{
|
||||
%
|
||||
% Get a DirectClass packet; convert to grayscale.
|
||||
%
|
||||
% Parameters:
|
||||
% red
|
||||
% green
|
||||
% blue
|
||||
% length: number of pixels minus one of this color (optional).
|
||||
%
|
||||
currentfile color_packet readhexstring pop pop
|
||||
color_packet 0 get 0.299 mul
|
||||
color_packet 1 get 0.587 mul add
|
||||
color_packet 2 get 0.114 mul add
|
||||
cvi
|
||||
/gray_packet exch def
|
||||
compression 0 eq
|
||||
{
|
||||
/number_pixels 1 def
|
||||
}
|
||||
{
|
||||
currentfile byte readhexstring pop 0 get
|
||||
/number_pixels exch 1 add def
|
||||
} ifelse
|
||||
0 1 number_pixels 1 sub
|
||||
{
|
||||
pixels exch gray_packet put
|
||||
} for
|
||||
pixels 0 number_pixels getinterval
|
||||
} bind def
|
||||
|
||||
/GrayPseudoClassPacket
|
||||
{
|
||||
%
|
||||
% Get a PseudoClass packet; convert to grayscale.
|
||||
%
|
||||
% Parameters:
|
||||
% index: index into the colormap.
|
||||
% length: number of pixels minus one of this color (optional).
|
||||
%
|
||||
currentfile byte readhexstring pop 0 get
|
||||
/offset exch 3 mul def
|
||||
/color_packet colormap offset 3 getinterval def
|
||||
color_packet 0 get 0.299 mul
|
||||
color_packet 1 get 0.587 mul add
|
||||
color_packet 2 get 0.114 mul add
|
||||
cvi
|
||||
/gray_packet exch def
|
||||
compression 0 eq
|
||||
{
|
||||
/number_pixels 1 def
|
||||
}
|
||||
{
|
||||
currentfile byte readhexstring pop 0 get
|
||||
/number_pixels exch 1 add def
|
||||
} ifelse
|
||||
0 1 number_pixels 1 sub
|
||||
{
|
||||
pixels exch gray_packet put
|
||||
} for
|
||||
pixels 0 number_pixels getinterval
|
||||
} bind def
|
||||
|
||||
/PseudoClassPacket
|
||||
{
|
||||
%
|
||||
% Get a PseudoClass packet.
|
||||
%
|
||||
% Parameters:
|
||||
% index: index into the colormap.
|
||||
% length: number of pixels minus one of this color (optional).
|
||||
%
|
||||
currentfile byte readhexstring pop 0 get
|
||||
/offset exch 3 mul def
|
||||
/color_packet colormap offset 3 getinterval def
|
||||
compression 0 eq
|
||||
{
|
||||
/number_pixels 3 def
|
||||
}
|
||||
{
|
||||
currentfile byte readhexstring pop 0 get
|
||||
/number_pixels exch 1 add 3 mul def
|
||||
} ifelse
|
||||
0 3 number_pixels 1 sub
|
||||
{
|
||||
pixels exch color_packet putinterval
|
||||
} for
|
||||
pixels 0 number_pixels getinterval
|
||||
} bind def
|
||||
|
||||
/PseudoClassImage
|
||||
{
|
||||
%
|
||||
% Display a PseudoClass image.
|
||||
%
|
||||
% Parameters:
|
||||
% class: 0-PseudoClass or 1-Grayscale.
|
||||
%
|
||||
currentfile buffer readline pop
|
||||
token pop /class exch def pop
|
||||
class 0 gt
|
||||
{
|
||||
currentfile buffer readline pop
|
||||
token pop /depth exch def pop
|
||||
/grays columns 8 add depth sub depth mul 8 idiv string def
|
||||
columns rows depth
|
||||
[
|
||||
columns 0 0
|
||||
rows neg 0 rows
|
||||
]
|
||||
{ currentfile grays readhexstring pop } image
|
||||
}
|
||||
{
|
||||
%
|
||||
% Parameters:
|
||||
% colors: number of colors in the colormap.
|
||||
% colormap: red, green, blue color packets.
|
||||
%
|
||||
currentfile buffer readline pop
|
||||
token pop /colors exch def pop
|
||||
/colors colors 3 mul def
|
||||
/colormap colors string def
|
||||
currentfile colormap readhexstring pop pop
|
||||
systemdict /colorimage known
|
||||
{
|
||||
columns rows 8
|
||||
[
|
||||
columns 0 0
|
||||
rows neg 0 rows
|
||||
]
|
||||
{ PseudoClassPacket } false 3 colorimage
|
||||
}
|
||||
{
|
||||
%
|
||||
% No colorimage operator; convert to grayscale.
|
||||
%
|
||||
columns rows 8
|
||||
[
|
||||
columns 0 0
|
||||
rows neg 0 rows
|
||||
]
|
||||
{ GrayPseudoClassPacket } image
|
||||
} ifelse
|
||||
} ifelse
|
||||
} bind def
|
||||
|
||||
/DisplayImage
|
||||
{
|
||||
%
|
||||
% Display a DirectClass or PseudoClass image.
|
||||
%
|
||||
% Parameters:
|
||||
% x & y translation.
|
||||
% x & y scale.
|
||||
% label pointsize.
|
||||
% image label.
|
||||
% image columns & rows.
|
||||
% class: 0-DirectClass or 1-PseudoClass.
|
||||
% compression: 0-none or 1-RunlengthEncoded.
|
||||
% hex color packets.
|
||||
%
|
||||
gsave
|
||||
/buffer 512 string def
|
||||
/byte 1 string def
|
||||
/color_packet 3 string def
|
||||
/pixels 768 string def
|
||||
|
||||
currentfile buffer readline pop
|
||||
token pop /x exch def
|
||||
token pop /y exch def pop
|
||||
x y translate
|
||||
currentfile buffer readline pop
|
||||
token pop /x exch def
|
||||
token pop /y exch def pop
|
||||
currentfile buffer readline pop
|
||||
token pop /pointsize exch def pop
|
||||
x y scale
|
||||
currentfile buffer readline pop
|
||||
token pop /columns exch def
|
||||
token pop /rows exch def pop
|
||||
currentfile buffer readline pop
|
||||
token pop /class exch def pop
|
||||
currentfile buffer readline pop
|
||||
token pop /compression exch def pop
|
||||
class 0 gt { PseudoClassImage } { DirectClassImage } ifelse
|
||||
grestore
|
||||
showpage
|
||||
} bind def
|
||||
%%EndProlog
|
||||
%%Page: 1 1
|
||||
%%PageBoundingBox: 1122 681 1175 765
|
||||
DisplayImage
|
||||
1122 681
|
||||
53 84
|
||||
12
|
||||
53 84
|
||||
1
|
||||
1
|
||||
1
|
||||
8
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E
|
||||
%%PageTrailer
|
||||
%%Trailer
|
||||
%%EOF
|
||||
Reference in New Issue
Block a user