question: private boolean handleMessageDuplexInfoReport ( LocoNetMessage m ) { String gr_name = "" ; String gr_password = "" ; int gr_ch ; int gr_id ; int i ; if ( getDuplexGroupIdentityMessageType ( m ) == DuplexGroupMessageType . DUPLEX_GROUP_NAME_ETC_REPORT_MESSAGE ) { gr_name = extractDuplexGroupName ( m ) ; i = ( gr_name . length ( ) - 1 ) ; while ( ( gr_name . charAt ( i ) == ' ' ) && ( i > 0 ) ) { if ( i > 0 ) { gr_name = gr_name . substring ( 0 , i ) ; } i -- ; } gr_password = extractDuplexGroupPassword ( m ) ; gr_ch = extractDuplexGroupChannel ( m ) ; gr_id = extractDuplexGroupID ( m ) ; if ( awaitingGroupReadReport == true ) { awaitingGroupReadReport = false ; acceptedGroupName = gr_name ; acceptedGroupChannel = Integer . toString ( gr_ch , LnDplxGrpInfoImplConstants . GENERAL_DECIMAL_RADIX ) ; acceptedGroupPassword = gr_password ; acceptedGroupId = Integer . toString ( gr_id , LnDplxGrpInfoImplConstants . GENERAL_DECIMAL_RADIX ) ; thisone . firePropertyChange ( DPLX_PC_NAME_UPDATE , false , true ) ; thisone . firePropertyChange ( DPLX_PC_CHANNEL_UPDATE , false , true ) ; thisone . firePropertyChange ( DPLX_PC_PASSWORD_UPDATE , false , true ) ; thisone . firePropertyChange ( DPLX_PC_ID_UPDATE , false , true ) ; thisone . firePropertyChange ( DPLX_PC_NAME_VALIDITY , false , true ) ; thisone . firePropertyChange ( DPLX_PC_CHANNEL_VALIDITY , false , true ) ; thisone . firePropertyChange ( DPLX_PC_PASSWORD_VALIDITY , false , true ) ; thisone . firePropertyChange ( DPLX_PC_ID_VALIDITY , false , true ) ; thisone . firePropertyChange ( DPLX_PC_STAT_LN_UPDATE , "" , " " ) ; } else { String c = "" + Integer . toString ( gr_ch , LnDplxGrpInfoImplConstants . GENERAL_DECIMAL_RADIX ) ; String p = "" + gr_password ; String d = "" + Integer . toString ( gr_id , LnDplxGrpInfoImplConstants . GENERAL_DECIMAL_RADIX ) ; if ( ( ! acceptedGroupName . equals ( gr_name ) ) || ( ! acceptedGroupChannel . equals ( c ) ) || ( ! acceptedGroupPassword . equals ( p ) ) || ( ! acceptedGroupId . equals ( d ) ) ) { thisone . firePropertyChange ( DPLX_PC_STAT_LN_UPDATE , " " , "ErrorGroupMismatch" ) ; } } return true ; } return false ; }
target:  Interprets a received LocoNet message. If message is a report of Duplex Group Identity information, extract it to local variables. Else ignore.