nl_tokens: ============ ADD ========== TODO : will be completely rewritten :
pl_tokens: function addOptions ( first , second ) { var first = first . split ( '' ) ; var second = second . split ( '' ) ; var fin = first . slice ( - 1 ) [ 0 ] ; if ( inc ( c . consonants , fin ) ) fin = '' ; var penult = first . slice ( - 2 ) [ 0 ] ; var beg = second [ 0 ] ; var opt ; var candra ; if ( fin == c . virama ) { //  && inc(c.hal, beg) var vir = false ; candra = false ; if ( fin == c . virama ) { first . pop ( ) ; fin = first . slice ( - 1 ) [ 0 ] ; penult = first . slice ( - 2 ) [ 0 ] ; vir = true ; } else if ( fin == c . candra ) { first . pop ( ) ; fin = first . slice ( - 1 ) [ 0 ] ; candra = true ; } var opt = { type : 'cons' , first : first , fin : fin , vir : vir , second : second , beg : beg , pen : penult } ; if ( vir ) opt . vir = true ; if ( candra ) opt . candra = true ; if ( beg == c . oM ) { opt . second . shift ( ) ; opt . oM = true ; } } else if ( ( inc ( c . consonants , fin ) || inc ( c . allligas , <mask> ) ) && inc ( c . allvowels , beg ) ) { opt = { type : 'vowel' , first : first , fin : fin , second : second , beg : beg } ; } else if ( fin == c . visarga ) { first . pop ( ) ; fin = u . last ( first ) [ 0 ] ; opt = { type : 'visarga' , first : first , fin : fin , second : second , beg : beg } ; } return opt ; }