smellman's Broken Diary

クソみたいなもんです

地図のインフラとしての地図タイルとは OSC2020 Online/Spring

OSC2020 Online/Springにて、「地図のインフラとしての地図タイルとは」というタイトルで発表をしました。


2020-4-25 A-6 地図のインフラとしての地図タイルとは

speakerdeck.com

いままでこのブログで書いていた内容や、JICAでの講義の内容を元にまとめたものとなりますが、話したいことをざざっと並べてしまったのでちょっと急ぎ足な発表ではあります。

まぁ、基本的な部分ではあるので、インターネットで地図を使う人には必須な内容かなと思うので、これから使う人はぜひ参考にしてください。

あと、オンラインでやる上で個人的な注意点がいくつかあります。

  • Zoomの荒らしが来てしまってZoom内チャットが荒らされたのだけど、見てる人には見えないモデレータのみへのメッセージだったのでかなりきつかった。発表中に100件以上コメントが来たうえに、Keynoteがマウスのフォーカスを隠してしまってチャットが閉じられない状態になり、かなり精神的に負担が多かった。ZoomのURLは何が何でも非公開にすべき...(僕の発表のときにツイッターで流れてしまったらしい)
  • 質問時間はちゃんと作ろう。上記の理由でチャット自体を閉じてしまったのだけど、理解度だったりを知るすべがTwitterしかなく、今後の参考にするものを得るのが難しくなるのである程度余裕があるプレゼンを作ると良いと思う(特にオンラインだと顔が見えない)。
  • マウスのポインタが見えなくなるのでそもそも黒いプレゼン背景自体が良くないかも。黒くした方が見やすいと思って作ったんだけど、ロゴとか貼り付けるときに透過とか無理やりそこだけ白背景とか入れたりして珍妙な作りになってしまうのも途中からきつくなった。

というわけで、正直発表してから理解度とかが曖昧になっているので質問などありましたらツイッターなどで適時聞いてください。

39歳になりました

また一つおっさんになりました。

最近は悪夢との戦いというか毎日体調が変わるような日々で厳しくもありますが、なんとか生きています。

なんとか生きてるといえば大腸の入院検査を受けたんですが、これはぐっちょむに下痢が止まらないって話をしたら「それはポリープじゃないすか?入院検査で取り除いたら一気に下痢治りましたよ!」という経験談を聞いて受けたっていうのが経緯なんですが、結果としてはポリープが無いどころか大腸は健康とのことで、完全に下痢は精神から来てるっぽくて鬱病の治療を優先しないといけないっていう状態になりました。

さて、直近では東京都や千葉県版のstopcovid19とかお手伝いしていたりします。ただ、東京都の方は少しフェードアウトしてて千葉県版の方にフォーカスを向いています。

covid19.civictech.chiba.jp

千葉県版はフォークしたタイミングがちょっと古く、東京都の改修に全然追いついていない状態ではあるのでどっかでなんとかしたいなーと思いつつ、なかなか余裕がないので手伝える人募集中です。

github.com

ちなみに、東京都の方に参加した経緯は、そもそもstopcovid19のサイトの立ち上げを担当したCode for Japanの代表が弊社社長だったりするっていう感じです。

あと、仕事の方で余裕があった時期っていうのもポイントでした。とはいえ、東京都の方は爆速でissueがassignされていくのでなかなか手を動かしづらい感じではありました。

千葉県版はCivic Tech Zen Chibaとは元々去年イベントに参加したりしてたし、発起人も友達なので〜みたいな感じです。

しかし、この件関わってざっくりとVueについて理解が捗ったのが個人的には良くって、やはりシビックテックやOSSは自分のためにも参加するっていうのが一番良いなーと思ってます。

他、docker-postgisやdocker-pgroutingとかを改修したりとかしています。最近追いつけなくなったけど、ある程度コミットできたのはすごく良い経験だった。

仕事の方は最近学生にプログラミングを教えるっていうのがあって、研究の妨げになりそうなものを補助するっていうのが目的で、これはこれで自分の知識を言語化しないといけないのでやはり僕自身の勉強にもなります。

まぁ、こんな感じで一つおっさんになったのですが、まだまだやっていこうと思います。

Apple Musicで聞けるBreakcore 10選

先日Apple Musicに入ったんですが、だいたい小学生〜大学生の頃聞いてたものが結構豊富にあって大変捗っております(何

まぁ、せっかくなのでBreakcoreでどこらへんがあるかなーと調べてリストを作ってたらアルバム10枚ぐらい出てきた感じなので、紹介しようと思います。

1. V.A. / Drop Name Records Vol 1

music.apple.com

V.A.ものとしては個人的にかなりハマっていたアルバムです。
個人的には MaladroitのBust a Digitalが最高に好きです。

2. Nero’s Day At Disneyland / Grievances and Dead Malls

music.apple.com

名前からしてやべーやつです。
1曲目はまじで最凶というかアホみたいなドラムでボッコボコにされます。

3. Synthamesk / Regression

Regression

Regression

music.apple.com

Synthameskはあまりないものの、最近の代表的なアルバムがありました。
ここらへんはもう解説なしでとりあえず聞けってやつです。

4. Emotional Joystick / Bellicose Pacific

Bellicose Pacific

Bellicose Pacific

  • Emotional Joystick
  • エレクトロニック
  • ¥1528
music.apple.com

1曲目のEightは2000年代前半にアホみたいにエレクトロニカ系のインターネットラジオで流れていました。
ちなみに、昔iTunesで買った気がしたのですが、よく見たらアルバムが違いApple Musicに入ってなかったら半分ぐらい聞き逃してた...

5. 廻転楕円体 / 奈落の虹

奈落の虹

奈落の虹

  • 廻転楕円体
  • アニメ
  • ¥1681
music.apple.com

ジャンル: アニメで吹いた。
カルト的な人気(ライブでの印象)を持つ廻転楕円体さんの1stもApple Musicにあります。
ちなみに、これは僕の葬式で流して良いと本人の許可を得ておりますので何卒〜

6. Ruby My Dear / Brame

Brame

Brame

  • Ruby My Dear
  • エレクトロニック
  • ¥1528
music.apple.com

るびまことRuby My Dearのアルバムなんですが、これはかなり問題作というか好みが非常に分かれるやつですね。
Igorrrのデス声もサンプリングされてて個人的にはめちゃくちゃ好きな作品なのですが、いろんな要素を詰め込みすぎな感じで、そこが好き。

7. Vexkiddy / Knocking out numbers

Knocking Out Numbers

Knocking Out Numbers

  • Vexkiddy
  • エレクトロニック
  • ¥1377
music.apple.com

たしかもともとはCock Rock Discoから出ていたと思われる作品。
特に3曲目の一気に曲調が変わるところが本当にかっこいい。
ただ、このアーティスト自体はすでにBreakcoreやってないはず。

8. Jega / Card Hore

Card Hore

Card Hore

  • Jega
  • エレクトロニック
  • ¥611
music.apple.com

Planet Muの初期の頃から活躍しているJegaが1997年にSkamから出したEPです。
全体的にはブレイクコアというとIDMよりのエレクトロニカって感じですが、1曲目がもうむちゃくちゃなので是非聞いてほしい。
ちなみにナウシカネタもあります。

9. John Frusciante / PBX Funicular Intaglio Zone

music.apple.com

レッド・ホット・チリ・ペッパーズのギタリストが何故かBreakcoreを作ったという珍妙なアルバムです。
特に3曲目のBikeはゴリゴリのBreakcoreでアホみたいなアーメンブレイク乗っけてきます。
ちなみに、昔Renoiseで作られた音源とかも公開されてたんですが、そこらへんは消えたっぽいです。合掌。

10. Venetian Snares / Hospitality

Hospitality - EP

Hospitality - EP

music.apple.com

僕自身はVenetian Snaresが好きで好きでたまらないっ子なんですが、Apple Musicにはかなりの楽曲が入っているのでそのうちの一枚を。
EPなので曲数は少ないけど、個人的には一番Venetian Snaresっぽさを感じる一枚で、しょっぱなからかっこいいイントロからの爆発力のあるBreakcoreかましてくれます。

なお、残念ながらHecate & Venetian Snaresは無いようです...

あけおめことよろなど

あけましておめでとうございます。今年も一年よろしくお願いいたします。

さて、最近Mapbox Vector Tileのことをここで書いてないのですが、代わりにgitbookを使っていろいろ知見を書いて共有しようかなとこんなの始めています。

smellman.github.io

あとちまちまとメンテナンスされてないユーティリティとかをメンテナンス可能にするために勉強や調査などをしています。

Mapbox Vector Tile以外では仕事で使いたいAWSのLambdaベースのプロダクトがPython 2.7で止まっているというヤバい状況だったのでPython 3.7対応を行ったりとかしていました。

github.com

これはS3にアップロードされたファイルをLambdaでClamAVをかけるというもので、まぁぶっちゃけMy City Reportで使おうと考えてるものです。

音楽方面ではつい先日紅白でKing Gnuが良かったのでついでにApple Musicに入会しました。iTunes Matchからの移行なんですが、いまのところはトラブルなしって感じです。
いまさらな感じはしますが、Apple Musicは古い曲があってとても助かりますね。リトル・リチャードとかニール・セダカあたりが聞けてかなり満足しています。
まぁ、メインはブレイクコアなんで今年も余裕があればクラブに足を運ぼうと思います。

いろいろ終わりました

昨日づけで自分で持っていたいろんなタスクが終わり、一段落してザ・ノンフィクションを見たらタイトル画面がphaとkumagaiさんのツーショットで爆笑しました。

まぁ、ちょっと振り返りをしてみたいと思います。

FOSS4G 2019 Niigata (2019/9/13-14)

こちらはスタッフ参加及び国連ベクトルタイルツールキットのハンズオンの手伝いをしにいきました。

1日目の国連ベクトルタイルツールキットハンズオンでは主に止まってしまった参加者のサポートを行うという感じでした。
国連ベクトルタイルツールキット自身はdockerを使って各種地理情報の変換やベクトルタイル化をamd64やarm/v7をプラットフォームとして使えるようにしたもの(unvt/rasv)で、さらに FOSS4G 2019 Niigata では ango という名前でハンズオンに使えるデータやホスティングプログラムを docker image (unvt/ango) として配布することで円滑にハンズオンを行うというものになっています。

hackmd.io

arm/v7をサポートしているため、Raspberry Pi 3をサポートしているのが特徴的です。なお、基本となるdocker imageも unvt/rasv なのでRaspberry Piを意識したものになっています。

ハンズオンでは事前にdocker imageを落としてきてっていうお願いをしていたのですが、やはりメールを見逃した人が一人いて、僕が持ってきていたRaspberry Pi 3をローカル接続してなんとかハンズオンを乗り切るという形で対応をしました。

2日目はスタッフとしてyoutube配信を実施しました。ビデオカメラとHDMI->USBの変換するデバイスは用意してもらっていたので、こちらはUbuntu 19.04を入れているThinkpad X220を持ってきて接続を行い ffmpeg コマンドで配信を行いました。

https://i.imgur.com/fagCBpFl.jpg

他にもミキサーなども用意していたのですが、使うことはありませんでした。

当日の配信は以下のものとなります。

www.youtube.com

www.youtube.com

www.youtube.com

www.youtube.com

なお、基調講演をしてもらった内閣官房政府CIO上席補佐官の平本さんのところだけ前半が切れてしまい、別途アップしています。

www.youtube.com

なんで切れたのかというと、実はURLを事前にツイートするため時間の予約を行っていたのですが、それをするとことごとく配信ができないという状態になりました。そのため、慌てて新しく配信を作っていたら時間が切れてしまったという感じです。この反省は次の神戸のイベントで生かされることとなりました。

JICA研修: 地理空間情報のWeb提供技術 (2019/10/2)

毎年JICAが海外の研修生を日本に招いて国土地理院や色んな所で講義や実習を行っているのですが、僕も毎年1日分講義を担当しています。2014年からなので今年で6回目となります。

今回は国連ベクトルタイルツールキットを使うように全面的に改修を行ったため、まぁプレゼン作りが地獄でした。

speakerdeck.com

まず、今回のために inazo というコードネーム(ヨーロッパのデータを使うので新渡戸稲造からとった)でhfuさんが作成をしていたのですが、僕がクロスコンパイル環境作ったほうが良くないかと思いdockerでarm/v7のバイナリも作成できるようにしたりとか、せっかくなのでserveo.netを使って触ってもらおうとかいろんなことを考えて全然プレゼン作りが進まなくて、締切となる2日前にやっと日本地図センターの人にファイルを送ることができました。

JICAの講義ではまず手始めに持ってきたRaspberry Pi 3で inazo を動かしてそれをserveo.netで動かすことでみんなにアクセスしてもらうというのをやりました。アクセスしてるときはコンソールを表示してアクセスされている様子を教えることでイメージを作ってもらって、それから講義という形でやりました。

今回一番苦労した点は、今年からJICAからタクシー代が出ないっていう制限が発生してしまったので、国土地理院にバスで向かうのですが、余裕ぶっこいていたらバスの本数が極端に少ないのを完全に忘れていてギリギリのバスが遅延もしていて到着したのが5分ぐらい前で、慌ててセットアップしていたら「通訳をお願いする」というのができなく、気づいたら英語で講義をする羽目になったというものです。しかも5時間もあって最後の方は声を出すのが辛いぐらいになってしまった。いつもは通訳があるので少し休めるのだけど、それが一切できなかったのでほとんど喋りっぱなしになり疲れました。

次に苦労したのは事前にPCがWindows 10 Proと聞いていたのでHyper-Vが使えるのでdockerが動くという前提で進めていたのだけど、docker.comでDocker Desktopをダウンロードするのにアカウントを要求してきて、アカウント作りのサポート、例えばアカウント名はどういうものにしたらいいかとか、Captchaがわからないとかを対応してダウンロードを開始するもネットワークが遅くてダウンロードできる人とできない人が出てきて、ダウンロードできたとしてもDockerが動くマシンと動かないマシンがあるのでなんでだろうと調べたら12台あるマシンのうち数台以外BIOSから仮想化がオフになっていて、国土地理院の人も手伝ってもらってBIOSの設定を一つ一つ替えていったりして、本当にバタバタが発生した。いやー、同じマシン買ってるんならBIOSも同じ設定になってないのおかしいだろー。

最後に、苦労というよりこれは面白いなと思ったのが、僕がWindowsで説明してるんだけど日本語版なのでバックスラッシュが円マークになってるため、その文字はなんだ?っていう質問を受けたところ。この質問内容が僕も通訳をいつもやってる人も何を聞いてるのかよくわからなくて、円マークのことを言ってるのがわかった瞬間に思いっきり膝ががっくりした。Windowsの言語設定を英語にしてやるべきだったなーとしみじみ思ったんだけど来年には忘れてそう(汗

あと、一番質問をしてくれた人はマダガスカルから来ていて、OSGeoの現地の団体を作りたいっていう相談をされた。一番良いのはVenka先生あたりにアドバイスもらうことだけど関西に来るのは難しいなーってなったので、なんとかリモートでサポートしたいなーと思った。

FOSS4G 2019 Kobe KANSAI (2019/10/13)

このイベントではMapbox Maps SDKスマートフォンアプリ開発というタイトルで発表をしました。

hackmd.io

まず大変だったのは台風です。台風接近に伴い当日入りだと間に合わない可能性があったので、金曜日のうちに神戸に移動して弊社神戸オフィスに泊まろうという作戦を考えたのですが、案件の方で金曜日に実機の受け渡しをして欲しいという要望があったので頑張って木曜日のうちにデータの作成を行って対応をしました。というか木曜日にいろいろありすぎてやばかった。

神戸オフィスは一軒家をまるまる借り切ってる感じなので風呂もベッドもある快適な環境なのですが、台風の音がうるさくてちょっと睡眠不足になりつつ発表資料の作成を行いました。

で、問題となったのはAndroidの実装から見えてきたMapbox Maps SDKの考え方がいままで地図プログラミングでやってきたものとだいぶ違うものになっていたというものです。発表資料にも書いたけど、Layerという考え方をまず行って、タップした時にqueryをレイヤーに対して投げるっていうものになるので、ベクトル化されたものが本当に全面に押し出されていて、本当の意味でMapboxがやりたいことを実現してきたなという印象があり、それに伴ってiOSでも同じことをしようとやっていたらReact Nativeの実装が書けずに終わった。

なお、今回の発表に伴う調査で僕が書いたReact Nativeの本も古くなってしまったというのが確定したのでちゃんとフォローアップをしないといけないと痛感しました。というか僕がReact Nativeの本書き始めたぐらいからReact Nativeの案件が離れていったというのも問題なんだけどね(最近復活した)。

さて、イベント中はイベントの準備や配信のお手伝い、ネットワークトラブルの対応など、特にスタッフとして換算されてないけど適当にやれることをやりました。そのため、充実感はかなりありましたが、帰りにはぐったり。

あと、イベントの前日に夕飯一緒に食べた友達(昔からのIRC繋がりとか、すまべんで一緒だったあいつ)の同僚とイベントで知り合いになるというまじで世間が狭いやつが普通にあって超面白かった。

まぁ、そんなこんなで昨日までの僕が抱えていたタスクは消化されました。これからjus初代会長のお話を聞きにドワンゴに行くぞ!

jus.connpass.com

Georepublicに入社して8年目になりました。

営業日的には昨日付けで8年目に突入しました。とはいえ、昨日も今日も精神的に病んでダウンしていましたががが。

この一年振り返ると、まぁ稀に見るぐらい案件は大凶っぽさがあったなぁっていう一年でした。

Visual Basic+OracleRuby on Rails+Oracleに移植するというなかなかきつい仕事が夏まであって、やっと終わったころに今度はどでかいRuby on Railsの案件の引き継ぎというのをやりました。
どでかいというか、いきなりサーバ60台引き継ぎなんでかなり辛いし、Ruby on Railsとか言いながら変な内製ライブラリがあってそれが異常な実装だし、そもそもRubyが引き継ぎ段階でEOL迎えてるとかあって、今もなお絶賛改良中だったりします。
ちなみに、この引き継ぎプロジェクトの大変さを話をしたら、DJKuraraさんに「チョコバナナと言われて渡されたものが下痢便だった」と例えられ、これ以上的確な表現は無いなぁと思いました。
この案件が巨大なためさすがに弊社だけではダメだと思っていろいろ声かけたところ、sinsai.infoでお世話になったハートビーツさんにインフラの監視をお願いしたり、前職のAppritsのメンバーや、日本Rubyの会代表の高橋さんや日本UNIXユーザ会で一緒にやってる高野さんと一緒に仕事をするようになって、大変人の縁の大切さを感じるものとなっています。
代わりに後輩は倒れましたが....

他にも相変わらずやっているARの案件は無事クリアして今年は新しいフェーズとして新しいチャレンジをすることになっています。
その関係でVirutualBoxを捨ててParalles Desktopに移行したところ、すげー快適な環境が作れて今までなんだったんだーみたいな感じになっていたりもします。
案件とは関係ないけどUbuntuがかなり早く動いてくれるのが非常に助かっていて、快適なQGIS環境が作れています。

仕事の環境と言えば、今年になって結構人が増えました。
特に面白かったのは今年の新卒で入ってくれた藤田君です。LOCAL関係の人ならご存知かと思いますが、SecHack365でWebUSBを使ってマイナンバーカードを使えるようにしたというハックでも知られています。
ちょうどOSC Tokyo Fallで紹介されて、就職先の相談をされて面白そうだなと思って紹介したら即採用となりました。
今もガンガンハックをしていて、今日なんかもラズパイの記事を投稿しています。

qiita.com

彼はすでに弊社の新しい神戸オフィスのリモートで管理できるようにこれでしているようで、秘密基地っぽさがある神戸オフィスを物理的にもハックしていて本当に面白いです。
他にも、元ボクサーで前職が消防士っていう人も入ってきていて、どういう幅の広さなのか謎な感じもあって面白いです。

仕事に関係してるOSSな活動としては今年はFOSS4G Tokyoが無く、代わりにFOSS4G Niigataとして新潟で開催することが決まり、その準備に取り掛かっています。
基調講演もOKがでてますので、今後の発表を期待してください。
あとは、OpenStreetMap Foundation Japanの方でも新しいタイルサーバの構築の方を進めていて、OpenMapTilesでのissueのやり取りからOpenStreetMap USのコミュニティの方にも顔を出したりするようになったりしています。
こっちの方はあともうちょっとバグが取れたらベータ出してもいいかなってところからずっとハマってるのでなんとかしたいなぁと思っています。

あと、去年執筆したReact Nativeの本は電子の方は売上が出てるようなんですが、やはりマイナーなのか物理の方がもうちょっと売れてくれると(出版社が)助かります。

React Native+Expoではじめるスマホアプリ開発 ~JavaScriptによるアプリ構築の実際~

React Native+Expoではじめるスマホアプリ開発 ~JavaScriptによるアプリ構築の実際~

ちなみに、React Nativeの別の本が僕の本の翌月ぐらいに出てたのに気づきました。本屋で立ち読みしたんだけど、アプローチはやっぱり異なっていてとても勉強になりました(汗

まぁ、こんな感じであいかわらず精神が病んでますががんばろうと思います。と書いてる最中にハートビーツさんから電話が来てサーバトラブルの対応していて精神的に辛くなっていますががが

六畳間の侵略者!?29巻読了

ものすごくひさびさに書くライトノベルの感想です。というか、このライトノベルについて前に書いた感想が14巻なので、実に15巻ぶりです。

ここまであまり書かなかったのはざっくりいうと本を読まなくなっていたからです。ライトノベル以外にも本もなかなか読めないっていう状態で、地図の仕事がいろいろあり、そしてまた楽しかったっていうのもあります。

ただ、去年の11月に心が死に、ライトノベルを大量に読んで凌いだ時期がありました。特に11月〜1月まではKindleで5,60冊ぐらい読んでました。

そしていろいろ読みはしたけど、今まで物理的に買っていたのに読むのが止まってたものがあって、3月に読んでなかった分を26巻から一気に買ったのが六畳間の侵略者!?です。

そのころ、ちょうど慣れないハヤカワ文庫の「順列都市」の上巻に手を出し、難解な文章に頭がこんがらがってたんですが、上巻を読み終えた後、一気に六畳間の侵略者!?に気心がいって、26巻から一気に読み始めました。

そして移動中とかを駆使して昨日29巻が読み終えたというところです。読み終えた後に運営委員会やら飲み会に楽しくやりましたが、いい意味で影響を受けて場に出れたという感じがあったので感想を書きたくなったというのが今回のエントリです。

まず、六畳間の侵略者!?の第一巻を読んだ時期が記憶に無いです。本の印象は強かったし、楽しい本だという記憶があるけど、そもそもこのシリーズ何年続いたのか記憶が曖昧です。多分10年は続いているはず。

で、何度か感想をブログに乗せてはいるけど、いろんなフラグが立ってるっていうのが初期の感想だったんですが、途中から話が壮大になりすぎてすげーカッコいいストーリーという意識が強くなってきて、だんだん求めていたものと違う系統になりすぎてきてるという感じがありました。孝太郎まじ英雄みたいなのとかがそこらへんかと。

でも、少しずつ、本当に少しずつ少女たちの思いが孝太郎に近づいていくところ、そして孝太郎もその気持ちに近づいていくところはすごく良くって、じっくりと書かれているからこそ気持ちがよいものでした。じっくりと、ねっとりとみたいな感じです。本当によいリズムです。

これが合計31(.5巻含め)巻分のものになって最後に期待した通りの優しい結末を迎えたというのが最高に嬉しいというのが本巻の感想です。最高のリズムです!

アニメから入った人にはわからないかもしれないのでとりあえず初めの5巻ずつぐらいから買い進めてみてほしいです。僕はこの作品の魅力にメロメロになっていきました。

一番言いたいのは、ここまで比較的優しいお話を、決して悲観することなく、一段落つけるところまで進めてくれた(作者もあとがきで言ってるように)奇跡の産物というのがとてもうれしくて作者に感謝をしたいという気持ちでいっぱいになりました。

そして何よりこの先の話が進むということ(すでに買ってるから知ってるけど)がありがたいなという気持ちにさせてくれます。

孝太郎の物語はアニメでは4月〜12月ぐらいだったかと思います。本作は4月からすでに二年たった3年生の4月まで進んでいます。アニメを見てない方でこの作品が好きだと思った人はもう(.5巻含め)15巻ぐらいまでは読んでほしいです。できれば29巻までも。

僕はこれから30巻を(少し読んだけど)これからスキマの時間に読み進めています。

ただ、言えるのはらぶいずおーるです。ここまでで本当に心温まるお話をありがとうと作者に感謝をいたします。

しかし、本巻読み終えた後に精神科の通院言っておけば案件で病んでた心が少し収まって、薬の量増量しなくて済んだんじゃねーのみたいな感じです。

六畳間の侵略者!? 29 (HJ文庫)

六畳間の侵略者!? 29 (HJ文庫)