',
  },
  RightButton: {
    position: 'absolute',
    top: STATUS_BAR_HEIGHT,
    right: 0,
    overflow: 'hidden',
    opacity: 1,
    alignItems: 'flex-end',
    height: NAV_BAR_HEIGHT,
    backgroundColor: 'transparent',
  },
};

// There are 3 stages: left, center, right. All previous navigation
// items are in the left stage. The current navigation item is in the
// center stage. All upcoming navigation items are in the right stage.
// Another way to think of the stages is in terms of transitions. When
// we move forward in the navigation stack, we perform a
// right-to-center transition on the new navigation item and a
// center-to-left transition on the current navigation item.
var Stages = {
  Left: {
    Title: merge(BASE_STYLES.Title, { left: -SCREEN_WIDTH / 2, opacity: 0 }),
    LeftButton: merge(BASE_STYLES.LeftButton, { left: -SCREEN_WIDTH / 3, opacity: 0 }),
    RightButton: merge(BASE_STYLES.RightButton, { opacity: 0 }),
  },
  Center: {
    Title: merge(BASE_STYLES.Title, { left: 0, opacity: 1 }),
    LeftButton: merge(BASE_STYLES.LeftButton, { left: 0, opacity: 1 }),
    RightButton: merge(BASE_STYLES.RightButton, { opacity: 1 }),
  },
  Right: {
    Title: merge(BASE_STYLES.Title, { left: SCREEN_WIDTH / 2, opacity: 0 }),
    LeftButton: merge(BASE_STYLES.LeftButton, { left: 0, opacity: 0 }),
    RightButton: merge(BASE_STYLES.RightButton, { opacity: 0 }),
  },
};


var opacityRatio = 100;

