/***************************************
*                                      *
*          各年度データの作成          *
*                                      *
*                                      *
***************************************/

#include <iostream>
#include <cstdlib>
#include <cmath>
#include "snaps.h"
#include "kisosu.h"
#include "kisoritu.h"
#include "econ.h"
#include "cntl.h"
#include "seid.h"
#include "file_open.h"

int Shibou_Kubun( double a );
double FP_Tyousei_Keisu( int a , int b );
double Nendomatu_Tyousei_Keisu( int a , int b );
double Shougai_Kyu_Tyousei_Keisu( int a , int b );


void siml( int nendo , int shubetu )
{
	// 変数の設定
	int sotai_nendo;
	int nenrei_tuma;
	int nenrei_otto;
	int nenrei_ko;
	int nenrei_kafu;
	int jukyu_nenrei;
	int seinendo;
	int dankai;
	int kokko;
	int kikan;
	int nenrei;
	int tokyu;
	struct hihokensha Hiho_Zennen;
	struct hihokensha Hiho_Gokei;
	struct hihokensha Taiki_Zennen;
	struct hihokensha Taiki_Gokei;
	struct hihokensha Noufu_Jokyo[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1];
	static double Hiho_Zanzon[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Taiki_Zanzon[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Hiho_Zanzon_P[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Taiki_Zanzon_P[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Saikanyu[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Shinkikanyu[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1];
	static double Dattaisha_Gokei[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Dattaisha_Seizon[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Hasseisha_Shogai[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	double Hiho_Zanzon_Gokei;
	double Taiki_Zanzon_Gokei;
	double Saikanyu_Gokei;
	double Nendoshudan;
	double Noufu_Kikan;
	double Noufu_Kikan_Fuka;
	double Bunpu_Tuma[MAX_IZOKU_TUMA_JUKYU - MIN_IZOKU_TUMA_JUKYU + 1];
	double Bunpu_Otto[MAX_IZOKU_OTTO_JUKYU - MIN_IZOKU_OTTO_JUKYU + 1];
	double Bunpu_Kafu[MAX_KAFU_JUKYU - MIN_KAFU_JUKYU + 1];
	double Bunpu_Ko[MAX_IZOKU_KO_JUKYU - MIN_IZOKU_KO_JUKYU + 1];
	struct hihokensha Hiho_Zennen2;
	struct hihokensha Hiho_Gokei2;
	static double Hiho_Zanzon2[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Shinkikanyu2[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1];
	double Hiho_Zanzon_Gokei2;
	static double Hiho_Zanzon_Y[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Taiki_Zanzon_Y[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Hiho_Zanzon_P_Y[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Taiki_Zanzon_P_Y[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Saikanyu_Y[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Shinkikanyu_Y[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1];
	static double Dattaisha_Gokei_Y[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	static double Dattaisha_Seizon_Y[MAX_HIHO_NENREI - MIN_HIHO_NENREI + 1][MAX_HIHO_KIKAN + 1];
	double Hiho_Zanzon_Gokei_Y;
	double Taiki_Zanzon_Gokei_Y;
	double Saikanyu_Gokei_Y;
	double Nendoshudan_Y;
	
	using namespace std;
	
	// 相対年度の定義
	sotai_nendo = nendo - SHONENDO;
	if( sotai_nendo < 0 )
	{
		cout << "年度エラー" << endl;
		exit( 1 );
	}
	
	if( Option3 == 1 )
	{
		for( nenrei = MIN_HIHO_NENREI ; nenrei <= MAX_HIHO_NENREI ; nenrei++ )
		{
			Shinkikanyu2[nenrei - MIN_HIHO_NENREI] = 0.;
		}
	}
	
	// 納付状況の定義
	for( nenrei = MIN_HIHO_NENREI ; nenrei <= MAX_HIHO_NENREI ; nenrei++ )
	{
		Noufu_Jokyo[nenrei - MIN_HIHO_NENREI].ninzu = 0.;
		Noufu_Jokyo[nenrei - MIN_HIHO_NENREI].kikan = 1.;
		Noufu_Jokyo[nenrei - MIN_HIHO_NENREI].noufu = Noufuritu_Kyufu[sotai_nendo][nenrei - MIN_HIHO_NENREI];
		for( dankai = 0 ; dankai <= MAX_MENJO - 1 ; dankai++ )
		{
			for( kokko = 0 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
			{
				Noufu_Jokyo[nenrei - MIN_HIHO_NENREI].menjo[dankai][kokko] = Menjoritu_Kyufu[sotai_nendo][nenrei - MIN_HIHO_NENREI][dankai];
			}
		}
		Noufu_Jokyo[nenrei - MIN_HIHO_NENREI].gakusei = Tokureiritu_Gakusei[sotai_nendo][nenrei - MIN_HIHO_NENREI];
		Noufu_Jokyo[nenrei - MIN_HIHO_NENREI].wakamono = Tokureiritu_Wakamono[sotai_nendo][nenrei - MIN_HIHO_NENREI];
		Noufu_Jokyo[nenrei - MIN_HIHO_NENREI].fuka = Noufuritu_Fuka[sotai_nendo][nenrei - MIN_HIHO_NENREI];
	}
	
	// 被保険者数及び待期者数の更新
	for( nenrei = MAX_HIHO_NENREI ; nenrei >= MIN_HIHO_NENREI ; nenrei-- )
	{
		// 残存被保険者数の計算
		Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][0] = 0.;
		if( Option3 == 1 )
		{
			Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][0] = 0.;
		}
		
		for( kikan = 1 ; kikan <= MAX_HIHO_KIKAN - 1 ; kikan++ )
		{
			if( nenrei >= MIN_HIHO_NENREI + 1 )
			{
				Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan]
				 = Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][kikan - 1].ninzu * exp( -Dattairyoku_Gokei[sotai_nendo][nenrei - MIN_HIHO_NENREI] );
				
				if( Option3 == 1 )
				{
					Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan]
					 = Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI][kikan - 1].ninzu * exp( -Dattairyoku_Gokei[0][nenrei - MIN_HIHO_NENREI] );
				}
			}
			else
			{
				Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
				if( Option3 == 1 )
				{
					Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
				}
			}
		}
		
		if( nenrei >= MIN_HIHO_NENREI + 1 )
		{
			Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
			 = ( Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN - 1].ninzu + Hihokensha[nenrei - 1 - MIN_HIHO_NENREI ][MAX_HIHO_KIKAN].ninzu )
			 * exp( -Dattairyoku_Gokei[sotai_nendo][nenrei - MIN_HIHO_NENREI] );
			
			if( Option3 == 1 )
			{
				Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
				 = ( Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN - 1].ninzu + Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI ][MAX_HIHO_KIKAN].ninzu )
				 * exp( -Dattairyoku_Gokei[0][nenrei - MIN_HIHO_NENREI] );
			}
		}
		else
		{
			Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] = 0.;
			
			if( Option3 == 1 )
			{
				Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] = 0.;
			}
		}
		
		// 残存待期者数の計算
		for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
		{
			if( nenrei >= MIN_HIHO_NENREI + 1 )
			{
				Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan]
				 = Taikisha[nenrei - 1 - MIN_HIHO_NENREI][kikan].ninzu * ( 1. - Shikkenritu_Rorei[sotai_nendo][nenrei - MIN_HIHO_NENREI] );
				Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu
				 = Taikisha[nenrei - 1 - MIN_HIHO_NENREI][kikan].ninzu - Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan];
				
				if( Option3 == 1 )
				{
					Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan]
					 = Taikisha_Y[nenrei - 1 - MIN_HIHO_NENREI][kikan].ninzu * ( 1. - Shikkenritu_Rorei[sotai_nendo][nenrei - MIN_HIHO_NENREI] );
					Taikisha_Shibou_Y[nenrei - MIN_HIHO_NENREI][kikan].ninzu
					 = Taikisha_Y[nenrei - 1 - MIN_HIHO_NENREI][kikan].ninzu - Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan];
				}
			}
			else
			{
				Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
				Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu = 0.;
				
				if( Option3 == 1 )
				{
					Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
					Taikisha_Shibou_Y[nenrei - MIN_HIHO_NENREI][kikan].ninzu = 0.;
				}
			}
		}
		
		// 残存受給権者（かつ被保険者）数
		if( Option3 == 1 )
		{
			Hiho_Zanzon2[nenrei - MIN_HIHO_NENREI][0] = 0.;
			for( kikan = 1 ; kikan <= MAX_HIHO_KIKAN - 1 ; kikan++ )
			{
				if( nenrei >= MIN_HIHO_NENREI + 1 )
				{
					Hiho_Zanzon2[nenrei - MIN_HIHO_NENREI][kikan]
					 = Hihokensha2[nenrei - 1 - MIN_HIHO_NENREI][kikan - 1].ninzu * ( 1. - Shikkenritu_Rorei[sotai_nendo][nenrei - MIN_HIHO_NENREI] );
				}
				else
				{
					Hiho_Zanzon2[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
				}
			}
			
			Hiho_Zanzon_Gokei2  = 0.;
			for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
			{
				Hiho_Zanzon_Gokei2 += Hiho_Zanzon2[nenrei - MIN_HIHO_NENREI][kikan];
			}
		}
		
		Hiho_Zanzon_Gokei  = 0.;
		Taiki_Zanzon_Gokei = 0.;
		if( Option3 == 1 )
		{
			Hiho_Zanzon_Gokei_Y  = 0.;
			Taiki_Zanzon_Gokei_Y = 0.;
		}
		
		for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
		{
			Hiho_Zanzon_Gokei += Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan];
			
			if( Option3 == 1 )
			{
				Hiho_Zanzon_Gokei_Y += Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan];
			}
		}
		for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
		{
			Taiki_Zanzon_Gokei += Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan];
			
			if( Option3 == 1 )
			{
				Taiki_Zanzon_Gokei_Y += Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan];
			}
		}
		
		if( ( nendo == 2016 ) || ( ( Option2 == 1 || Option2 == 2 ) && nendo == 2024 ) )
		{
			for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
			{
				Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] = Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan];
				Taiki_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] = Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan];
				
				if( Option3 == 1 )
				{
					Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] = Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan];
					Taiki_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] = Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan];
				}
			}
		}
		
		if( Option3 == 1 )
		{
			for( kikan = 1 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
			{
				if( ( ( nendo - nenrei == 1958 || nendo - nenrei == 1959 ) && nenrei == 61 ) ||
						( ( nendo - nenrei == 1960 || nendo - nenrei == 1961 ) && nenrei == 62 ) ||
						( ( nendo - nenrei == 1962 || nendo - nenrei == 1963 ) && nenrei == 63 ) ||
						( ( nendo - nenrei == 1964 || nendo - nenrei == 1965 ) && nenrei == 64 ) )
				{
					Shinkikanyu2[nenrei - MIN_HIHO_NENREI]
					 += Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][kikan - 1].ninzu * Hassei_Wariai_Rorei[sotai_nendo][nenrei - MIN_ROREI_JUKYU];
				}
			}
		}
		
		// 外枠との調整処理 
		if( Sotowaku[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] < Hiho_Zanzon_Gokei )
		{
			for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
			{
				if( Hiho_Zanzon_Gokei > 0. )
				{
					Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] *= Sotowaku[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] / Hiho_Zanzon_Gokei;
				}
				else
				{
					Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
				}
			}
		}
		if( Option3 == 1 )
		{
			if( Sotowaku_Jurai[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] < Hiho_Zanzon_Gokei_Y )
			{
				for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
				{
					if( Hiho_Zanzon_Gokei_Y > 0. )
					{
						Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] *= Sotowaku_Jurai[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] / Hiho_Zanzon_Gokei_Y;
					}
					else
					{
						Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
					}
				}
			}
		}
		
		// パート適用拡大
		if( nendo == 2016 )
		{
			if( Sotowaku[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] + Part_Taishou[shubetu][1][nenrei - MIN_HIHO_NENREI][1]
			     < Hiho_Zanzon_Gokei )
			{
				for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
				{
					if( Hiho_Zanzon_Gokei > 0. )
					{
						Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan]
						 *= ( Sotowaku[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] + Part_Taishou[shubetu][1][nenrei - MIN_HIHO_NENREI][1] )
						  / Hiho_Zanzon_Gokei;
					}
					else
					{
						Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
					}
				}
			}
			if( Option3 == 1 )
			{
				if( Sotowaku_Jurai[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] + Part_Taishou_Jurai[shubetu][1][nenrei - MIN_HIHO_NENREI][1]
				     < Hiho_Zanzon_Gokei_Y )
				{
					for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
					{
						if( Hiho_Zanzon_Gokei_Y > 0. )
						{
							Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan]
							 *= ( Sotowaku_Jurai[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] + Part_Taishou_Jurai[shubetu][1][nenrei - MIN_HIHO_NENREI][1] )
							  / Hiho_Zanzon_Gokei_Y;
						}
						else
						{
							Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
						}
					}
				}
			}
			// 待期者数
			for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
			{
				Taiki_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] += Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] - Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan];
				
				if( Option3 == 1 )
				{
					Taiki_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] += Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] - Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan];
				}
			}
		}
		else if( ( Option2 == 1 || Option2 == 2 ) && nendo == 2024 )
		{
			if( Sotowaku[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] + Part_Taishou[shubetu][2][nenrei - MIN_HIHO_NENREI][1]
			     < Hiho_Zanzon_Gokei )
			{
				for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
				{
					if( Hiho_Zanzon_Gokei > 0. )
					{
						Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan]
						 *= ( Sotowaku[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] + Part_Taishou[shubetu][2][nenrei - MIN_HIHO_NENREI][1] )
						  / Hiho_Zanzon_Gokei;
					}
					else
					{
						Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
					}
				}
			}
			// 待期者数
			for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
			{
				Taiki_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] += Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] - Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan];
			}
			
			if( Option3 == 1 )
			{
				if( Sotowaku_Jurai[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] + Part_Taishou_Jurai[shubetu][2][nenrei - MIN_HIHO_NENREI][1]
				     < Hiho_Zanzon_Gokei_Y )
				{
					for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
					{
						if( Hiho_Zanzon_Gokei_Y > 0. )
						{
							Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan]
							 *= ( Sotowaku_Jurai[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] + Part_Taishou_Jurai[shubetu][2][nenrei - MIN_HIHO_NENREI][1] )
							  / Hiho_Zanzon_Gokei_Y;
						}
						else
						{
							Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
						}
					}
				}
				// 待期者数
				for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
				{
					Taiki_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] += Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] - Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan];
				}
			}
		}
		
		// 再加入者数
		Saikanyu_Gokei
		 = min( ( Sotowaku[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] - Hiho_Zanzon_Gokei )
		        * Saikanyuritu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
		      , Taiki_Zanzon_Gokei );
		
		if( Option3 == 1 )
		{
			Saikanyu_Gokei_Y
			 = min( ( Sotowaku_Jurai[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] - Hiho_Zanzon_Gokei_Y )
			        * Saikanyuritu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
			      , Taiki_Zanzon_Gokei_Y );
		}
		for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
		{
			if( Taiki_Zanzon_Gokei > 0. )
			{
				Saikanyu[nenrei - MIN_HIHO_NENREI][kikan] = Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] * Saikanyu_Gokei / Taiki_Zanzon_Gokei;
			}
			else
			{
				Saikanyu[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
			}
			Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] -= Saikanyu[nenrei - MIN_HIHO_NENREI][kikan];
			
			if( Option3 == 1 )
			{
				if( Taiki_Zanzon_Gokei_Y > 0. )
				{
					Saikanyu_Y[nenrei - MIN_HIHO_NENREI][kikan] = Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] * Saikanyu_Gokei_Y / Taiki_Zanzon_Gokei_Y;
				}
				else
				{
					Saikanyu_Y[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
				}
				Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] -= Saikanyu_Y[nenrei - MIN_HIHO_NENREI][kikan];
			}
		}
		
		// 新規加入者数
		Shinkikanyu[nenrei - MIN_HIHO_NENREI]
		 = Sotowaku[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] - Saikanyu[nenrei - MIN_HIHO_NENREI][0];
		if( Option3 == 1 )
		{
			Shinkikanyu_Y[nenrei - MIN_HIHO_NENREI]
			 = Sotowaku_Jurai[shubetu][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] - Saikanyu_Y[nenrei - MIN_HIHO_NENREI][0];
		}
		
		for( kikan = 1 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
		{
			Shinkikanyu[nenrei - MIN_HIHO_NENREI] -= Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] + Saikanyu[nenrei - MIN_HIHO_NENREI][kikan];
			
			if( Option3 == 1 )
			{
				Shinkikanyu_Y[nenrei - MIN_HIHO_NENREI] -= Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] + Saikanyu_Y[nenrei - MIN_HIHO_NENREI][kikan];
			}
		}
		
		
		// 被保険者数
		// 被保険者期間が MAX_HIHOKIKAN 年以上の場合
		
		// 被保険者数
		Hihokensha[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu
		 = Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] + Saikanyu[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN];
		
		if( Option3 == 1 )
		{
			Hihokensha_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu
			 = Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] + Saikanyu_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN];
		}
		
		// 合計脱退者数
		if( nenrei >= MIN_HIHO_NENREI + 1 )
		{
			Dattaisha_Gokei[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
			 = Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN - 1].ninzu + Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu
			 - Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN];
			
			if( Option3 == 1 )
			{
				Dattaisha_Gokei_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
				 = Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN - 1].ninzu + Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu
			   - Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN];
			}
		}
		else
		{
			Dattaisha_Gokei[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] = 0.;
			
			if( Option3 == 1 )
			{
				Dattaisha_Gokei_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] = 0.;
			}
		}
		
		// 拠出期間延長用被保険者
		if( nenrei <= 65 )
		{
			Hihokensha2[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu = Hiho_Zanzon2[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN];
		}
		
		if( nenrei >= MIN_HIHO_NENREI + 1 )
		{
			if( nendo == 2016 )
			{
				Nendoshudan
				 = ( ( Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN - 1].ninzu + Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu )
				   + Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] ) / 2.
				 - ( Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] - Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] )
				 * ( 16 - 10 ) / 12.;
				
				if( Option3 == 1 )
				{
					Nendoshudan_Y
					 = ( ( Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN - 1].ninzu + Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu )
					   + Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] ) / 2.
				   - ( Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] - Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] )
				   * ( 16 - 10 ) / 12.;
				}
			}
			else if( ( Option2 == 1 || Option2 == 2 ) && nendo == 2024 )
			{
				Nendoshudan
				 = ( ( Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN - 1].ninzu + Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu )
				   + Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] ) / 2.
				 - ( Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] - Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] )
				 * ( 16 - 4 ) / 12.;
				
				if( Option3 == 1 )
				{
					Nendoshudan_Y
					 = ( ( Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN - 1].ninzu + Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu )
					   + Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] ) / 2.
				   - ( Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] - Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] )
				   * ( 16 - 4 ) / 12.;
				}
			}
			else
			{
				Nendoshudan
				 = ( Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN - 1].ninzu + Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu
				   + Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] ) / 2.;
				
				if( Option3 == 1 )
				{
					Nendoshudan_Y
					 = ( Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN - 1].ninzu + Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu
					   + Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] ) / 2.;
				}
			}
		}
		else
		{
			Nendoshudan = 0.;
			
			if( Option3 == 1 )
			{
				Nendoshudan_Y = 0.;
			}
		}
		
		// 被保険者からの障害発生
		Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
		 = Nendoshudan * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];		
		
		if( Option3 == 1 )
		{
			Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
			 = Nendoshudan_Y * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
		}
		
		// 被保険者からの死亡脱退者数
		Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu
		 = Nendoshudan * Dattairyoku_Shibou[sotai_nendo][nenrei - MIN_HIHO_NENREI];
		
		if( Option3 == 1 )
		{
			Hihokensha_Shibou_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu
			 = Nendoshudan_Y * Dattairyoku_Shibou[0][nenrei - MIN_HIHO_NENREI];
		}
		
		// 生存脱退者数の計算
 		Dattaisha_Seizon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
		 = Dattaisha_Gokei[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] - Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu;
		
		if( Option3 == 1 )
		{
 			Dattaisha_Seizon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
			 = Dattaisha_Gokei_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] - Hihokensha_Shibou_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu;
		}
		
		if( Option3 == 0 )
		{
			if( nenrei >= 60 && ( shubetu == 2 || shubetu == 5 ) )
			{
				if( nendo == 2016 )
				{
					Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
					 += ( ( Taikisha[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu + Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] ) / 2.
					    + ( Taiki_Zanzon_P[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] - Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] )
					      * ( 16 - 10 ) / 12. )
					  * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
				}
				else if( ( Option2 == 1 || Option2 == 2 ) && nendo == 2024 )
				{
					Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
					 += ( ( Taikisha[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu + Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] ) / 2.
					    + ( Taiki_Zanzon_P[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] - Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] )
					      * ( 16 - 4 ) / 12. )
					  * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
				}
				else
				{
					Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
					 += ( Taikisha[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu + Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] ) / 2.
					  * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
				}
			}
		}
		if( Option3 == 1 )
		{
			if( nenrei >= 60 && ( shubetu == 2 || shubetu == 5 ) )
			{
				if( nendo == 2016 )
				{
					Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
					 += ( ( Taikisha_Y[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu + Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] ) / 2.
					    + ( Taiki_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] - Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] )
					      * ( 16 - 10 ) / 12. )
					  * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
				}
				else if( ( Option2 == 1 || Option2 == 2 ) && nendo == 2024 )
				{
					Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
					 += ( ( Taikisha_Y[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu + Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] ) / 2.
					    + ( Taiki_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] - Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] )
					      * ( 16 - 4 ) / 12. )
					  * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
				}
				else
				{
					Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN]
					 += ( Taikisha_Y[nenrei - 1 - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu + Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] ) / 2.
					  * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
				}
			}
		}
		
		// 待期者数の更新
		Taikisha[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu
		 = Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] + Dattaisha_Seizon[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN];
		
		Taikisha_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN].ninzu
		 = Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN] + Dattaisha_Seizon_Y[nenrei - MIN_HIHO_NENREI][MAX_HIHO_KIKAN];
		
		//  被保険者期間が 1、2、…、MAX_HIHO_KIKAN-1 年の場合 
		for( kikan = MAX_HIHO_KIKAN - 1 ; kikan >= 1 ; kikan-- )
		{
			// 被保険者数の更新
			Hihokensha[nenrei - MIN_HIHO_NENREI][kikan].ninzu
			 = Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] + Saikanyu[nenrei - MIN_HIHO_NENREI][kikan];
			
			Hihokensha_Y[nenrei - MIN_HIHO_NENREI][kikan].ninzu
			 = Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] + Saikanyu_Y[nenrei - MIN_HIHO_NENREI][kikan];
			
			// 拠出期間延長用被保険者数
			if( nenrei <= 65 )
			{
				Hihokensha2[nenrei - MIN_HIHO_NENREI][kikan].ninzu = Hiho_Zanzon2[nenrei - MIN_HIHO_NENREI][kikan];
			}
			
			// 合計脱退者数
			if( nenrei >= MIN_HIHO_NENREI + 1 )
			{
				Dattaisha_Gokei[nenrei - MIN_HIHO_NENREI][kikan]
				 = Hihokensha[nenrei - 1 - MIN_HIHO_NENREI ][kikan - 1].ninzu - Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan];
				
				Dattaisha_Gokei_Y[nenrei - MIN_HIHO_NENREI][kikan]
				 = Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI ][kikan - 1].ninzu - Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan];
			}
			else
			{
				Dattaisha_Gokei[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
				
				Dattaisha_Gokei_Y[nenrei - MIN_HIHO_NENREI][kikan] = 0.;
			}
			
			if( nenrei >= MIN_HIHO_NENREI + 1 )
			{
				if( nendo == 2016 )
				{
					Nendoshudan
					 = ( Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][kikan - 1].ninzu + Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] ) / 2.
					 - ( Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] - Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] )
					 * ( 16 - 10 ) / 12.;
					
					Nendoshudan_Y
					 = ( Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI][kikan - 1].ninzu + Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] ) / 2.
					 - ( Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] - Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] )
					 * ( 16 - 10 ) / 12.;
				}
				else if( ( Option2 == 1 || Option2 == 2 ) && nendo == 2024 )
				{
					Nendoshudan
					 = ( Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][kikan - 1].ninzu + Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] ) / 2.
					 - ( Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] - Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] )
					 * ( 16 - 4 ) / 12.;
					
					Nendoshudan_Y
					 = ( Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI][kikan - 1].ninzu + Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] ) / 2.
					 - ( Hiho_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] - Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] )
					 * ( 16 - 4 ) / 12.;
				}
				else
				{
					Nendoshudan
					 = ( Hihokensha[nenrei - 1 - MIN_HIHO_NENREI][kikan - 1].ninzu + Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] ) / 2.;
					
					Nendoshudan_Y
					 = ( Hihokensha_Y[nenrei - 1 - MIN_HIHO_NENREI][kikan - 1].ninzu + Hiho_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] ) / 2.;
				}
			}
			else
			{
				Nendoshudan = 0.;
				
				if( Option3 == 1 )
				{
					Nendoshudan_Y = 0.;
				}
			}
			
			// 被保険者からの障害発生
		  Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][kikan]
			 = Nendoshudan * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
		  
		  if( Option3 == 1 )
		  {
			  Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][kikan]
				 = Nendoshudan_Y * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
			}
			
			// 被保険者からの死亡脱退者数
		  Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu
			 = Nendoshudan * Dattairyoku_Shibou[sotai_nendo][nenrei - MIN_HIHO_NENREI];
			
			if( Option3 == 1 )
			{
			  Hihokensha_Shibou_Y[nenrei - MIN_HIHO_NENREI][kikan].ninzu
				 = Nendoshudan_Y * Dattairyoku_Shibou[0][nenrei - MIN_HIHO_NENREI];
			}
			
			//  生存脱退者数の計算
			Dattaisha_Seizon[nenrei - MIN_HIHO_NENREI][kikan]
			 = Dattaisha_Gokei[nenrei - MIN_HIHO_NENREI][kikan] - Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu;
			
			if( Option3 == 1 )
			{
				Dattaisha_Seizon_Y[nenrei - MIN_HIHO_NENREI][kikan]
				 = Dattaisha_Gokei_Y[nenrei - MIN_HIHO_NENREI][kikan] - Hihokensha_Shibou_Y[nenrei - MIN_HIHO_NENREI][kikan].ninzu;
			}
			
			if( Option3 == 0 )
			{
			 	if ( nenrei >= 60 && ( shubetu == 2 || shubetu == 5 ) )
				{
					if( nendo == 2016 )
					{
						Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][kikan]
						 += ( ( Taikisha[nenrei - 1 - MIN_HIHO_NENREI][kikan].ninzu + Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] ) / 2.
						    + ( Taiki_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] - Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] )
						      * ( 16 - 10 ) / 12. )
						  * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					}
					else if( ( Option2 == 1 || Option2 == 2 ) && nendo == 2024 )
					{
						Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][kikan]
						 += ( ( Taikisha[nenrei - 1 - MIN_HIHO_NENREI][kikan].ninzu + Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] ) / 2.
						    + ( Taiki_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] - Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] )
						      * ( 16 - 4 ) / 12. )
						  * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					}
					else
					{
						Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][kikan]
						 += ( Taikisha[nenrei - 1 - MIN_HIHO_NENREI ][kikan].ninzu + Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan]) / 2.
						  * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					}
				}
			}
			if( Option3 == 1 )
			{
			 	if ( nenrei >= 60 && ( shubetu == 2 || shubetu == 5 ) )
				{
					if( nendo == 2016 )
					{
						Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][kikan]
						 += ( ( Taikisha_Y[nenrei - 1 - MIN_HIHO_NENREI][kikan].ninzu + Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] ) / 2.
						    + ( Taiki_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] - Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] )
						      * ( 16 - 10 ) / 12. )
						  * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					}
					else if( ( Option2 == 1 || Option2 == 2 ) && nendo == 2024 )
					{
						Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][kikan]
						 += ( ( Taikisha_Y[nenrei - 1 - MIN_HIHO_NENREI][kikan].ninzu + Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] ) / 2.
						    + ( Taiki_Zanzon_P_Y[nenrei - MIN_HIHO_NENREI][kikan] - Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] )
						      * ( 16 - 4 ) / 12. )
						  * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					}
					else
					{
						Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][kikan]
						 += ( Taikisha_Y[nenrei - 1 - MIN_HIHO_NENREI ][kikan].ninzu + Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan]) / 2.
						  * Hasseiryoku_Shogai[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					}
				}
			}
			
			// 新規加入者数
			if( Option3 == 1 )
			{
				if( ( ( nendo - nenrei == 1958 || nendo - nenrei == 1959 ) && ( nenrei >= 60 && nenrei <= 60 ) ) ||
						( ( nendo - nenrei == 1960 || nendo - nenrei == 1961 ) && ( nenrei >= 60 && nenrei <= 61 ) ) ||
						( ( nendo - nenrei == 1962 || nendo - nenrei == 1963 ) && ( nenrei >= 60 && nenrei <= 62 ) ) ||
						( ( nendo - nenrei == 1964 || nendo - nenrei == 1965 ) && ( nenrei >= 60 && nenrei <= 63 ) ) ||
						( nendo - nenrei >= 1966 && ( nenrei >= 60 && nenrei <= 64 ) ) )
				{
					Shinkikanyu2[nenrei - MIN_HIHO_NENREI] +=	Hihokensha[nenrei - MIN_HIHO_NENREI][kikan].ninzu
																									* Hassei_Wariai_Rorei[sotai_nendo][nenrei - MIN_ROREI_JUKYU];
				}
			}
			
			// 待期者数の更新
			Taikisha[nenrei - MIN_HIHO_NENREI][kikan].ninzu
			 = Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] + Dattaisha_Seizon[nenrei - MIN_HIHO_NENREI][kikan];
			
			if( Option3 == 1 )
			{
				Taikisha_Y[nenrei - MIN_HIHO_NENREI][kikan].ninzu
				 = Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][kikan] + Dattaisha_Seizon_Y[nenrei - MIN_HIHO_NENREI][kikan];
			}
		}
		
		
		// 被保険者期間が０年の場合
		// 被保険者数の更新
		Hihokensha[nenrei - MIN_HIHO_NENREI][0].ninzu = Shinkikanyu[nenrei - MIN_HIHO_NENREI] + Saikanyu[nenrei - MIN_HIHO_NENREI][0];
		
		if( Option3 == 1 )
		{
			Hihokensha_Y[nenrei - MIN_HIHO_NENREI][0].ninzu = Shinkikanyu_Y[nenrei - MIN_HIHO_NENREI] + Saikanyu_Y[nenrei - MIN_HIHO_NENREI][0];
		}
		
		if( Option3 == 1 )
		{
			Hihokensha2[nenrei - MIN_HIHO_NENREI][0].ninzu = 0.;
			if( ( ( nendo - nenrei == 1958 || nendo - nenrei == 1959 ) && ( nenrei >= 60 && nenrei <= 60 ) ) ||
					( ( nendo - nenrei == 1960 || nendo - nenrei == 1961 ) && ( nenrei >= 60 && nenrei <= 61 ) ) ||
					( ( nendo - nenrei == 1962 || nendo - nenrei == 1963 ) && ( nenrei >= 60 && nenrei <= 62 ) ) ||
					( ( nendo - nenrei == 1964 || nendo - nenrei == 1965 ) && ( nenrei >= 60 && nenrei <= 63 ) ) ||
					( nendo - nenrei >= 1966 && ( nenrei >= 60 && nenrei <= 64 ) ) )
			{
				Shinkikanyu2[nenrei - MIN_HIHO_NENREI] += Hihokensha[nenrei - MIN_HIHO_NENREI][0].ninzu
																								* Hassei_Wariai_Rorei[sotai_nendo][nenrei - MIN_ROREI_JUKYU];
			}
		}
		
		// 待期者数の更新
		Taikisha[nenrei - MIN_HIHO_NENREI][0].ninzu = Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][0];
		
		if( Option3 == 1 )
		{
			Taikisha_Y[nenrei - MIN_HIHO_NENREI][0].ninzu = Taiki_Zanzon_Y[nenrei - MIN_HIHO_NENREI][0];
		}
		
		// 脱退者数
		Dattaisha_Gokei[nenrei - MIN_HIHO_NENREI][0] = 0.;
		Dattaisha_Seizon[nenrei - MIN_HIHO_NENREI][0] = 0.;
		Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][0].ninzu = 0.;
		Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][0] = 0.;
		
		if( Option3 == 1 )
		{
			Dattaisha_Gokei_Y[nenrei - MIN_HIHO_NENREI][0] = 0.;
			Dattaisha_Seizon_Y[nenrei - MIN_HIHO_NENREI][0] = 0.;
			Hihokensha_Shibou_Y[nenrei - MIN_HIHO_NENREI][0].ninzu = 0.;
		}
	}
	
	// 期間の計算
	for( nenrei = MAX_HIHO_NENREI ; nenrei >= MIN_HIHO_NENREI ; nenrei-- )
	{
		// 被保険者期間が１年以上の者
		for( kikan = MAX_HIHO_KIKAN ; kikan >= 1 ; kikan-- )
		{
			if( nenrei >= MIN_HIHO_NENREI + 1)
			{
				Hiho_Zennen = Hihokensha[nenrei - 1 - MIN_HIHO_NENREI ][kikan - 1];
				Taiki_Zennen = Taikisha[nenrei - 1 - MIN_HIHO_NENREI ][kikan];
			}
			else
			{
				Hiho_Zennen = Hihokensha_Zero;
				Taiki_Zennen = Taikisha_Zero;
			}
			
			// 被保険者分
			// 残存者分
			Hiho_Gokei
			 = add( scalar( Saikanyu[nenrei - MIN_HIHO_NENREI][kikan] , Taiki_Zennen ) , scalar( Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] , Hiho_Zennen ) );
			
			// 増加分
			if( nendo == 2016 )
			{
				Hiho_Gokei
				 = add( Hiho_Gokei
				      , scalar_2( Saikanyu[nenrei - MIN_HIHO_NENREI][kikan] * 0.5 + Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan]
				                  - ( Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] - Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] )
				                  * ( 16 - 10 ) / 12.
				                , Noufu_Jokyo[nenrei - MIN_HIHO_NENREI] , nendo ) );
			}
			else if( ( Option2 == 1 || Option2 == 2 ) && nendo == 2024 )
			{
				Hiho_Gokei
				 = add( Hiho_Gokei
				      , scalar_2( Saikanyu[nenrei - MIN_HIHO_NENREI][kikan] * 0.5 + Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan]
				                  - ( Hiho_Zanzon_P[nenrei - MIN_HIHO_NENREI][kikan] - Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] )
				                  * ( 16 - 4 ) / 12.
				                , Noufu_Jokyo[nenrei - MIN_HIHO_NENREI] , nendo ) );
			}
			else
			{
				Hiho_Gokei
				 = add( Hiho_Gokei
				      , scalar_2( Saikanyu[nenrei - MIN_HIHO_NENREI][kikan] * 0.5 + Hiho_Zanzon[nenrei - MIN_HIHO_NENREI][kikan]
				                , Noufu_Jokyo[nenrei - MIN_HIHO_NENREI] , nendo ) );
			}
			
			// 平均の更新
			Hiho_Gokei.ninzu = Hihokensha[nenrei - MIN_HIHO_NENREI][kikan].ninzu;
			Hihokensha[nenrei - MIN_HIHO_NENREI][kikan] = average_by_ninzu( Hiho_Gokei );
			
			// 待期者分
			// 残存者分
			Taiki_Gokei
			 = add( scalar( Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][kikan] , Taiki_Zennen ) ,
			        scalar( Dattaisha_Seizon[nenrei - MIN_HIHO_NENREI][kikan] , Hiho_Zennen ) );
			
			if( Option3 == 0 )
			{
				// 増加分
				Taiki_Gokei
				 = add( Taiki_Gokei ,
				        scalar_2( Dattaisha_Seizon[nenrei - MIN_HIHO_NENREI][kikan] * 0.5 , Noufu_Jokyo[nenrei - MIN_HIHO_NENREI] , nendo ) );
			}
			if( Option3 == 1 )
			{
				// 増加分
				if( ( ( nendo - nenrei == 1958 || nendo - nenrei == 1959 ) && nenrei == 61 ) ||
						( ( nendo - nenrei == 1960 || nendo - nenrei == 1961 ) && nenrei == 62 ) ||
						( ( nendo - nenrei == 1962 || nendo - nenrei == 1963 ) && nenrei == 63 ) ||
						( ( nendo - nenrei == 1964 || nendo - nenrei == 1965 ) && nenrei == 64 ) )
				{
					Taiki_Gokei
					 = add( Taiki_Gokei ,
					        scalar_2( Dattaisha_Seizon[nenrei - MIN_HIHO_NENREI][kikan] * 0.5 , Noufu_Jokyo[nenrei - 1 - MIN_HIHO_NENREI] , nendo ) );
					Taiki_Gokei
					 = add( Taiki_Gokei ,
					        scalar_2( Dattaisha_Seizon[nenrei - MIN_HIHO_NENREI][kikan] * 0.5 , Noufu_Jokyo[nenrei - 1 - MIN_HIHO_NENREI] , nendo ) );
					Taiki_Gokei
					 = add( Taiki_Gokei ,
					        scalar_2( Dattaisha_Seizon[nenrei - MIN_HIHO_NENREI][kikan] * ( - 0.5 ) , Noufu_Jokyo[nenrei - 2 - MIN_HIHO_NENREI] , nendo ) );
				}
				else
				{
					Taiki_Gokei
					 = add( Taiki_Gokei ,
					        scalar_2( Dattaisha_Seizon[nenrei - MIN_HIHO_NENREI][kikan] * 0.5 , Noufu_Jokyo[nenrei - MIN_HIHO_NENREI] , nendo ) );
				}
			}
			
			// 平均の更新
			Taiki_Gokei.ninzu = Taikisha[nenrei - MIN_HIHO_NENREI][kikan].ninzu;
			Taikisha[nenrei - MIN_HIHO_NENREI][kikan] = average_by_ninzu( Taiki_Gokei );
			
			// 死亡脱退者分
 			Hiho_Zennen.ninzu = Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu;
			Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan]
			 = add( Hiho_Zennen , scalar_2( 0.5 , Noufu_Jokyo[nenrei - MIN_HIHO_NENREI] , nendo ) );
			
			// 死亡待期者分
			Taiki_Zennen.ninzu = Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu;
			Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan] = Taiki_Zennen;
		}
		
		// 被保険者期間が０年の者
		if( nenrei >= MIN_HIHO_NENREI + 1 )
		{
			Hiho_Zennen = Hihokensha_Zero;
			Taiki_Zennen = Taikisha[nenrei - 1 - MIN_HIHO_NENREI ][0];
		}
		else
		{
			Hiho_Zennen = Hihokensha_Zero;
			Taiki_Zennen = Taikisha_Zero;
		}
		
		// 被保険者分
		// 残存者分
		Hiho_Gokei = scalar( Saikanyu[nenrei - MIN_HIHO_NENREI][0] , Taiki_Zennen );
		
		// 増加分
		Hiho_Gokei
		 = add( Hiho_Gokei
		      , scalar_2( ( Saikanyu[nenrei - MIN_HIHO_NENREI][0] + Shinkikanyu[nenrei - MIN_HIHO_NENREI] ) * 0.5
		                , Noufu_Jokyo[nenrei - MIN_HIHO_NENREI] , nendo ) );
		
		// 平均の更新
		Hiho_Gokei.ninzu = Hihokensha[nenrei - MIN_HIHO_NENREI][0].ninzu;
		Hihokensha[nenrei - MIN_HIHO_NENREI][0] = average_by_ninzu( Hiho_Gokei );
		
		// 待期者分
		// 残存者分
		Taiki_Gokei = scalar( Taiki_Zanzon[nenrei - MIN_HIHO_NENREI][0] , Taiki_Zennen );
		
		// 平均の更新
		Taiki_Gokei.ninzu = Taikisha[nenrei - MIN_HIHO_NENREI][0].ninzu;
		Taikisha[nenrei - MIN_HIHO_NENREI][0] = average_by_ninzu( Taiki_Gokei );
		
		// 死亡脱退者分
		Hiho_Zennen.ninzu = Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][0].ninzu;
		Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][0] = add( Hiho_Zennen , scalar_2( 0.5 , Noufu_Jokyo[nenrei - MIN_HIHO_NENREI] , nendo ) );
		
		// 死亡待期者分
		Taiki_Zennen.ninzu = Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][0].ninzu;
		Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][0] = Taiki_Zennen;
	}
	
	//期間の計算（受給権者）
	if( Option3 == 1 )
	{
		for( nenrei = MAX_HIHO_NENREI ; nenrei >= MIN_HIHO_NENREI ; nenrei-- )
		{
			// 被保険者期間が１年以上の者
			for( kikan = MAX_HIHO_KIKAN ; kikan >= 1 ; kikan-- )
			{
				if( nenrei >= MIN_HIHO_NENREI + 1)
				{
					Hiho_Zennen2 = Hihokensha2[nenrei - 1 - MIN_HIHO_NENREI ][kikan - 1];
				}
				else
				{
					Hiho_Zennen2 = Hihokensha_Zero;
				}
				
				// 被保険者分
				// 残存者分
				Hiho_Gokei2 = scalar( Hiho_Zanzon2[nenrei - MIN_HIHO_NENREI][kikan] , Hiho_Zennen2 );
				
				if( ( ( nendo - nenrei == 1958 || nendo - nenrei == 1959 ) && ( nenrei >=60 && nenrei <= 60 ) ) ||
						( ( nendo - nenrei == 1960 || nendo - nenrei == 1961 ) && ( nenrei >=60 && nenrei <= 61 ) ) ||
						( ( nendo - nenrei == 1962 || nendo - nenrei == 1963 ) && ( nenrei >=60 && nenrei <= 62 ) ) ||
						( ( nendo - nenrei == 1964 || nendo - nenrei == 1965 ) && ( nenrei >=60 && nenrei <= 63 ) ) ||
						( nendo - nenrei >= 1966 && ( nenrei >=60 && nenrei <= 64 ) ) )
				{
					Hiho_Gokei2 = add( Hiho_Gokei2
					                 , scalar_2( Hiho_Zanzon2[nenrei - MIN_HIHO_NENREI][kikan] , Noufu_Jokyo[nenrei - MIN_HIHO_NENREI] , nendo ) );
				}
				
				// 延長期間の末端での処理
				if( ( ( nendo - nenrei == 1958 || nendo - nenrei == 1959 ) && nenrei == 61 ) ||
						( ( nendo - nenrei == 1960 || nendo - nenrei == 1961 ) && nenrei == 62 ) ||
						( ( nendo - nenrei == 1962 || nendo - nenrei == 1963 ) && nenrei == 63 ) ||
						( ( nendo - nenrei == 1964 || nendo - nenrei == 1965 ) && nenrei == 64 ) ||
						( nendo - nenrei >= 1966 && nenrei == 65 ) )
				{
					Hiho_Gokei2 = add( Hiho_Gokei2
					                 , scalar_2( Hiho_Zanzon2[nenrei - MIN_HIHO_NENREI][kikan] * 0.5 , Noufu_Jokyo[nenrei - 1 - MIN_HIHO_NENREI] , nendo ) );
					Hiho_Gokei2 = add( Hiho_Gokei2
					                 , scalar_2( Hiho_Zanzon2[nenrei - MIN_HIHO_NENREI][kikan] * 0.5 , Noufu_Jokyo[nenrei - 1 - MIN_HIHO_NENREI] , nendo ) );
					Hiho_Gokei2 = add( Hiho_Gokei2
					                 , scalar_2( Hiho_Zanzon2[nenrei - MIN_HIHO_NENREI][kikan] * ( - 0.5 ) , Noufu_Jokyo[nenrei - 2 - MIN_HIHO_NENREI] , nendo ) );
				}
				
				// 平均の更新
				Hiho_Gokei2.ninzu = Hihokensha2[nenrei - MIN_HIHO_NENREI][kikan].ninzu;
				Hihokensha2[nenrei - MIN_HIHO_NENREI][kikan] = average_by_ninzu( Hiho_Gokei2 );
			}
			
			// 被保険者期間が０年の者
			if( nenrei >= MIN_HIHO_NENREI + 1 )
			{
				Hiho_Zennen2 = Hihokensha_Zero;
			}
			else
			{
				Hiho_Zennen2 = Hihokensha_Zero;
			}
			
			// 被保険者分
			// 残存者分
			Hiho_Gokei2 = Hihokensha_Zero;
			
			// 増加分
			if( nendo - nenrei >= 1958 && nenrei == 60 )
			{
				Hiho_Gokei2 = add( Hiho_Gokei2
				                 , scalar_2( ( Shinkikanyu2[nenrei - MIN_HIHO_NENREI] ) * 0.25 , Noufu_Jokyo[nenrei - MIN_HIHO_NENREI] , nendo ) );
			}
			
			if( ( ( nendo - nenrei == 1960 || nendo - nenrei == 1961 ) && ( nenrei >=61 && nenrei <= 61 ) ) ||
					( ( nendo - nenrei == 1962 || nendo - nenrei == 1963 ) && ( nenrei >=61 && nenrei <= 62 ) ) ||
					( ( nendo - nenrei == 1964 || nendo - nenrei == 1965 ) && ( nenrei >=61 && nenrei <= 63 ) ) ||
					( nendo - nenrei >= 1966 && ( nenrei >=61 && nenrei <= 64 ) ) )
			{
				Hiho_Gokei2 = add( Hiho_Gokei2
				                 , scalar_2( ( Shinkikanyu2[nenrei - MIN_HIHO_NENREI] ) * 0.5 , Noufu_Jokyo[nenrei - MIN_HIHO_NENREI] , nendo ) );
			}
			
			// 延長期間末端での処理
			if( ( ( nendo - nenrei == 1958 || nendo - nenrei == 1959 ) && nenrei == 61 ) ||
					( ( nendo - nenrei == 1960 || nendo - nenrei == 1961 ) && nenrei == 62 ) ||
					( ( nendo - nenrei == 1962 || nendo - nenrei == 1963 ) && nenrei == 63 ) ||
					( ( nendo - nenrei == 1964 || nendo - nenrei == 1965 ) && nenrei == 64 ) )
			{
				Hiho_Gokei2 = add( Hiho_Gokei2
				                 , scalar_2( ( Shinkikanyu2[nenrei - MIN_HIHO_NENREI] ) * 0.25 , Noufu_Jokyo[nenrei - 1 - MIN_HIHO_NENREI] , nendo ) );
				Hiho_Gokei2 = add( Hiho_Gokei2
				                 , scalar_2( ( Shinkikanyu2[nenrei - MIN_HIHO_NENREI] ) * 0.25 , Noufu_Jokyo[nenrei - 1 - MIN_HIHO_NENREI] , nendo ) );
				Hiho_Gokei2 = add( Hiho_Gokei2
				                 , scalar_2( ( Shinkikanyu2[nenrei - MIN_HIHO_NENREI] ) * ( - 0.25 ) , Noufu_Jokyo[nenrei - 2 - MIN_HIHO_NENREI] , nendo ) );
			}
			
			// 平均の更新
			Hihokensha2[nenrei - MIN_HIHO_NENREI][0].ninzu = Shinkikanyu2[nenrei - MIN_HIHO_NENREI];
			Hiho_Gokei2.ninzu = Hihokensha2[nenrei - MIN_HIHO_NENREI][0].ninzu;
			Hihokensha2[nenrei - MIN_HIHO_NENREI][0] = average_by_ninzu( Hiho_Gokei2 );
		}
	}
	
	// 年度間新規裁定受給権者
	
	// 障害基礎年金(２０歳前)
	for( nenrei = MIN_SHOGAI_JUKYU ; nenrei <= MAX_SHOGAI_JUKYU ; nenrei++ )
	{
		for( tokyu = 1 ; tokyu <= 2 ;tokyu++ )
		{
			Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].ninzu = 0.;
			Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon = 0.;
			Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].kakyu = 0.;
			Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].menjo_kihon = 0.;
			Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].menjo_kakyu = 0.;
		}
	}
	if( shubetu == 2 || shubetu == 5 )
	{
		for( nenrei = MIN_HIHO_NENREI ; nenrei <= MAX_HIHO_NENREI ; nenrei++ )
		{
			for( tokyu = 1 ; tokyu <= 2 ; tokyu++ )
			{
				Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].ninzu
				 = Sotowaku[shubetu - 1][nendo - SOTOWAKU_SHONENDO][nenrei - MIN_HIHO_NENREI] * Hassei_Wariai_20mae[sotai_nendo][nenrei - MIN_HIHO_NENREI]
				 * Tokyu_Wariai_20mae[sotai_nendo][tokyu];
				
				if( Option3 == 0 )
				{
					if( nenrei <= UNDER_67 )
					{
						Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
						 = Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].ninzu * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * Shogai_Bairitu[tokyu];
					}
					else
					{
						Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
						 = Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].ninzu * Full_Pension[sotai_nendo][nenrei - UNDER_67] * Shogai_Bairitu[tokyu];
					}
				}
				if( Option3 == 1 )
				{
					if( nenrei <= UNDER_67 )
					{
						Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
						 = Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].ninzu * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
						 * Shogai_Bairitu[tokyu];
					}
					else
					{
						Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
						 = Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].ninzu * Full_Pension[sotai_nendo][nenrei - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
						 * Shogai_Bairitu[tokyu];
					}
				}
			}
		}
	}
	
	// 障害基礎年金（一般）
	for( nenrei = MIN_SHOGAI_JUKYU ; nenrei <= MAX_SHOGAI_JUKYU ; nenrei++ )
	{
		for( tokyu = 1 ; tokyu <= 2 ; tokyu++ )
		{
			Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].ninzu = 0.;
			Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon = 0.;
			Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].kakyu = 0.;
			Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].menjo_kihon = 0.;
			Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].menjo_kakyu = 0.;
		}
	}
	
	for( nenrei = MIN_HIHO_NENREI ; nenrei <= MAX_HIHO_NENREI ; nenrei++ )
	{
		for( tokyu = 1 ; tokyu <= 2 ; tokyu++ )
		{
			for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
			{
				Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].ninzu
				 += Hasseisha_Shogai[nenrei - MIN_HIHO_NENREI][kikan] * Tokyu_Wariai_Ippan[sotai_nendo][tokyu];
			}
			
			if( Option3 == 0 )
			{
				if( nenrei <= UNDER_67 )
				{
					Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
					 = Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].ninzu * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67]
					 * Shogai_Bairitu[tokyu];
				}
				else
				{
					Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
					 = Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].ninzu * Full_Pension[sotai_nendo][nenrei - UNDER_67]
					 * Shogai_Bairitu[tokyu];
				}
			}				
			if( Option3 == 1 )
			{
				if( nenrei <= UNDER_67 )
				{
					Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
					 = Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].ninzu * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
					 * Shogai_Bairitu[tokyu];
				}
				else
				{
					Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
					 = Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu].ninzu * Full_Pension[sotai_nendo][nenrei - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
					 * Shogai_Bairitu[tokyu];
				}
			}
		}
	}
	
	// 遺族基礎年金
	// 変数クリアー
	for( nenrei_tuma = MIN_IZOKU_TUMA_JUKYU ; nenrei_tuma <= MAX_IZOKU_TUMA_JUKYU ; nenrei_tuma++ )
	{
		Izoku_Tuma_Shinki[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU].ninzu = 0.;
		Izoku_Tuma_Shinki[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU].kihon = 0.;
		Izoku_Tuma_Shinki[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU].kakyu = 0.;
	}
	
	for( nenrei_otto = MIN_IZOKU_OTTO_JUKYU ; nenrei_otto <= MAX_IZOKU_OTTO_JUKYU ; nenrei_otto++ )
	{
		Izoku_Otto_Shinki[nenrei_otto - MIN_IZOKU_OTTO_JUKYU].ninzu = 0.;
		Izoku_Otto_Shinki[nenrei_otto - MIN_IZOKU_OTTO_JUKYU].kihon = 0.;
		Izoku_Otto_Shinki[nenrei_otto - MIN_IZOKU_OTTO_JUKYU].kakyu = 0.;
	}
	
	for( nenrei_ko = MIN_IZOKU_KO_JUKYU ; nenrei_ko <= MAX_IZOKU_KO_JUKYU ; nenrei_ko++ )
	{
		Izoku_Ko_Shinki[nenrei_ko - MIN_IZOKU_KO_JUKYU].ninzu = 0.;
		Izoku_Ko_Shinki[nenrei_ko - MIN_IZOKU_KO_JUKYU].kihon = 0.;
		Izoku_Ko_Shinki[nenrei_ko - MIN_IZOKU_KO_JUKYU].kakyu = 0.;
	}
	
	// 遺族（妻・子）
	if( shubetu == 2 )
	{
		// 被保険者死亡分
		for( nenrei = MIN_HIHO_NENREI ; nenrei <= MAX_HIHO_NENREI ; nenrei++ )
		{
			for( nenrei_tuma = MIN_IZOKU_TUMA_JUKYU ; nenrei_tuma <= MAX_IZOKU_TUMA_JUKYU ; nenrei_tuma++ )
			{
				if( nenrei_tuma == (int)Sokan_Tuma[sotai_nendo][nenrei - MIN_HIHO_NENREI] )
				{
					Bunpu_Tuma[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU] = Sokan_Tuma[sotai_nendo][nenrei - MIN_HIHO_NENREI] - nenrei_tuma;
				}
				else if( nenrei_tuma == (int)Sokan_Tuma[sotai_nendo][nenrei - MIN_HIHO_NENREI] + 1 )
				{
					Bunpu_Tuma[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU] = nenrei_tuma - Sokan_Tuma[sotai_nendo][nenrei - MIN_HIHO_NENREI];
				}
				else
				{
					Bunpu_Tuma[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU] = 1.;
				}
				
				for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
				{
					if( Option3 == 0 )
					{
						Izoku_Tuma_Shinki[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU].ninzu
						 += Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Tuma[sotai_nendo][nenrei - MIN_HIHO_NENREI]
						  * ( 1. - Bunpu_Tuma[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU] );
					}
					if( Option3 == 1 )
					{
						Izoku_Tuma_Shinki[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU].ninzu
						 += Hihokensha_Shibou_Y[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Tuma[sotai_nendo][nenrei - MIN_HIHO_NENREI]
						  * ( 1. - Bunpu_Tuma[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU] );
					}
				}
			}
			
			// 子分
			for( nenrei_ko = MIN_IZOKU_KO_JUKYU ; nenrei_ko <= MAX_IZOKU_KO_JUKYU ; nenrei_ko++ )
			{
				if( nenrei_ko == (int)Sokan_Ko[sotai_nendo][nenrei - MIN_HIHO_NENREI] )
				{
					Bunpu_Ko[nenrei_ko - MIN_IZOKU_KO_JUKYU] = Sokan_Ko[sotai_nendo][nenrei - MIN_HIHO_NENREI] - nenrei_ko;
				}
				else if( nenrei_ko == (int)Sokan_Ko[sotai_nendo][nenrei - MIN_HIHO_NENREI] + 1 )
				{
					Bunpu_Ko[nenrei_ko - MIN_IZOKU_KO_JUKYU] = nenrei_ko - Sokan_Ko[sotai_nendo][nenrei - MIN_HIHO_NENREI];
				}
				else
				{
					Bunpu_Ko[nenrei_ko - MIN_IZOKU_KO_JUKYU] = 1.;
				}
				
				for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
				{
					if( Option3 == 0 )
					{
						Izoku_Ko_Shinki[nenrei_ko - MIN_IZOKU_KO_JUKYU].ninzu
						 += Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Ko[sotai_nendo][nenrei - MIN_HIHO_NENREI]
						  * ( 1. - Bunpu_Ko[nenrei_ko - MIN_IZOKU_KO_JUKYU] );
					}
					if( Option3 == 1 )
					{
						Izoku_Ko_Shinki[nenrei_ko - MIN_IZOKU_KO_JUKYU].ninzu
						 += Hihokensha_Shibou_Y[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Ko[sotai_nendo][nenrei - MIN_HIHO_NENREI]
						  * ( 1. - Bunpu_Ko[nenrei_ko - MIN_IZOKU_KO_JUKYU] );
					}
				}
			}
		}
		
		// 待期者死亡分
	 	for( nenrei = 60 ; nenrei <= 64 ; nenrei++ )
		{
			for( nenrei_tuma = MIN_IZOKU_TUMA_JUKYU ; nenrei_tuma <= MAX_IZOKU_TUMA_JUKYU ; nenrei_tuma++ )
			{
				if( nenrei_tuma == (int)Sokan_Tuma[sotai_nendo][nenrei - MIN_HIHO_NENREI] )
				{
					Bunpu_Tuma[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU] = Sokan_Tuma[sotai_nendo][nenrei - MIN_HIHO_NENREI] - nenrei_tuma;
				}
				else if( nenrei_tuma == (int)Sokan_Tuma[sotai_nendo][nenrei - MIN_HIHO_NENREI] + 1 )
				{
					Bunpu_Tuma[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU] = nenrei_tuma - Sokan_Tuma[sotai_nendo][nenrei - MIN_HIHO_NENREI];
				}
				else
				{
					Bunpu_Tuma[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU] = 1.;
				}
				
				for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
				{
					if( Option3 == 0 )
					{
						Izoku_Tuma_Shinki[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU].ninzu
						 += Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Tuma[sotai_nendo][nenrei - MIN_HIHO_NENREI]
						  * ( 1. - Bunpu_Tuma[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU] );
					}
					if( Option3 == 1 )
					{
						Izoku_Tuma_Shinki[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU].ninzu
						 += Taikisha_Shibou_Y[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Tuma[sotai_nendo][nenrei - MIN_HIHO_NENREI]
						  * ( 1. - Bunpu_Tuma[nenrei_tuma - MIN_IZOKU_TUMA_JUKYU] );
					}
				}
			}
			
			// 子分
			for( nenrei_ko = MIN_IZOKU_KO_JUKYU ; nenrei_ko <= MAX_IZOKU_KO_JUKYU ; nenrei_ko++ )
			{
				if( nenrei_ko == (int)Sokan_Ko[sotai_nendo][nenrei - MIN_HIHO_NENREI] )
				{
					Bunpu_Ko[nenrei_ko - MIN_IZOKU_KO_JUKYU] = Sokan_Ko[sotai_nendo][nenrei - MIN_HIHO_NENREI] - nenrei_ko;
				}
				else if( nenrei_ko == (int)Sokan_Ko[sotai_nendo][nenrei - MIN_HIHO_NENREI] + 1 )
				{
					Bunpu_Ko[nenrei_ko - MIN_IZOKU_KO_JUKYU] = nenrei_ko - Sokan_Ko[sotai_nendo][nenrei - MIN_HIHO_NENREI];
				}
				else
				{
					Bunpu_Ko[nenrei_ko - MIN_IZOKU_KO_JUKYU] = 1. ;
				}
				
				for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
				{
					if( Option3 == 0 )
					{
						Izoku_Ko_Shinki[nenrei_ko - MIN_IZOKU_KO_JUKYU].ninzu
						 += Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Ko[sotai_nendo][nenrei - MIN_HIHO_NENREI]
						  * ( 1. - Bunpu_Ko[nenrei_ko - MIN_IZOKU_KO_JUKYU] );
					}
					if( Option3 == 1 )
					{
						Izoku_Ko_Shinki[nenrei_ko - MIN_IZOKU_KO_JUKYU].ninzu
						 += Taikisha_Shibou_Y[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Ko[sotai_nendo][nenrei - MIN_HIHO_NENREI]
						  * ( 1. - Bunpu_Ko[nenrei_ko - MIN_IZOKU_KO_JUKYU] );
					}
				}
			}
		}
		
		// 新規裁定者年金額計算
		for( nenrei = MIN_IZOKU_TUMA_JUKYU ; nenrei <= MAX_IZOKU_TUMA_JUKYU ; nenrei++ )
		{
			if( nenrei <= UNDER_67 )
			{
				if( Option3 == 0 )
				{
					Izoku_Tuma_Shinki[nenrei - MIN_IZOKU_TUMA_JUKYU].kihon
					 = Izoku_Tuma_Shinki[nenrei - MIN_IZOKU_TUMA_JUKYU].ninzu * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67];
				}
				if( Option3 == 1 )
				{
					Izoku_Tuma_Shinki[nenrei - MIN_IZOKU_TUMA_JUKYU].kihon
					 = Izoku_Tuma_Shinki[nenrei - MIN_IZOKU_TUMA_JUKYU].ninzu * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei );
				}
			}
			else
			{
				if( Option3 == 0 )
				{
					Izoku_Tuma_Shinki[nenrei - MIN_IZOKU_TUMA_JUKYU].kihon
					 = Izoku_Tuma_Shinki[nenrei - MIN_IZOKU_TUMA_JUKYU].ninzu * Full_Pension[sotai_nendo][nenrei - UNDER_67];
				}
				if( Option3 == 1 )
				{
					Izoku_Tuma_Shinki[nenrei - MIN_IZOKU_TUMA_JUKYU].kihon
					 = Izoku_Tuma_Shinki[nenrei - MIN_IZOKU_TUMA_JUKYU].ninzu * Full_Pension[sotai_nendo][nenrei - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei );
				}
			}
		}
		
		for( nenrei = MIN_IZOKU_KO_JUKYU ; nenrei <= MAX_IZOKU_KO_JUKYU ; nenrei++ )
		{
			if( Option3 == 0 )
			{
				Izoku_Ko_Shinki[nenrei - MIN_IZOKU_KO_JUKYU].kihon
				 = Izoku_Ko_Shinki[nenrei - MIN_IZOKU_KO_JUKYU].ninzu * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67];
			}
			if( Option3 == 1 )
			{
				Izoku_Ko_Shinki[nenrei - MIN_IZOKU_KO_JUKYU].kihon
				 = Izoku_Ko_Shinki[nenrei - MIN_IZOKU_KO_JUKYU].ninzu * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei );
			}
		}
	}
	
	
	// 遺族（夫）
	if( nendo >= 2014 )
	{
		if( shubetu == 5 || shubetu == 6 )
		{
			// 被保険者死亡分
			for( nenrei = MIN_HIHO_NENREI ; nenrei <= MAX_HIHO_NENREI ; nenrei++ )
			{
				for( nenrei_otto = MIN_IZOKU_OTTO_JUKYU ; nenrei_otto <= MAX_IZOKU_OTTO_JUKYU ; nenrei_otto++ )
				{
					if( nenrei_otto == (int)Sokan_Otto[sotai_nendo][nenrei - MIN_HIHO_NENREI] )
					{
						Bunpu_Otto[nenrei_otto - MIN_IZOKU_OTTO_JUKYU] = Sokan_Otto[sotai_nendo][nenrei - MIN_HIHO_NENREI] - nenrei_otto;
					}
					else if( nenrei_otto == (int)Sokan_Otto[sotai_nendo][nenrei - MIN_HIHO_NENREI] + 1 )
					{
						Bunpu_Otto[nenrei_otto - MIN_IZOKU_OTTO_JUKYU] = nenrei_otto - Sokan_Otto[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					}
					else
					{
						Bunpu_Otto[nenrei_otto - MIN_IZOKU_OTTO_JUKYU] = 1.;
					}
					
					for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
					{
						if( Option3 == 0 )
						{
							Izoku_Otto_Shinki[nenrei_otto - MIN_IZOKU_OTTO_JUKYU].ninzu
							 += Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Otto[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Otto[nenrei_otto - MIN_IZOKU_OTTO_JUKYU] );
						}
						if( Option3 == 1 )
						{
							Izoku_Otto_Shinki[nenrei_otto - MIN_IZOKU_OTTO_JUKYU].ninzu
							 += Hihokensha_Shibou_Y[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Otto[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Otto[nenrei_otto - MIN_IZOKU_OTTO_JUKYU] );
						}
					}
				}
			}
			
			//  待期者死亡分
		 	for( nenrei = 60 ; nenrei <= 64 ; nenrei++ )
			{
				for( nenrei_otto = MIN_IZOKU_OTTO_JUKYU ; nenrei_otto <= MAX_IZOKU_OTTO_JUKYU ; nenrei_otto++ )
				{
					if( nenrei_otto == (int)Sokan_Otto[sotai_nendo][nenrei - MIN_HIHO_NENREI] )
					{
						Bunpu_Otto[nenrei_otto - MIN_IZOKU_OTTO_JUKYU] = Sokan_Otto[sotai_nendo][nenrei - MIN_HIHO_NENREI] - nenrei_otto;
					}
					else if( nenrei_otto == (int)Sokan_Otto[sotai_nendo][nenrei - MIN_HIHO_NENREI] + 1 )
					{
						Bunpu_Otto[nenrei_otto - MIN_IZOKU_OTTO_JUKYU] = nenrei_otto - Sokan_Otto[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					}
					else
					{
						Bunpu_Otto[nenrei_otto - MIN_IZOKU_OTTO_JUKYU] = 1.;
					}
					
					for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
					{
						if( Option3 == 0 )
						{
							Izoku_Otto_Shinki[nenrei_otto - MIN_IZOKU_OTTO_JUKYU].ninzu
							 += Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Otto[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Otto[nenrei_otto - MIN_IZOKU_OTTO_JUKYU] );
						}
						if( Option3 == 1 )
						{
							Izoku_Otto_Shinki[nenrei_otto - MIN_IZOKU_OTTO_JUKYU].ninzu
							 += Taikisha_Shibou_Y[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Otto[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Otto[nenrei_otto - MIN_IZOKU_OTTO_JUKYU] );
						}
					}
				}
			}
			
			// 新規裁定者年金額計算
			for( nenrei = MIN_IZOKU_OTTO_JUKYU ; nenrei <= MAX_IZOKU_OTTO_JUKYU ; nenrei++ )
			{
				if( nenrei <= UNDER_67 )
				{
					if( Option3 == 0 )
					{
						Izoku_Otto_Shinki[nenrei - MIN_IZOKU_OTTO_JUKYU].kihon
						 = Izoku_Otto_Shinki[nenrei - MIN_IZOKU_OTTO_JUKYU].ninzu * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67];
					}
					if( Option3 == 1 )
					{
						Izoku_Otto_Shinki[nenrei - MIN_IZOKU_OTTO_JUKYU].kihon
						 = Izoku_Otto_Shinki[nenrei - MIN_IZOKU_OTTO_JUKYU].ninzu * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei );
					}
				}
				else
				{
					if( Option3 == 0 )
					{
						Izoku_Otto_Shinki[nenrei - MIN_IZOKU_OTTO_JUKYU].kihon
						 = Izoku_Otto_Shinki[nenrei - MIN_IZOKU_OTTO_JUKYU].ninzu * Full_Pension[sotai_nendo][nenrei - UNDER_67];
					}
					if( Option3 == 1 )
					{
						Izoku_Otto_Shinki[nenrei - MIN_IZOKU_OTTO_JUKYU].kihon
						 = Izoku_Otto_Shinki[nenrei - MIN_IZOKU_OTTO_JUKYU].ninzu * Full_Pension[sotai_nendo][nenrei - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei );
					}
				}
			}
		}
	}
	
	// 寡婦年金
	for( nenrei_kafu = MIN_KAFU_JUKYU ; nenrei_kafu <= MAX_KAFU_JUKYU ; nenrei_kafu++ )
	{
		Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].ninzu = 0.;
		Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu = 0.;
		for( dankai = 0 ; dankai <= MAX_MENJO - 1 ; dankai++ )
		{
			for( kokko = 0 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
			{
				Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].menjo[dankai][kokko] = 0.;
			}
		}
	}
	
	if( Option3 == 0 )
	{
		if( shubetu == 2 )
		{
			for( nenrei = MIN_HIHO_NENREI ; nenrei <= MAX_HIHO_NENREI ; nenrei++ )
			{
				seinendo = nendo - nenrei;
				
				for( nenrei_kafu = MIN_KAFU_JUKYU ; nenrei_kafu <= MAX_KAFU_JUKYU ; nenrei_kafu++ )
				{
					if( nenrei_kafu == (int)Sokan_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI] )
					{
						Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] = Sokan_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI] - nenrei_kafu;
					}
					else if( nenrei_kafu == (int)Sokan_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI] + 1 )
					{
						Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] = nenrei_kafu - Sokan_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					}
					else
					{
						Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] = 1.;
					}
					
					for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
					{
						// 被保険者死亡分
						Noufu_Kikan = Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu
						            + Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].gakusei
						            + Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].wakamono;
						for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
						{
							for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++)
							{
								Noufu_Kikan += Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko];
							}
						}
						
						if( Noufu_Kikan >= 25. )
						{
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].ninzu
							 += Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
							
							// 納付分
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
							 += 3. / 4. * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67]
							  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu
							  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
							  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
							
							// 段階免除分（納付分へ）
							for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
							{
								for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
								{
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
									 += 3. / 4. * Hokenryou_Wariai[dankai]
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67]
									  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
									  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
								  	* Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
								    * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
									
									// 全額免除分及び段階免除分の特別国庫相当
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].menjo[dankai][kokko]
									 +=  3. / 4. * Kokko_Wariai[kokko] * ( 1. - Hokenryou_Wariai[dankai] )
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67]
									  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
									  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
									  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
									  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
								}
							}
						}
						else if( nendo >= 2015 && Noufu_Kikan >= 10. )
						{
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].ninzu
							 += Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
							
							// 納付分
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
							 += 3. / 4. * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67]
							  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu
							  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
							  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
							
							// 段階免除分（納付分へ）
							for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
							{
								for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
								{
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
									 += 3. / 4. * Hokenryou_Wariai[dankai]
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67]
									  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
								  	/ Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
								    * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
									  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
									
									// 全額免除分及び段階免除分の特別国庫相当
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].menjo[dankai][kokko]
									 +=  3. / 4. * Kokko_Wariai[kokko] * ( 1. - Hokenryou_Wariai[dankai] )
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67]
									  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
									  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
									  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
									  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
								}
							}
						}
						
						// 待期者死亡分
						Noufu_Kikan = Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu
						            + Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].gakusei
						            + Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].wakamono;
						for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
						{
							for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
							{
								Noufu_Kikan += Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko];
							}
						}
						
						if( Noufu_Kikan >= 25. )
						{
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].ninzu
							 += Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
							
							// 納付分
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
							 += 3. / 4. * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67]
							  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu
						  	/ Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
							  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
							
							// 段階免除分（納付分へ）
							for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
							{
								for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
								{
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
									 += 3. / 4. * Hokenryou_Wariai[dankai]
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67]
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
									  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
									  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
									
									// 全額免除分及び段階免除分の特別国庫相当
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].menjo[dankai][kokko]
									 += 3. / 4. * Kokko_Wariai[kokko] * ( 1. - Hokenryou_Wariai[dankai] )
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67]
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
									  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
									  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
								}
							}
						}
						else if( nendo >= 2015 && Noufu_Kikan >= 10. )
						{
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].ninzu
							 += Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
							
							// 納付分
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
							 += 3. / 4. * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67]
							  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu
							  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
							  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
							
							// 段階免除分（納付分へ）
							for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
							{
								for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
								{
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
									 += 3. / 4. * Hokenryou_Wariai[dankai]
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67]
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
								  	/ Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
								    * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
									  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
									
									// 全額免除分及び段階免除分の特別国庫相当
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].menjo[dankai][kokko]
									 += 3. / 4. * Kokko_Wariai[kokko] * ( 1. - Hokenryou_Wariai[dankai] )
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67]
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
									  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
								  	* ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
								}
							}
						}
					}
				}
			}
		}
	}
	if( Option3 == 1 )
	{
		if( shubetu == 2 )
		{
			for( nenrei = MIN_HIHO_NENREI ; nenrei <= MAX_HIHO_NENREI ; nenrei++ )
			{
				seinendo = nendo - nenrei;
				
				for( nenrei_kafu = MIN_KAFU_JUKYU ; nenrei_kafu <= MAX_KAFU_JUKYU ; nenrei_kafu++ )
				{
					if( nenrei_kafu == (int)Sokan_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI] )
					{
						Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] = Sokan_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI] - nenrei_kafu;
					}
					else if( nenrei_kafu == (int)Sokan_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI] + 1 )
					{
						Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] = nenrei_kafu - Sokan_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					}
					else
					{
						Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] = 1.;
					}
					
					for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
					{
						// 被保険者死亡分
						Noufu_Kikan = Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu
						            + Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].gakusei
						            + Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].wakamono;
						for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
						{
							for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++)
							{
								Noufu_Kikan += Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko];
							}
						}
						
						if( Noufu_Kikan >= 25. )
						{
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].ninzu
							 += Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
							
							// 納付分
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
							 += 3. / 4. * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
							  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu
							  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
							  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
							
							// 段階免除分（納付分へ）
							for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
							{
								for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
								{
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
									 += 3. / 4. * Hokenryou_Wariai[dankai]
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
									  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
									  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
								  	* Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
								    * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
									
									// 全額免除分及び段階免除分の特別国庫相当
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].menjo[dankai][kokko]
									 +=  3. / 4. * Kokko_Wariai[kokko] * ( 1. - Hokenryou_Wariai[dankai] )
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
									  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
									  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
									  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
									  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
								}
							}
						}
						else if( nendo >= 2015 && Noufu_Kikan >= 10. )
						{
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].ninzu
							 += Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
							
							// 納付分
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
							 += 3. / 4. * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
							  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu
							  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
							  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
							
							// 段階免除分（納付分へ）
							for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
							{
								for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
								{
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
									 += 3. / 4. * Hokenryou_Wariai[dankai]
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
									  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
								  	/ Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
								    * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
									  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
									
									// 全額免除分及び段階免除分の特別国庫相当
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].menjo[dankai][kokko]
									 += 3. / 4. * Kokko_Wariai[kokko] * ( 1. - Hokenryou_Wariai[dankai] )
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
									  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
									  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
									  * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
									  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
								}
							}
						}
						
						// 待期者死亡分
						Noufu_Kikan = Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu
						            + Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].gakusei
						            + Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].wakamono;
						for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
						{
							for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
							{
								Noufu_Kikan += Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko];
							}
						}
						
						if( Noufu_Kikan >= 25. )
						{
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].ninzu
							 += Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
							
							// 納付分
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
							 += 3. / 4. * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
							  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu
						  	/ Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
							  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
							
							// 段階免除分（納付分へ）
							for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
							{
								for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
								{
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
									 += 3. / 4. * Hokenryou_Wariai[dankai]
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
									  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
									  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
									
									// 全額免除分及び段階免除分の特別国庫相当
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].menjo[dankai][kokko]
									 += 3. / 4. * Kokko_Wariai[kokko] * ( 1. - Hokenryou_Wariai[dankai] )
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
									  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
									  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] );
								}
							}
						}
						else if( nendo >= 2015 && Noufu_Kikan >= 10. )
						{
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].ninzu
							 += Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
							
							// 納付分
							Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
							 += 3. / 4. * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
							  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu
							  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
							  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
							  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
							
							// 段階免除分（納付分へ）
							for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
							{
								for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
								{
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].noufu
									 += 3. / 4. * Hokenryou_Wariai[dankai]
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
								  	/ Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
								    * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
									  * ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
									
									// 全額免除分及び段階免除分の特別国庫相当
									Kafu_Shinki[nenrei_kafu - MIN_KAFU_JUKYU].menjo[dankai][kokko]
									 += 3. / 4. * Kokko_Wariai[kokko] * ( 1. - Hokenryou_Wariai[dankai] )
									  * Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei )
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
									  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
									  * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Kafu[sotai_nendo][nenrei - MIN_HIHO_NENREI]
								  	* ( 1. - Bunpu_Kafu[nenrei_kafu - MIN_KAFU_JUKYU] ) / (nendo == 2015 ? 2. : 1.);
								}
							}
						}
					}
				}
			}
		}
	}
	
	// 死亡一時金
	
	// 変数クリアー
	for( nenrei = MIN_HIHO_NENREI ; nenrei <= MAX_HIHO_NENREI ; nenrei++ )
	{
		Ichijikin_Nendomatu[nenrei - MIN_HIHO_NENREI].ninzu = 0.;
		Ichijikin_Nendomatu[nenrei - MIN_HIHO_NENREI].kyufu = 0.;
		Ichijikin_Nendomatu[nenrei - MIN_HIHO_NENREI].kyufu_fuka = 0.;
	}
	
	if( shubetu == 2 || shubetu == 5 )
	{
		for( nenrei = MIN_HIHO_NENREI ; nenrei <= MAX_HIHO_NENREI ; nenrei++ )
		{
			for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
			{
				// 被保険者死亡分
				Noufu_Kikan = Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu;
				for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
				{
					for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
					{
						Noufu_Kikan += Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko] * Hokenryou_Wariai[dankai];
					}
				}
				
				if( Noufu_Jokyo[nenrei - MIN_HIHO_NENREI].fuka == 0. )
				{
					Noufu_Kikan_Fuka = 0.;
				}
				else
				{
					Noufu_Kikan_Fuka = Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].fuka / Noufu_Jokyo[nenrei - MIN_HIHO_NENREI].fuka;
				}
				
				if( Noufu_Kikan >= 3. )
				{
					Ichijikin_Nendomatu[nenrei - MIN_HIHO_NENREI].ninzu
					 += Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Shibou[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					
					Ichijikin_Nendomatu[nenrei - MIN_HIHO_NENREI].kyufu
					 += Tanka_Shibou[sotai_nendo][Shibou_Kubun( Noufu_Kikan )] * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu
					  * Hassei_Wariai_Shibou[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					
					if( Noufu_Kikan_Fuka >= 3. )
					{
						Ichijikin_Nendomatu[nenrei - MIN_HIHO_NENREI].kyufu_fuka
						 += Tanka_Shibou_Fuka * Hihokensha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu
						  * Hassei_Wariai_Shibou[sotai_nendo][nenrei - MIN_HIHO_NENREI] * Noufu_Jokyo[nenrei - MIN_HIHO_NENREI].fuka;
					}
				}
				
				// 待期者死亡分
				Noufu_Kikan = Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].noufu;
				for( dankai = 1 ; dankai <= MAX_MENJO - 1 ; dankai++ )
				{
					for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
					{
						Noufu_Kikan += Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko] * Hokenryou_Wariai[dankai];
					}
				}
				
				if( Noufu_Jokyo[nenrei - MIN_HIHO_NENREI].fuka == 0. )
				{
					Noufu_Kikan_Fuka = 0.;
				}
				else
				{
					Noufu_Kikan_Fuka = Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].fuka / Noufu_Jokyo[nenrei - MIN_HIHO_NENREI].fuka;
				}
				
				if( Noufu_Kikan >= 3. )
				{
					Ichijikin_Nendomatu[nenrei - MIN_HIHO_NENREI].ninzu
					 += Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Shibou[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					
					Ichijikin_Nendomatu[nenrei - MIN_HIHO_NENREI].kyufu
					 += Tanka_Shibou[sotai_nendo][Shibou_Kubun( Noufu_Kikan )] * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu
				    * Hassei_Wariai_Shibou[sotai_nendo][nenrei - MIN_HIHO_NENREI];
					
					if( Noufu_Kikan_Fuka >= 3. )
					{
						Ichijikin_Nendomatu[nenrei - MIN_HIHO_NENREI].kyufu_fuka
						 += Tanka_Shibou_Fuka * Taikisha_Shibou[nenrei - MIN_HIHO_NENREI][kikan].ninzu
						  * Hassei_Wariai_Shibou[sotai_nendo][nenrei - MIN_HIHO_NENREI] * Noufu_Jokyo[nenrei - MIN_HIHO_NENREI].fuka;
					}
				}
			}
		}
	}
	
	// 老齢基礎年金
	for( jukyu_nenrei = MIN_ROREI_JUKYU ; jukyu_nenrei <= 70 ; jukyu_nenrei++ )
	{
		Rorei_Shinki[jukyu_nenrei - MIN_ROREI_JUKYU].ninzu = 0.;
		Rorei_Shinki[jukyu_nenrei - MIN_ROREI_JUKYU].noufu = 0.;
		for( dankai = 0 ; dankai <= MAX_MENJO - 1 ; dankai++ )
		{
			for( kokko = 0 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
			{
				Rorei_Shinki[jukyu_nenrei - MIN_ROREI_JUKYU].menjo[dankai][kokko] = 0.;
			}
		}
		Rorei_Shinki[jukyu_nenrei - MIN_ROREI_JUKYU].rofuku_shitasasae = 0.;
		Rorei_Shinki[jukyu_nenrei - MIN_ROREI_JUKYU].fuka = 0.;
	}
	
	if( Option3 == 1 )
	{
		for( jukyu_nenrei = MIN_ROREI_JUKYU ; jukyu_nenrei <= 70 ; jukyu_nenrei++ )
		{
			Rorei_Shinki2[jukyu_nenrei - MIN_ROREI_JUKYU].ninzu = 0.;
			Rorei_Shinki2[jukyu_nenrei - MIN_ROREI_JUKYU].noufu = 0.;
			for( dankai = 0 ; dankai <= MAX_MENJO - 1 ; dankai++ )
			{
				for( kokko = 0 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
				{
					Rorei_Shinki2[jukyu_nenrei - MIN_ROREI_JUKYU].menjo[dankai][kokko] = 0.;
				}
			}
			Rorei_Shinki2[jukyu_nenrei - MIN_ROREI_JUKYU].rofuku_shitasasae = 0.;
			Rorei_Shinki2[jukyu_nenrei - MIN_ROREI_JUKYU].fuka = 0.;
		}
	}
	
	for( nenrei = MIN_ROREI_JUKYU ; nenrei <= 70 ; nenrei++ )
	{
		jukyu_nenrei = nenrei;
		seinendo =  nendo - nenrei;
		
		for( kikan = 0 ; kikan <= MAX_HIHO_KIKAN ; kikan++ )
		{
			Rorei_Shinki[nenrei - MIN_ROREI_JUKYU].ninzu
			 += Taikisha[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Rorei[sotai_nendo][jukyu_nenrei - MIN_ROREI_JUKYU];
			
			// 納付分
			Rorei_Shinki[nenrei - MIN_ROREI_JUKYU].noufu
			 += Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
			  * Kyufu_ritu[jukyu_nenrei - MIN_ROREI_JUKYU][seinendo - ( SHONENDO + 1 - 70 )][shubetu <= 3 ? 0 : 1]
			  * Taikisha[nenrei - MIN_HIHO_NENREI][kikan].noufu
			  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
			  * Taikisha[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Rorei[sotai_nendo][jukyu_nenrei - MIN_ROREI_JUKYU];
			
			// 段階免除分（納付分へ）
			for( dankai = ZENGAKU ; dankai <= MENJO_1_4 ; dankai++ )
			{
				for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
				{
					Rorei_Shinki[nenrei- MIN_ROREI_JUKYU].noufu
					 += Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
					  * Kyufu_ritu[jukyu_nenrei - MIN_ROREI_JUKYU][seinendo - ( SHONENDO + 1 - 70 )][shubetu <= 3 ? 0 : 1] * Hokenryou_Wariai[dankai]
					  * Taikisha[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
					  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
					  * Taikisha[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Rorei[sotai_nendo][jukyu_nenrei - MIN_ROREI_JUKYU];
						
					// 全額免除分及び段階免除分の特別国庫相当
					Rorei_Shinki[nenrei - MIN_ROREI_JUKYU].menjo[dankai][kokko]
					 += Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
					  * Kyufu_ritu[jukyu_nenrei - MIN_ROREI_JUKYU][seinendo - ( SHONENDO + 1 - 70 )][shubetu <= 3 ? 0 : 1] * Kokko_Wariai[kokko]
					  * ( 1. - Hokenryou_Wariai[dankai] )
					  * Taikisha[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
					  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
					  * Taikisha[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Rorei[sotai_nendo][jukyu_nenrei - MIN_ROREI_JUKYU];
		 		}
			}
			
			// 付加年金納付分
			Rorei_Shinki[nenrei - MIN_ROREI_JUKYU].fuka
			 += Full_Pension_Fuka * Kyufu_ritu[jukyu_nenrei - MIN_ROREI_JUKYU][seinendo - ( SHONENDO + 1 - 70 )][shubetu <= 3 ? 0 : 1]
			  * Taikisha[nenrei - MIN_HIHO_NENREI][kikan].fuka * Taikisha[nenrei - MIN_HIHO_NENREI][kikan].ninzu
			  * Hassei_Wariai_Rorei[sotai_nendo][jukyu_nenrei - MIN_ROREI_JUKYU];
			
			if( Option3 == 1 )
			{
				if( ( ( nendo - nenrei == 1958 || nendo - nenrei == 1959 ) && ( nenrei >= 60 && nenrei <= 60 ) ) ||
						( ( nendo - nenrei == 1960 || nendo - nenrei == 1961 ) && ( nenrei >= 60 && nenrei <= 61 ) ) ||
						( ( nendo - nenrei == 1962 || nendo - nenrei == 1963 ) && ( nenrei >= 60 && nenrei <= 62 ) ) ||
						( ( nendo - nenrei == 1964 || nendo - nenrei == 1965 ) && ( nenrei >= 60 && nenrei <= 63 ) ) ||
						( nendo - nenrei >= 1966 && ( nenrei >= 60 && nenrei <= 64 ) ) )
				{
					Rorei_Shinki[nenrei - MIN_ROREI_JUKYU].ninzu
					 += Hihokensha[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Rorei[sotai_nendo][jukyu_nenrei - MIN_ROREI_JUKYU];
					
					// 納付分
					Rorei_Shinki[nenrei - MIN_ROREI_JUKYU].noufu
					 += Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
					  * Kyufu_ritu[jukyu_nenrei - MIN_ROREI_JUKYU][seinendo - ( SHONENDO + 1 - 70 )][shubetu <= 3 ? 0 : 1]
					  * Hihokensha[nenrei - MIN_HIHO_NENREI][kikan].noufu
					  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
				  	* Hihokensha[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Rorei[sotai_nendo][jukyu_nenrei - MIN_ROREI_JUKYU];
					
					// 段階免除分（納付分へ）
					for( dankai = ZENGAKU ; dankai <= MENJO_1_4 ; dankai++ )
					{
						for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
						{
							Rorei_Shinki[nenrei- MIN_ROREI_JUKYU].noufu
							 += Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
							  * Kyufu_ritu[jukyu_nenrei - MIN_ROREI_JUKYU][seinendo - ( SHONENDO + 1 - 70 )][shubetu <= 3 ? 0 : 1] * Hokenryou_Wariai[dankai]
							  * Hihokensha[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
							  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
							  * Hihokensha[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Rorei[sotai_nendo][jukyu_nenrei - MIN_ROREI_JUKYU];
								
							// 全額免除分及び段階免除分の特別国庫相当
							Rorei_Shinki[nenrei - MIN_ROREI_JUKYU].menjo[dankai][kokko]
								 += Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
							    * Kyufu_ritu[jukyu_nenrei - MIN_ROREI_JUKYU][seinendo - ( SHONENDO + 1 - 70 )][shubetu <= 3 ? 0 : 1] * Kokko_Wariai[kokko]
							    * ( 1. - Hokenryou_Wariai[dankai] )
							    * Hihokensha[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
							    / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
							    * Hihokensha[nenrei - MIN_HIHO_NENREI][kikan].ninzu * Hassei_Wariai_Rorei[sotai_nendo][jukyu_nenrei - MIN_ROREI_JUKYU];
			 			}
					}
					// 付加年金納付分
					Rorei_Shinki[nenrei - MIN_ROREI_JUKYU].fuka
							 += Full_Pension_Fuka * Kyufu_ritu[jukyu_nenrei - MIN_ROREI_JUKYU][seinendo - ( SHONENDO + 1 - 70 )][shubetu <= 3 ? 0 : 1]
					      * Hihokensha[nenrei - MIN_HIHO_NENREI][kikan].fuka * Hihokensha[nenrei - MIN_HIHO_NENREI][kikan].ninzu
				  	    * Hassei_Wariai_Rorei[sotai_nendo][jukyu_nenrei - MIN_ROREI_JUKYU];
				}
			}
			
			if( Option3 == 1 )
			{
				if( nenrei == 65 )
				{
					Rorei_Shinki2[nenrei - MIN_ROREI_JUKYU].ninzu += Hihokensha2[nenrei - MIN_HIHO_NENREI][kikan].ninzu;
					
					// 納付分
					Rorei_Shinki2[nenrei - MIN_ROREI_JUKYU].noufu
					 += Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
			  	  * Kyufu_ritu[jukyu_nenrei - MIN_ROREI_JUKYU][seinendo - ( SHONENDO + 1 - 70 )][shubetu <= 3 ? 0 : 1]
				    * Hihokensha2[nenrei - MIN_HIHO_NENREI][kikan].noufu
				    / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
				    * Hihokensha2[nenrei - MIN_HIHO_NENREI][kikan].ninzu;
					
					// 段階免除分（納付分へ）
					for( dankai = ZENGAKU ; dankai <= MENJO_1_4 ; dankai++ )
					{
						for( kokko = 1 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
						{
							Rorei_Shinki2[nenrei- MIN_ROREI_JUKYU].noufu
								 += Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
							    * Kyufu_ritu[jukyu_nenrei - MIN_ROREI_JUKYU][seinendo - ( SHONENDO + 1 - 70 )][shubetu <= 3 ? 0 : 1] * Hokenryou_Wariai[dankai]
							    * Hihokensha2[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
						  	  / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
						    	* Hihokensha2[nenrei - MIN_HIHO_NENREI][kikan].ninzu;
									
							// 全額免除分及び段階免除分の特別国庫相当
							Rorei_Shinki2[nenrei - MIN_ROREI_JUKYU].menjo[dankai][kokko]
								 += Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
							    * Kyufu_ritu[jukyu_nenrei - MIN_ROREI_JUKYU][seinendo - ( SHONENDO + 1 - 70 )][shubetu <= 3 ? 0 : 1] * Kokko_Wariai[kokko]
							    * ( 1. - Hokenryou_Wariai[dankai] )
							    * Hihokensha2[nenrei - MIN_HIHO_NENREI][kikan].menjo[dankai][kokko]
							    / Kanou_Nensu[ seinendo < 1966 ? seinendo - 1925 : 41 ]
						  	  * Hihokensha2[nenrei - MIN_HIHO_NENREI][kikan].ninzu;
				 		}
					}
					// 付加年金納付分
					Rorei_Shinki2[nenrei - MIN_ROREI_JUKYU].fuka
							 += Full_Pension_Fuka * Kyufu_ritu[jukyu_nenrei - MIN_ROREI_JUKYU][seinendo - ( SHONENDO + 1 - 70 )][shubetu <= 3 ? 0 : 1]
					      * Hihokensha2[nenrei - MIN_HIHO_NENREI][kikan].fuka * Hihokensha2[nenrei - MIN_HIHO_NENREI][kikan].ninzu;
				}
			}
			
			if( Option3 == 1 )
			{
				if( ( ( nendo - nenrei == 1958 || nendo - nenrei == 1959 ) && ( nenrei >= 60 && nenrei <= 60 ) ) ||
						( ( nendo - nenrei == 1960 || nendo - nenrei == 1961 ) && ( nenrei >= 60 && nenrei <= 61 ) ) ||
						( ( nendo - nenrei == 1962 || nendo - nenrei == 1963 ) && ( nenrei >= 60 && nenrei <= 62 ) ) ||
						( ( nendo - nenrei == 1964 || nendo - nenrei == 1965 ) && ( nenrei >= 60 && nenrei <= 63 ) ) ||
						( nendo - nenrei >= 1966 && ( nenrei >= 60 && nenrei <= 64 ) ) )
				{
					Hihokensha[nenrei - MIN_HIHO_NENREI][kikan].ninzu *= ( 1. - Hassei_Wariai_Rorei[sotai_nendo][jukyu_nenrei - MIN_ROREI_JUKYU] );
				}
				// 裁定済待期者を処理
				Taikisha_Y[nenrei - MIN_HIHO_NENREI][kikan].ninzu *= ( 1. - Hassei_Wariai_Rorei[sotai_nendo][jukyu_nenrei - MIN_ROREI_JUKYU] );
			}
			Taikisha[nenrei - MIN_HIHO_NENREI][kikan].ninzu *= ( 1. - Hassei_Wariai_Rorei[sotai_nendo][jukyu_nenrei - MIN_ROREI_JUKYU] );
		}
	}
	
	// 年度末状態の更新
	
	// 老齢年金
	for( jukyu_nenrei = MIN_ROREI_JUKYU ; jukyu_nenrei <= 70 ; jukyu_nenrei++ )
	{
		for( nenrei = MAX_ROREI_JUKYU ; nenrei >= MIN_ROREI_JUKYU + 1 ; nenrei-- )
		{
			Rorei_Nendomatu[nenrei - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU]
			 = adjustbenefit( kaiteiritu_tannen[nendo - ECON_SHONENDO][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
			                , scalar( ( 1. - Shikkenritu_Rorei[sotai_nendo][nenrei - MIN_HIHO_NENREI] )
			                        , Rorei_Nendomatu[nenrei - 1 - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU] ) );
			
			Rorei_Kyu_Nendomatu[nenrei - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU]
			 = adjustbenefit( kaiteiritu_tannen[nendo - ECON_SHONENDO][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
			                , scalar( ( 1. - Shikkenritu_Rorei[sotai_nendo][nenrei - MIN_HIHO_NENREI] )
			                        , Rorei_Kyu_Nendomatu[nenrei - 1 - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU] ) );
			
			Turo_Kyu_Nendomatu[nenrei - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU]
			 = adjustbenefit( kaiteiritu_tannen[nendo - ECON_SHONENDO][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
			                , scalar( ( 1. - Shikkenritu_Rorei[sotai_nendo][nenrei - MIN_HIHO_NENREI] )
			                        , Turo_Kyu_Nendomatu[nenrei - 1 - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU] ) );
			
			Gonen_Nendomatu[nenrei - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU]
			 = adjustbenefit( kaiteiritu_tannen[nendo - ECON_SHONENDO][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
			                , scalar( ( 1. - Shikkenritu_Rorei[sotai_nendo][nenrei - MIN_HIHO_NENREI] )
			                        , Gonen_Nendomatu[nenrei - 1 - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU] ) );
			
			Rorei_Ichibu_Nendomatu[nenrei - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU]
			 = adjustbenefit( kaiteiritu_tannen[nendo - ECON_SHONENDO][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
			                , scalar( ( 1. - Shikkenritu_Rorei[sotai_nendo][nenrei - MIN_HIHO_NENREI] )
			                        , Rorei_Ichibu_Nendomatu[nenrei - 1 - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU] ) );
			
			// 一部繰り上げ者の６５歳時処理
			seinendo =  nendo - nenrei;
			if( seinendo >= SHONENDO + 1 - 64 && seinendo <= SHONENDO + 1 - 60 && nenrei == 65 )
			{
				Rorei_Ichibu_Nendomatu[nenrei - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU]
				 = multiply( Rorei_Ichibu_Nendomatu[nenrei - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU]
				           , Kakudai_Ichibu[seinendo - ( SHONENDO + 1 - MAX_ROREI_JUKYU )][jukyu_nenrei - MIN_ROREI_JUKYU] );
			}
			
			if( nenrei - jukyu_nenrei == 0 )
			{
				Rorei_Nendomatu[nenrei - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU]
				 = add( Rorei_Nendomatu[nenrei - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU] , Rorei_Shinki[jukyu_nenrei - MIN_ROREI_JUKYU] );
			}
			
			if( Option3 == 1 )
			{
				if( nenrei == 65 && jukyu_nenrei == 65 )
				{
					Rorei_Shinki2[jukyu_nenrei - MIN_ROREI_JUKYU].ninzu = 0.;
					Rorei_Nendomatu[nenrei - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU]
					 = add( Rorei_Nendomatu[nenrei - MIN_ROREI_JUKYU][jukyu_nenrei - MIN_ROREI_JUKYU] , Rorei_Shinki2[jukyu_nenrei - MIN_ROREI_JUKYU] );
				}
			}
		}
	}
	
	Rorei_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU] = Rorei_Shinki[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU];
	
	Rorei_Kyu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].ninzu = 0.;
	Rorei_Kyu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].noufu = 0.;
	Rorei_Kyu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].menjo = 0.;
	Rorei_Kyu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].kasa_noufu = 0.;
	Rorei_Kyu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].kasa_menjo = 0.;
	Rorei_Kyu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].rofuku_shitasasae = 0.;
	
	Turo_Kyu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].ninzu = 0.;
	Turo_Kyu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].noufu = 0.;
	Turo_Kyu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].menjo = 0.;
	Turo_Kyu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].kasa_noufu = 0.;
	Turo_Kyu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].kasa_menjo = 0.;
	Turo_Kyu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].rofuku_shitasasae = 0.;
	
	Gonen_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].ninzu = 0.;
	Gonen_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].noufu = 0.;
	
 	Rorei_Ichibu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].ninzu = 0.;
	Rorei_Ichibu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].noufu = 0.;
	for( dankai = 0 ; dankai <= MAX_MENJO - 1 ; dankai++ )
	{
		for( kokko = 0 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
		{
			Rorei_Ichibu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].menjo[dankai][kokko] = 0.;
		}
	}
	Rorei_Ichibu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].rofuku_shitasasae = 0.;
	Rorei_Ichibu_Nendomatu[MIN_ROREI_JUKYU - MIN_ROREI_JUKYU][MIN_ROREI_JUKYU - MIN_ROREI_JUKYU].fuka = 0.;
	
	if( Option3 == 1 )
	{
		if( nendo >= 2018 && nendo <= 2030 )
		{
			for( tokyu = 1 ; tokyu <= 2 ; tokyu++ )
			{
				for( nenrei = MAX_SHOGAI_JUKYU ; nenrei >= MIN_SHOGAI_JUKYU + 1 ; nenrei-- )
				{
					Shogai_Ippan_Nendomatu[nenrei - 1 - MIN_SHOGAI_JUKYU][tokyu].kihon *= Nendomatu_Tyousei_Keisu( nendo , nenrei );
					Shogai_20mae_Nendomatu[nenrei - 1 - MIN_SHOGAI_JUKYU][tokyu].kihon *= Nendomatu_Tyousei_Keisu( nendo , nenrei );
				}
			}
			for( nenrei = MAX_IZOKU_TUMA_JUKYU ; nenrei >= MIN_IZOKU_TUMA_JUKYU + 1 ; nenrei-- )
			{
				Izoku_Tuma_Nendomatu[nenrei - 1 - MIN_IZOKU_TUMA_JUKYU].kihon *= Nendomatu_Tyousei_Keisu( nendo , nenrei );
			}
			for( nenrei = MAX_IZOKU_OTTO_JUKYU ; nenrei >= MIN_IZOKU_OTTO_JUKYU + 1 ; nenrei-- )
			{
				Izoku_Otto_Nendomatu[nenrei - 1 - MIN_IZOKU_OTTO_JUKYU].kihon *= Nendomatu_Tyousei_Keisu( nendo , nenrei );
			}
			for( nenrei = MAX_IZOKU_KO_JUKYU ; nenrei >= MIN_IZOKU_KO_JUKYU + 1 ; nenrei-- )
			{
				Izoku_Ko_Nendomatu[nenrei - 1 - MIN_IZOKU_KO_JUKYU].kihon *= Nendomatu_Tyousei_Keisu( nendo , nenrei );
			}
			for( nenrei = MAX_KAFU_JUKYU ; nenrei >= MIN_KAFU_JUKYU + 1 ; nenrei-- )
			{
				Kafu_Nendomatu[nenrei - 1 - MIN_KAFU_JUKYU].noufu *= Nendomatu_Tyousei_Keisu( nendo , nenrei );
				Kafu_Kyu_Nendomatu[nenrei - 1 - MIN_KAFU_JUKYU].noufu *= Nendomatu_Tyousei_Keisu( nendo , nenrei );
			}
		}
	}
	
	// 障害年金
	for( tokyu = 1 ; tokyu <= 2 ; tokyu++ )
	{
		// 人数及び基本額
		for( nenrei = MAX_SHOGAI_JUKYU ; nenrei >= MIN_SHOGAI_JUKYU + 1 ; nenrei-- )
		{
			// 一般障害基礎年金
			Shogai_Ippan_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu]
			 = add( adjustbenefit( kaiteiritu_tannen[nendo - ECON_SHONENDO][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
			                     , scalar( ( 1. - Shikkenritu_Ippan[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU] )
			                             , Shogai_Ippan_Nendomatu[nenrei - 1 - MIN_SHOGAI_JUKYU][tokyu] ) )
			      , Shogai_Ippan_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu] );
			
			// ２０歳前障害基礎年金
			Shogai_20mae_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu]
			 = add( adjustbenefit( kaiteiritu_tannen[nendo - ECON_SHONENDO][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
			                     , scalar( ( 1. - Shikkenritu_20mae[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU] )
			                             , Shogai_20mae_Nendomatu[nenrei - 1 - MIN_SHOGAI_JUKYU][tokyu] ) )
			      , Shogai_20mae_Shinki[nenrei - MIN_SHOGAI_JUKYU][tokyu]);
			
			// 旧法障害年金
			Shogai_Kyu_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu]
			 = adjustbenefit( kaiteiritu_tannen[nendo - ECON_SHONENDO][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
			                , scalar( ( 1. - Shikkenritu_Ippan[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU] )
			                        , Shogai_Kyu_Nendomatu[nenrei - 1 - MIN_SHOGAI_JUKYU][tokyu] ) );
			
			if( Option3 == 0 )
			{
				// 加給額の調整
				// 一般障害基礎年金
				Shogai_Ippan_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kakyu
				 = Shogai_Ippan_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
				 / ( Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67] * Shogai_Bairitu[tokyu] )
				 * ( Kakyu_Tanka_12shi[sotai_nendo][nenrei] * Kakyu_Wariai_Ippan_12shi[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU]
				   + Kakyu_Tanka_3shiiko[sotai_nendo][nenrei] * Kakyu_Wariai_Ippan_3shiiko[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU] );
				
				// ２０歳前障害基礎年金
				Shogai_20mae_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kakyu
				 = Shogai_20mae_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
				 / ( Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67] * Shogai_Bairitu[tokyu] )
				 * ( Kakyu_Tanka_12shi[sotai_nendo][nenrei] * Kakyu_Wariai_20mae_12shi[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU]
				   + Kakyu_Tanka_3shiiko[sotai_nendo][nenrei] * Kakyu_Wariai_20mae_3shiiko[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU] );
				
				// 旧法障害年金
				Shogai_Kyu_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kakyu
				 = min( Shogai_Kyu_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
				      / ( Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67] * Shogai_Bairitu[tokyu] )
				      * ( Kakyu_Tanka_12shi[sotai_nendo][nenrei] * Kakyu_Wariai_Ippan_12shi[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU]
			  	      + Kakyu_Tanka_3shiiko[sotai_nendo][nenrei] * Kakyu_Wariai_Ippan_3shiiko[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU] )
			  	    , Shogai_Kyu_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kakyu );
			}
			if( Option3 == 1 )
			{
				// 加給額の調整
				// 一般障害基礎年金
				Shogai_Ippan_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kakyu
				 = Shogai_Ippan_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
				 / ( Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67] * Shogai_Bairitu[tokyu] * FP_Tyousei_Keisu( nendo , nenrei ) )
				 * ( Kakyu_Tanka_12shi[sotai_nendo][nenrei] * Kakyu_Wariai_Ippan_12shi[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU]
				   + Kakyu_Tanka_3shiiko[sotai_nendo][nenrei] * Kakyu_Wariai_Ippan_3shiiko[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU] );
				
				// ２０歳前障害基礎年金
				Shogai_20mae_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kakyu
				 = Shogai_20mae_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
				 / ( Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67] * Shogai_Bairitu[tokyu] * FP_Tyousei_Keisu( nendo , nenrei ) )
				 * ( Kakyu_Tanka_12shi[sotai_nendo][nenrei] * Kakyu_Wariai_20mae_12shi[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU]
				   + Kakyu_Tanka_3shiiko[sotai_nendo][nenrei] * Kakyu_Wariai_20mae_3shiiko[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU] );
				
				// 旧法障害年金
				Shogai_Kyu_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kakyu
				 = min( Shogai_Kyu_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kihon
				      / ( Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67] * Shogai_Bairitu[tokyu] * Shougai_Kyu_Tyousei_Keisu( nendo , nenrei ) )
				      * ( Kakyu_Tanka_12shi[sotai_nendo][nenrei] * Kakyu_Wariai_Ippan_12shi[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU]
			  	      + Kakyu_Tanka_3shiiko[sotai_nendo][nenrei] * Kakyu_Wariai_Ippan_3shiiko[sotai_nendo][nenrei - MIN_SHOGAI_JUKYU] )
			  	    , Shogai_Kyu_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kakyu );
			}
			// 加給額免除分
			if( Shogai_Kyu_Nendomatu[nenrei - 1 - MIN_SHOGAI_JUKYU][tokyu].kakyu == 0. )
			{
				Shogai_Kyu_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].menjo_kakyu = 0.;
			}
			else
			{
				Shogai_Kyu_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].menjo_kakyu
				 = Shogai_Kyu_Nendomatu[nenrei - MIN_SHOGAI_JUKYU][tokyu].kakyu
				 * Shogai_Kyu_Nendomatu[nenrei - 1 - MIN_SHOGAI_JUKYU][tokyu].menjo_kakyu
				 / Shogai_Kyu_Nendomatu[nenrei - 1 - MIN_SHOGAI_JUKYU][tokyu].kakyu;
			}
		}
		
		// MIN_SHOGAI_JUKYU 歳時
		Shogai_Ippan_Nendomatu[MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU][tokyu] = Shogai_Ippan_Shinki[MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU][tokyu];
		Shogai_20mae_Nendomatu[MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU][tokyu] = Shogai_20mae_Shinki[MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU][tokyu];
		
		Shogai_Ippan_Nendomatu[MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU][tokyu].kakyu
		 = Shogai_Ippan_Shinki[MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU][tokyu].ninzu
		 * ( Kakyu_Tanka_12shi[sotai_nendo][MIN_SHOGAI_JUKYU] * Kakyu_Wariai_Ippan_12shi[sotai_nendo][MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU]
		   + Kakyu_Tanka_3shiiko[sotai_nendo][MIN_SHOGAI_JUKYU] * Kakyu_Wariai_Ippan_3shiiko[sotai_nendo][MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU] );
		
		Shogai_20mae_Nendomatu[MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU][tokyu].kakyu
		 = Shogai_20mae_Shinki[MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU][tokyu].ninzu
		 * ( Kakyu_Tanka_12shi[sotai_nendo][MIN_SHOGAI_JUKYU] * Kakyu_Wariai_20mae_12shi[sotai_nendo][MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU]
		   + Kakyu_Tanka_3shiiko[sotai_nendo][MIN_SHOGAI_JUKYU] * Kakyu_Wariai_20mae_3shiiko[sotai_nendo][MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU] );
		
		Shogai_Kyu_Nendomatu[MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU][tokyu].ninzu = 0.;
		Shogai_Kyu_Nendomatu[MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU][tokyu].kihon = 0.;
		Shogai_Kyu_Nendomatu[MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU][tokyu].kakyu = 0.;
		Shogai_Kyu_Nendomatu[MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU][tokyu].menjo_kihon = 0.;
		Shogai_Kyu_Nendomatu[MIN_SHOGAI_JUKYU - MIN_SHOGAI_JUKYU][tokyu].menjo_kakyu = 0.;
	}
	
	// 遺族年金（妻）
	for( nenrei = MAX_IZOKU_TUMA_JUKYU ; nenrei >= MIN_IZOKU_TUMA_JUKYU + 1 ; nenrei-- )
	{
		// 基本額
		Izoku_Tuma_Nendomatu[nenrei - MIN_IZOKU_TUMA_JUKYU]
		 = add( adjustbenefit( kaiteiritu_tannen[nendo - ECON_SHONENDO][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
		                     , scalar( ( 1. - Shikkenritu_Tuma[sotai_nendo][nenrei - MIN_IZOKU_TUMA_JUKYU] )
		                             , Izoku_Tuma_Nendomatu[nenrei - 1 - MIN_IZOKU_TUMA_JUKYU] ) )
		      , Izoku_Tuma_Shinki[nenrei - MIN_IZOKU_TUMA_JUKYU] );
		
		// 加給額の調整
		if( Option3 == 0 )
		{
			Izoku_Tuma_Nendomatu[nenrei - MIN_IZOKU_TUMA_JUKYU].kakyu
			 = Izoku_Tuma_Nendomatu[nenrei - MIN_IZOKU_TUMA_JUKYU].kihon
			 / (Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67] )
		   * ( Kakyu_Tanka_12shi[sotai_nendo][nenrei] * Kakyu_Wariai_Tuma_12shi[sotai_nendo][nenrei - MIN_IZOKU_TUMA_JUKYU]
		     + Kakyu_Tanka_3shiiko[sotai_nendo][nenrei] * Kakyu_Wariai_Tuma_3shiiko[sotai_nendo][nenrei - MIN_IZOKU_TUMA_JUKYU] );
		}
		if( Option3 == 1 )
		{
			Izoku_Tuma_Nendomatu[nenrei - MIN_IZOKU_TUMA_JUKYU].kakyu
			 = Izoku_Tuma_Nendomatu[nenrei - MIN_IZOKU_TUMA_JUKYU].kihon
			 / (Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei ) )
		   * ( Kakyu_Tanka_12shi[sotai_nendo][nenrei] * Kakyu_Wariai_Tuma_12shi[sotai_nendo][nenrei - MIN_IZOKU_TUMA_JUKYU]
		     + Kakyu_Tanka_3shiiko[sotai_nendo][nenrei] * Kakyu_Wariai_Tuma_3shiiko[sotai_nendo][nenrei - MIN_IZOKU_TUMA_JUKYU] );
		}
	}
	Izoku_Tuma_Nendomatu[MIN_IZOKU_TUMA_JUKYU - MIN_IZOKU_TUMA_JUKYU] = Izoku_Tuma_Shinki[MIN_IZOKU_TUMA_JUKYU - MIN_IZOKU_TUMA_JUKYU];
	Izoku_Tuma_Nendomatu[MIN_IZOKU_TUMA_JUKYU - MIN_IZOKU_TUMA_JUKYU].kakyu
	 = Izoku_Tuma_Shinki[MIN_IZOKU_TUMA_JUKYU - MIN_IZOKU_TUMA_JUKYU].ninzu
	 * ( Kakyu_Tanka_12shi[sotai_nendo][MIN_IZOKU_TUMA_JUKYU] * Kakyu_Wariai_Tuma_12shi[sotai_nendo][MIN_IZOKU_TUMA_JUKYU - MIN_IZOKU_TUMA_JUKYU]
	   + Kakyu_Tanka_3shiiko[sotai_nendo][MIN_IZOKU_TUMA_JUKYU] * Kakyu_Wariai_Tuma_3shiiko[sotai_nendo][MIN_IZOKU_TUMA_JUKYU - MIN_IZOKU_TUMA_JUKYU] );
	
	// 遺族年金（夫）	
	for( nenrei = MAX_IZOKU_OTTO_JUKYU ; nenrei >= MIN_IZOKU_OTTO_JUKYU + 1 ; nenrei-- )
	{
		// 基本額
		Izoku_Otto_Nendomatu[nenrei - MIN_IZOKU_OTTO_JUKYU]
		 = add( adjustbenefit( kaiteiritu_tannen[nendo - ECON_SHONENDO][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67]
		                     , scalar( ( 1. - Shikkenritu_Otto[sotai_nendo][nenrei - MIN_IZOKU_OTTO_JUKYU] )
		                             , Izoku_Otto_Nendomatu[nenrei - 1 - MIN_IZOKU_OTTO_JUKYU] ) )
		      , Izoku_Otto_Shinki[nenrei - MIN_IZOKU_OTTO_JUKYU] );
		
		// 加給額の調整
		if( Option3 == 0 )
		{
			Izoku_Otto_Nendomatu[nenrei - MIN_IZOKU_OTTO_JUKYU].kakyu
			 = Izoku_Otto_Nendomatu[nenrei - MIN_IZOKU_OTTO_JUKYU].kihon
			 / ( Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67] )
		   * ( Kakyu_Tanka_12shi[sotai_nendo][nenrei] * Kakyu_Wariai_Otto_12shi[sotai_nendo][nenrei - MIN_IZOKU_OTTO_JUKYU]
		     + Kakyu_Tanka_3shiiko[sotai_nendo][nenrei] * Kakyu_Wariai_Otto_3shiiko[sotai_nendo][nenrei - MIN_IZOKU_OTTO_JUKYU] );
		}
		if( Option3 == 1 )
		{
			Izoku_Otto_Nendomatu[nenrei - MIN_IZOKU_OTTO_JUKYU].kakyu
			 = Izoku_Otto_Nendomatu[nenrei - MIN_IZOKU_OTTO_JUKYU].kihon
			 / ( Full_Pension[sotai_nendo][nenrei <= UNDER_67 ? UNDER_67 - UNDER_67 : nenrei - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei ) )
		   * ( Kakyu_Tanka_12shi[sotai_nendo][nenrei] * Kakyu_Wariai_Otto_12shi[sotai_nendo][nenrei - MIN_IZOKU_OTTO_JUKYU]
		     + Kakyu_Tanka_3shiiko[sotai_nendo][nenrei] * Kakyu_Wariai_Otto_3shiiko[sotai_nendo][nenrei - MIN_IZOKU_OTTO_JUKYU] );
		}
		Izoku_Otto_Nendomatu[MIN_IZOKU_OTTO_JUKYU - MIN_IZOKU_OTTO_JUKYU] = Izoku_Otto_Shinki[MIN_IZOKU_OTTO_JUKYU - MIN_IZOKU_OTTO_JUKYU];
		Izoku_Otto_Nendomatu[MIN_IZOKU_OTTO_JUKYU - MIN_IZOKU_OTTO_JUKYU].kakyu
		 = Izoku_Otto_Shinki[MIN_IZOKU_OTTO_JUKYU - MIN_IZOKU_OTTO_JUKYU].ninzu
		 * ( Kakyu_Tanka_12shi[sotai_nendo][MIN_IZOKU_OTTO_JUKYU] * Kakyu_Wariai_Otto_12shi[sotai_nendo][MIN_IZOKU_OTTO_JUKYU - MIN_IZOKU_OTTO_JUKYU]
		   + Kakyu_Tanka_3shiiko[sotai_nendo][MIN_IZOKU_OTTO_JUKYU] * Kakyu_Wariai_Otto_3shiiko[sotai_nendo][MIN_IZOKU_OTTO_JUKYU - MIN_IZOKU_OTTO_JUKYU] );
	}
	
	// 遺族年金（子）
	for( nenrei = MAX_IZOKU_KO_JUKYU ; nenrei >= MIN_IZOKU_KO_JUKYU + 1 ; nenrei-- )
	{
		// 基本額
		Izoku_Ko_Nendomatu[nenrei - MIN_IZOKU_KO_JUKYU]
		 = add( adjustbenefit( kaiteiritu_tannen[nendo - ECON_SHONENDO][UNDER_67 - UNDER_67]
		                     , scalar( ( 1. - Shikkenritu_Ko[sotai_nendo][nenrei - MIN_IZOKU_KO_JUKYU] )
		                             , Izoku_Ko_Nendomatu[nenrei - 1 - MIN_IZOKU_KO_JUKYU] ) )
		      , Izoku_Ko_Shinki[nenrei - MIN_IZOKU_KO_JUKYU] );
		
		// 加給額の調整
		if( Option3 == 0 )
		{
			Izoku_Ko_Nendomatu[nenrei - MIN_IZOKU_KO_JUKYU].kakyu
			 = Izoku_Ko_Nendomatu[nenrei - MIN_IZOKU_KO_JUKYU].kihon
			 / ( Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] )
		   * ( Kakyu_Tanka_12shi[sotai_nendo][nenrei] * Kakyu_Wariai_Ko_12shi[sotai_nendo][nenrei - MIN_IZOKU_KO_JUKYU]
		     + Kakyu_Tanka_3shiiko[sotai_nendo][nenrei] * Kakyu_Wariai_Ko_3shiiko[sotai_nendo][nenrei - MIN_IZOKU_KO_JUKYU] );
		}
		if( Option3 == 1 )
		{
			Izoku_Ko_Nendomatu[nenrei - MIN_IZOKU_KO_JUKYU].kakyu
			 = Izoku_Ko_Nendomatu[nenrei - MIN_IZOKU_KO_JUKYU].kihon
			 / ( Full_Pension[sotai_nendo][UNDER_67 - UNDER_67] * FP_Tyousei_Keisu( nendo , nenrei ) )
		   * ( Kakyu_Tanka_12shi[sotai_nendo][nenrei] * Kakyu_Wariai_Ko_12shi[sotai_nendo][nenrei - MIN_IZOKU_KO_JUKYU]
		     + Kakyu_Tanka_3shiiko[sotai_nendo][nenrei] * Kakyu_Wariai_Ko_3shiiko[sotai_nendo][nenrei - MIN_IZOKU_KO_JUKYU] );
		}
	}
	Izoku_Ko_Nendomatu[MIN_IZOKU_KO_JUKYU - MIN_IZOKU_KO_JUKYU] = Izoku_Ko_Shinki[MIN_IZOKU_KO_JUKYU - MIN_IZOKU_KO_JUKYU];
	// 加給額の算出
	Izoku_Ko_Nendomatu[MIN_IZOKU_KO_JUKYU - MIN_IZOKU_KO_JUKYU].kakyu
	 = Izoku_Ko_Shinki[MIN_IZOKU_KO_JUKYU - MIN_IZOKU_KO_JUKYU].ninzu
	 * ( Kakyu_Tanka_12shi[sotai_nendo][MIN_IZOKU_KO_JUKYU] * Kakyu_Wariai_Ko_12shi[sotai_nendo][MIN_IZOKU_KO_JUKYU - MIN_IZOKU_KO_JUKYU]
	   + Kakyu_Tanka_3shiiko[sotai_nendo][MIN_IZOKU_KO_JUKYU] * Kakyu_Wariai_Ko_3shiiko[sotai_nendo][MIN_IZOKU_KO_JUKYU - MIN_IZOKU_KO_JUKYU] );
	
	// 寡婦年金
	for( nenrei = MAX_KAFU_JUKYU ; nenrei >= MIN_KAFU_JUKYU + 1 ; nenrei-- )
	{
		Kafu_Nendomatu[nenrei - MIN_KAFU_JUKYU]
		 = add( adjustbenefit( kaiteiritu_tannen[nendo - ECON_SHONENDO][UNDER_67 - UNDER_67]
		                     , scalar( ( 1. - Shikkenritu_Kafu[sotai_nendo][nenrei - MIN_KAFU_JUKYU] )
		                             , Kafu_Nendomatu[nenrei - 1 - MIN_KAFU_JUKYU] ) )
		      , Kafu_Shinki[nenrei - MIN_KAFU_JUKYU] );
		
		Kafu_Kyu_Nendomatu[nenrei - MIN_KAFU_JUKYU]
		 = adjustbenefit( kaiteiritu_tannen[nendo - ECON_SHONENDO][UNDER_67 - UNDER_67]
		                , scalar( ( 1. - Shikkenritu_Kafu[sotai_nendo][nenrei - MIN_KAFU_JUKYU] )
		                        , Kafu_Kyu_Nendomatu[nenrei - 1 - MIN_KAFU_JUKYU] ) );
	}
	Kafu_Nendomatu[MIN_KAFU_JUKYU - MIN_KAFU_JUKYU] = Kafu_Shinki[MIN_KAFU_JUKYU - MIN_KAFU_JUKYU];
	
	Kafu_Kyu_Nendomatu[MIN_KAFU_JUKYU - MIN_KAFU_JUKYU].ninzu = 0.;
	Kafu_Kyu_Nendomatu[MIN_KAFU_JUKYU - MIN_KAFU_JUKYU].noufu = 0.;
	for( dankai = 0 ; dankai <= MAX_MENJO - 1 ; dankai++ )
	{
		for( kokko = 0 ; kokko <= KOKKO_HIKIAGE - 1 ; kokko++ )
		{
			Kafu_Kyu_Nendomatu[MIN_KAFU_JUKYU - MIN_KAFU_JUKYU].menjo[dankai][kokko] = 0.;
		}
	}
}

