!`{      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                !"#$%&'()*+,-./0123456789:;<=>?@ABCD E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _`abcdefghijklmnopqrstuvwxyzNoneeham RST report.ham#Readability, signal strength, tone.hamReadability, signal strengthhamModes for a QSO. TODO: This is following Cabrillo; this should go into the Cabrillo module and this type here should have many more entries.ham Morse code.hamVoice.ham FM voice. hamRTTY or other teletype mode. hamBand in metres ham%Anything 15% shorter than about 23cm.hamFrequency in MHz.hamWavelength in metres.{hamCommmon bands in meters.ham'Find canonical band name for frequency.  {|}~None    Nonei !"#$%&*)('+,EDCBA>=<;:9876543210/.?@-FHGINMLKJOTSRQPUXWVYba`_^]\[ZcfedgjihkqponmlrtsuvwxyziuvrtskqponmlgjihcfedYba`_^]\[ZUXWVOTSRQPINMLKJFHG+,EDCBA>=<;:9876543210/.?@-wxyz&*)('$%"#! None!ham My callsignham My locationhamMy nameham My callsignham My locationhamMy nameNone)hamAInterface for radios that are communicating via serial interface.hamGet a value from a radio connected to a serial port. This uses a format that seems to be used by more than one manufacturer, such as Yaesu and Elecraft. The command format is "XY;" for getting something, where XY is a string. XY is given as second argument to this function.hamSend a string to the radio.ham0Command; e.g. FA for getting frequency of VFO A.ham0Decoder for the resulting answer from the radio. None,ham>Parse a double from an answer from the radio given the prefix.ham@Parse an integer from an answer from the radio given the prefix.None-hamInterface for the Yaesu FT-891hamMenu command (EX)None.ham/Interface for the Elecraft radios K3, KX2, KX3. None73hamZIdentifier for each of the supported radios. The names are more or less self-explanatory.hamThis includes K3, KX2, KX3.hamMap from radio identifiers to serial interfaces. This is used e.g. when reading a radio identifier from a configuration file, to instantiate the correct .None179=?XDham%The computer aided transceiver monad.hamState type for the CAT monad.hamSerial port, if one is open.ham'SerialCAT implementation for the radio.ham Configuration for the CAT monad.ham6Serial port the radio is connected to. In Linux e.g. "dev ttyUSB0".hamRadio identifier.hamOSerial settings for the connection. Note the radio must have the same settings.hamWDefault configuration. Note this assumes port and radio, so you will want to adjust it.hamkDefault state. Note that this sets the SerialCAT to a default implementation. You will want to change that.hamThrow an exception in the Overpass monad.hamCatching exceptions in the Overpass monad.hamRun an action in the CAT monad.ham?FIXME: Add error handling. What if the radio can not be opened?hamClose everything down.ham/Get the current frequency from the transceiver.ham*Get the current mode from the transceiver.ham#Get the SSB power setting in watts.hamSet the SSB power in watts.hamState to start with. NoneD'NoneGham*Result received from a FCC database query.hamStatus code of the licenses.hamThe actual licenses. NoneLhameLookup an entry for a callsign in the FCC online database. If an entry can be found, it is returned.ham2Look up the first active license given a callsign.hamKLook up the operator's name from the first active license given a callsign.hamThe callsign to search for.SafeM{NoneRhamDefault values to fill in to a ;. These are kept in the configuration. For each entry in R, there is one default that either marks one as fixed value, or changeable value.ham/Contains information about a ham radio contact.hamUSanitizing a Qso. Strips leading and trailing whitespace and converts to upper case.0 NoneS    :    NoneZ  ham#Configuration for a log, version 2.ham!File to store the logged Qsos in.ham!Default values, if any, for Qsos.ham#Flag to turn CAT support on or off.hamCAT configuration.  None\ham#Configuration for a log, version 2.ham!File to store the logged Qsos in.ham!Default values, if any, for Qsos.hamCAT configuration.None^ham#Configuration for a log, version 1.ham!File to store the logged Qsos in.ham!Default values, if any, for Qsos.None`ham A log. A log contains a set of sham&The set of QSOs contained in this log.None>@AXbham,Read the log configuration from a text file.ham+Write the log configuration to a text file. Nonec+ None+hamkMirroring the configuration in _configCat in the LogConfig to be able to turn it off after a failed action.!ham=Log monad. You would normally run the monad for example with -&, and use the monadic actions such as 0, 4, 1#, etc. to modify the log and QSOs. "ham An empty log.#ham+Add a QSO to the beginning of the log list.%ham%Write a log to a file in JSON format.&ham&Read a log from a file in JSON format.)hamIndicates whether band matches*hamIndicates whether mode matches+hamThe potential duplicate QSO-hamRun a !9 action and return the result and potential logging text..hamRun a !> action and return the final state and potential logging text./hamRun a !G action and return the result, final state, and potential logging text.0ham+Read the log database from the file set in  entry of the . The log is then set to the  entry of the current .1ham*Write the log database to the file set in  entry of the .2ham2Add the given QSO at the front of the current log.3ham'Get the current UTC time up to seconds.4hamuCreate a new QSO with the current UTC time as reported by the operating system, and set the default values from the  values. uses 54 to fill some values from a connected radio, if any.5hamTry to get a few values from a CAT connected radio. If the function is turned off (_stateUseCat is False), then the input is going to be returned unchanged. The same is true if there is an error while retrieving data from the radio. Note that when the functionality is turned on and there is an error, it may take a few seconds for the function to return. A message will be set in the Writer layer of HamLog, so that you can get the messages back with -, ., or /.6hamCUpdate the QSO at the given position in the log with the given QSO.7ham0Delete the QSO at the given position in the log.8ham(Sort the log according to the given key.9ham6Get a list of QSOs. Use qsoSeq for better performance.:ham Get the sequence of stored QSOs.;ham4Return a sequence of all QSOs with a given callsign.<hamjChecks if there is already at least one entry with the given callsign. DEPRECATED. Use findDuplicateQsos.=ham+Find qsos containing the given information.?ham-Get the FCC information for a given callsign.@ham:Get the operator's name for a given callsign from the FCC.AhamIMake a cabrillo log from the current log, given a cabrillo configuration.BhamRun a CAT action.;hamThe Callsign to find.hamReturns a sequence of Qsos.<hamThe Callsign to find.=hamThe callsign to find.hamBand to check forhamMode to check for      !"#$%&'()*+,-./0123456789:;<=>?@AB7%&! , -./012456783;<=>'()*+9:B?@#$"ANoneHVHham&Whether we are 100% on emergency powerIham*Whether we are <= 5 Watts for all contactsJham5Whether media publicity was done. Must provide proof.Kham(Whether we operate in a public location.Lham<Whether there is an information table for people to stop by.Mham"Number of formal messages relayed.NhamKWhether all batteries were charging from alternate power (no mains or gas).hamGroup QSOs by band'DEFGINHMLKJOPSRQTUYXWVZ[^\] NonelDEFGOJKLMHNIPQRSTUVWXYZ[]\^TUVWXYZED[]\^FGOJKLMHNIPQRSNonePSX["_hamModes for the UI.`hamEditing the log list.ahamEditing the current QSO entry.bham'Asking a yes/no question from the user.ihamResource type to index widgetsjhamApplication state for the Brick UI.lhamState for the Hamlog monad.mham#Configuration for the Hamlog monad.nhamList of contacts to displayohamForm to enter new contactsphamFocus ring to useqhamCurrent mode of the apprham'Index of the currently selected contactsham"Text to display in the info windowtham"Text to display in the status lineuhamAny potential duplicates found.vhamDefault AppState.hamRun a !0 action given the AppState, in the EventM monad.hamDefault focus ring. Empty.ham#Focus ring for the QSO edit widget.hamKAdd a new QSO at the beginning of the list and go to edit mode immediately.ham*Given a QSO, create a form for editing it.ham5Create a form for editing the currently selected QSO.ham=Selected QSO. If none is selected, the empty QSO is returned.ham5Drawing function. Draws depending on current AppMode.ham Information widget. Shows dupes.ham&Rendering a list item in the log list.hamAUpdate the UI list widget with the current log list in the state.hamBUpdate the QSO widget with the currently selected QSO in the list.hamKHandler for AppModeQuestion; this is for asking the user a yes/no question.ham=List mode. This is the default, main mode of the application.hamHelp text, depending on mode.ham)Event handler for the hamlog application.wham to use for constructing the Brick UI._`abcdefghijkplmnoqrstuvwv_`abcdefghjkplmnoqrstuiwSafea      !"#$%&'()*+,-./0112#$%&3456789::;;<=>?@AABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~    C           !"##$%&'()*+,--./0123456789:;<=>?@ABCDEFGHIJKKLMNOPQRSTUVWXXYZ[\]^_`abcdefghijklmmnopqrstuvwxyz{|}~B     "ham-0.1.0.0-8Jb3s78JRYM4BaePNf8wNcHam.LogHam.Data Ham.CabrilloHam.CabrilloTypesHam.CAT.SerialCATHam.CAT.ParserHam.CAT.YaesuFT891Ham.CAT.ElecraftKX2Ham.CAT.RadiosHam.CATHam.FccHam.Qso Ham.Contest Ham.UI.BrickHam.Internal.DataHam.Internal.CATHam.Internal.FccHam.Internal.FixedSequenceHam.Internal.QsoHam.Internal.Log.V3Ham.Internal.Log.V2Ham.Internal.Log.V1Ham.Internal.Log.LogHam.Internal.Log.ConfigHam.Internal.LogHam.Internal.Contest Paths_hamtransformers-0.5.5.0Control.Monad.Trans.RWS.StrictasksRSTRSNoRSTQsoModeCWPHFMRYDATABandM Microwave FrequencyMHz wavelengthband ToCabrillo toCabrillo CabrilloLogModeDGTransmitterNumberCabrilloInfoReceivedCabrilloInfoSentLocationCallsignExchange CabrilloInfo CabrilloQso CabrilloLine CLSoapboxCLQsoCLXCLXQsoCabrilloversioncallsigncontestcategory_assisted category_band category_modecategory_operatorcategory_powercategory_station category_timecategory_transmittercategory_overlay certificate claimed_scoreclub created_byemail grid_locatorlocationname address_cityaddress_state_provinceaddress_postalcodeaddress_country operatorsYesNoYESNOCategoryOverlayCLASSICROOKIETB_WIRES NOVICE_TECHOVER_50CategoryTransmitterONETWOLIMITED UNLIMITEDSWL CategoryTimeHOURS_6HOURS_12HOURS_24CategoryStationFIXEDMOBILEPORTABLEROVER ROVER_LIMITEDROVER_UNLIMITED EXPEDITIONHQSCHOOL CategoryPowerHIGHLOWQRPCategoryOperator SINGLE_OPMULTI_OPCHECKLOG CategoryModeCMCWCMDIGICMFMCMRTTYCMSSBCMMIXEDCategoryAssistedAssisted NonAssisted VersionNumberdefaultCabrilloshowtext showothershowlist$fShowVersionNumber$fShowCategoryAssisted$fShowCategoryMode$fShowCategoryOperator$fShowCategoryStation$fShowCategoryTime$fShowCategoryOverlay$fShowCabrillo$fShowCabrilloInfo$fShowCabrilloQso$fShowCabrilloLine$fShowCabrilloLog$fShowCategoryPower$fReadCategoryPower$fShowCategoryTransmitter$fReadCategoryTransmitter $fShowYesNo $fReadYesNo $fShowMode $fReadModenaqp field_day SerialCATserialGetFrequency serialGetModeserialSetPowerSSBserialGetPowerSSBserialIdentify serialGet serialSendparseFrequencyfrequencyFromAnswerdoubleFromAnswer intFromAnswer yaesuFT891 elecraftKX2Radio YaesuFT891 ElecraftK3serialInterface $fShowRadio$fGenericRadio $fOrdRadio $fEqRadioCATunCAT CATErrorTypeCATErrorGenericCATErrorIdentifyCATErrorCATState statePortstateInterface CATConfigcatPortcatRadiocatSerialSettings defaultConfig defaultStatethrowCATcatchCATrunCATcatInit catDeinit catFrequencycatMode catPowerSSBcatSetPowerSSB FccLicensefrnlicName serviceDesc licDetailURL statusDesc expiredDate licenseID categoryDesc FccLicenses FccResultlicenses fccLookup' fccLookup fccLookupNamefccLicenseFromResult$fFromJSONFccLicenses$fFromJSONFccResult$fFromJSONFccLicense$fToJSONFccLicense QsoDefaults_qsoDefaultTimeStart_qsoDefaultTimeEnd_qsoDefaultFrequency_qsoDefaultMode_qsoDefaultCallsign_qsoDefaultLocation_qsoDefaultRST_qsoDefaultExchange_qsoDefaultSentCallsign_qsoDefaultSentLocation_qsoDefaultSentRST_qsoDefaultSentExchange_qsoDefaultNotes DefaultValue FixedValueQso _qsoTimeStart _qsoTimeEnd _qsoFrequency_qsoMode _qsoCallsign _qsoLocation_qsoRST _qsoExchange_qsoSentCallsign_qsoSentLocation _qsoSentRST_qsoSentExchange _qsoNotes sanitizeQso qsoCallsign qsoExchange qsoFrequency qsoLocationqsoModeqsoNotesqsoRSTqsoSentCallsignqsoSentExchangeqsoSentLocation qsoSentRST qsoTimeEnd qsoTimeStartemptyQsoemptyQsoDefaultsqsoWithDefaults$fToCabrilloQso LogConfigV3_configLogFile_configQsoDefaults _configUseCat _configCat configLogFileconfigQsoDefaultsLog_logQsos LogConfigconfigFromFile configToFileLogState _stateLog _stateUseCat_stateSerialCATHamLogemptyLog addQsoToLogsortLog_ logToFile logFromFile Duplicate duplicateBand duplicateMode duplicateQso emptyLogState evalHamLog execHamLog runHamLogreadLogwriteLogaddQsocurrentUtcTime newQsoNow fillFromCAT updateQso deleteQsosortLog getQsoList getQsoSeqfilterCallsign isDuplicatefindQsosfindDuplicateQsos lookupFcc lookupFccName makeCabrillocat$fShowDuplicateNAQPSSBNAQPCWConfigFieldDayfdEmergencyPowerfdPowerfdMediaPublicityfdPublicLocationfdPublicInfoTablefdFormalMessagesfdAlternatePowerfdOtherBonusPoints FieldDayPowerFD5WFD150W FDHighPowerFieldDayPointsfdpTotal fdpPowerMultfdpBonusfdpQsosFieldDayContestPointsConfig computePointsAppMode AppModeList AppModeQsoAppModeQuestion AppModeSortappModeQuestionPrevappModeQuestionDialogappModeQuestionYesappModeQuestionNoappModeSortPrev AppResourceAppStatelogState logConfigqsoListqsoForm focusRingappModeselectedQsoIndexinfoText statusText duplicateQsos emptyAppStateapp$fEqAppResource$fOrdAppResource$fShowAppResourcebands band_namerstReadability rstStrengthrstTone ft891Menustatus rowPerPagelicense totalRowspage lastUpdateresultLabelModresultConstructorMod FixedSequence addElementtoListemptyFSdefaultValueGet time-1.8.0.2 Data.Time.Clock.Internal.UTCTimeUTCTimeutctDay utctDayTime&Data.Time.LocalTime.Internal.ZonedTimeutcToLocalZonedTime getZonedTimezonedTimeToUTCutcToZonedTime ZonedTimezonedTimeToLocalTime zonedTimeZone&Data.Time.LocalTime.Internal.LocalTimelocalTimeToUT1ut1ToLocalTimelocalTimeToUTCutcToLocalTime LocalTimelocalDaylocalTimeOfDay&Data.Time.LocalTime.Internal.TimeOfDaytimeOfDayToDayFractiondayFractionToTimeOfDaytimeOfDayToTimetimeToTimeOfDaylocalToUTCTimeOfDayutcToLocalTimeOfDaymakeTimeOfDayValidmiddaymidnight TimeOfDaytodHourtodMintodSec%Data.Time.LocalTime.Internal.TimeZonegetCurrentTimeZone getTimeZoneutctimeZoneOffsetStringtimeZoneOffsetString'hoursToTimeZoneminutesToTimeZoneTimeZonetimeZoneMinutestimeZoneSummerOnly timeZoneName Data.Time.Clock.Internal.UTCDiff diffUTCTime addUTCTimeData.Time.Clock.POSIXgetCurrentTime&Data.Time.Clock.Internal.UniversalTime UniversalTime ModJulianDategetModJulianDate#Data.Time.Clock.Internal.SystemTimegetTime_resolution(Data.Time.Clock.Internal.NominalDiffTime nominalDayNominalDiffTime!Data.Time.Clock.Internal.DiffTimediffTimeToPicosecondspicosecondsToDiffTimesecondsToDiffTimeDiffTimeData.Time.Calendar.GregorianaddGregorianYearsRollOveraddGregorianYearsClipaddGregorianMonthsRollOveraddGregorianMonthsClipgregorianMonthLength showGregorianfromGregorianValid fromGregorian toGregorianData.Time.Calendar.OrdinalDate isLeapYearData.Time.Calendar.DaysdiffDaysaddDaysDayModifiedJulianDaytoModifiedJulianDay configCat configUseCat LogConfigV2 LogConfigV1logQsos ToLogConfig qsosByBand PointsNAQPpnaqpTotalPointspnaqpPointsPerBand qsosByBand' qsosByBand'' fieldDayBonusfieldDayPowerMultiplierstate countStates naqpPointshamLoglappDefaultFocusRinglappQsoFocusRing lappNewQso mkQsoFormmkSelectedQsoForm lselectedQsolappDraw appInfoWidgetlrenderLogListItemlupdateQsoListlupdateQsoFormlhandleEvent_questionlhandleEvent_listlappHelp lhandleEvent!brick-0.57-E0g7fye7lCTGmD39ffP7h9 Brick.MainApp getBinDir getLibDir getDynLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName