より汎用的なフォーマットで書き換えました。