// 死亡一時金の区分
int Shibou_Kubun( double a )
{
	int b;
	
	if ( a < 15. )
	{
		b = 0;
	}
	else if ( a < 20. )
	{
		b = 1;
	}
	else if ( a < 25. )
	{
		b = 2;
	}
	else if ( a < 30. )
	{
		b = 3;
	}
	else if ( a < 35. )
	{
		b = 4;
	}
	else
	{
		b = 5;
	}
	return ( b );
}

double FP_Tyousei_Keisu( int a , int b )
{
	double denominator;
	double numerator;
	double fraction;
	
	if( b >= UNDER_67 )
	{
		return 1;
	}
	if( a - b <= 1957 )
	{
		numerator = 40;
	}
	else if( ( a - b >= 1958 )&&( a - b <= 1959 ) )
	{
		numerator = 41;
	}
	else if( ( a - b >= 1960 )&&( a - b <= 1961 ) )
	{
		numerator = 42;
	}
	else if( ( a - b >= 1962 )&&( a - b <= 1963 ) )
	{
		numerator = 43;
	}
	else if( ( a - b >= 1964 )&&( a - b <= 1965 ) )
	{
		numerator = 44;
	}
	else if( a - b >= 1966 )
	{
		numerator = 45;
	}
	
	if(( a <= 2017 )&&( b <= 59 ) )
	{
		numerator = 40;
	}
	else if( ( a >= 2018 )&&( a <= 2020 )&&( b <= 60 ) )
	{
		numerator = 41;
	}
	else if( ( a >= 2021 )&&( a <= 2023 )&&( b <= 61 ) )
	{
		numerator = 42;
	}
	else if( ( a >= 2024 )&&( a <= 2026 )&&( b <= 62 ) )
	{
		numerator = 43;
	}
	else if( ( a >= 2027 )&&( a <= 2029 )&&( b <= 63 ) )
	{
		numerator = 44;
	}
	else if( ( a >= 2030 )&&( b <= 64 ) )
	{
		numerator = 45;
	}
	
	if( a <= 2024 )
	{
		denominator = 40;
	}
	else if( ( a >= 2025 )&&( a <= 2026 ) )
	{
		denominator = 41;
	}
	else if( ( a >= 2027 )&&( a <= 2028 ) )
	{
		denominator = 42;
	}
	else if( ( a >= 2029 )&&( a <= 2030 ) )
	{
		denominator = 43;
	}
	else if( ( a >= 2031 )&&( a <= 2032 ) )
	{
		denominator = 44;
	}
	else if( a >= 2033 )
	{
		denominator = 45;
	}
	
	fraction = numerator / denominator;
	
	return fraction;
}

