GenerateEntityDiffPatchOperation | | 64% | | 36% | 86 | 151 | 5 | 79 | 30 | 79 | 0 | 1 |
UpdaterJob. | | 0% | | 0% | 24 | 24 | 61 | 61 | 14 | 14 | 1 | 1 |
WikibaseEntityRevRepository | | 0% | | 0% | 49 | 49 | 19 | 19 | 28 | 28 | 1 | 1 |
EventPlatformSinkWrapper | | 13% | | 7% | 45 | 48 | 8 | 13 | 22 | 25 | 0 | 1 |
FailedOpToRow | | 29% | | 4% | 46 | 50 | 6 | 24 | 20 | 24 | 0 | 1 |
KafkaConsumerProperties | | 29% | | 2% | 42 | 50 | 0 | 10 | 16 | 24 | 0 | 1 |
OutputStreams | | 13% | | 0% | 44 | 49 | 0 | 5 | 23 | 28 | 0 | 1 |
InconsistencyToRow | | 29% | | 0% | 41 | 46 | 0 | 13 | 20 | 25 | 0 | 1 |
LapsedActionToRow | | 21% | | 0% | 41 | 45 | 0 | 10 | 20 | 24 | 0 | 1 |
DirectSinkWrapper | | 24% | | 3% | 31 | 36 | 1 | 7 | 14 | 19 | 0 | 1 |
ProblematicReconciliation | | 60% | | 31% | 53 | 66 | 0 | 9 | 19 | 32 | 0 | 1 |
IgnoredMutation | | 61% | | 35% | 46 | 60 | 0 | 8 | 18 | 30 | 0 | 1 |
FailedOp | | 12% | | 0% | 28 | 31 | 0 | 1 | 15 | 18 | 0 | 1 |
ReconcileInputEvent | | 57% | | 31% | 42 | 51 | 0 | 7 | 16 | 25 | 0 | 1 |
MutationResolver | | 86% | | 59% | 49 | 88 | 0 | 68 | 0 | 16 | 0 | 1 |
MutationDataChunk | | 20% | | 8% | 26 | 31 | 0 | 3 | 14 | 18 | 0 | 1 |
PageDelete | | 56% | | 32% | 37 | 45 | 0 | 6 | 15 | 23 | 0 | 1 |
PageUndelete | | 56% | | 32% | 37 | 45 | 0 | 6 | 15 | 23 | 0 | 1 |
StateExtractionJob.RevMap | | 13% | | 0% | 24 | 27 | 0 | 1 | 11 | 14 | 0 | 1 |
StateExtractionJob.FullDecideMutationState | | 13% | | 0% | 24 | 27 | 0 | 1 | 11 | 14 | 0 | 1 |
EventMetaToRow | | 21% | | n/a | 27 | 29 | 0 | 6 | 27 | 29 | 0 | 1 |
Reconcile | | 56% | | 35% | 37 | 46 | 0 | 2 | 16 | 24 | 0 | 1 |
MeasureEventProcessingLatencyOperation | | 47% | | 0% | 23 | 34 | 0 | 14 | 14 | 25 | 0 | 1 |
DeleteItem | | 58% | | 40% | 35 | 46 | 0 | 2 | 16 | 24 | 0 | 1 |
InputEventSerializer | | 76% | | 69% | 18 | 35 | 4 | 39 | 6 | 14 | 0 | 1 |
SubgraphAssigner | | 74% | | 47% | 23 | 54 | 3 | 28 | 8 | 31 | 0 | 1 |
MutationOperationSerializer | | 75% | | 67% | 16 | 31 | 4 | 31 | 6 | 14 | 0 | 1 |
RevCreate | | 70% | | 48% | 30 | 51 | 0 | 7 | 11 | 25 | 0 | 1 |
OutputEventStreamsBuilder | | 86% | | 55% | 9 | 29 | 1 | 71 | 3 | 20 | 0 | 1 |
ReorderAndDecideMutationOperation | | 86% | | 74% | 19 | 57 | 1 | 54 | 7 | 30 | 0 | 1 |
Diff | | 73% | | 58% | 26 | 50 | 0 | 2 | 12 | 26 | 0 | 1 |
ReconcileOp | | 58% | | 43% | 28 | 39 | 0 | 2 | 13 | 22 | 0 | 1 |
EntityPatchOp | | 58% | | 43% | 28 | 39 | 0 | 2 | 13 | 22 | 0 | 1 |
GenerateEntityDiffPatchOperation. | | 40% | | 0% | 12 | 23 | 1 | 10 | 11 | 22 | 0 | 1 |
IncomingStreams. | | 89% | | 25% | 11 | 38 | 5 | 72 | 5 | 32 | 0 | 1 |
FullImport | | 72% | | 52% | 26 | 46 | 0 | 2 | 11 | 24 | 0 | 1 |
IncomingEventStreams | | 85% | | 50% | 12 | 22 | 1 | 55 | 6 | 16 | 0 | 1 |
DeleteOp | | 58% | | 52% | 22 | 33 | 0 | 1 | 12 | 20 | 0 | 1 |
State | | 59% | | 44% | 22 | 31 | 0 | 1 | 10 | 18 | 0 | 1 |
JsonEncoders | | 83% | | 56% | 12 | 24 | 1 | 29 | 7 | 16 | 0 | 1 |
ProblematicReconciliation. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
UpdaterPipeline. | | 88% | | 56% | 10 | 27 | 3 | 73 | 3 | 19 | 0 | 1 |
IgnoredMutation. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
IncomingStreams | | 0% | | n/a | 9 | 9 | 0 | 0 | 9 | 9 | 1 | 1 |
EventPlatformSinkWrapper. | | 0% | | 0% | 9 | 9 | 2 | 2 | 8 | 8 | 1 | 1 |
Diff. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
DeleteItem. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
Reconcile. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
FullImport. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
KafkaConsumerProperties. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
NotImplementedYet. | | 0% | | n/a | 11 | 11 | 2 | 2 | 11 | 11 | 1 | 1 |
GenerateEntityDiffPatchOperation.RetryingFuture..anonfun.org.wikidata.query.rdf.updater.GenerateEntityDiffPatchOperation.RetryingFuture..attempt.1.new Serializable() {...} | | 65% | | 35% | 7 | 11 | 0 | 5 | 1 | 4 | 0 | 1 |
RouteFailedOpsToSideOutput..anon.new CaseClassTypeInfo() {...} | | 45% | | n/a | 2 | 3 | 0 | 1 | 2 | 3 | 0 | 1 |
UpdaterPipeline..anon.new CaseClassTypeInfo() {...} | | 45% | | n/a | 2 | 3 | 0 | 1 | 2 | 3 | 0 | 1 |
LapsedActionToRow. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
OutputStreamsBuilder | | 89% | | 40% | 6 | 15 | 1 | 44 | 1 | 10 | 0 | 1 |
OutputStreams. | | 27% | | 0% | 8 | 13 | 0 | 4 | 7 | 12 | 0 | 1 |
DirectSinkWrapper. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
RevCreate. | | 34% | | 0% | 4 | 7 | 1 | 4 | 3 | 6 | 0 | 1 |
ReconcileInputEvent. | | 34% | | 0% | 4 | 7 | 1 | 4 | 3 | 6 | 0 | 1 |
WikibaseEntityRevRepository. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
TypeSerializerBase | | 74% | | 50% | 6 | 21 | 4 | 22 | 3 | 18 | 0 | 1 |
PageUndelete. | | 35% | | 0% | 4 | 7 | 1 | 4 | 3 | 6 | 0 | 1 |
PageDelete. | | 35% | | 0% | 4 | 7 | 1 | 4 | 3 | 6 | 0 | 1 |
MutationDataChunk. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
FailedOp. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
StateExtractionJob.FullDecideMutationState. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
StateExtractionJob.RevMap. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
State. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
JsonEncoders..anon.new Consumer() {...} | | 74% | | 58% | 6 | 9 | 2 | 18 | 1 | 3 | 0 | 1 |
EntityStatus | | 0% | | n/a | 10 | 10 | 0 | 0 | 10 | 10 | 1 | 1 |
BaseSideOutputToRowMapper | | 89% | | 56% | 5 | 17 | 1 | 35 | 0 | 9 | 0 | 1 |
ReconcileOp. | | 25% | | 0% | 6 | 9 | 0 | 2 | 5 | 8 | 0 | 1 |
EntityPatchOp. | | 25% | | 0% | 6 | 9 | 0 | 2 | 5 | 8 | 0 | 1 |
DeleteOp. | | 27% | | 0% | 6 | 9 | 0 | 1 | 5 | 8 | 0 | 1 |
MeasureEventProcessingLatencyOperation. | | 0% | | 0% | 7 | 7 | 1 | 1 | 6 | 6 | 1 | 1 |
GenerateEntityDiffPatchOperation..anonfun.fetchAsync.new Serializable() {...} | | 73% | | 50% | 4 | 7 | 0 | 6 | 1 | 3 | 0 | 1 |
UnmatchedUndelete. | | 36% | | n/a | 8 | 11 | 0 | 2 | 8 | 11 | 0 | 1 |
ReconcileAmbiguousDeletion. | | 36% | | n/a | 8 | 11 | 0 | 2 | 8 | 11 | 0 | 1 |
MissedUndelete. | | 36% | | n/a | 8 | 11 | 0 | 2 | 8 | 11 | 0 | 1 |
ReconcileAmbiguousCreation | | 0% | | n/a | 8 | 8 | 0 | 0 | 8 | 8 | 1 | 1 |
JsonEncoderMapFunction | | 0% | | n/a | 2 | 2 | 4 | 4 | 2 | 2 | 1 | 1 |
UnmatchedUndelete | | 0% | | n/a | 8 | 8 | 0 | 0 | 8 | 8 | 1 | 1 |
ReconcileAmbiguousDeletion | | 0% | | n/a | 8 | 8 | 0 | 0 | 8 | 8 | 1 | 1 |
NotImplementedYet | | 0% | | n/a | 8 | 8 | 0 | 0 | 8 | 8 | 1 | 1 |
MissedUndelete | | 0% | | n/a | 8 | 8 | 0 | 0 | 8 | 8 | 1 | 1 |
NewerRevisionSeen | | 0% | | n/a | 8 | 8 | 0 | 0 | 8 | 8 | 1 | 1 |
UpdaterBootstrapJob. | | 78% | | n/a | 1 | 9 | 5 | 20 | 1 | 9 | 0 | 1 |
DropwizardToFlinkListener | | 75% | | n/a | 6 | 13 | 12 | 28 | 6 | 13 | 0 | 1 |
ReconcileAmbiguousCreation. | | 39% | | n/a | 8 | 11 | 0 | 2 | 8 | 11 | 0 | 1 |
ReconcileCreation. | | 28% | | n/a | 8 | 10 | 0 | 1 | 8 | 10 | 0 | 1 |
RouteFailedOpsToSideOutput | | 52% | | 50% | 4 | 6 | 0 | 5 | 2 | 4 | 0 | 1 |
NewerRevisionSeen. | | 43% | | n/a | 7 | 11 | 0 | 2 | 7 | 11 | 0 | 1 |
InconsistencyToRow. | | 41% | | 0% | 4 | 7 | 0 | 1 | 3 | 6 | 0 | 1 |
FailedOpToRow. | | 41% | | 0% | 4 | 7 | 0 | 1 | 3 | 6 | 0 | 1 |
ReconcileDeletion. | | 34% | | n/a | 7 | 10 | 0 | 1 | 7 | 10 | 0 | 1 |
ReconcileCreation | | 0% | | n/a | 7 | 7 | 0 | 0 | 7 | 7 | 1 | 1 |
ReconcileDeletion | | 0% | | n/a | 7 | 7 | 0 | 0 | 7 | 7 | 1 | 1 |
PatchChunkOperation | | 95% | | 78% | 9 | 29 | 0 | 38 | 2 | 13 | 0 | 1 |
StateExtractionJob | | 0% | | n/a | 4 | 4 | 0 | 0 | 4 | 4 | 1 | 1 |
StateExtractionJob. | | 89% | | 75% | 2 | 14 | 5 | 20 | 1 | 12 | 0 | 1 |
UpdaterPipeline | | 0% | | n/a | 3 | 3 | 0 | 0 | 3 | 3 | 1 | 1 |
DropwizardCounterWrapper | | 35% | | n/a | 4 | 6 | 8 | 12 | 4 | 6 | 0 | 1 |
RouteFailedOpsToSideOutput..anon.2..anon.new ScalaCaseClassSerializer() {...} | | 0% | | n/a | 2 | 2 | 1 | 1 | 2 | 2 | 1 | 1 |
UpdaterBootstrapJob | | 0% | | n/a | 4 | 4 | 0 | 0 | 4 | 4 | 1 | 1 |
UpdaterPipeline..anon.1..anon.new ScalaCaseClassSerializer() {...} | | 0% | | n/a | 2 | 2 | 1 | 1 | 2 | 2 | 1 | 1 |
DeserializationSchemaFactory..anon.new DeserializationSchema() {...} | | 37% | | n/a | 4 | 6 | 2 | 5 | 4 | 6 | 0 | 1 |
RDFPatchSerializer | | 88% | | 90% | 1 | 11 | 1 | 27 | 0 | 6 | 0 | 1 |
IncomingEventStreams. | | 91% | | 50% | 4 | 21 | 3 | 15 | 2 | 19 | 0 | 1 |
TimerNanosecondsHistogram | | 56% | | n/a | 2 | 5 | 4 | 9 | 2 | 5 | 0 | 1 |
UpdaterStateConfiguration | | 0% | | n/a | 4 | 4 | 0 | 0 | 4 | 4 | 1 | 1 |
UpdaterPipeline..anon.3..anon.new ScalaCaseClassSerializer() {...} | | 33% | | n/a | 1 | 2 | 0 | 1 | 1 | 2 | 0 | 1 |
UpdaterPipeline..anon.5..anon.new ScalaCaseClassSerializer() {...} | | 33% | | n/a | 1 | 2 | 0 | 1 | 1 | 2 | 0 | 1 |
StateExtractionJob..anon.1..anon.new ScalaCaseClassSerializer() {...} | | 33% | | n/a | 1 | 2 | 0 | 1 | 1 | 2 | 0 | 1 |
StateExtractionJob..anon.3..anon.new ScalaCaseClassSerializer() {...} | | 33% | | n/a | 1 | 2 | 0 | 1 | 1 | 2 | 0 | 1 |
EventPlatformFactory. | | 0% | | n/a | 4 | 4 | 2 | 2 | 4 | 4 | 1 | 1 |
SerializerHelper | | 97% | | 50% | 5 | 42 | 1 | 50 | 1 | 38 | 0 | 1 |
BaseTypeInfo | | 94% | | 50% | 6 | 25 | 1 | 18 | 0 | 18 | 0 | 1 |
SideOutputSerializationSchema | | 93% | | 87% | 2 | 10 | 0 | 19 | 1 | 6 | 0 | 1 |
SubgraphDiff | | 98% | | 79% | 7 | 56 | 0 | 82 | 2 | 44 | 0 | 1 |
MultiStreamKafkaRecordSerializer | | 88% | | n/a | 1 | 7 | 0 | 8 | 1 | 7 | 0 | 1 |
MultiStreamKafkaRecordSerializer. | | 88% | | 50% | 2 | 6 | 0 | 10 | 1 | 5 | 0 | 1 |
EventPlatformFactory | | 98% | | 69% | 12 | 41 | 0 | 33 | 1 | 23 | 0 | 1 |
VersionedCustomSerializerSnapshot | | 92% | | 87% | 1 | 12 | 0 | 12 | 0 | 8 | 0 | 1 |
UpdaterJob | | 0% | | n/a | 2 | 2 | 0 | 0 | 2 | 2 | 1 | 1 |
PageChangeConverter | | 96% | | 92% | 1 | 11 | 0 | 23 | 0 | 4 | 0 | 1 |
EntityState | | 93% | | 83% | 1 | 8 | 0 | 8 | 0 | 5 | 0 | 1 |
ReconciliationRowConverter | | 91% | | 75% | 1 | 5 | 0 | 10 | 0 | 3 | 0 | 1 |
JsonEncoders..anon.new Consumer() {...} | | 90% | | 50% | 2 | 6 | 0 | 7 | 1 | 5 | 0 | 1 |
EventWithMetadataHostFilter | | 89% | | 87% | 1 | 6 | 0 | 6 | 0 | 2 | 0 | 1 |
JsonEncoders..anon.new Consumer() {...} | | 80% | | 50% | 2 | 4 | 0 | 4 | 1 | 3 | 0 | 1 |
ContentModelFilter | | 96% | | 94% | 2 | 14 | 0 | 11 | 1 | 5 | 0 | 1 |
MutationEventDataSerializationSchema | | 92% | | n/a | 1 | 4 | 0 | 5 | 1 | 4 | 0 | 1 |
IncomingStreams..anon.new SerializableTimestampAssigner() {...} | | 37% | | n/a | 1 | 2 | 1 | 2 | 1 | 2 | 0 | 1 |
UpdaterStateConfiguration. | | 89% | | 50% | 1 | 7 | 0 | 6 | 0 | 6 | 0 | 1 |
ReconciliationSourceFilter | | 83% | | 50% | 2 | 5 | 0 | 2 | 0 | 2 | 0 | 1 |
DeserializationSchemaFactory | | 0% | | n/a | 1 | 1 | 0 | 0 | 1 | 1 | 1 | 1 |
GenerateEntityDiffPatchOperation.RetryingFuture. | | 96% | | 50% | 1 | 6 | 0 | 9 | 0 | 5 | 0 | 1 |
ReorderAndDecideMutationOperation. | | 96% | | n/a | 1 | 8 | 0 | 10 | 1 | 8 | 0 | 1 |
SubgraphAssigner. | | 95% | | 100% | 1 | 10 | 0 | 11 | 1 | 7 | 0 | 1 |
InputEventSerializer. | | 95% | | n/a | 1 | 8 | 0 | 6 | 1 | 8 | 0 | 1 |
MutationOperationSerializer. | | 95% | | n/a | 1 | 8 | 0 | 6 | 1 | 8 | 0 | 1 |
PatchChunkOperation..anon.new Supplier() {...} | | 94% | | 50% | 1 | 3 | 0 | 3 | 0 | 2 | 0 | 1 |
RouteFailedOpsToSideOutput. | | 92% | | n/a | 1 | 5 | 0 | 4 | 1 | 5 | 0 | 1 |
SerializerHelper. | | 87% | | n/a | 1 | 4 | 0 | 3 | 1 | 4 | 0 | 1 |
PatchChunkOperation. | | 86% | | n/a | 1 | 5 | 0 | 3 | 1 | 5 | 0 | 1 |
EventPlatformFactory..anon.new SerializableClock() {...} | | 86% | | 50% | 1 | 3 | 0 | 2 | 0 | 2 | 0 | 1 |
MutationDataChunkToRow | | 100% | | 100% | 0 | 18 | 0 | 24 | 0 | 17 | 0 | 1 |
StateExtractionJob..anon.new CaseClassTypeInfo() {...} | | 100% | | n/a | 0 | 3 | 0 | 1 | 0 | 3 | 0 | 1 |
StateExtractionJob..anon.new CaseClassTypeInfo() {...} | | 100% | | n/a | 0 | 3 | 0 | 1 | 0 | 3 | 0 | 1 |
UpdaterPipeline..anon.new CaseClassTypeInfo() {...} | | 100% | | n/a | 0 | 3 | 0 | 1 | 0 | 3 | 0 | 1 |
UpdaterPipeline..anon.new CaseClassTypeInfo() {...} | | 100% | | n/a | 0 | 3 | 0 | 1 | 0 | 3 | 0 | 1 |
IncomingEventStreams..anon.new FilterFunction() {...} | | 100% | | 100% | 0 | 8 | 0 | 4 | 0 | 2 | 0 | 1 |
StateExtractionJob.FullDecideMutationSateReader | | 100% | | n/a | 0 | 7 | 0 | 7 | 0 | 7 | 0 | 1 |
JsonEncoders. | | 100% | | n/a | 0 | 10 | 0 | 9 | 0 | 10 | 0 | 1 |
RevisionCreateEventFilter | | 100% | | 83% | 1 | 5 | 0 | 4 | 0 | 2 | 0 | 1 |
DecideMutationOperationBootstrap | | 100% | | n/a | 0 | 6 | 0 | 2 | 0 | 6 | 0 | 1 |
EntityStatus. | | 100% | | n/a | 0 | 5 | 0 | 2 | 0 | 5 | 0 | 1 |
StateExtractionJob.RevMapStateReader | | 100% | | n/a | 0 | 5 | 0 | 4 | 0 | 5 | 0 | 1 |
Filters | | 100% | | n/a | 0 | 4 | 0 | 2 | 0 | 4 | 0 | 1 |
GenerateEntityDiffPatchOperation.RetryingFuture..anon.new TimerTask() {...} | | 100% | | n/a | 0 | 2 | 0 | 4 | 0 | 2 | 0 | 1 |
HostFilter | | 100% | | n/a | 0 | 2 | 0 | 2 | 0 | 2 | 0 | 1 |
LastSeenRevState | | 100% | | n/a | 0 | 3 | 0 | 3 | 0 | 3 | 0 | 1 |
NamespaceFilter | | 100% | | n/a | 0 | 2 | 0 | 2 | 0 | 2 | 0 | 1 |
DeserializationSchemaFactory. | | 100% | | n/a | 0 | 3 | 0 | 3 | 0 | 3 | 0 | 1 |
ReconciliationEventSourceFilter | | 100% | | n/a | 0 | 2 | 0 | 2 | 0 | 2 | 0 | 1 |
MultiStreamKafkaRecordSerializer..anon.new SerializableClock() {...} | | 100% | | n/a | 0 | 2 | 0 | 3 | 0 | 2 | 0 | 1 |
FailedRetryException | | 100% | | n/a | 0 | 2 | 0 | 1 | 0 | 2 | 0 | 1 |
IncomingEventStreams..anon.new SerializableTimestampAssigner() {...} | | 100% | | n/a | 0 | 2 | 0 | 2 | 0 | 2 | 0 | 1 |
IncomingEventStreams..anon.new SerializableTimestampAssigner() {...} | | 100% | | n/a | 0 | 2 | 0 | 2 | 0 | 2 | 0 | 1 |
StaticPartitioner | | 100% | | n/a | 0 | 2 | 0 | 2 | 0 | 2 | 0 | 1 |
InputEventSerializerSnapshot..anonfun..lessinit.greater.new Serializable() {...} | | 100% | | n/a | 0 | 2 | 0 | 1 | 0 | 2 | 0 | 1 |
MutationOptionSerializerSnapshot..anonfun..lessinit.greater.new Serializable() {...} | | 100% | | n/a | 0 | 2 | 0 | 1 | 0 | 2 | 0 | 1 |
InputEventSerializerSnapshot | | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 0 | 1 |
MutationOptionSerializerSnapshot | | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 | 0 | 1 |
UpdaterBootstrapJob..anon.new KeySelector() {...} | | 100% | | n/a | 0 | 2 | 0 | 2 | 0 | 2 | 0 | 1 |
InconsistentMutation | | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 | 0 | 1 |
SuccessfulOp | | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |