凪瀬 Blog
Programming SHOT BAR

目次

Blog 利用状況
  • 投稿数 - 260
  • 記事 - 0
  • コメント - 46968
  • トラックバック - 192
ニュース
広告
  • Java開発者募集中
  • 経歴不問
  • 腕に自信のある方
  • 富山市内
  • (株)凪瀬アーキテクツ
アクセサリ
  • あわせて読みたい
凪瀬悠輝(なぎせ ゆうき)
  • Java技術者
  • お茶好き。カクテル好き。
  • 所属は(株)凪瀬アーキテクツ
  • Twitter:@nagise

書庫

日記カテゴリ

 

「Step数を報告して」と言われると「Step数(笑)ですか」と言いたくなる今日この頃、 みなさん、いかがお過ごしでしょうか。

ところで、Step数って何が悪いのかを説明できますか? その数字の示すところを知った上で正しく使うには問題ないのですが…。

Step数は規模に対して正の相関関係を持つ

まず、Step数と規模にはなんらの関係もないわけではありません。 Step数は確かに規模と正の相関性を持っています

ただし、誤差があまりに酷いというだけのことです。

Step数という指標の誤差には以下のような原因が考えられます。

  • コードのフォーマットによる誤差
  • マルチステートメントなどの記法による誤差
  • ロジックによる誤差
  • 冗長性による誤差

他にもあると思いますが、挙げ始めるときりがありませんね…。

コードのフォーマットによる誤差

コードのフォーマットによる誤差は

for (int i=0; i<100; i++{
  // ...
}

for (int i=0; i<100; i++)
{
  // ...
}

といったところで出てきます。仮にfor文やif文が平均して100 Stepに 1回の頻度で出てくるのであればこのフォーマットの違いによって1%の誤差が出ます。 感覚的にはfor文やif文の頻度はもっと高いですから、数%の誤差にはなることでしょう。

これらの誤差は機械的なフォーマッタで変換するなどすれば排除できます。 JavaでEclipseを用いている場合、 CheckStyle などのプラグインを用いればコンパイルの際に添削して警告を出してくれます。

コーディング規約など作っても、チェックする人がいなければ絵に描いた餅。 こういうことは機械にやらせるのが一番です。

マルチステートメントなどの記法による誤差

Javaなどでは1行に複数のコードを記述するマルチステートメントが可能です。

int a, b;
int c=0, d=0;
int e=0int f=0;

また、メソッドの連鎖的な呼び出しもできますね。

StringBuilder sb = new StringBuilder();
sb.append(1).append("+").append(1).append("=");

このような記法を展開して記述すれば1行が2行以上に増えてしまいます。 これらの頻度によりますが、こういった記法の差が数%~十数%程度の誤差になるのではないでしょうか。

このあたり、以前に 関連アイデア を出しているのですが、Step数なんていうソースコード上での行数ではなく、 構文解析木にした上での要素でカウントすればもっとマシな指標になりそうです。

ロジックによる誤差

同じI/Oのロジックをプログラムさせても人によって記述するロジックはさまざまです。 そして、採用するロジックによってプログラムは短くも長くもなります。

同じI/Oのプログラムをいろんな人に書かせてみると面白いかもしれません。 その際、Step数の分布は 正規分布 をとるかもしれません。
私の勘では縦軸に人数、横軸にStep数のlogをとると、正規分布になるんじゃないかと思います。

分散がどの程度になるのかは実際の統計を取ってみなければわかりませんが、 統計的には±2σの範囲に95.44%で収まるとされます。

経験則からすれば中央値が100Stepのプログラムだと 50~200ぐらいの幅に収まるのではないでしょうか? この場合、Step数は10^(2±0.3)ぐらいということになりますね。 (10^1.7≒50.12、10^2.3≒199.53)

Step数の10を底とするlogに対して2σは0.3を超えないとしますと、μ=1、σ=0.15となります。

この推計値がそれほど正しいとは思いませんが、ロジック次第で Step数の中央値に対して-50%~+100%程度の幅が出ることは経験則とはさほど外れていないことでしょう。

冗長性による誤差

論外なのでロジックによる誤差の項では考慮していませんが、構造化プログラミングができていなくて コードクローンが散らばっている状況下では数百%程度のStep数の違いは不思議なことではありません。

簡単なコードレビューでもこういった酷いコードは排除できます。 一応、コードクローンを探すようなツールもありますから、そういったもので検出を試みるのも手です。

誤差の大きなStep数から算出される指標もまた誤差が大きい

ここまでの考察で、Step数の値は誤差が非常に大きく、±50%程度は平気でずれることを指摘しました。

では、1000Stepあたりn件のテストケース、とかn件のバグ検出といった指標はどうでしょうか?

そもそものStep数が±50%程度の誤差を含んでいるのであれば、 これらの数値も当然±50%程度の誤差を含みます。 仮に1000Stepあたり50件のテストケースを出せと言われたならば、 25~75件ぐらいまでの誤差があるはずです。

50に満たないからダメなどという人がいたりしますが、 その人は数字というものが理解できていないだけです。

誤差の程度がどのぐらいかを踏まえた上で、目安として用いるのであればこれらの指標は それなりの意味があります。意味を考えずに、「そういうルールだから」と思考停止して 数値を適用しようとするとむしろ足を引っ張るだけですね。

投稿日時 : 2008年3月4日 11:20
コメント
  • # re: Step数は全くの役立たずなのか?
    れい
    Posted @ 2008/03/04 11:43
    えーと。
    私はStep数のStepが何を示すのかわからないのですが。

    Stepというからには…
    階段?ってことはループの深さですか?
    それとも行数のことでしょうか?

    謎です。
  • # re: Step数は全くの役立たずなのか?
    凪瀬
    Posted @ 2008/03/04 11:48
    http://e-words.jp/w/E382B9E38386E38383E38397E695B0.html
    一般的な業界用語では行数ですね。
  • # re: Step数は全くの役立たずなのか?
    ながせ
    Posted @ 2008/03/04 12:01
    アセンブラなら、正の相関関係がありますが…。
    それでもまたCPUのアーテキクチャで違いますからね。MMX命令を使うとか使わないとかでw
  • # re: Step数は全くの役立たずなのか?
    ながせ
    Posted @ 2008/03/04 12:02
    アセンブラなら、正の相関関係がありますが…。
    それでもまたCPUのアーテキクチャで違いますからね。
    さらに同じアーキテクチャでもMMX命令を使うとか使わないとかでもさらに・・・w
  • # re: Step数は全くの役立たずなのか?
    シャノン
    Posted @ 2008/03/04 12:10
    XML設定ファイルの設定ミスなんかもバグの一種に含めるならば、ソースコードの行数だけを対象にするわけにもいかないと思います。
    冗長性によるものは論外とされていますが、同じ行数でも、手続き型プログラミングと宣言型プログラミングでは指標が全く違ってくるでしょう(宣言型のほうがずっと密度が濃くなると思います)。
    最近は手続き型言語にも宣言型プログラミングの要素が増えてきています。XML設定ファイルもその一種に含められるでしょう。
    バグ数はプログラムの規模に正比例するでしょうが、「プログラムの規模」というものを定量的に見積もるのがそもそも難しいのですよね。
  • # re: Step数は全くの役立たずなのか?
    凪瀬
    Posted @ 2008/03/04 12:10
    高級言語でも正の相関性がありますよ。
    HelloWorldと月間100人体制で3年かけて作っているシステムのStep数が逆転することはないわけですし。
    ただ、あまりにブレが大きいから規模が倍とかそこらだと逆転するかもしれない。
  • # re: Step数は全くの役立たずなのか?
    凪瀬
    Posted @ 2008/03/04 12:14
    > XML設定ファイルの設定ミスなんかもバグの一種に含めるならば

    この部分も至極もっともで、Step数って言う場合、考慮漏れが多いんですよね。
    特定言語の記述だけで完結するほど今時のシステムは単純じゃない。
    でも、昔ながらの単純な指標を使い続けようとするから矛盾が出てくる。

    少なくともSQLとか正規表現とかは別扱いのはずだし、DIコンテナなどXMLでの設定が多くなると
    それらの記述についても考慮しないといけなくなる。

    なんにせよ、Step数を基準にした指標というのがどういう範囲でどの程度信用できる値なのかはよく意識して使わないといけない。
    それなしにStep数とか言っていると笑われてしまいますよ、と。
  • # re: Step数は全くの役立たずなのか?
    かつのり
    Posted @ 2008/03/04 12:33
    ステップ数当たりのバグ件数やらテスト数をごちゃごちゃいわれると、改行取りますかw?と言いたくなるオイラが来ましたよ。

    ステップ数神話がまだ生きていることを逆手に、

    「ステップ数は最近は少ないこと=メンテナンス性のよさ」

    を売りにしています・・・。自分で意味がないのは知っていますが・・・。
  • # re: Step数は全くの役立たずなのか?
    れい
    Posted @ 2008/03/04 12:43
    > 一般的な業界用語では行数ですね

    行数だったのですか…。
  • # re: Step数は全くの役立たずなのか?
    Ognac
    Posted @ 2008/03/04 12:59
    ステップ数/行数: 私も全く無意味だとは思いません。有効なステートメント数で概略が見えます。定規にはなりませんが、目安にはなるかと思います。あくまで目安なので、工数単価の根拠に使ってはいけません。
    家を作るとき「坪単価」という言葉が使われますが、水周り部屋のコストが高く、納戸は低いのは自明ですが、平均して坪単価で話をするので、間取りの数しだいで、意味合いがガラリと変わります。坪単価で家を発注してはダメなのと同じ理屈だと思うのです......<- 違うかな?
  • # re: Step数は全くの役立たずなのか?
    ゆーち
    Posted @ 2008/03/04 13:08
    げ!
    坪単価で家を発注しちゃ行けなかったのか・・・_| ̄|○

    ってそこかよ!(w
  • # re: Step数は全くの役立たずなのか?
    凪瀬
    Posted @ 2008/03/04 14:01
    目安は目安ってことで。
    目安を基準にした数値もまた目安ってことで。
  • # re: Step数は全くの役立たずなのか?
    がる
    Posted @ 2008/03/04 14:24
    わ~い詳細ありがとうです & うんやぱしおいらの感覚と凪瀬さんの感覚は対してずれてないことを再確認(笑

    んと。
    ・大体同じような世界観を持っている相手
    と「規模感の多少」を会話するためのstep数は、比較的会話が成り立ちやすいです。
    ってのも、結局のところ、ある程度誤差が少ないからなんだろうなぁとか予想。

    ただ多分。step数云々いってるところって、凪瀬さんの言うところの「冗長性による誤差」が一番でかいような(苦笑
    コードクローン(と関数化とかクラス化とか以下略)あたりって、なんだかんだへ理屈つけて「やらない」って名言する人も多いですし。

    まぁ「気をつけた上での目安にはなる」感じですかね。
  • # re: Step数は全くの役立たずなのか?
    凪瀬
    Posted @ 2008/03/04 14:59
    がるさんのはこのエントリかな?
    http://d.hatena.ne.jp/gallu/20080221/p1

    そして、過去にメモを書いていたことを発見w
    http://blogs.wankuma.com/nagise/archive/2007/08/19/90960.aspx

    このエントリは構文解析木にしたうえで、辞書式圧縮をかければ書式の違いや、
    コードクローンの影響を抑えた指標を作れるんじゃないか?というアイデアが書かれていますね。
  • # re: Step数は全くの役立たずなのか?
    シャノン
    Posted @ 2008/03/04 18:13
    アセンブラ換算なり中間言語換算なりAST換算なり、ソースコードの字面に依存しない方法でプログラムの規模を計るのはいい案だと思います。
    ただし、それは既に完成したプログラムに対してしか計測できないので、今回のような、プログラムの規模に対して予想されるバグ数の算出とかにしか使えません。

    「そもそも今回はそんな話はしていない」と言われると黙るしかないのですが、コーディングに入る前に、もっと根本的には、工期と予算を決める前に、プログラムの規模を定量的に見積もる方法が必要とされています。そんなことが原理的に可能なのかどうかは知りませんが。

    ただ、がるさんのところに書かれていますが、営業とか契約のレベルで、ざっくりと(笑)やられてしまうと悲劇でしかないわけで。

    現状、どんな言語、どんなフレームワーク、どんなアーキテクチャ、どんなツール、どんな開発プロセスを採用するのか等によって、コストなどいくらでも変動しうるのに、それらを決定する前の段階で、「どんな機能を持つか」だけに基づいてコストを算出している気がします。
    ある程度の設計が完了するまでコストの見積もりを待つとかできないもんでしょうかねぇ。
  • # re: Step数は全くの役立たずなのか?
    凪瀬
    Posted @ 2008/03/04 18:24
    見積もりの話は…
    そのうちエントリ挙げますよ。

    今日、「この要件だと何Stepぐらいになります?」と聞かれて
    「設計も詰めてない段階でStep数(笑)ですか…。」というやり取りをしたばかりだったりw

    端的には、要件定義のフェーズは定量で受けて、そこで設計が固まった時点で
    分量がいくらなんで開発はいくらかかります、という話をすべきだと考えています。
    2段階で契約するってことですね。
    面倒だからそういう条件で受けてくれる相手がなかなかいないですが、
    そういう商習慣を作っていかないといけませんね。
  • # re: Step数は全くの役立たずなのか?
    シャノン
    Posted @ 2008/03/04 20:22
    開発は全体としては何フェーズに分けられるんでしょう?
    要件定義とそれ以外の2フェーズ?
    要件定義・設計・実装の3フェーズ?
    要件定義はともかく、設計を定量で受けられるかは疑問です。
  • # re: Step数は全くの役立たずなのか?
    Jitta
    Posted @ 2008/03/04 21:56
    > ステップ数
     単純に行数ではなく、有効なステートメントがある行を数えてくれるツールが、いくつかありますね。
    ただ、HTML の「ステップ数」を求められた日にゃ、泣きたくなりましたが。
    また、「開発環境が作ってくれる、自動生成コード」に対する考察が抜けていると思います。
    ADO.NET なんて、これでやった日にゃ、数万ステップ/日書けますわよ(笑)
  • # re: Step数は全くの役立たずなのか?
    凪瀬
    Posted @ 2008/03/04 21:58
    定量という表現はよくないな。要件定義は単価×時間で請け負うしかないと思いますね。
    のちに取り返せるなら見積無料!というのもアリですが、ここの工数はそれ相応に大きいので無料は厳しいだろうな。

    ようは、設計図を用意するところまでと、施工するところとの2フェーズですね。
    要件定義と設計は不可分に思っています。
  • # re: Step数は全くの役立たずなのか?
    凪瀬
    Posted @ 2008/03/04 22:01
    > 単純に行数ではなく、有効なステートメントがある行を数えてくれるツールが、いくつかありますね。

    空行やコメントを外してステップ数をカウントするツールは見たことがあるのですが、
    マルチステートメントのようなケースにも対応する、構文解析した上での定量化ツールは見たことがありません。
    存在するなら是非とも評価してみたいところ。

    > HTML の「ステップ数」を求められた日にゃ、泣きたくなりましたが。
    XMLとかHTMLとかのマークアップ言語だとどうしろっていうんでしょうかね?w
    要素数でも出せば気が済むんでしょうか。
    その数字、その後どうするんだよっ!?
  • # ステートメント数=ステップ数
    とおりすがり
    Posted @ 2013/07/01 14:26
    ステップ数と行数はまったく異なる概念だと考えています。
  • # re: [WPF][C#]テキストボックスをフォーカスがくると全選択状態にしたい
    wengdongdong
    Posted @ 2016/01/29 15:58
    http://www.chaussure-louboutin.fr
    http://www.canadagooseoutlet.cc
    http://www.adidas-trainers.me.uk
    http://www.tomsshoes.us.com
    http://www.longchampoutlet.net.co
    http://www.adidas-shoes.me.uk
    http://www.saclongchamp-solde.fr
    http://www.coachoutlet-storeonline.us.com
    http://www.fitflops.us
    http://www.ugg-boots-australia.com
    http://www.nikefreeruns.uk
    http://tiffany.outletmalls.us.com
    http://www.truereligion-outlet.com
    コメント
  • # Hi there! This article could not be written any better! Looking at this article reminds me of my previous roommate! He constantly kept preaching about this. I most certainly will send this article to him. Pretty sure he'll have a good read. Many thanks f
    Hi there! This article could not be written any be
    Posted @ 2021/09/03 12:01
    Hi there! This article could not be written any better!
    Looking at this article reminds me of my previous roommate!
    He constantly kept preaching about this. I most certainly will send
    this article to him. Pretty sure he'll have a good read.
    Many thanks for sharing!
  • # Hi there! This article could not be written any better! Looking at this article reminds me of my previous roommate! He constantly kept preaching about this. I most certainly will send this article to him. Pretty sure he'll have a good read. Many thanks f
    Hi there! This article could not be written any be
    Posted @ 2021/09/03 12:02
    Hi there! This article could not be written any better!
    Looking at this article reminds me of my previous roommate!
    He constantly kept preaching about this. I most certainly will send
    this article to him. Pretty sure he'll have a good read.
    Many thanks for sharing!
  • # Hi there! This article could not be written any better! Looking at this article reminds me of my previous roommate! He constantly kept preaching about this. I most certainly will send this article to him. Pretty sure he'll have a good read. Many thanks f
    Hi there! This article could not be written any be
    Posted @ 2021/09/03 12:03
    Hi there! This article could not be written any better!
    Looking at this article reminds me of my previous roommate!
    He constantly kept preaching about this. I most certainly will send
    this article to him. Pretty sure he'll have a good read.
    Many thanks for sharing!
  • # Hi there! This article could not be written any better! Looking at this article reminds me of my previous roommate! He constantly kept preaching about this. I most certainly will send this article to him. Pretty sure he'll have a good read. Many thanks f
    Hi there! This article could not be written any be
    Posted @ 2021/09/03 12:04
    Hi there! This article could not be written any better!
    Looking at this article reminds me of my previous roommate!
    He constantly kept preaching about this. I most certainly will send
    this article to him. Pretty sure he'll have a good read.
    Many thanks for sharing!
  • # Outstanding story there. What occurred after? Good luck!
    Outstanding story there. What occurred after? Good
    Posted @ 2021/09/05 8:45
    Outstanding story there. What occurred after?
    Good luck!
  • # Outstanding story there. What occurred after? Good luck!
    Outstanding story there. What occurred after? Good
    Posted @ 2021/09/05 8:46
    Outstanding story there. What occurred after?
    Good luck!
  • # Outstanding story there. What occurred after? Good luck!
    Outstanding story there. What occurred after? Good
    Posted @ 2021/09/05 8:47
    Outstanding story there. What occurred after?
    Good luck!
  • # Outstanding story there. What occurred after? Good luck!
    Outstanding story there. What occurred after? Good
    Posted @ 2021/09/05 8:48
    Outstanding story there. What occurred after?
    Good luck!
  • # We're a group of volunteers and opening a new scheme in our community. Your web site provided us with valuable information to work on. You have done a formidable job and our entire community will be grateful to you.
    We're a group of volunteers and opening a new sche
    Posted @ 2021/10/25 19:02
    We're a group of volunteers and opening a new scheme in our community.

    Your web site provided us with valuable information to work on.
    You have done a formidable job and our entire community will
    be grateful to you.
  • # Hello would you mind sharing which blog platform you're working with? I'm going to start my own blog soon but I'm having a difficult time making a decision between BlogEngine/Wordpress/B2evolution and Drupal. The reason I ask is because your design and st
    Hello would you mind sharing which blog platform y
    Posted @ 2021/10/27 1:28
    Hello would you mind sharing which blog platform you're working with?

    I'm going to start my own blog soon but I'm having
    a difficult time making a decision between BlogEngine/Wordpress/B2evolution and
    Drupal. The reason I ask is because your design and
    style seems different then most blogs and I'm looking for something
    unique. P.S Apologies for being off-topic but I had to ask!
  • # Hi, after reading this remarkable piece of writing i am too glad to share my know-how here with mates.
    Hi, after reading this remarkable piece of writing
    Posted @ 2021/12/26 1:28
    Hi, after reading this remarkable piece of writing i am too glad to share my know-how here
    with mates.
  • # You really make it seem so easy with your presentation but I find this matter to be actually something that I think I would never understand. It seems too complex and very broad for me. I am looking forward for your next post, I'll try to get the hang of
    You really make it seem so easy with your presenta
    Posted @ 2022/01/01 21:22
    You really make it seem so easy with your presentation but I
    find this matter to be actually something that
    I think I would never understand. It seems too complex and very broad for me.
    I am looking forward for your next post, I'll try to get the hang
    of it!
  • # You really make it seem so easy with your presentation but I find this matter to be actually something that I think I would never understand. It seems too complex and very broad for me. I am looking forward for your next post, I'll try to get the hang of
    You really make it seem so easy with your presenta
    Posted @ 2022/01/01 21:23
    You really make it seem so easy with your presentation but I
    find this matter to be actually something that
    I think I would never understand. It seems too complex and very broad for me.
    I am looking forward for your next post, I'll try to get the hang
    of it!
  • # You really make it seem so easy with your presentation but I find this matter to be actually something that I think I would never understand. It seems too complex and very broad for me. I am looking forward for your next post, I'll try to get the hang of
    You really make it seem so easy with your presenta
    Posted @ 2022/01/01 21:24
    You really make it seem so easy with your presentation but I
    find this matter to be actually something that
    I think I would never understand. It seems too complex and very broad for me.
    I am looking forward for your next post, I'll try to get the hang
    of it!
  • # You really make it seem so easy with your presentation but I find this matter to be actually something that I think I would never understand. It seems too complex and very broad for me. I am looking forward for your next post, I'll try to get the hang of
    You really make it seem so easy with your presenta
    Posted @ 2022/01/01 21:25
    You really make it seem so easy with your presentation but I
    find this matter to be actually something that
    I think I would never understand. It seems too complex and very broad for me.
    I am looking forward for your next post, I'll try to get the hang
    of it!
  • # It's very trouble-free to find out any topic on net as compared to books, as I found this article at this website.
    It's very trouble-free to find out any topic on ne
    Posted @ 2022/03/24 6:14
    It's very trouble-free to find out any topic on net as compared to books, as I found this article at this website.
  • # No matter if some one searches for his vital thing, so he/she wishes to be available that in detail, therefore that thing is maintained over here.
    No matter if some one searches for his vital thing
    Posted @ 2022/03/25 7:38
    No matter if some one searches for his vital thing,
    so he/she wishes to be available that in detail, therefore
    that thing is maintained over here.
  • # No matter if some one searches for his vital thing, so he/she wishes to be available that in detail, therefore that thing is maintained over here.
    No matter if some one searches for his vital thing
    Posted @ 2022/03/25 7:39
    No matter if some one searches for his vital thing,
    so he/she wishes to be available that in detail, therefore
    that thing is maintained over here.
  • # No matter if some one searches for his vital thing, so he/she wishes to be available that in detail, therefore that thing is maintained over here.
    No matter if some one searches for his vital thing
    Posted @ 2022/03/25 7:40
    No matter if some one searches for his vital thing,
    so he/she wishes to be available that in detail, therefore
    that thing is maintained over here.
  • # No matter if some one searches for his vital thing, so he/she wishes to be available that in detail, therefore that thing is maintained over here.
    No matter if some one searches for his vital thing
    Posted @ 2022/03/25 7:41
    No matter if some one searches for his vital thing,
    so he/she wishes to be available that in detail, therefore
    that thing is maintained over here.
  • # Excellent pieces. Keep writing such kind of info on your page. Im really impressed by it. Hey there, You've done a fantastic job. I'll certainly digg it and in my opinion suggest to my friends. I'm sure they will be benefited from this site.
    Excellent pieces. Keep writing such kind of info o
    Posted @ 2022/06/05 9:21
    Excellent pieces. Keep writing such kind of info on your page.
    Im really impressed by it.
    Hey there, You've done a fantastic job. I'll certainly digg it and in my opinion suggest to my friends.
    I'm sure they will be benefited from this site.
  • # If you want to obtain much from this piece of writing then you have to apply such techniques to your won web site.
    If you want to obtain much from this piece of writ
    Posted @ 2022/06/06 11:18
    If you want to obtain much from this piece of writing then you have to apply such techniques to your
    won web site.
  • # Since the admin of this web site is working, no hesitation very shortly it will be famous, due to its quality contents.
    Since the admin of this web site is working, no he
    Posted @ 2022/06/09 6:37
    Since the admin of this web site is working, no hesitation very shortly it will be famous, due to
    its quality contents.
  • # Hmm is anyone else experiencing problems with the images on this blog loading? I'm trying to figure out if its a problem on my end or if it's the blog. Any suggestions would be greatly appreciated.
    Hmm is anyone else experiencing problems with the
    Posted @ 2022/06/10 12:36
    Hmm is anyone else experiencing problems with the images on this blog loading?
    I'm trying to figure out if its a problem on my end or if it's the blog.
    Any suggestions would be greatly appreciated.
  • # wonderful issues altogether, you simply gained a new reader. What could you recommend in regards to your post that you simply made a few days in the past? Any sure?
    wonderful issues altogether, you simply gained a
    Posted @ 2022/06/11 10:31
    wonderful issues altogether, you simply gained a new reader.
    What could you recommend in regards to your post that you simply made a
    few days in the past? Any sure?
  • # Hi there, I enjoy reading all of your article. I wanted to write a little comment to support you.
    Hi there, I enjoy reading all of your article. I w
    Posted @ 2022/06/12 19:32
    Hi there, I enjoy reading all of your article. I wanted
    to write a little comment to support you.
  • # Heya i'm for the first time here. I came across this board and I find It really useful & it helped me out a lot. I'm hoping to offer something back and aid others such as you helped me.
    Heya i'm for the first time here. I came across t
    Posted @ 2022/06/14 18:03
    Heya i'm for the first time here. I came across this board and I find It
    really useful & it helped me out a lot. I'm hoping to offer something back and aid others such as you helped me.
  • # For most recent information you have to pay a quick visit internet and on world-wide-web I found this web page as a best web page for latest updates.
    For most recent information you have to pay a quic
    Posted @ 2022/08/13 3:06
    For most recent information you have to pay a quick visit internet and on world-wide-web I found this
    web page as a best web page for latest updates.
  • # An intriguing discussion is definitely worth comment. I do think that you need to publish more on this issue, it may not be a taboo matter but typically people don't discuss such issues. To the next! Kind regards!!
    An intriguing discussion is definitely worth comme
    Posted @ 2022/08/15 8:50
    An intriguing discussion is definitely worth comment.

    I do think that you need to publish more on this issue, it may not be a taboo matter but typically people don't discuss such issues.
    To the next! Kind regards!!
  • # We're a group of volunteers and opening a brand new scheme in our community. Your web site offered us with useful information to work on. You've done an impressive process and our whole community will likely be thankful to you.
    We're a group of volunteers and opening a brand ne
    Posted @ 2022/08/18 0:43
    We're a group of volunteers and opening a brand new scheme in our community.

    Your web site offered us with useful information to work on. You've done an impressive process and our
    whole community will likely be thankful to you.
  • # We're a group of volunteers and opening a brand new scheme in our community. Your web site offered us with useful information to work on. You've done an impressive process and our whole community will likely be thankful to you.
    We're a group of volunteers and opening a brand ne
    Posted @ 2022/08/18 0:44
    We're a group of volunteers and opening a brand new scheme in our community.

    Your web site offered us with useful information to work on. You've done an impressive process and our
    whole community will likely be thankful to you.
  • # We're a group of volunteers and opening a brand new scheme in our community. Your web site offered us with useful information to work on. You've done an impressive process and our whole community will likely be thankful to you.
    We're a group of volunteers and opening a brand ne
    Posted @ 2022/08/18 2:14
    We're a group of volunteers and opening a brand new scheme in our community.

    Your web site offered us with useful information to work on. You've done an impressive process and our
    whole community will likely be thankful to you.
  • # I am really delighted to glance at this webpage posts which includes plenty of valuable facts, thanks for providing such information.
    I am really delighted to glance at this webpage po
    Posted @ 2022/08/18 13:42
    I am really delighted to glance at this webpage posts which includes plenty of valuable facts, thanks for providing such
    information.
  • # I am really delighted to glance at this webpage posts which includes plenty of valuable facts, thanks for providing such information.
    I am really delighted to glance at this webpage po
    Posted @ 2022/08/18 13:43
    I am really delighted to glance at this webpage posts which includes plenty of valuable facts, thanks for providing such
    information.
  • # Hi, constantly i used to check web site posts here in the early hours in the break of day, for the reason that i love to gain knowledge of more and more.
    Hi, constantly i used to check web site posts here
    Posted @ 2022/11/27 3:06
    Hi, constantly i used to check web site posts here in the early hours in the
    break of day, for the reason that i love to gain knowledge
    of more and more.
タイトル
名前
Url
コメント