// Code generated automatically. DO NOT EDIT.
use crate::types::{AssetType, Link};
use crate::blockchain::Blockchain;
use crate::asset::Asset;
/// Pactus Blockchain Implementation
pub struct PactusBlockchain;
const LOGO_SVG: &str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" width=\"256\" height=\"256\">
<path d=\"M0 0 C20.92620889 17.7087274 34.22536743 40.43429231 41.64013672 66.67163086 C41.98173828 67.86143555 42.32333984 69.05124023 42.67529297 70.27709961 C50.06278556 101.78561453 43.57238938 135.90039203 27.64013672 163.67163086 C22.13927938 172.37230256 15.75086198 180.23412595 8.64013672 187.67163086 C8.04201172 188.33291992 7.44388672 188.99420898 6.82763672 189.67553711 C-13.99211893 211.88626781 -45.4403137 224.25858842 -75.49682617 225.77978516 C-110.03584327 226.75568865 -142.77212914 216.41069742 -168.28564453 192.66381836 C-170.6790788 190.36503969 -173.04465885 188.04940838 -175.35986328 185.67163086 C-175.87081543 185.18694336 -176.38176758 184.70225586 -176.90820312 184.20288086 C-181.35557526 179.93300079 -184.91684394 175.44281494 -188.29736328 170.29663086 C-188.81242432 169.51425049 -189.32748535 168.73187012 -189.8581543 167.92578125 C-208.2306662 139.38487115 -214.54235912 104.95520827 -207.953125 71.61352539 C-200.30612482 37.46031198 -179.96324561 7.88519728 -150.41455078 -10.90649414 C-138.88368702 -17.95842735 -126.43817402 -22.9974667 -113.35986328 -26.32836914 C-112.10689453 -26.64805664 -110.85392578 -26.96774414 -109.56298828 -27.29711914 C-70.9898439 -35.99830063 -30.16505841 -24.93036738 0 0 Z \" fill=\"#021A34\" transform=\"translate(211.35986328125,30.328369140625)\"/>
<path d=\"M0 0 C5.28 0 10.56 0 16 0 C13.125 9.625 13.125 9.625 12 13 C14.31 13 16.62 13 19 13 C19.103125 12.154375 19.20625 11.30875 19.3125 10.4375 C20 7 20 7 23 0 C28.28 0 33.56 0 39 0 C36.125 10.75 36.125 10.75 35 13 C36.69974976 12.9685791 36.69974976 12.9685791 38.43383789 12.93652344 C42.71104876 12.86313031 46.9882063 12.81784623 51.26586914 12.78027344 C53.10353001 12.76038082 54.94112951 12.73325668 56.77856445 12.69824219 C72.0036817 12.41575707 89.20955881 12.72787628 100.9921875 23.88671875 C109.53522407 33.19189344 110.57009118 42.28807263 110.3359375 54.4140625 C109.68775832 67.46871266 101.07660688 78.35794204 91.9375 87.0625 C67.80970324 107.90760332 27.48809951 127.95798242 -5 127 C-5.24109497 127.94746094 -5.24109497 127.94746094 -5.48706055 128.9140625 C-7.54639609 136.75323353 -10.12205623 144.35782233 -12.8125 152 C-16.75051865 163.27101175 -20.50276733 174.58423646 -24 186 C-24.66 186 -25.32 186 -26 186 C-26.4031543 184.76024414 -26.80630859 183.52048828 -27.22167969 182.24316406 C-28.73458511 177.59116509 -30.24806972 172.93935472 -31.76171875 168.28759766 C-32.41356657 166.28406738 -33.06526265 164.28048774 -33.71679688 162.27685547 C-34.34967869 160.33064681 -34.9829342 158.38455962 -35.61657715 156.43859863 C-36.23436065 154.53904203 -36.85034228 152.63889841 -37.46447754 150.73815918 C-38.7194176 146.86478316 -39.9783288 143.00050124 -41.38085938 139.17773438 C-41.75533203 138.14455078 -42.12980469 137.11136719 -42.515625 136.046875 C-42.83305664 135.21510742 -43.15048828 134.38333984 -43.47753906 133.52636719 C-44.89845999 126.65548414 -41.75448752 119.78172513 -39.53515625 113.36328125 C-39.18585556 112.33772125 -38.83655487 111.31216125 -38.47666931 110.25552368 C-37.34497321 106.93896735 -36.20411187 103.6256549 -35.0625 100.3125 C-34.28551447 98.04445251 -33.50882233 95.77630448 -32.73242188 93.50805664 C-28.54590862 81.29780468 -24.32529494 69.09934763 -20 56.9375 C-19.59789307 55.80546143 -19.19578613 54.67342285 -18.78149414 53.50708008 C-18.42047607 52.50314209 -18.05945801 51.4992041 -17.6875 50.46484375 C-17.38199219 49.615271 -17.07648438 48.76569824 -16.76171875 47.89038086 C-16 46 -16 46 -15 45 C-12.1156618 44.91134792 -9.25537842 44.88478704 -6.37109375 44.90234375 C-5.07474754 44.90446617 -5.07474754 44.90446617 -3.75221252 44.90663147 C-0.98060708 44.91224761 1.7909188 44.92480281 4.5625 44.9375 C6.4368478 44.94251292 8.31119685 44.94707619 10.18554688 44.95117188 C14.79039544 44.96222228 19.39518421 44.9794977 24 45 C22.09737825 51.51154002 20.0412913 57.94263568 17.78515625 64.33984375 C17.48814316 65.18744766 17.19113007 66.03505157 16.88511658 66.90834045 C16.26177846 68.68592434 15.63738262 70.46313766 15.01196289 72.23999023 C14.06627079 74.92678684 13.12366136 77.61464862 12.18164062 80.30273438 C9.17034956 88.88653833 6.14507791 97.46406007 3 106 C23.84512063 101.7355877 45.1605528 92.55751016 57.75 74.48828125 C62.26881006 67.22125258 65.15960522 60.67502135 64 52 C62.61219979 47.28812742 60.71527474 44.08203681 56.4375 41.5625 C52.59756154 39.81707343 49.78502592 38.87632566 45.61506653 38.84178162 C44.71904221 38.8319928 43.82301788 38.82220398 42.89984131 38.81211853 C41.42925262 38.80348534 41.42925262 38.80348534 39.92895508 38.79467773 C38.89463852 38.78477814 37.86032196 38.77487854 36.79466248 38.76467896 C33.36964216 38.73304538 29.94460797 38.70829909 26.51953125 38.68359375 C24.14726904 38.66302583 21.77501051 38.64202941 19.40275574 38.62062073 C13.1540118 38.56538332 6.9052347 38.51598135 0.65643311 38.46777344 C-5.71800697 38.41757064 -12.09239879 38.36187819 -18.46679688 38.30664062 C-30.9778231 38.19903861 -43.4888905 38.09741179 -56 38 C-57.33834986 34.21008507 -58.66982663 30.41779164 -60 26.625 C-60.3815625 25.54476562 -60.763125 24.46453125 -61.15625 23.3515625 C-61.5171875 22.3203125 -61.878125 21.2890625 -62.25 20.2265625 C-62.58515625 19.27346191 -62.9203125 18.32036133 -63.265625 17.33837891 C-64 15 -64 15 -64 13 C-44.2 13 -24.4 13 -4 13 C-3.34 10.03 -2.68 7.06 -2 4 C-1.34 2.68 -0.68 1.36 0 0 Z \" fill=\"#FCFCFD\" transform=\"translate(112,49)\"/>
</svg>
";
impl Blockchain for PactusBlockchain {
fn name(&self) -> &str {
"Pactus"
}
fn description(&self) -> &str {
"Pactus is an open-source, layer-1 blockchain technology with a revolutionary, secure, Solid State Proof of Stake Consensus.
"
}
fn website(&self) -> &str {
"https://pactus.org"
}
fn explorer(&self) -> &str {
"https://pacviewer.com/"
}
fn links(&self) -> Vec<Link> {
vec![
Link { name: "github".to_string(), url: "https://github.com/pactus-project".to_string() },
Link { name: "twitter".to_string(), url: "https://twitter.com/pactuschain/".to_string() },
Link { name: "telegram".to_string(), url: "https://t.me/pactuschat".to_string() },
Link { name: "telegram_news".to_string(), url: "https://t.me/pactusblockchain".to_string() },
Link { name: "facebook".to_string(), url: "https://facebook.com/PactusChain".to_string() },
Link { name: "coingecko".to_string(), url: "https://coingecko.com/en/coins/pactus".to_string() },
Link { name: "source_code".to_string(), url: "https://github.com/pactus-project/pactus".to_string() },
Link { name: "whitepaper".to_string(), url: "https://github.com/pactus-project/Whitepaper/releases/latest/download/pactus_whitepaper.pdf".to_string() },
]
}
fn assets(&self) -> Vec<Box<dyn Asset>> {
vec![
Box::new(PactusPACAsset),
]
}
fn asset(&self, id: &str) -> Option<Box<dyn Asset>> {
match id {
"pactus_pac" => Some(Box::new(PactusPACAsset)),
_ => None,
}
}
fn logo(&self) -> &str {
LOGO_SVG
}
}
/// Pactus Asset Implementation
pub struct PactusPACAsset;
const ICON_PACTUSPACASSET: &str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" width=\"256\" height=\"256\">
<path d=\"M0 0 C20.92620889 17.7087274 34.22536743 40.43429231 41.64013672 66.67163086 C41.98173828 67.86143555 42.32333984 69.05124023 42.67529297 70.27709961 C50.06278556 101.78561453 43.57238938 135.90039203 27.64013672 163.67163086 C22.13927938 172.37230256 15.75086198 180.23412595 8.64013672 187.67163086 C8.04201172 188.33291992 7.44388672 188.99420898 6.82763672 189.67553711 C-13.99211893 211.88626781 -45.4403137 224.25858842 -75.49682617 225.77978516 C-110.03584327 226.75568865 -142.77212914 216.41069742 -168.28564453 192.66381836 C-170.6790788 190.36503969 -173.04465885 188.04940838 -175.35986328 185.67163086 C-175.87081543 185.18694336 -176.38176758 184.70225586 -176.90820312 184.20288086 C-181.35557526 179.93300079 -184.91684394 175.44281494 -188.29736328 170.29663086 C-188.81242432 169.51425049 -189.32748535 168.73187012 -189.8581543 167.92578125 C-208.2306662 139.38487115 -214.54235912 104.95520827 -207.953125 71.61352539 C-200.30612482 37.46031198 -179.96324561 7.88519728 -150.41455078 -10.90649414 C-138.88368702 -17.95842735 -126.43817402 -22.9974667 -113.35986328 -26.32836914 C-112.10689453 -26.64805664 -110.85392578 -26.96774414 -109.56298828 -27.29711914 C-70.9898439 -35.99830063 -30.16505841 -24.93036738 0 0 Z \" fill=\"#021A34\" transform=\"translate(211.35986328125,30.328369140625)\"/>
<path d=\"M0 0 C5.28 0 10.56 0 16 0 C13.125 9.625 13.125 9.625 12 13 C14.31 13 16.62 13 19 13 C19.103125 12.154375 19.20625 11.30875 19.3125 10.4375 C20 7 20 7 23 0 C28.28 0 33.56 0 39 0 C36.125 10.75 36.125 10.75 35 13 C36.69974976 12.9685791 36.69974976 12.9685791 38.43383789 12.93652344 C42.71104876 12.86313031 46.9882063 12.81784623 51.26586914 12.78027344 C53.10353001 12.76038082 54.94112951 12.73325668 56.77856445 12.69824219 C72.0036817 12.41575707 89.20955881 12.72787628 100.9921875 23.88671875 C109.53522407 33.19189344 110.57009118 42.28807263 110.3359375 54.4140625 C109.68775832 67.46871266 101.07660688 78.35794204 91.9375 87.0625 C67.80970324 107.90760332 27.48809951 127.95798242 -5 127 C-5.24109497 127.94746094 -5.24109497 127.94746094 -5.48706055 128.9140625 C-7.54639609 136.75323353 -10.12205623 144.35782233 -12.8125 152 C-16.75051865 163.27101175 -20.50276733 174.58423646 -24 186 C-24.66 186 -25.32 186 -26 186 C-26.4031543 184.76024414 -26.80630859 183.52048828 -27.22167969 182.24316406 C-28.73458511 177.59116509 -30.24806972 172.93935472 -31.76171875 168.28759766 C-32.41356657 166.28406738 -33.06526265 164.28048774 -33.71679688 162.27685547 C-34.34967869 160.33064681 -34.9829342 158.38455962 -35.61657715 156.43859863 C-36.23436065 154.53904203 -36.85034228 152.63889841 -37.46447754 150.73815918 C-38.7194176 146.86478316 -39.9783288 143.00050124 -41.38085938 139.17773438 C-41.75533203 138.14455078 -42.12980469 137.11136719 -42.515625 136.046875 C-42.83305664 135.21510742 -43.15048828 134.38333984 -43.47753906 133.52636719 C-44.89845999 126.65548414 -41.75448752 119.78172513 -39.53515625 113.36328125 C-39.18585556 112.33772125 -38.83655487 111.31216125 -38.47666931 110.25552368 C-37.34497321 106.93896735 -36.20411187 103.6256549 -35.0625 100.3125 C-34.28551447 98.04445251 -33.50882233 95.77630448 -32.73242188 93.50805664 C-28.54590862 81.29780468 -24.32529494 69.09934763 -20 56.9375 C-19.59789307 55.80546143 -19.19578613 54.67342285 -18.78149414 53.50708008 C-18.42047607 52.50314209 -18.05945801 51.4992041 -17.6875 50.46484375 C-17.38199219 49.615271 -17.07648438 48.76569824 -16.76171875 47.89038086 C-16 46 -16 46 -15 45 C-12.1156618 44.91134792 -9.25537842 44.88478704 -6.37109375 44.90234375 C-5.07474754 44.90446617 -5.07474754 44.90446617 -3.75221252 44.90663147 C-0.98060708 44.91224761 1.7909188 44.92480281 4.5625 44.9375 C6.4368478 44.94251292 8.31119685 44.94707619 10.18554688 44.95117188 C14.79039544 44.96222228 19.39518421 44.9794977 24 45 C22.09737825 51.51154002 20.0412913 57.94263568 17.78515625 64.33984375 C17.48814316 65.18744766 17.19113007 66.03505157 16.88511658 66.90834045 C16.26177846 68.68592434 15.63738262 70.46313766 15.01196289 72.23999023 C14.06627079 74.92678684 13.12366136 77.61464862 12.18164062 80.30273438 C9.17034956 88.88653833 6.14507791 97.46406007 3 106 C23.84512063 101.7355877 45.1605528 92.55751016 57.75 74.48828125 C62.26881006 67.22125258 65.15960522 60.67502135 64 52 C62.61219979 47.28812742 60.71527474 44.08203681 56.4375 41.5625 C52.59756154 39.81707343 49.78502592 38.87632566 45.61506653 38.84178162 C44.71904221 38.8319928 43.82301788 38.82220398 42.89984131 38.81211853 C41.42925262 38.80348534 41.42925262 38.80348534 39.92895508 38.79467773 C38.89463852 38.78477814 37.86032196 38.77487854 36.79466248 38.76467896 C33.36964216 38.73304538 29.94460797 38.70829909 26.51953125 38.68359375 C24.14726904 38.66302583 21.77501051 38.64202941 19.40275574 38.62062073 C13.1540118 38.56538332 6.9052347 38.51598135 0.65643311 38.46777344 C-5.71800697 38.41757064 -12.09239879 38.36187819 -18.46679688 38.30664062 C-30.9778231 38.19903861 -43.4888905 38.09741179 -56 38 C-57.33834986 34.21008507 -58.66982663 30.41779164 -60 26.625 C-60.3815625 25.54476562 -60.763125 24.46453125 -61.15625 23.3515625 C-61.5171875 22.3203125 -61.878125 21.2890625 -62.25 20.2265625 C-62.58515625 19.27346191 -62.9203125 18.32036133 -63.265625 17.33837891 C-64 15 -64 15 -64 13 C-44.2 13 -24.4 13 -4 13 C-3.34 10.03 -2.68 7.06 -2 4 C-1.34 2.68 -0.68 1.36 0 0 Z \" fill=\"#FCFCFD\" transform=\"translate(112,49)\"/>
</svg>
";
impl Asset for PactusPACAsset {
fn id(&self) -> &str {
"pactus_pac"
}
fn name(&self) -> &str {
"Pactus"
}
fn address(&self) -> &str {
""
}
fn symbol(&self) -> &str {
"PAC"
}
fn asset_type(&self) -> AssetType {
"coin"
}
fn asset_kind(&self) -> &str {
"NATIVE"
}
fn bip44_coin_type(&self) -> isize {
21888
}
fn description(&self) -> &str {
"Pactus is an open-source, layer-1 blockchain technology with a revolutionary, secure, Solid State Proof of Stake Consensus.
"
}
fn website(&self) -> &str {
"https://pactus.org"
}
fn explorer(&self) -> &str {
"https://pacviewer.com"
}
fn decimals(&self) -> u32 {
9
}
fn icon(&self) -> &str {
ICON_PACTUSPACASSET
}
}