#ifndef BASIC_SYSTEM_ANALYSIS
#define BASIC_SYSTEM_ANALYSIS


//Station analysis
typedef enum StationSyncBasicBranch 
{
    LOCATION_SYSTEM_BRANCH_0 = 0,     //used
    LOCATION_SYSTEM_BRANCH_1,         //used
    LOCATION_SYSTEM_BRANCH_2,         //used
    LOCATION_SYSTEM_BRANCH_3,         //used
    LOCATION_SYSTEM_BRANCH_4,         //used
    LOCATION_SYSTEM_BRANCH_5,         //used
    LOCATION_SYSTEM_BRANCH_6,         //used
    LOCATION_SYSTEM_BRANCH_7,         //used
    LOCATION_SYSTEM_BRANCH_8,         //used
    LOCATION_SYSTEM_BRANCH_9,         //used
    LOCATION_SYSTEM_BRANCH_10,        //used
    LOCATION_SYSTEM_BRANCH_11,        //used
    LOCATION_SYSTEM_BRANCH_12,        //used
    LOCATION_SYSTEM_BRANCH_13,        //used
    LOCATION_SYSTEM_BRANCH_14,        //used
    LOCATION_SYSTEM_BRANCH_15,        //used
    LOCATION_SYSTEM_BRANCH_16,        //used
    LOCATION_SYSTEM_BRANCH_17,        //used
    LOCATION_SYSTEM_BRANCH_18,        //used
    LOCATION_SYSTEM_BRANCH_19,        //used
    LOCATION_SYSTEM_BRANCH_20,        //used
    LOCATION_SYSTEM_BRANCH_21,        //used
    LOCATION_SYSTEM_BRANCH_22,        //used
    LOCATION_SYSTEM_BRANCH_23,        //used
    LOCATION_SYSTEM_BRANCH_24,        //used
    LOCATION_SYSTEM_BRANCH_25,        //used
    LOCATION_SYSTEM_BRANCH_26,        //used
    LOCATION_SYSTEM_BRANCH_27,        //used
    LOCATION_SYSTEM_BRANCH_28,        //used
    LOCATION_SYSTEM_BRANCH_29,        //used
    LOCATION_SYSTEM_BRANCH_30,        //used
    LOCATION_SYSTEM_BRANCH_31,        //used
    LOCATION_SYSTEM_BRANCH_32,        //used
    LOCATION_SYSTEM_BRANCH_33,        //used
    LOCATION_SYSTEM_BRANCH_34,        //used
    LOCATION_SYSTEM_BRANCH_35,        //used
    LOCATION_SYSTEM_BRANCH_36,        //used
    LOCATION_SYSTEM_BRANCH_37,        //used
    LOCATION_SYSTEM_BRANCH_38,        //used
    LOCATION_SYSTEM_BRANCH_39,        //used
    LOCATION_SYSTEM_BRANCH_40,        //used
    LOCATION_SYSTEM_BRANCH_41,        //used
    LOCATION_SYSTEM_BRANCH_42,        //used
    LOCATION_SYSTEM_BRANCH_43,        //used
    LOCATION_SYSTEM_BRANCH_44,        //used
    LOCATION_SYSTEM_BRANCH_45,        //used
    LOCATION_SYSTEM_BRANCH_46,        //used
    LOCATION_SYSTEM_BRANCH_47,        //used
    LOCATION_SYSTEM_BRANCH_48,        //used
    LOCATION_SYSTEM_BRANCH_49,        //used
    LOCATION_SYSTEM_BRANCH_50,        //used
    LOCATION_SYSTEM_BRANCH_51,        //used
    LOCATION_SYSTEM_BRANCH_52,        //used
    LOCATION_SYSTEM_BRANCH_53,        //used
    LOCATION_SYSTEM_BRANCH_54,        //used
    LOCATION_SYSTEM_BRANCH_55,        //used
    LOCATION_SYSTEM_BRANCH_56,        //used
    LOCATION_SYSTEM_BRANCH_57,        //used
    LOCATION_SYSTEM_BRANCH_58,        //used
    LOCATION_SYSTEM_BRANCH_59,        //used
    LOCATION_SYSTEM_BRANCH_60,        //used
    LOCATION_SYSTEM_BRANCH_61,        //used
    LOCATION_SYSTEM_BRANCH_62,        //used
    LOCATION_SYSTEM_BRANCH_63,        //used
    LOCATION_SYSTEM_BRANCH_64,        //used
    LOCATION_SYSTEM_BRANCH_65,        //used
    LOCATION_SYSTEM_BRANCH_66,        //used
    LOCATION_SYSTEM_BRANCH_67,        //used
    LOCATION_SYSTEM_BRANCH_68,        //used
    LOCATION_SYSTEM_BRANCH_69,        //used
    LOCATION_SYSTEM_BRANCH_70,        //used
    LOCATION_SYSTEM_BRANCH_71,        //used
    LOCATION_SYSTEM_BRANCH_72,        //used
    LOCATION_SYSTEM_BRANCH_73,        //used
    LOCATION_SYSTEM_BRANCH_74,        //used
    LOCATION_SYSTEM_BRANCH_75,        //used
    LOCATION_SYSTEM_BRANCH_76,        //used
    LOCATION_SYSTEM_BRANCH_77,        //used
    LOCATION_SYSTEM_BRANCH_78,        //used
    LOCATION_SYSTEM_BRANCH_79,        //used
    LOCATION_SYSTEM_BRANCH_80,        //used
    LOCATION_SYSTEM_BRANCH_81,        //used
    LOCATION_SYSTEM_BRANCH_82,        //used
    LOCATION_SYSTEM_BRANCH_83,        //used
    LOCATION_SYSTEM_BRANCH_84,        //used
    LOCATION_SYSTEM_BRANCH_85,        //used
    LOCATION_SYSTEM_BRANCH_86,        //used
    LOCATION_SYSTEM_BRANCH_87,        //used
    LOCATION_SYSTEM_BRANCH_88,        //used
    LOCATION_SYSTEM_BRANCH_89,        //used
    LOCATION_SYSTEM_BRANCH_90,        //used
    LOCATION_SYSTEM_BRANCH_91,        //used
    LOCATION_SYSTEM_BRANCH_92,        //used
    LOCATION_SYSTEM_BRANCH_93,        //used
    LOCATION_SYSTEM_BRANCH_94,        //used
    LOCATION_SYSTEM_BRANCH_95,        //used
    LOCATION_SYSTEM_BRANCH_96,        //used
    LOCATION_SYSTEM_BRANCH_97,        //used
    LOCATION_SYSTEM_BRANCH_98,        //used
    LOCATION_SYSTEM_BRANCH_99,        //used
    LOCATION_SYSTEM_BRANCH_100,       //used
    LOCATION_SYSTEM_BRANCH_101,       //used
    LOCATION_SYSTEM_BRANCH_102,       //used
    LOCATION_SYSTEM_BRANCH_103,       //used
    LOCATION_SYSTEM_BRANCH_104,       //used
    LOCATION_SYSTEM_BRANCH_105,       //used
    LOCATION_SYSTEM_BRANCH_106,       //used
    LOCATION_SYSTEM_BRANCH_107,       //used
    LOCATION_SYSTEM_BRANCH_108,       //used
    LOCATION_SYSTEM_BRANCH_109,       //used
    LOCATION_SYSTEM_BRANCH_110,       //used
    LOCATION_SYSTEM_BRANCH_111,       //used
    LOCATION_SYSTEM_BRANCH_112,       //used
    LOCATION_SYSTEM_BRANCH_113,       //used
    LOCATION_SYSTEM_BRANCH_114,       //used
    LOCATION_SYSTEM_BRANCH_115,       //used
    LOCATION_SYSTEM_BRANCH_116,       //used
    LOCATION_SYSTEM_BRANCH_117,       //used
    LOCATION_SYSTEM_BRANCH_118,       //used
    LOCATION_SYSTEM_BRANCH_119,       //used
    LOCATION_SYSTEM_BRANCH_120,       //used
    LOCATION_SYSTEM_BRANCH_121,       //used
    LOCATION_SYSTEM_BRANCH_122,       //used
    LOCATION_SYSTEM_BRANCH_123,       //used
    LOCATION_SYSTEM_BRANCH_124,       //used
    LOCATION_SYSTEM_BRANCH_125,       //used
    LOCATION_SYSTEM_BRANCH_126,       //used
    LOCATION_SYSTEM_BRANCH_127,       //used
    LOCATION_SYSTEM_BRANCH_128,       //used
    LOCATION_SYSTEM_BRANCH_129,       //used
    LOCATION_SYSTEM_BRANCH_130,       //used
    LOCATION_SYSTEM_BRANCH_131,       //used
    LOCATION_SYSTEM_BRANCH_132,       //used
    LOCATION_SYSTEM_BRANCH_133,       //used
    LOCATION_SYSTEM_BRANCH_134,       //used
    LOCATION_SYSTEM_BRANCH_135,       //used
    LOCATION_SYSTEM_BRANCH_136,       //used
    LOCATION_SYSTEM_BRANCH_137,       //used
    LOCATION_SYSTEM_BRANCH_138,       //used
    LOCATION_SYSTEM_BRANCH_139,       //used
    LOCATION_SYSTEM_BRANCH_140,       //used
    LOCATION_SYSTEM_BRANCH_141,       //used
    LOCATION_SYSTEM_BRANCH_142,       //used
    LOCATION_SYSTEM_BRANCH_143,       //used
    LOCATION_SYSTEM_BRANCH_144,       //used
    LOCATION_SYSTEM_BRANCH_145,       //used
    LOCATION_SYSTEM_BRANCH_146,       //used
    LOCATION_SYSTEM_BRANCH_147,       //used
    LOCATION_SYSTEM_BRANCH_148,       //used
    LOCATION_SYSTEM_BRANCH_149,       //used
	LOCATION_SYSTEM_BRANCH_150,       //used
	LOCATION_SYSTEM_BRANCH_151,       //used
	LOCATION_SYSTEM_BRANCH_152,       //used
	LOCATION_SYSTEM_BRANCH_153,       //used
	LOCATION_SYSTEM_BRANCH_154,       //used
	LOCATION_SYSTEM_BRANCH_155,       //used
	LOCATION_SYSTEM_BRANCH_156,       //used
	LOCATION_SYSTEM_BRANCH_157,       //used
	LOCATION_SYSTEM_BRANCH_158,       //used
	LOCATION_SYSTEM_BRANCH_159,       //used
	LOCATION_SYSTEM_BRANCH_160,       //used
	LOCATION_SYSTEM_BRANCH_161,       //used
	LOCATION_SYSTEM_BRANCH_162,       //used
	LOCATION_SYSTEM_BRANCH_163,       //used
	LOCATION_SYSTEM_BRANCH_164,       //used
	LOCATION_SYSTEM_BRANCH_165,       //used
	LOCATION_SYSTEM_BRANCH_166,       //used
	LOCATION_SYSTEM_BRANCH_167,       //used
	LOCATION_SYSTEM_BRANCH_168,       //used
	LOCATION_SYSTEM_BRANCH_169,       //used
	LOCATION_SYSTEM_BRANCH_170,       //used
	LOCATION_SYSTEM_BRANCH_171,       //used
	LOCATION_SYSTEM_BRANCH_172,       //used
	LOCATION_SYSTEM_BRANCH_173,       //used
	LOCATION_SYSTEM_BRANCH_174,       //used
	LOCATION_SYSTEM_BRANCH_175,       //used
	LOCATION_SYSTEM_BRANCH_176,       //used
	LOCATION_SYSTEM_BRANCH_177,       //used
	LOCATION_SYSTEM_BRANCH_178,       //used
	LOCATION_SYSTEM_BRANCH_179,       //used
	LOCATION_SYSTEM_BRANCH_180,       //used
	LOCATION_SYSTEM_BRANCH_181,       //used
	LOCATION_SYSTEM_BRANCH_182,       //used
	LOCATION_SYSTEM_BRANCH_183,       //used
	LOCATION_SYSTEM_BRANCH_184,       //used
	LOCATION_SYSTEM_BRANCH_185,       //used
	LOCATION_SYSTEM_BRANCH_186,       //used
	LOCATION_SYSTEM_BRANCH_187,       //used
	LOCATION_SYSTEM_BRANCH_188,       //used
	LOCATION_SYSTEM_BRANCH_189,       //used
	LOCATION_SYSTEM_BRANCH_190,       //used
	LOCATION_SYSTEM_BRANCH_191,       //used
	LOCATION_SYSTEM_BRANCH_192,       //used
	LOCATION_SYSTEM_BRANCH_193,       //used
	LOCATION_SYSTEM_BRANCH_194,       //used
	LOCATION_SYSTEM_BRANCH_195,       //used
	LOCATION_SYSTEM_BRANCH_196,       //used
	LOCATION_SYSTEM_BRANCH_197,       //used
	LOCATION_SYSTEM_BRANCH_198,       //used
	LOCATION_SYSTEM_BRANCH_199,       //used
	LOCATION_SYSTEM_BRANCH_200,       //used
	LOCATION_SYSTEM_BRANCH_201,       //used
	LOCATION_SYSTEM_BRANCH_202,       //used
	LOCATION_SYSTEM_BRANCH_203,       //used
	LOCATION_SYSTEM_BRANCH_204,       //used
	LOCATION_SYSTEM_BRANCH_205,       //used
	LOCATION_SYSTEM_BRANCH_206,       //used
	LOCATION_SYSTEM_BRANCH_207,       //used
	LOCATION_SYSTEM_BRANCH_208,       //used
	LOCATION_SYSTEM_BRANCH_209,       //used
	LOCATION_SYSTEM_BRANCH_210,       //used
	LOCATION_SYSTEM_BRANCH_211,       //used
	LOCATION_SYSTEM_BRANCH_212,       //used
	LOCATION_SYSTEM_BRANCH_213,       //used
	LOCATION_SYSTEM_BRANCH_214,       //used
	LOCATION_SYSTEM_BRANCH_215,       //used
	LOCATION_SYSTEM_BRANCH_216,       //used
	LOCATION_SYSTEM_BRANCH_217,       //used
	LOCATION_SYSTEM_BRANCH_218,       //used
	LOCATION_SYSTEM_BRANCH_219,       //used
	LOCATION_SYSTEM_BRANCH_220,       //used
	LOCATION_SYSTEM_BRANCH_221,       //used
	LOCATION_SYSTEM_BRANCH_222,       //used
	LOCATION_SYSTEM_BRANCH_223,       //used
	LOCATION_SYSTEM_BRANCH_224,       //used
	LOCATION_SYSTEM_BRANCH_225,       //used
	LOCATION_SYSTEM_BRANCH_226,       //used
	LOCATION_SYSTEM_BRANCH_227,       //used
	LOCATION_SYSTEM_BRANCH_228,       //used
	LOCATION_SYSTEM_BRANCH_229,       //used
	LOCATION_SYSTEM_BRANCH_230,       //used
	LOCATION_SYSTEM_BRANCH_231,       //used
	LOCATION_SYSTEM_BRANCH_232,       //used
	LOCATION_SYSTEM_BRANCH_233,       //used
	LOCATION_SYSTEM_BRANCH_234,       //used
	LOCATION_SYSTEM_BRANCH_235,       //used
	LOCATION_SYSTEM_BRANCH_236,       //used
	LOCATION_SYSTEM_BRANCH_237,       //used
	LOCATION_SYSTEM_BRANCH_238,       //used
	LOCATION_SYSTEM_BRANCH_239,       //used
	LOCATION_SYSTEM_BRANCH_240,       //used
	LOCATION_SYSTEM_BRANCH_241,       //used
	LOCATION_SYSTEM_BRANCH_242,       //used
	LOCATION_SYSTEM_BRANCH_243,       //used
	LOCATION_SYSTEM_BRANCH_244,       //used
	LOCATION_SYSTEM_BRANCH_245,       //used
	LOCATION_SYSTEM_BRANCH_246,       //used
	LOCATION_SYSTEM_BRANCH_247,       //used
	LOCATION_SYSTEM_BRANCH_248,       //used
	LOCATION_SYSTEM_BRANCH_249,       //used
	LOCATION_SYSTEM_BRANCH_250,       //used
	LOCATION_SYSTEM_BRANCH_251,       //used
	LOCATION_SYSTEM_BRANCH_252,       //used
	LOCATION_SYSTEM_BRANCH_253,       //used
	LOCATION_SYSTEM_BRANCH_254,       //used
	LOCATION_SYSTEM_BRANCH_255,       //used
	LOCATION_SYSTEM_BRANCH_256,       //used
	LOCATION_SYSTEM_BRANCH_257,       //used
	LOCATION_SYSTEM_BRANCH_258,       //used
	LOCATION_SYSTEM_BRANCH_259,       //used
	LOCATION_SYSTEM_BRANCH_260,       //used
	LOCATION_SYSTEM_BRANCH_261,       //used
	LOCATION_SYSTEM_BRANCH_262,       //used
	LOCATION_SYSTEM_BRANCH_263,       //used
	LOCATION_SYSTEM_BRANCH_264,       //used
	LOCATION_SYSTEM_BRANCH_265,       //used
	LOCATION_SYSTEM_BRANCH_266,       //used
	LOCATION_SYSTEM_BRANCH_267,
	LOCATION_SYSTEM_BRANCH_268,
	LOCATION_SYSTEM_BRANCH_269,
	LOCATION_SYSTEM_BRANCH_270,
	LOCATION_SYSTEM_BRANCH_271,
	LOCATION_SYSTEM_BRANCH_272,
	LOCATION_SYSTEM_BRANCH_273,
	LOCATION_SYSTEM_BRANCH_274,
	LOCATION_SYSTEM_BRANCH_275,
	LOCATION_SYSTEM_BRANCH_276,
	LOCATION_SYSTEM_BRANCH_277,
	LOCATION_SYSTEM_BRANCH_278,
	LOCATION_SYSTEM_BRANCH_279,
	LOCATION_SYSTEM_BRANCH_280,
	LOCATION_SYSTEM_BRANCH_281,
	LOCATION_SYSTEM_BRANCH_282,
	LOCATION_SYSTEM_BRANCH_283,
	LOCATION_SYSTEM_BRANCH_284,
	LOCATION_SYSTEM_BRANCH_285,
	LOCATION_SYSTEM_BRANCH_286,
	LOCATION_SYSTEM_BRANCH_287,
	LOCATION_SYSTEM_BRANCH_288,
	LOCATION_SYSTEM_BRANCH_289,
	LOCATION_SYSTEM_BRANCH_290,
	LOCATION_SYSTEM_BRANCH_291,
	LOCATION_SYSTEM_BRANCH_292,
	LOCATION_SYSTEM_BRANCH_293,
	LOCATION_SYSTEM_BRANCH_294,
	LOCATION_SYSTEM_BRANCH_295,
	LOCATION_SYSTEM_BRANCH_296,
	LOCATION_SYSTEM_BRANCH_297,
	LOCATION_SYSTEM_BRANCH_298,
	LOCATION_SYSTEM_BRANCH_299,
	LOCATION_SYSTEM_BRANCH_300,
    LOCATION_SYSTEM_BRANCH_MAX
}StationSyncBasicBranch;

