[prev in list] [next in list] [prev in thread] [next in thread] List: squeak-dev Subject: Re: [squeak-dev] Strange Char code 160 From: Tobias Pape <Das.Linux () gmx ! de> Date: 2018-09-12 7:27:41 Message-ID: 4224D85A-0729-4DB1-8AEB-7F51312E16AD () gmx ! de [Download RAW message or body] [Attachment #2 (multipart/alternative)] Hi Ron > On 11.09.2018, at 21:24, Ron Teitelbaum <ron@usmedrec.com> wrote: > > Hi Tobias, > > Sorry, User error! I surrounded it with single quotes and it started working \ > again! I'd pasted it and hit inspect to see what it was. Silly mistake. > Ok so now this is what actually blew up on me. > > (160 asCharacter asString, 'abc') withBlanksTrimmed ' abc' > > Shouldn't nbsp be considered a blank character? Sounds reasonable. Currently, separators (aka spaces) are defined as follows: Character class>>separators "Answer a collection of the standard ASCII separator characters." ^ #(32 "space" 13 "cr" 9 "tab" 10 "line feed" 12 "form feed") collect: [:v | Character value: v] as: String Ie, confined to ASCII. Maybe we should consider using the unicode Zs category \ instead… That being said, our unicode stuff is a bit broken… Lemme see. Best -Tobias > > All the best, > > Ron > > On Tue, Sep 11, 2018 at 2:13 PM Tobias Pape <Das.Linux@gmx.de> wrote: > Hi Ron > > > > On 11.09.2018, at 17:38, Ron Teitelbaum <ron@usmedrec.com> wrote: > > > > Hi All, > > > > I ran into this problem. Has anyone seen this before? > > > > I was importing a file that contained some sort of char code 160. \ > > http://www.adamkoch.com/2009/07/25/white-space-and-character-160/ says this is a \ > > non-breaking space. > > I pasted the character into Squeak. When trying to inspect it in squeak I get \ > > illegal character. > > Can you get me the char before the 160? > > I see that the ahead char is 30, which makes things very strange. > > First this does not look like Latin-1, where 160/0xa0 would be nbsp, because the \ > ahead is 30/1e, a control char, and not defined in Latin-1. It is in ascii (record \ > separator RS), but there 160/0xa0 is not defined. Windows CP 1252 would have both, \ > but I am a bit unsure as to whether you'd actually find a NBSP+RS combo just like \ > that in smalltalk data… > Leaves, eg, MacRoman (I _think_ stuff used to be coded in macroman in Squeak in the \ > 90s), and there 30/0x1e ist still RS (strange) but 160/0xA0 is Dagger ( ) which \ > is indeed illegal. > So could you give us a bit content around the char? > > Best regards > -Tobias > > > PS: EBCDIC would make no sense at all… > PPS: Interestingly, 160/0xA0 is actually defined #xBinary… > > > > > > Illegal character (char code 160 16r16rA0) -> > > > > The 16r16r seems to be an error in the method and not a real number > > > > xIllegal > > "An illegal character was encountered" > > self halt. > > self notify: 'Illegal character (char code ' , hereChar charCode , ' 16r' , \ > > hereChar charCode hex , ')' at: mark > > But if I inspect Character nbsp I get a character 160 that seems to work fine. > > > > Here is the stack. I added a halt in xIllegal. > > '11 September 2018 11:30:40.486 am > > > > VM: Win32 - Smalltalk > > Image: Squeak4.1 [latest update: #9957] > > > > Parser(Object)>>halt > > Receiver: a Parser > > Arguments and temporary variables: > > > > Receiver''s instance variables: > > source: a ReadWriteStream > > mark: 22 > > hereChar: $ > > aheadChar: Character value: 30 > > token: nil > > tokenType: #xIllegal > > currentComment: nil > > buffer: a WriteStream '''' > > typeTable: #(#xIllegal #xIllegal #xIllegal #xIllegal #xIllegal #xIllegal \ > > #xIllegal #xIllegal #xDelimiter #xDelimiter #xIllegal #xDelimiter #xDelimiter \ > > #xIllegal #xIllegal #xIllega...etc... here: nil > > hereType: nil > > hereMark: nil > > hereEnd: nil > > prevMark: nil > > prevEnd: nil > > encoder: {an EncoderForV3PlusClosures} > > requestor: a SmalltalkEditor > > parseNode: nil > > failBlock: [closure] in \ > > Parser>>parse:class:category:noPattern:context:notifying:ifFail: \ > > requestorOffset: 0 tempsMark: nil > > doitFlag: nil > > properties: nil > > category: nil > > > > Parser(Scanner)>>xIllegal > > Receiver: a Parser > > Arguments and temporary variables: > > > > Receiver''s instance variables: > > source: a ReadWriteStream > > mark: 22 > > hereChar: $ > > aheadChar: Character value: 30 > > token: nil > > tokenType: #xIllegal > > currentComment: nil > > buffer: a WriteStream '''' > > typeTable: #(#xIllegal #xIllegal #xIllegal #xIllegal #xIllegal #xIllegal \ > > #xIllegal #xIllegal #xDelimiter #xDelimiter #xIllegal #xDelimiter #xDelimiter \ > > #xIllegal #xIllegal #xIllega...etc... here: nil > > hereType: nil > > hereMark: nil > > hereEnd: nil > > prevMark: nil > > prevEnd: nil > > encoder: {an EncoderForV3PlusClosures} > > requestor: a SmalltalkEditor > > parseNode: nil > > failBlock: [closure] in \ > > Parser>>parse:class:category:noPattern:context:notifying:ifFail: \ > > requestorOffset: 0 tempsMark: nil > > doitFlag: nil > > properties: nil > > category: nil > > > > Parser(Scanner)>>scanToken > > Receiver: a Parser > > Arguments and temporary variables: > > > > Receiver''s instance variables: > > source: a ReadWriteStream > > mark: 22 > > hereChar: $ > > aheadChar: Character value: 30 > > token: nil > > tokenType: #xIllegal > > currentComment: nil > > buffer: a WriteStream '''' > > typeTable: #(#xIllegal #xIllegal #xIllegal #xIllegal #xIllegal #xIllegal \ > > #xIllegal #xIllegal #xDelimiter #xDelimiter #xIllegal #xDelimiter #xDelimiter \ > > #xIllegal #xIllegal #xIllega...etc... here: nil > > hereType: nil > > hereMark: nil > > hereEnd: nil > > prevMark: nil > > prevEnd: nil > > encoder: {an EncoderForV3PlusClosures} > > requestor: a SmalltalkEditor > > parseNode: nil > > failBlock: [closure] in \ > > Parser>>parse:class:category:noPattern:context:notifying:ifFail: \ > > requestorOffset: 0 tempsMark: nil > > doitFlag: nil > > properties: nil > > category: nil > > > > Parser(Scanner)>>scan: > > Receiver: a Parser > > Arguments and temporary variables: > > inputStream: a ReadWriteStream > > > > Receiver''s instance variables: > > source: a ReadWriteStream > > mark: 22 > > hereChar: $ > > aheadChar: Character value: 30 > > token: nil > > tokenType: #xIllegal > > currentComment: nil > > buffer: a WriteStream '''' > > typeTable: #(#xIllegal #xIllegal #xIllegal #xIllegal #xIllegal #xIllegal \ > > #xIllegal #xIllegal #xDelimiter #xDelimiter #xIllegal #xDelimiter #xDelimiter \ > > #xIllegal #xIllegal #xIllega...etc... here: nil > > hereType: nil > > hereMark: nil > > hereEnd: nil > > prevMark: nil > > prevEnd: nil > > encoder: {an EncoderForV3PlusClosures} > > requestor: a SmalltalkEditor > > parseNode: nil > > failBlock: [closure] in \ > > Parser>>parse:class:category:noPattern:context:notifying:ifFail: \ > > requestorOffset: 0 tempsMark: nil > > doitFlag: nil > > properties: nil > > category: nil > > > > > > --- The full stack --- > > Parser(Object)>>halt > > Parser(Scanner)>>xIllegal > > Parser(Scanner)>>scanToken > > Parser(Scanner)>>scan: > > - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - > > Parser>>init:notifying:failBlock: > > Parser>>parse:class:category:noPattern:context:notifying:ifFail: > > Compiler>>translate:noPattern:ifFail: > > Compiler>>evaluate:in:to:notifying:ifFail:logged: > > [] in SmalltalkEditor(TextEditor)>>evaluateSelection > > BlockClosure>>on:do: > > SmalltalkEditor(TextEditor)>>evaluateSelection > > [] in PluggableTextMorphPlus(PluggableTextMorph)>>inspectIt > > ...etc... > > > > And to top it off if I inspect hereChar on xIllegal in the debugger I get a char \ > > 160 that works fine! > > I'm not sure how to determine what exactly what is the difference between the two \ > > characters. Any suggestions? > > Thanks! > > > > All the best, > > > > Ron Teitelbaum > > > > <Bildschirmfoto 2018-09-11 um 20.13.03.PNG><Bildschirmfoto 2018-09-11 um \ > 20.13.03.PNG> [Attachment #5 (multipart/related)] [Attachment #7 (unknown)] <html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; \ -webkit-line-break: after-white-space;">Hi Ron<div class=""><br class=""><blockquote \ type="cite" class="">On 11.09.2018, at 21:24, Ron Teitelbaum <<a \ href="mailto:ron@usmedrec.com" class="">ron@usmedrec.com</a>> wrote:<br \ class=""><br class="">Hi Tobias,<br class=""><br class="">Sorry, User error! I \ surrounded it with single quotes and it started working again! I'd pasted it \ and hit inspect to see what it was. Silly mistake.<br class=""><br class="">Ok \ so now this is what actually blew up on me.<br class=""><br class="">(160 asCharacter \ asString, 'abc') withBlanksTrimmed ' abc'<br class=""><br class="">Shouldn't \ nbsp be considered a blank character?<br class=""></blockquote><div class=""><br \ class=""></div><div class="">Sounds reasonable.</div><div class="">Currently, \ separators (aka spaces) are defined as follows:</div><div class=""><br \ class=""></div><div class="">Character class>>separators</div><span \ class="Apple-tab-span" style="white-space:pre"> </span>"Answer a collection of the \ standard ASCII separator characters."<br class=""><br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>^ #(32 "space"<br \ class=""><span class="Apple-tab-span" style="white-space:pre"> </span>13 "cr"<br \ class=""><span class="Apple-tab-span" style="white-space:pre"> </span>9 "tab"<br \ class=""><span class="Apple-tab-span" style="white-space:pre"> </span>10 "line \ feed"<br class=""><span class="Apple-tab-span" style="white-space:pre"> </span>12 \ "form feed")<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>collect: [:v | Character value: v] as: \ String</div><div class=""><br class=""></div><div class="">Ie, confined to ASCII. \ Maybe we should consider using the unicode Zs category instead…</div><div \ class="">That being said, our unicode stuff is a bit broken… Lemme see.</div><div \ class="">Best</div><div class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>-Tobias</div><div class=""><br class=""><blockquote \ type="cite" class=""><br class="">All the best,<br class=""><br class="">Ron<br \ class=""><br class="">On Tue, Sep 11, 2018 at 2:13 PM Tobias Pape <<a \ href="mailto:Das.Linux@gmx.de" class="">Das.Linux@gmx.de</a>> wrote:<br \ class="">Hi Ron<br class=""><br class=""><br class=""><blockquote type="cite" \ class="">On 11.09.2018, at 17:38, Ron Teitelbaum <ron@usmedrec.com> wrote:<br \ class=""><br class="">Hi All,<br class=""><br class="">I ran into this problem. \ Has anyone seen this before? <br class=""><br class="">I was importing a \ file that contained some sort of char code 160. \ http://www.adamkoch.com/2009/07/25/white-space-and-character-160/ says \ this is a non-breaking space. <br class=""><br class="">I pasted the character \ into Squeak. When trying to inspect it in squeak I get illegal character. <br \ class=""><br class=""></blockquote><br class="">Can you get me the char before the \ 160?<br class=""><br class="">I see that the ahead char is 30, which makes things \ very strange.<br class=""><br class="">First this does not look like Latin-1, where \ 160/0xa0 would be nbsp, because the ahead is 30/1e, a control char, and not defined \ in Latin-1.<br class="">It is in ascii (record separator RS), but there 160/0xa0 is \ not defined.<br class="">Windows CP 1252 would have both, but I am a bit unsure as to \ whether you'd actually find a NBSP+RS combo just like that in smalltalk data…<br \ class=""><br class="">Leaves, eg, MacRoman (I _think_ stuff used to be coded in \ macroman in Squeak in the 90s), and<br class="">there 30/0x1e ist still RS (strange) \ but 160/0xA0 is Dagger ( ) which is indeed illegal.<br class=""><br class="">So \ could you give us a bit content around the char?<br class=""><br class="">Best \ regards<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>-Tobias<br class=""><br class=""><br class="">PS: \ EBCDIC would make no sense at all…<br class="">PPS: Interestingly, 160/0xA0 is \ actually defined #xBinary…<br class=""><br class=""><img \ id="m_8220693002005560899D9A3DF1B-524A-4E22-8B57-7F2265963FEB" height="163" \ width="551" class="" apple-inline="yes" apple-width="yes" apple-height="yes" \ src="cid:141CB1C2-348C-4351-8D26-B828E0736D45@fritz.box"><br class=""><br \ class=""><br class=""><blockquote type="cite" class="">Illegal character (char code \ 160 16r16rA0) -><br class=""><br class="">The 16r16r seems to be an error in the \ method and not a real number<br class=""><br class="">xIllegal<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>"An illegal character was \ encountered"<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>self halt.<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>self notify: 'Illegal character (char code ' , \ hereChar charCode , ' 16r' , hereChar charCode hex , ')' at: mark<br class=""><br \ class="">But if I inspect Character nbsp I get a character 160 that seems to work \ fine.<br class=""><br class="">Here is the stack. I added a halt in \ xIllegal.<br class="">'11 September 2018 11:30:40.486 am<br class=""><br class="">VM: \ Win32 - Smalltalk<br class="">Image: Squeak4.1 [latest update: #9957]<br class=""><br \ class="">Parser(Object)>>halt<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>Receiver: a Parser<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>Arguments and temporary \ variables: <br class=""><br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>Receiver''s instance variables: <br \ class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>source: <span class="Apple-tab-span" \ style="white-space:pre"> </span>a ReadWriteStream<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>mark: <span \ class="Apple-tab-span" style="white-space:pre"> </span>22<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>hereChar: <span \ class="Apple-tab-span" style="white-space:pre"> </span>$ <br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>aheadChar: <span \ class="Apple-tab-span" style="white-space:pre"> </span>Character value: 30<br \ class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>token: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>tokenType: <span class="Apple-tab-span" \ style="white-space:pre"> </span>#xIllegal<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>currentComment: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>buffer: <span class="Apple-tab-span" \ style="white-space:pre"> </span>a WriteStream ''''<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>typeTable: <span \ class="Apple-tab-span" style="white-space:pre"> </span>#(#xIllegal #xIllegal \ #xIllegal #xIllegal #xIllegal #xIllegal #xIllegal #xIllegal #xDelimiter #xDelimiter \ #xIllegal #xDelimiter #xDelimiter #xIllegal #xIllegal #xIllega...etc...<br \ class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>here: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>hereType: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>hereMark: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>hereEnd: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>prevMark: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>prevEnd: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>encoder: <span class="Apple-tab-span" \ style="white-space:pre"> </span>{an EncoderForV3PlusClosures}<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>requestor: <span \ class="Apple-tab-span" style="white-space:pre"> </span>a SmalltalkEditor<br \ class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>parseNode: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>failBlock: <span class="Apple-tab-span" \ style="white-space:pre"> </span>[closure] in \ Parser>>parse:class:category:noPattern:context:notifying:ifFail:<br \ class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>requestorOffset: <span class="Apple-tab-span" \ style="white-space:pre"> </span>0<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>tempsMark: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>doitFlag: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>properties: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>category: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><br \ class="">Parser(Scanner)>>xIllegal<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>Receiver: a Parser<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>Arguments and temporary \ variables: <br class=""><br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>Receiver''s instance variables: <br \ class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>source: <span class="Apple-tab-span" \ style="white-space:pre"> </span>a ReadWriteStream<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>mark: <span \ class="Apple-tab-span" style="white-space:pre"> </span>22<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>hereChar: <span \ class="Apple-tab-span" style="white-space:pre"> </span>$ <br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>aheadChar: <span \ class="Apple-tab-span" style="white-space:pre"> </span>Character value: 30<br \ class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>token: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>tokenType: <span class="Apple-tab-span" \ style="white-space:pre"> </span>#xIllegal<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>currentComment: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>buffer: <span class="Apple-tab-span" \ style="white-space:pre"> </span>a WriteStream ''''<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>typeTable: <span \ class="Apple-tab-span" style="white-space:pre"> </span>#(#xIllegal #xIllegal \ #xIllegal #xIllegal #xIllegal #xIllegal #xIllegal #xIllegal #xDelimiter #xDelimiter \ #xIllegal #xDelimiter #xDelimiter #xIllegal #xIllegal #xIllega...etc...<br \ class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>here: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>hereType: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>hereMark: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>hereEnd: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>prevMark: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>prevEnd: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>encoder: <span class="Apple-tab-span" \ style="white-space:pre"> </span>{an EncoderForV3PlusClosures}<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>requestor: <span \ class="Apple-tab-span" style="white-space:pre"> </span>a SmalltalkEditor<br \ class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>parseNode: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>failBlock: <span class="Apple-tab-span" \ style="white-space:pre"> </span>[closure] in \ Parser>>parse:class:category:noPattern:context:notifying:ifFail:<br \ class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>requestorOffset: <span class="Apple-tab-span" \ style="white-space:pre"> </span>0<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>tempsMark: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>doitFlag: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>properties: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>category: <span class="Apple-tab-span" \ style="white-space:pre"> </span>nil<br class=""><br \ class="">Parser(Scanner)>>scanToken<br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>Receiver: a Parser<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>Arguments and temporary \ variables: <br class=""><br class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>Receiver''s instance variables: <br \ class=""><span class="Apple-tab-span" \ style="white-space:pre"> </span>source: <span class="Apple-tab-span" \ style="white-space:pre"> </span>a ReadWriteStream<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>mark: <span \ class="Apple-tab-span" style="white-space:pre"> </span>22<br class=""><span \ class="Apple-tab-span" style="white-space:pre"> </span>hereChar: <span \ class="Apple-tab-span" style="white-space:pre"> </span>$ <br class=""><span \ ["Bildschirmfoto 2018-09-11 um 20.13.03.PNG" (Bildschirmfoto 2018-09-11 um 20.13.03.PNG)] PNG IHDR N F tWF iCCPICC Profile HTSϽBޛ**!@B \ ؑA)#(UѡĂ(`AdPPQyg:|>vNZ 2ba>