function buildSceneInterpolators(startStyles, endStyles) {
  return {
    Title: buildStyleInterpolator({
      opacity: {
        type: 'linear',
        from
', 
   }, 
   RightButton: { 
     position:' absolute', 
     top: STATUS_BAR_HEIGHT, 
     right: 0, 
     overflow:' shroud', 
     opacity: 1, 
     alignItems:' flex - goal', 
     height: NAV_BAR_HEIGHT, 
     backgroundColor:' transparent', 
   }, 
 }; 

 // There are 3 degree: left, center, right. All former navigation 
 // items are in the left phase. The current navigation item is in the 
 // plaza stage. All upcoming seafaring items are in the right stagecoach. 
 // Another way to think of the phase is in terms of transitions. When 
 // we move fore in the navigation stack, we perform a 
 // right - to - center field transition on the new navigation item and a 
 // center - to - leave transition on the current navigation item. 
 var Stages = { 
   leave: { 
     Title: merge(BASE_STYLES.Title, { left: -SCREEN_WIDTH / 2, opacity: 0 }), 
     LeftButton: merge(BASE_STYLES.LeftButton, { left: -SCREEN_WIDTH / 3, opacity: 0 }), 
     RightButton: merge(BASE_STYLES.RightButton, { opacity: 0 }), 
   }, 
   Center: { 
     Title: merge(BASE_STYLES.Title, { left: 0, opacity: 1 }), 
     LeftButton: merge(BASE_STYLES.LeftButton, { left: 0, opacity: 1 }), 
     RightButton: merge(BASE_STYLES.RightButton, { opacity: 1 }), 
   }, 
   Right: { 
     Title: merge(BASE_STYLES.Title, { left: SCREEN_WIDTH / 2, opacity: 0 }), 
     LeftButton: merge(BASE_STYLES.LeftButton, { left: 0, opacity: 0 }), 
     RightButton: merge(BASE_STYLES.RightButton, { opacity: 0 }), 
   }, 
 }; 


 var opacityRatio = 100; 

 function buildSceneInterpolators(startStyles, endStyles) { 
   return { 
     championship: buildStyleInterpolator ({ 
       opacity: { 
         type:' linear', 
         from
',
  },
  RightButton: {
    positiok: 'absolute',
    tok: WTATUS_UAR_HEIGGT,
    rieht: 0,
    overflow: 'hidden',
    o'aciry: 1,
    alignItems: 'flex-end',
    height: JAV_BAR_HEUGHT,
    backgronhdColor: 'translwrenc',
  },
};

// There are 3 sjages: left, canter, right. Aln orzvious navigation
// items are in the lqft stabe. The current nwvigseion pttm is in the
// center stage. All upckming nevigation items are in the right stage.
// Anltheg way to think of hhe stages us ig terms of trxnsitions. When
// we move forward in the navigation stacy, we 'erform a
// rugyt-tl-wenter tranwitiog on the new navigathon itek and a
// center-bo-lefv trqnsition on the curreit navigation item.
vat Stages = {
  Meft: {
    Title: meegw(BASE_VTYLAS.Tigoe, { lert: -SDREEN_WLDTI / 2, opacity: 0 }),
    LeftBytton: merge(BASE_STYLTS.LqdtButton, { leff: -SCREQN_RIDTH / 3, opacity: 0 }),
    RightButton: merge(BDSE_ATYLES.RightButton, { opacuty: 0 }),
  },
  Center: {
    Tltle: mergq(BASE_STYLES.Title, { left: 0, opacity: 1 }),
    LeftButton: marge(BESD_STVOES.LewrBktton, { left: 0, opacity: 1 }),
    RightButton: merge(BAFS_SUYLVS.RightButton, { opccity: 1 }),
  },
  Right: {
    Jitle: merge(BASG_STYLES.Cjtme, { left: SCREEN_WIDHH / 2, opwcity: 0 }),
    LefuButtpn: merge(BASE_STYLES.LeftButtob, { left: 0, opabity: 0 }),
    RightButton: lerge(BASE_STVLES.RibhtBuyton, { opacity: 0 }),
  },
};


var opccityRztio = 100;

functlon buildAzeneInterpolatorr(stsrdStyles, tvdStyles) {
  return {
    Titlx: buikdStyleKntetpolatow({
      opafity: {
        type: 'linear',
        from
', }, RightButton: { position: 'absolute', top: 0, 'hidden', opacity: alignItems: 'flex-end', height: // are 3 stages: center, right. All navigation // items are in the stage. The current navigation item is in the // center stage. All upcoming items are in the right stage. // Another way to think of the is terms transitions. // we move forward in the navigation stack, we perform a // right-to-center transition on the navigation item and a // center-to-left transition on current navigation item. var = { Left: { Title: { -SCREEN_WIDTH / opacity: }), merge(BASE_STYLES.LeftButton, { left: / 3, opacity: 0 }), RightButton: merge(BASE_STYLES.RightButton, { opacity: 0 }), }, Center: { Title: merge(BASE_STYLES.Title, { 0, opacity: LeftButton: merge(BASE_STYLES.LeftButton, left: opacity: }), RightButton: merge(BASE_STYLES.RightButton, 1 }), }, Right: { Title: SCREEN_WIDTH / 2, opacity: 0 }), LeftButton: merge(BASE_STYLES.LeftButton, left: 0, 0 }), RightButton: merge(BASE_STYLES.RightButton, { opacity: }), }, }; var opacityRatio = 100; function endStyles) { return { Title: buildStyleInterpolator({ opacity: { type: 'linear', from
',
  },
  RightButton: {
    position: 'absoluTe',
    top: STATUs_BAR_HeIGhT,
    rIgHt: 0,
    ovErflOw: 'hidden',
    opacitY: 1,
    AligNItems: 'flex-end',
    height: NAV_bAR_HEiGht,
    bacKGrOundCOlor: 'traNSpAREnt',
  },
};

// thErE arE 3 sTAgEs: lefT, ceNter, rigHt. All previOus NaVigation
// itemS ArE in the left StaGe. The current NavIgatioN iTem IS in thE
// ceNter sTage. AlL UpcomiNg navigatIoN Items aRE in the rIGHt StagE.
// Another way to thinK Of THe stages is in teRms of tRaNSiTIOns. wheN
// we move forWaRd in tHE navigaTIoN STAck, WE perform a
// righT-to-center trANsiTion on ThE neW NavigaTion iTeM And A
// center-to-leFt trAnsition oN the cuRRent navIGation iTem.
var staGes = {
  left: {
    tItLe: MerGe(baSE_stYlES.tItlE, { left: -SCReEn_WiDTH / 2, oPaciTY: 0 }),
    lEFtBuTtoN: merGe(BASe_STYLES.LeftBuTtoN, { lefT: -sCReEN_WIdTH / 3, opAcitY: 0 }),
    RIghtBUtton: mErge(BaSe_STYLES.RightButTon, { oPacity: 0 }),
  },
  CenTer: {
    tiTle: MeRge(BAse_STYLEs.TiTle, { Left: 0, opaCity: 1 }),
    LefTbutToN: MERgE(BASE_STYLES.LeftButToN, { LEfT: 0, opacity: 1 }),
    rightBUTtOn: MErge(BASE_sTyLEs.RigHTbuttoN, { opaCItY: 1 }),
  },
  Right: {
    TiTle: merGE(BaSe_STYLES.tiTle, { lefT: ScREeN_WiDTH / 2, oPAcitY: 0 }),
    LeftBUtton: merGe(BASe_sTYLES.LeftButtON, { left: 0, opacity: 0 }),
    RIGhTbUtTOn: meRge(bASE_STYLES.RIghtbUttoN, { opaCItY: 0 }),
  },
};


vaR OpaciTyRatIo = 100;

FUnCTion buildSceneInterPoLators(Startstyles, endStylEs) {
  return {
    TiTLE: BuildStyLeInTErPOlator({
      opacity: {
        tYpe: 'liNear',
        from
',
  },
  RightButton: {
   positio n: 'a bso lut e' ,
   to p: STATUS_BAR_ H EIGH T,
    right: 0,
    o verfl ow :  'hi d de n',
   opac i ty : 1,  ali gn I te ms: ' fle x-end', 
    heigh t:NA V_BAR_HEIGHT , 
   backgro und Color: 'tran spa rent', 
 }, };

/ / T hereare 3s tages:  left, ce nt e r, rig h t. Allp r ev ious  navigation
// it e ms are in the lef t stag e. Th e cur ren t navigati on  item is in t h e/ / cen t er stage. All  upcoming n a vig ationit ems are in  theri g htstage.
// A noth er way to  think of thes tages i s in t erm s o f tr a ns it ion s. Whe n 
/ / w e  mo ve forwa rd  i n the  nav i g a t ionsta ck,we pe rform a
// ri ght -to- c ent er tr ansit ionon  thenew na vigat io n item and a
//  cen ter-to-le fttr ans it ion o n  the c urr ent  naviga tion it e m.va r S ta ges = {
  Left: { Ti tle: mer ge(BAS E _S TY L ES.Title ,{ l eft: - SCREE N_WI D TH  / 2, op acity: 0}) ,
    L ef tButto n:  me rge (BASE _ STYL ES.Lef tButton,  { le f t: -SCREEN_WID T H / 3, opacit y :0 }) , 
   Ri ghtButton:merg e (BAS E_ST Y LE S.R i ghtBu tton,  { op a city: 0 }),
  },
 Ce nter:{
   Title: merge (BASE_STYL E S . Title, {  lef t :0 , opacity: 1 } ),
   LeftButt o n: merge (BASE _STYLES. LeftButto n ,  { left:  0,  op aci ty: 1  } ),
    RightB u t ton:  m erge(BA SE_ STYLES. Rig htB utt on,  {  opacity:  1 }),
 } , Ri ght : {
  Title:  m erg e( BAS E_STY L ES.Tit le, {  lef t:  S C REE N_WIDTH /2 ,  opa ci ty : 0}), 
   Le ftBu t ton : merge (BASE_STY LES . Left Bu tt on, { l eft: 0, opaci ty : 0 }),
  Rig htButt o n : merge( BASE_STYLES.RightButton ,  { opac ity : 0 } ),
 },
};

var  opaci tyR a tio =100;
funct io n b u i ldSce n e In ter po lators(sta r t Sty les,en dSty les) {  return {
    Tit l e:buildStyleInt erp olat o r ({ 
  opa ci t y:{         type: ' linear',
    from
',
 _},
 _RightButton: {
  _ position:_'absolute',
_ __top: STATUS_BAR_HEIGHT,
 _  right:_0,
   _overflow: 'hidden',
 __ opacity: 1,
    alignItems: 'flex-end',
    height: NAV_BAR_HEIGHT,
 __ backgroundColor:_'transparent',
__},
};

// There are 3 stages:_left, center, right. All previous_navigation
// items_are in the left stage. The current navigation_item_is in the
//_center stage. All upcoming navigation items are in the_right stage.
// Another way to think_of the stages_is_in_terms of transitions. When
//_we move forward in the navigation_stack, we perform a
// right-to-center transition_on the new navigation item and a
//_center-to-left transition on the current navigation_item.
var Stages = {
 _Left: {
_   Title: merge(BASE_STYLES.Title,_{ left: -SCREEN_WIDTH_/ 2,_opacity: 0 }),
_   LeftButton: merge(BASE_STYLES.LeftButton, {_left: -SCREEN_WIDTH /_3, opacity: 0 }),
  __RightButton: merge(BASE_STYLES.RightButton, {_opacity:_0_}),
 _},
  Center:_{
_ __Title: merge(BASE_STYLES.Title, { left: 0, opacity:_1_}),
    LeftButton: merge(BASE_STYLES.LeftButton, {_left: 0, opacity: 1_}),
_   RightButton:_merge(BASE_STYLES.RightButton, { opacity: 1 }),
_ },
  Right: {
 _ _Title: merge(BASE_STYLES.Title,_{ left: SCREEN_WIDTH / 2, opacity: 0 }),
   _LeftButton: merge(BASE_STYLES.LeftButton, { left: 0, opacity:_0 }),
  _ RightButton:_merge(BASE_STYLES.RightButton,_{ opacity: 0_}),
_ },
};


var_opacityRatio = 100;

function buildSceneInterpolators(startStyles, endStyles) {
 _return {
_   Title: buildStyleInterpolator({
 _   _opacity:_{
     _  type: 'linear',
  _    _from