import  java.util.Scanner ; 
import  java.util.Stack ; 
import  java.util.* ; 
 
class  Ideone { 
    public  static  void  main
( String [ ]  args
)  {          int [ ]  inp =  { 1 ,2 ,3 ,1 , 2 , 1 , 3 } ; 
        Map
< Integer , Integer
>  h 
=  new  HashMap
<> ( ) ;         List< Integer>  result =  new  ArrayList<> ( ) ; 
        for  ( int  i =  inp.length  -  1 ;  i >=  0 ;  -- i)  { 
            int  cur =  inp[ i] ; 
            int  next =  - 1 ; 
            if  ( h.containsKey ( cur) )  { 
                next =  h.get ( cur) ; 
            }    
            h.put ( cur, i) ; 
            result.add ( next) ; 
        } 
 
        for  ( int  i =  0 ;  i <  inp.length ;  ++ i)  { 
            System .
out .
println ( "Number "  +  inp
[ i
]  +  " next occurence at index "  +  result.
get ( inp.
length  -  i 
-  1 ) ) ;          } 
    } 
} 
 
				aW1wb3J0IGphdmEudXRpbC5TY2FubmVyOwppbXBvcnQgamF2YS51dGlsLlN0YWNrOwppbXBvcnQgamF2YS51dGlsLio7CgpjbGFzcyBJZGVvbmUgewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgICAgIGludFtdIGlucCA9IHsxLDIsMywxLCAyLCAxLCAzfTsKICAgICAgICBNYXA8SW50ZWdlciwgSW50ZWdlcj4gaCA9IG5ldyBIYXNoTWFwPD4oKTsKICAgICAgICBMaXN0PEludGVnZXI+IHJlc3VsdCA9IG5ldyBBcnJheUxpc3Q8PigpOwogICAgICAgIGZvciAoaW50IGkgPSBpbnAubGVuZ3RoIC0gMTsgaSA+PSAwOyAtLWkpIHsKICAgICAgICAgICAgaW50IGN1ciA9IGlucFtpXTsKICAgICAgICAgICAgaW50IG5leHQgPSAtMTsKICAgICAgICAgICAgaWYgKGguY29udGFpbnNLZXkoY3VyKSkgewogICAgICAgICAgICAgICAgbmV4dCA9IGguZ2V0KGN1cik7CiAgICAgICAgICAgIH0gICAKICAgICAgICAgICAgaC5wdXQoY3VyLCBpKTsKICAgICAgICAgICAgcmVzdWx0LmFkZChuZXh0KTsKICAgICAgICB9CgogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgaW5wLmxlbmd0aDsgKytpKSB7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiTnVtYmVyICIgKyBpbnBbaV0gKyAiIG5leHQgb2NjdXJlbmNlIGF0IGluZGV4ICIgKyByZXN1bHQuZ2V0KGlucC5sZW5ndGggLSBpIC0gMSkpOwogICAgICAgIH0KICAgIH0KfQ==