templates.JavaClient.txt.Client.template.scala Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pekko-grpc-codegen_3 Show documentation
Show all versions of pekko-grpc-codegen_3 Show documentation
Apache Pekko gRPC - Support for building streaming gRPC servers and clients on top of Pekko Streams.
The newest version!
package templates.JavaClient.txt
import _root_.play.twirl.api.TwirlFeatureImports.*
import _root_.play.twirl.api.TwirlHelperImports.*
import scala.language.adhocExtensions
import _root_.play.twirl.api.Html
import _root_.play.twirl.api.JavaScript
import _root_.play.twirl.api.Txt
import _root_.play.twirl.api.Xml
object Client extends _root_.play.twirl.api.BaseScalaTemplate[play.twirl.api.TxtFormat.Appendable,_root_.play.twirl.api.Format[play.twirl.api.TxtFormat.Appendable]](play.twirl.api.TxtFormat) with _root_.play.twirl.api.Template1[org.apache.pekko.grpc.gen.javadsl.Service,play.twirl.api.TxtFormat.Appendable] {
/*
* Copyright (C) 2018-2021 Lightbend Inc.
*/
def apply/*14.2*/(service: org.apache.pekko.grpc.gen.javadsl.Service):play.twirl.api.TxtFormat.Appendable = {
_display_ {
{
def /*156.2*/mapMethodType/*156.15*/(methodType: org.apache.pekko.grpc.gen.MethodType):play.twirl.api.TxtFormat.Appendable = {_display_(
Seq[Any](format.raw/*156.69*/("""
"""),_display_(if(methodType == org.apache.pekko.grpc.gen.Unary)/*157.53*/ {_display_(Seq[Any](format.raw/*157.55*/(""" """),format.raw/*157.56*/("""MethodDescriptor.MethodType.UNARY """)))} else {null} ),format.raw/*157.91*/("""
"""),_display_(if(methodType == org.apache.pekko.grpc.gen.ClientStreaming)/*158.63*/ {_display_(Seq[Any](format.raw/*158.65*/("""MethodDescriptor.MethodType.CLIENT_STREAMING """)))} else {null} ),format.raw/*158.111*/("""
"""),_display_(if(methodType == org.apache.pekko.grpc.gen.ServerStreaming)/*159.63*/ {_display_(Seq[Any](format.raw/*159.65*/(""" """),format.raw/*159.66*/("""MethodDescriptor.MethodType.SERVER_STREAMING """)))} else {null} ),format.raw/*159.112*/("""
"""),_display_(if(methodType == org.apache.pekko.grpc.gen.BidiStreaming)/*160.61*/ {_display_(Seq[Any](format.raw/*160.63*/("""MethodDescriptor.MethodType.BIDI_STREAMING """)))} else {null} ),format.raw/*160.107*/("""
""")))};
Seq[Any](format.raw/*15.1*/("""
"""),_display_(/*16.2*/org/*16.5*/.apache.pekko.grpc.gen.Constants.DoNotEditComment),format.raw/*16.54*/("""
"""),format.raw/*17.1*/("""package """),_display_(/*17.10*/service/*17.17*/.packageName),format.raw/*17.29*/(""";
import org.apache.pekko.actor.ClassicActorSystemProvider;
import org.apache.pekko.stream.Materializer;
import org.apache.pekko.stream.SystemMaterializer;
import org.apache.pekko.grpc.internal.*;
import org.apache.pekko.grpc.GrpcChannel;
import org.apache.pekko.grpc.GrpcClientCloseException;
import org.apache.pekko.grpc.GrpcClientSettings;
import org.apache.pekko.grpc.javadsl.PekkoGrpcClient;
import io.grpc.MethodDescriptor;
import static """),_display_(/*31.16*/{service.packageName}),format.raw/*31.37*/("""."""),_display_(/*31.39*/{service.name}),format.raw/*31.53*/(""".Serializers.*;
import scala.concurrent.ExecutionContext;
import org.apache.pekko.grpc.PekkoGrpcGenerated;
"""),_display_(/*37.2*/GenMethodImports(service)),format.raw/*37.27*/("""
"""),format.raw/*39.1*/("""@PekkoGrpcGenerated
public abstract class """),_display_(/*40.24*/{service.name}),format.raw/*40.38*/("""Client extends """),_display_(/*40.54*/{service.name}),format.raw/*40.68*/("""ClientPowerApi implements """),_display_(/*40.95*/{service.name}),format.raw/*40.109*/(""", PekkoGrpcClient """),format.raw/*40.127*/("""{"""),format.raw/*40.128*/("""
"""),format.raw/*41.3*/("""public static final """),_display_(/*41.24*/{service.name}),format.raw/*41.38*/("""Client create(GrpcClientSettings settings, ClassicActorSystemProvider sys) """),format.raw/*41.113*/("""{"""),format.raw/*41.114*/("""
"""),format.raw/*42.5*/("""return new Default"""),_display_(/*42.24*/{service.name}),format.raw/*42.38*/("""Client(org.apache.pekko.grpc.GrpcChannel$.MODULE$.apply(settings, sys), true, sys);
"""),format.raw/*43.3*/("""}"""),format.raw/*43.4*/("""
"""),format.raw/*45.3*/("""public static final """),_display_(/*45.24*/{service.name}),format.raw/*45.38*/("""Client create(GrpcChannel channel, ClassicActorSystemProvider sys) """),format.raw/*45.105*/("""{"""),format.raw/*45.106*/("""
"""),format.raw/*46.5*/("""return new Default"""),_display_(/*46.24*/{service.name}),format.raw/*46.38*/("""Client(channel, false, sys);
"""),format.raw/*47.3*/("""}"""),format.raw/*47.4*/("""
"""),format.raw/*49.3*/("""@PekkoGrpcGenerated
protected final static class Default"""),_display_(/*50.40*/{service.name}),format.raw/*50.54*/("""Client extends """),_display_(/*50.70*/{service.name}),format.raw/*50.84*/("""Client """),format.raw/*50.91*/("""{"""),format.raw/*50.92*/("""
"""),format.raw/*52.7*/("""private final GrpcChannel channel;
private final boolean isChannelOwned;
private final GrpcClientSettings settings;
private final io.grpc.CallOptions options;
private final Materializer mat;
private final ExecutionContext ec;
private Default"""),_display_(/*59.23*/{service.name}),format.raw/*59.37*/("""Client(GrpcChannel channel, boolean isChannelOwned, ClassicActorSystemProvider sys) """),format.raw/*59.121*/("""{"""),format.raw/*59.122*/("""
"""),format.raw/*60.9*/("""this.channel = channel;
this.isChannelOwned = isChannelOwned;
this.settings = channel.settings();
this.mat = SystemMaterializer.get(sys).materializer();
this.ec = sys.classicSystem().dispatcher();
this.options = NettyClientUtils.callOptions(settings);
sys.classicSystem().getWhenTerminated().whenComplete((v, e) -> close());
"""),format.raw/*68.7*/("""}"""),format.raw/*68.8*/("""
"""),_display_(/*70.4*/for(method <- service.methods) yield /*70.34*/ {_display_(Seq[Any](format.raw/*70.36*/("""
"""),_display_(if(method.methodType == org.apache.pekko.grpc.gen.Unary)/*71.62*/ {_display_(Seq[Any](format.raw/*71.64*/("""
"""),format.raw/*72.7*/("""private final SingleResponseRequestBuilder<"""),_display_(/*72.51*/method/*72.57*/.inputTypeUnboxed),format.raw/*72.74*/(""", """),_display_(/*72.77*/method/*72.83*/.outputTypeUnboxed),format.raw/*72.101*/("""> """),_display_(/*72.104*/{method.name}),format.raw/*72.117*/("""RequestBuilder(org.apache.pekko.grpc.internal.InternalChannel channel)"""),format.raw/*72.187*/("""{"""),format.raw/*72.188*/("""
"""),format.raw/*73.9*/("""return new JavaUnaryRequestBuilder<>("""),_display_(/*73.47*/{method.name}),format.raw/*73.60*/("""Descriptor, channel, options, settings, ec);
"""),format.raw/*74.7*/("""}"""),format.raw/*74.8*/("""
""")))}else/*75.12*/{_display_(Seq[Any](format.raw/*75.13*/("""
"""),_display_(if(method.methodType == org.apache.pekko.grpc.gen.ClientStreaming)/*76.74*/{_display_(Seq[Any](format.raw/*76.75*/("""
"""),format.raw/*77.9*/("""private final SingleResponseRequestBuilder, """),_display_(/*77.145*/method/*77.151*/.outputTypeUnboxed),format.raw/*77.169*/("""> """),_display_(/*77.172*/{method.name}),format.raw/*77.185*/("""RequestBuilder(org.apache.pekko.grpc.internal.InternalChannel channel)"""),format.raw/*77.255*/("""{"""),format.raw/*77.256*/("""
"""),format.raw/*78.11*/("""return new JavaClientStreamingRequestBuilder<>(
"""),_display_(/*79.33*/{method.name}),format.raw/*79.46*/("""Descriptor, channel, options, settings, mat, ec);
"""),format.raw/*80.9*/("""}"""),format.raw/*80.10*/("""
""")))}else if(method.methodType == org.apache.pekko.grpc.gen.ServerStreaming)/*81.80*/{_display_(Seq[Any](format.raw/*81.81*/("""
"""),format.raw/*82.9*/("""private final StreamResponseRequestBuilder<"""),_display_(/*82.53*/method/*82.59*/.inputTypeUnboxed),format.raw/*82.76*/(""", """),_display_(/*82.79*/method/*82.85*/.outputTypeUnboxed),format.raw/*82.103*/("""> """),_display_(/*82.106*/{method.name}),format.raw/*82.119*/("""RequestBuilder(org.apache.pekko.grpc.internal.InternalChannel channel)"""),format.raw/*82.189*/("""{"""),format.raw/*82.190*/("""
"""),format.raw/*83.11*/("""return new JavaServerStreamingRequestBuilder<>(
"""),_display_(/*84.33*/{method.name}),format.raw/*84.46*/("""Descriptor, channel, options, settings, ec);
"""),format.raw/*85.9*/("""}"""),format.raw/*85.10*/("""
""")))}else if(method.methodType == org.apache.pekko.grpc.gen.BidiStreaming)/*86.78*/{_display_(Seq[Any](format.raw/*86.79*/("""
"""),format.raw/*87.9*/("""private final StreamResponseRequestBuilder, """),_display_(/*87.145*/method/*87.151*/.outputTypeUnboxed),format.raw/*87.169*/("""> """),_display_(/*87.172*/{method.name}),format.raw/*87.185*/("""RequestBuilder(org.apache.pekko.grpc.internal.InternalChannel channel)"""),format.raw/*87.255*/("""{"""),format.raw/*87.256*/("""
"""),format.raw/*88.11*/("""return new JavaBidirectionalStreamingRequestBuilder<>(
"""),_display_(/*89.33*/{method.name}),format.raw/*89.46*/("""Descriptor, channel, options, settings, ec);
"""),format.raw/*90.9*/("""}"""),format.raw/*90.10*/("""
""")))} else {null} ),format.raw/*91.8*/("""
""")))}),format.raw/*92.6*/("""
""")))}),format.raw/*93.4*/("""
"""),_display_(/*95.8*/for(method <- service.methods) yield /*95.38*/ {_display_(Seq[Any](format.raw/*95.40*/("""
"""),format.raw/*97.9*/("""/**
* For access to method metadata use the parameterless version of """),_display_(/*98.76*/{method.name}),format.raw/*98.89*/("""
"""),format.raw/*99.10*/("""*/
public """),_display_(/*100.17*/{method.getReturnType}),format.raw/*100.39*/(""" """),_display_(/*100.41*/{method.name}),format.raw/*100.54*/("""("""),_display_(/*100.56*/{method.getParameterType}),format.raw/*100.81*/(""" """),format.raw/*100.82*/("""request) """),format.raw/*100.91*/("""{"""),format.raw/*100.92*/("""
"""),format.raw/*101.11*/("""return """),_display_(/*101.19*/{method.name}),format.raw/*101.32*/("""().invoke(request);
"""),format.raw/*102.9*/("""}"""),format.raw/*102.10*/("""
"""),format.raw/*104.9*/("""/**
* Lower level "lifted" version of the method, giving access to request metadata etc.
* prefer """),_display_(/*106.20*/{method.name}),format.raw/*106.33*/("""("""),_display_(/*106.35*/method/*106.41*/.inputTypeUnboxed),format.raw/*106.58*/(""") if possible.
*/
"""),_display_(if(method.methodType == org.apache.pekko.grpc.gen.Unary)/*108.66*/ {_display_(Seq[Any](format.raw/*108.68*/("""
"""),format.raw/*109.11*/("""public SingleResponseRequestBuilder<"""),_display_(/*109.48*/method/*109.54*/.inputTypeUnboxed),format.raw/*109.71*/(""", """),_display_(/*109.74*/method/*109.80*/.outputTypeUnboxed),format.raw/*109.98*/("""> """),_display_(/*109.101*/{method.name}),format.raw/*109.114*/("""()
""")))}else if(method.methodType == org.apache.pekko.grpc.gen.ClientStreaming)/*110.81*/{_display_(Seq[Any](format.raw/*110.82*/("""
"""),format.raw/*111.11*/("""public SingleResponseRequestBuilder, """),_display_(/*111.140*/method/*111.146*/.outputTypeUnboxed),format.raw/*111.164*/("""> """),_display_(/*111.167*/{method.name}),format.raw/*111.180*/("""()
""")))}else if(method.methodType == org.apache.pekko.grpc.gen.ServerStreaming)/*112.81*/{_display_(Seq[Any](format.raw/*112.82*/("""
"""),format.raw/*113.11*/("""public StreamResponseRequestBuilder<"""),_display_(/*113.48*/method/*113.54*/.inputTypeUnboxed),format.raw/*113.71*/(""", """),_display_(/*113.74*/method/*113.80*/.outputTypeUnboxed),format.raw/*113.98*/("""> """),_display_(/*113.101*/{method.name}),format.raw/*113.114*/("""()
""")))}else if(method.methodType == org.apache.pekko.grpc.gen.BidiStreaming)/*114.79*/{_display_(Seq[Any](format.raw/*114.80*/("""
"""),format.raw/*115.11*/("""public StreamResponseRequestBuilder, """),_display_(/*115.140*/method/*115.146*/.outputTypeUnboxed),format.raw/*115.164*/("""> """),_display_(/*115.167*/{method.name}),format.raw/*115.180*/("""()
""")))} else {null} ),format.raw/*116.10*/("""
"""),format.raw/*117.9*/("""{"""),format.raw/*117.10*/("""
"""),format.raw/*118.11*/("""return """),_display_(/*118.19*/{method.name}),format.raw/*118.32*/("""RequestBuilder(channel.internalChannel());
"""),format.raw/*119.9*/("""}"""),format.raw/*119.10*/("""
""")))}),format.raw/*120.8*/("""
"""),_display_(/*122.8*/for(method <- service.methods) yield /*122.38*/ {_display_(Seq[Any](format.raw/*122.40*/("""
"""),format.raw/*123.9*/("""private static MethodDescriptor<"""),_display_(/*123.42*/method/*123.48*/.inputTypeUnboxed),format.raw/*123.65*/(""", """),_display_(/*123.68*/method/*123.74*/.outputTypeUnboxed),format.raw/*123.92*/("""> """),_display_(/*123.95*/{method.name}),format.raw/*123.108*/("""Descriptor =
MethodDescriptor.<"""),_display_(/*124.30*/method/*124.36*/.inputTypeUnboxed),format.raw/*124.53*/(""", """),_display_(/*124.56*/method/*124.62*/.outputTypeUnboxed),format.raw/*124.80*/(""">newBuilder()
.setType("""),_display_(/*125.23*/mapMethodType(method.methodType)),format.raw/*125.55*/(""")
.setFullMethodName(MethodDescriptor.generateFullMethodName(""""),_display_(/*126.74*/service/*126.81*/.grpcName),format.raw/*126.90*/("""", """"),_display_(/*126.95*/method/*126.101*/.grpcName),format.raw/*126.110*/(""""))
.setRequestMarshaller(new ProtoMarshaller<"""),_display_(/*127.56*/method/*127.62*/.inputTypeUnboxed),format.raw/*127.79*/(""">("""),_display_(/*127.82*/method/*127.88*/.deserializer.name),format.raw/*127.106*/("""))
.setResponseMarshaller(new ProtoMarshaller<"""),_display_(/*128.57*/method/*128.63*/.outputTypeUnboxed),format.raw/*128.81*/(""">("""),_display_(/*128.84*/method/*128.90*/.serializer.name),format.raw/*128.106*/("""))
.setSampledToLocalTracing(true)
.build();
""")))}),format.raw/*131.10*/("""
"""),format.raw/*133.7*/("""/**
* Initiates a shutdown in which preexisting and new calls are cancelled.
*/
public java.util.concurrent.CompletionStage close() """),format.raw/*136.82*/("""{"""),format.raw/*136.83*/("""
"""),format.raw/*137.9*/("""if (isChannelOwned) """),format.raw/*137.29*/("""{"""),format.raw/*137.30*/("""
"""),format.raw/*138.11*/("""return channel.closeCS();
"""),format.raw/*139.9*/("""}"""),format.raw/*139.10*/(""" """),format.raw/*139.11*/("""else """),format.raw/*139.16*/("""{"""),format.raw/*139.17*/("""
"""),format.raw/*140.11*/("""throw new GrpcClientCloseException();
"""),format.raw/*141.9*/("""}"""),format.raw/*141.10*/("""
"""),format.raw/*142.7*/("""}"""),format.raw/*142.8*/("""
"""),format.raw/*144.6*/("""/**
* Returns a CompletionState that completes successfully when shutdown via close()
* or exceptionally if a connection can not be established after maxConnectionAttempts.
*/
public java.util.concurrent.CompletionStage closed() """),format.raw/*148.83*/("""{"""),format.raw/*148.84*/("""
"""),format.raw/*149.9*/("""return channel.closedCS();
"""),format.raw/*150.7*/("""}"""),format.raw/*150.8*/("""
"""),format.raw/*151.3*/("""}"""),format.raw/*151.4*/("""
"""),format.raw/*153.1*/("""}"""),format.raw/*153.2*/("""
"""),format.raw/*161.2*/("""
"""))
}
}
}
def render(service:org.apache.pekko.grpc.gen.javadsl.Service): play.twirl.api.TxtFormat.Appendable = apply(service)
def f:((org.apache.pekko.grpc.gen.javadsl.Service) => play.twirl.api.TxtFormat.Appendable) = (service) => apply(service)
def ref: this.type = this
}
/*
-- GENERATED --
SOURCE: codegen/src/main/twirl/templates/JavaClient/Client.scala.txt
HASH: 8450d6816671b0e44e4332d4092c33a8642078d6
MATRIX: 723->364|854->7340|877->7353|1008->7407|1089->7460|1130->7462|1160->7463|1240->7498|1331->7561|1372->7563|1464->7609|1555->7672|1596->7674|1626->7675|1718->7721|1807->7782|1848->7784|1938->7828|1979->417|2007->419|2018->422|2088->471|2116->472|2152->481|2168->488|2201->500|2677->949|2719->970|2748->972|2783->986|2920->1097|2966->1122|2995->1124|3065->1168|3100->1182|3143->1198|3178->1212|3232->1239|3268->1253|3315->1271|3345->1272|3375->1275|3423->1296|3458->1310|3562->1385|3592->1386|3624->1391|3670->1410|3705->1424|3818->1510|3846->1511|3877->1515|3925->1536|3960->1550|4056->1617|4086->1618|4118->1623|4164->1642|4199->1656|4257->1687|4285->1688|4316->1692|4402->1752|4437->1766|4480->1782|4515->1796|4550->1803|4579->1804|4614->1812|4920->2091|4955->2105|5068->2189|5098->2190|5134->2199|5541->2579|5569->2580|5600->2585|5646->2615|5686->2617|5775->2679|5815->2681|5849->2688|5920->2732|5935->2738|5973->2755|6003->2758|6018->2764|6058->2782|6089->2785|6124->2798|6223->2868|6253->2869|6289->2878|6354->2916|6388->2929|6466->2980|6494->2981|6523->2993|6562->2994|6663->3068|6702->3069|6738->3078|6848->3161|6863->3167|6902->3184|6960->3214|6976->3220|7016->3238|7047->3241|7082->3254|7181->3324|7211->3325|7250->3336|7357->3416|7391->3429|7476->3487|7505->3488|7603->3568|7642->3569|7678->3578|7749->3622|7764->3628|7802->3645|7832->3648|7847->3654|7887->3672|7918->3675|7953->3688|8052->3758|8082->3759|8121->3770|8228->3850|8262->3863|8342->3916|8371->3917|8467->3995|8506->3996|8542->4005|8652->4088|8667->4094|8706->4111|8764->4141|8780->4147|8820->4165|8851->4168|8886->4181|8985->4251|9015->4252|9054->4263|9168->4350|9202->4363|9282->4416|9311->4417|9362->4425|9398->4431|9432->4435|9467->4444|9513->4474|9553->4476|9590->4486|9696->4565|9730->4578|9768->4588|9815->4607|9859->4629|9889->4631|9924->4644|9954->4646|10001->4671|10031->4672|10069->4681|10099->4682|10139->4693|10175->4701|10210->4714|10266->4742|10296->4743|10334->4753|10479->4870|10514->4883|10544->4885|10560->4891|10599->4908|10719->5000|10760->5002|10800->5013|10865->5050|10881->5056|10920->5073|10951->5076|10967->5082|11007->5100|11039->5103|11075->5116|11178->5199|11218->5200|11258->5211|11362->5287|11378->5293|11418->5310|11477->5340|11494->5346|11535->5364|11567->5367|11603->5380|11706->5463|11746->5464|11786->5475|11851->5512|11867->5518|11906->5535|11937->5538|11953->5544|11993->5562|12025->5565|12061->5578|12162->5659|12202->5660|12242->5671|12346->5747|12362->5753|12402->5770|12461->5800|12478->5806|12519->5824|12551->5827|12587->5840|12644->5852|12681->5861|12711->5862|12751->5873|12787->5881|12822->5894|12901->5945|12931->5946|12970->5954|13006->5963|13053->5993|13094->5995|13131->6004|13192->6037|13208->6043|13247->6060|13278->6063|13294->6069|13334->6087|13365->6090|13401->6103|13471->6145|13487->6151|13526->6168|13557->6171|13573->6177|13613->6195|13677->6231|13731->6263|13834->6338|13851->6345|13882->6354|13915->6359|13932->6365|13964->6374|14051->6433|14067->6439|14106->6456|14137->6459|14153->6465|14194->6483|14281->6542|14297->6548|14337->6566|14368->6569|14384->6575|14423->6591|14533->6669|14569->6677|14773->6852|14803->6853|14840->6862|14889->6882|14919->6883|14959->6894|15021->6928|15051->6929|15081->6930|15115->6935|15145->6936|15185->6947|15259->6993|15289->6994|15324->7001|15353->7002|15388->7009|15693->7285|15723->7286|15760->7295|15821->7328|15850->7329|15881->7332|15910->7333|15940->7335|15969->7336|16000->7830
LINES: 17->14|21->156|21->156|23->156|24->157|24->157|24->157|24->157|25->158|25->158|25->158|26->159|26->159|26->159|26->159|27->160|27->160|27->160|29->15|30->16|30->16|30->16|31->17|31->17|31->17|31->17|45->31|45->31|45->31|45->31|51->37|51->37|53->39|54->40|54->40|54->40|54->40|54->40|54->40|54->40|54->40|55->41|55->41|55->41|55->41|55->41|56->42|56->42|56->42|57->43|57->43|59->45|59->45|59->45|59->45|59->45|60->46|60->46|60->46|61->47|61->47|63->49|64->50|64->50|64->50|64->50|64->50|64->50|66->52|73->59|73->59|73->59|73->59|74->60|82->68|82->68|84->70|84->70|84->70|85->71|85->71|86->72|86->72|86->72|86->72|86->72|86->72|86->72|86->72|86->72|86->72|86->72|87->73|87->73|87->73|88->74|88->74|89->75|89->75|90->76|90->76|91->77|91->77|91->77|91->77|91->77|91->77|91->77|91->77|91->77|91->77|91->77|92->78|93->79|93->79|94->80|94->80|95->81|95->81|96->82|96->82|96->82|96->82|96->82|96->82|96->82|96->82|96->82|96->82|96->82|97->83|98->84|98->84|99->85|99->85|100->86|100->86|101->87|101->87|101->87|101->87|101->87|101->87|101->87|101->87|101->87|101->87|101->87|102->88|103->89|103->89|104->90|104->90|105->91|106->92|107->93|109->95|109->95|109->95|111->97|112->98|112->98|113->99|114->100|114->100|114->100|114->100|114->100|114->100|114->100|114->100|114->100|115->101|115->101|115->101|116->102|116->102|118->104|120->106|120->106|120->106|120->106|120->106|122->108|122->108|123->109|123->109|123->109|123->109|123->109|123->109|123->109|123->109|123->109|124->110|124->110|125->111|125->111|125->111|125->111|125->111|125->111|125->111|125->111|125->111|126->112|126->112|127->113|127->113|127->113|127->113|127->113|127->113|127->113|127->113|127->113|128->114|128->114|129->115|129->115|129->115|129->115|129->115|129->115|129->115|129->115|129->115|130->116|131->117|131->117|132->118|132->118|132->118|133->119|133->119|134->120|136->122|136->122|136->122|137->123|137->123|137->123|137->123|137->123|137->123|137->123|137->123|137->123|138->124|138->124|138->124|138->124|138->124|138->124|139->125|139->125|140->126|140->126|140->126|140->126|140->126|140->126|141->127|141->127|141->127|141->127|141->127|141->127|142->128|142->128|142->128|142->128|142->128|142->128|145->131|147->133|150->136|150->136|151->137|151->137|151->137|152->138|153->139|153->139|153->139|153->139|153->139|154->140|155->141|155->141|156->142|156->142|158->144|162->148|162->148|163->149|164->150|164->150|165->151|165->151|167->153|167->153|170->161
-- GENERATED --
*/
© 2015 - 2025 Weber Informatics LLC | Privacy Policy