//#define LOCATION_SYSTEM_BRANCH_MAX        20
extern int LocationSystemCount[LOCATION_SYSTEM_BRANCH_MAX+1];

#define  LOCATION_SYSTEM_BRANCH(x)    ((LocationSystemCount[x])++)

//Tag location analysis
#define TAG_LOCATION_BRANCH_MAX        20
extern int TagLocationSystemFlag[TAG_LOCATION_BRANCH_MAX + 1];

typedef enum TagLocationBasicBranch 
{
	TAG_LOCATION_BRANCH_0 = 0,   //used
	TAG_LOCATION_BRANCH_1,       //used
	TAG_LOCATION_BRANCH_2,       //used
	TAG_LOCATION_BRANCH_3,
	TAG_LOCATION_BRANCH_4, 
	TAG_LOCATION_BRANCH_5, 
	TAG_LOCATION_BRANCH_6,
	TAG_LOCATION_BRANCH_7,
	TAG_LOCATION_BRANCH_8, 
	TAG_LOCATION_BRANCH_9, 
	TAG_LOCATION_BRANCH_10,
	TAG_LOCATION_BRANCH_11,
	TAG_LOCATION_BRANCH_12, 
	TAG_LOCATION_BRANCH_13, 
	TAG_LOCATION_BRANCH_14,
	TAG_LOCATION_BRANCH_15,
	TAG_LOCATION_BRANCH_16, 
	TAG_LOCATION_BRANCH_17, 
	TAG_LOCATION_BRANCH_18,
	TAG_LOCATION_BRANCH_19,
}TagLocationBasicBranch;

#define  TAG_LOCATION_BRANCH(x)    ((TagLocationSystemFlag[x])++)













#endif