double Nendomatu_Tyousei_Keisu( int a , int b )
{
	double fraction;
	
	if( ( a - b >= 1958 )&&( a == 2018 ) )
	{
		fraction = 41 / 40. ;
	}
	else if( ( a - b >= 1960 )&&( a == 2021 ) )
	{
		fraction = 42 / 41. ;
	}
	else if( ( a - b >= 1962 )&&( a == 2024 ) )
	{
		fraction = 43 / 42. ;
	}
	else if( ( a - b >= 1964 )&&( a == 2027 ) )
	{
		fraction = 44 / 43. ;
	}
	else if( ( a - b >= 1966 )&&( a == 2030 ) )
	{
		fraction = 45 / 44. ;
	}
	else
	{
		fraction = 1. ;
	}
	
	return fraction;
}

double Shougai_Kyu_Tyousei_Keisu( int a , int b )
{
	double fraction;
	int c;
	
	c = ( int ) max( (double) b , (double) UNDER_67 );
	
	if( a - c == 1958 || a - c == 1959 )
	{
		fraction = 40 / 41. ;
	}
	else if( a - c == 1960 || a - c == 1961 )
	{
		fraction = 40 / 42. ;
	}
	else if( a - c == 1962 || a - c == 1963 )
	{
		fraction = 40 / 43. ;
	}
	else if( a - c == 1964 || a - c == 1965 )
	{
		fraction = 40 / 44. ;
	}
	else if( a - c >= 1966 )
	{
		fraction = 40 / 45. ;
	}
	else
	{
		fraction = 1. ;
	}
	
	return fraction;
}
