github.com/xfers/quorum@v21.1.0+incompatible/permission/v2/bind/org.go (about)

     1  // Code generated - DO NOT EDIT.
     2  // This file is a generated binding and any manual changes will be lost.
     3  
     4  package permission
     5  
     6  import (
     7  	"math/big"
     8  	"strings"
     9  
    10  	ethereum "github.com/ethereum/go-ethereum"
    11  	"github.com/ethereum/go-ethereum/accounts/abi"
    12  	"github.com/ethereum/go-ethereum/accounts/abi/bind"
    13  	"github.com/ethereum/go-ethereum/common"
    14  	"github.com/ethereum/go-ethereum/core/types"
    15  	"github.com/ethereum/go-ethereum/event"
    16  )
    17  
    18  // Reference imports to suppress errors if they are not otherwise used.
    19  var (
    20  	_ = big.NewInt
    21  	_ = strings.NewReader
    22  	_ = ethereum.NotFound
    23  	_ = abi.U256
    24  	_ = bind.Bind
    25  	_ = common.Big1
    26  	_ = types.BloomLookup
    27  	_ = event.NewSubscription
    28  )
    29  
    30  // OrgManagerABI is the input ABI used to generate the binding from.
    31  const OrgManagerABI = "[{\"constant\":false,\"inputs\":[{\"name\":\"_orgId\",\"type\":\"string\"},{\"name\":\"_action\",\"type\":\"uint256\"}],\"name\":\"updateOrg\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_orgId\",\"type\":\"string\"},{\"name\":\"_action\",\"type\":\"uint256\"}],\"name\":\"approveOrgStatusUpdate\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_orgId\",\"type\":\"string\"}],\"name\":\"getUltimateParent\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_pOrgId\",\"type\":\"string\"},{\"name\":\"_orgId\",\"type\":\"string\"}],\"name\":\"addSubOrg\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_orgId\",\"type\":\"string\"}],\"name\":\"checkOrgActive\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_orgIndex\",\"type\":\"uint256\"}],\"name\":\"getOrgInfo\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"},{\"name\":\"\",\"type\":\"string\"},{\"name\":\"\",\"type\":\"string\"},{\"name\":\"\",\"type\":\"uint256\"},{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_orgId\",\"type\":\"string\"}],\"name\":\"getSubOrgIndexes\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getNumberOfOrgs\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_orgId\",\"type\":\"string\"},{\"name\":\"_orgStatus\",\"type\":\"uint256\"}],\"name\":\"checkOrgStatus\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_orgId\",\"type\":\"string\"},{\"name\":\"_breadth\",\"type\":\"uint256\"},{\"name\":\"_depth\",\"type\":\"uint256\"}],\"name\":\"setUpOrg\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_orgId\",\"type\":\"string\"}],\"name\":\"approveOrg\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_orgId\",\"type\":\"string\"}],\"name\":\"getOrgDetails\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"},{\"name\":\"\",\"type\":\"string\"},{\"name\":\"\",\"type\":\"string\"},{\"name\":\"\",\"type\":\"uint256\"},{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_orgId\",\"type\":\"string\"}],\"name\":\"addOrg\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_orgId\",\"type\":\"string\"}],\"name\":\"checkOrgExists\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"name\":\"_permUpgradable\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"_orgId\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"_porgId\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"_ultParent\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"_level\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"_status\",\"type\":\"uint256\"}],\"name\":\"OrgApproved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"_orgId\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"_porgId\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"_ultParent\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"_level\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"_status\",\"type\":\"uint256\"}],\"name\":\"OrgPendingApproval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"_orgId\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"_porgId\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"_ultParent\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"_level\",\"type\":\"uint256\"}],\"name\":\"OrgSuspended\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"_orgId\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"_porgId\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"_ultParent\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"_level\",\"type\":\"uint256\"}],\"name\":\"OrgSuspensionRevoked\",\"type\":\"event\"}]"
    32  
    33  var OrgManagerParsedABI, _ = abi.JSON(strings.NewReader(OrgManagerABI))
    34  
    35  // OrgManagerBin is the compiled bytecode used for deploying new contracts.
    36  var OrgManagerBin = "0x608060405260018054600160a01b60ff021916905560046002819055600355600060065534801561002f57600080fd5b50604051602080613bb58339810180604052602081101561004f57600080fd5b5051600180546001600160a01b0319166001600160a01b03909216919091179055613b368061007f6000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80637755ebdd1161008c578063e302831611610066578063e302831614610787578063f4d6d9f5146107f5578063f9953de514610863578063ffe40d1d146108d1576100ea565b80637755ebdd146106655780638c8642df1461066d5780639e58eb9f14610713576100ea565b80631f953480116100c85780631f953480146102c25780633fd62ae7146103805780635c4f32ee146104385780635e99f6e5146105a7576100ea565b80630cc27493146100ef57806314f775f91461016f578063177c8d8a146101df575b600080fd5b61015d6004803603604081101561010557600080fd5b810190602081018135600160201b81111561011f57600080fd5b82018360208201111561013157600080fd5b803590602001918460018302840111600160201b8311171561015257600080fd5b919350915035610975565b60408051918252519081900360200190f35b6101dd6004803603604081101561018557600080fd5b810190602081018135600160201b81111561019f57600080fd5b8201836020820111156101b157600080fd5b803590602001918460018302840111600160201b831117156101d257600080fd5b919350915035610d07565b005b61024d600480360360208110156101f557600080fd5b810190602081018135600160201b81111561020f57600080fd5b82018360208201111561022157600080fd5b803590602001918460018302840111600160201b8311171561024257600080fd5b509092509050610ef9565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561028757818101518382015260200161026f565b50505050905090810190601f1680156102b45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101dd600480360360408110156102d857600080fd5b810190602081018135600160201b8111156102f257600080fd5b82018360208201111561030457600080fd5b803590602001918460018302840111600160201b8311171561032557600080fd5b919390929091602081019035600160201b81111561034257600080fd5b82018360208201111561035457600080fd5b803590602001918460018302840111600160201b8311171561037557600080fd5b5090925090506110ae565b6104246004803603602081101561039657600080fd5b810190602081018135600160201b8111156103b057600080fd5b8201836020820111156103c257600080fd5b803590602001918460018302840111600160201b831117156103e357600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061128c945050505050565b604080519115158252519081900360200190f35b6104556004803603602081101561044e57600080fd5b5035611499565b60405180806020018060200180602001868152602001858152602001848103845289818151815260200191508051906020019080838360005b838110156104a657818101518382015260200161048e565b50505050905090810190601f1680156104d35780820380516001836020036101000a031916815260200191505b5084810383528851815288516020918201918a019080838360005b838110156105065781810151838201526020016104ee565b50505050905090810190601f1680156105335780820380516001836020036101000a031916815260200191505b50848103825287518152875160209182019189019080838360005b8381101561056657818101518382015260200161054e565b50505050905090810190601f1680156105935780820380516001836020036101000a031916815260200191505b509850505050505050505060405180910390f35b610615600480360360208110156105bd57600080fd5b810190602081018135600160201b8111156105d757600080fd5b8201836020820111156105e957600080fd5b803590602001918460018302840111600160201b8311171561060a57600080fd5b50909250905061170e565b60408051602080825283518183015283519192839290830191858101910280838360005b83811015610651578181015183820152602001610639565b505050509050019250505060405180910390f35b61015d61185b565b6104246004803603604081101561068357600080fd5b810190602081018135600160201b81111561069d57600080fd5b8201836020820111156106af57600080fd5b803590602001918460018302840111600160201b831117156106d057600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250611862915050565b6101dd6004803603606081101561072957600080fd5b810190602081018135600160201b81111561074357600080fd5b82018360208201111561075557600080fd5b803590602001918460018302840111600160201b8311171561077657600080fd5b9193509150803590602001356119ba565b6101dd6004803603602081101561079d57600080fd5b810190602081018135600160201b8111156107b757600080fd5b8201836020820111156107c957600080fd5b803590602001918460018302840111600160201b831117156107ea57600080fd5b509092509050611ae6565b6104556004803603602081101561080b57600080fd5b810190602081018135600160201b81111561082557600080fd5b82018360208201111561083757600080fd5b803590602001918460018302840111600160201b8311171561085857600080fd5b509092509050611ef1565b6101dd6004803603602081101561087957600080fd5b810190602081018135600160201b81111561089357600080fd5b8201836020820111156108a557600080fd5b803590602001918460018302840111600160201b831117156108c657600080fd5b50909250905061225a565b610424600480360360208110156108e757600080fd5b810190602081018135600160201b81111561090157600080fd5b82018360208201111561091357600080fd5b803590602001918460018302840111600160201b8311171561093457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550612407945050505050565b60015460408051600160e41b62e32cf902815290516000926001600160a01b031691630e32cf90916004808301926020929190829003018186803b1580156109bc57600080fd5b505afa1580156109d0573d6000803e3d6000fd5b505050506040513d60208110156109e657600080fd5b50516001600160a01b03163314610a3b5760408051600160e51b62461bcd02815260206004820152600e6024820152600160911b6d34b73b30b634b21031b0b63632b902604482015290519081900360640190fd5b83838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610a7d92508391506124079050565b1515600114610ace5760408051600160e51b62461bcd0281526020600482015260126024820152600160721b711bdc99c8191bd95cc81b9bdd08195e1a5cdd02604482015290519081900360640190fd5b8260011480610add5750826002145b1515610b1d57604051600160e51b62461bcd028152600401808060200182810382526025815260200180613a646025913960400191505060405180910390fd5b6000610b5e86868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061249592505050565b9050600481815481101515610b6f57fe5b9060005260206000209060080201600601546001141515610bc457604051600160e51b62461bcd028152600401808060200182810382526027815260200180613a896027913960400191505060405180910390fd5b6000808560011415610bdb57506002905080610bec565b8560021415610bec57506004905060035b610c2d88888080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250611862915050565b1515600114610c7057604051600160e51b62461bcd028152600401808060200182810382526027815260200180613ab06027913960400191505060405180910390fd5b8560011415610cbd57610cb888888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061252292505050565b610cfc565b610cfc88888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506127e492505050565b979650505050505050565b600160009054906101000a90046001600160a01b03166001600160a01b0316630e32cf906040518163ffffffff1660e01b815260040160206040518083038186803b158015610d5557600080fd5b505afa158015610d69573d6000803e3d6000fd5b505050506040513d6020811015610d7f57600080fd5b50516001600160a01b03163314610dd45760408051600160e51b62461bcd02815260206004820152600e6024820152600160911b6d34b73b30b634b21031b0b63632b902604482015290519081900360640190fd5b82828080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610e1692508391506124079050565b1515600114610e675760408051600160e51b62461bcd0281526020600482015260126024820152600160721b711bdc99c8191bd95cc81b9bdd08195e1a5cdd02604482015290519081900360640190fd5b8160011415610eb457610eaf84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061299192505050565b610ef3565b610ef384848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612c4f92505050565b50505050565b60015460408051600160e41b62e32cf902815290516060926001600160a01b031691630e32cf90916004808301926020929190829003018186803b158015610f4057600080fd5b505afa158015610f54573d6000803e3d6000fd5b505050506040513d6020811015610f6a57600080fd5b50516001600160a01b03163314610fbf5760408051600160e51b62461bcd02815260206004820152600e6024820152600160911b6d34b73b30b634b21031b0b63632b902604482015290519081900360640190fd5b600461100084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061249592505050565b8154811061100a57fe5b6000918252602091829020600460089092020101805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156110a05780601f10611075576101008083540402835291602001916110a0565b820191906000526020600020905b81548152906001019060200180831161108357829003601f168201915b505050505090505b92915050565b600160009054906101000a90046001600160a01b03166001600160a01b0316630e32cf906040518163ffffffff1660e01b815260040160206040518083038186803b1580156110fc57600080fd5b505afa158015611110573d6000803e3d6000fd5b505050506040513d602081101561112657600080fd5b50516001600160a01b0316331461117b5760408051600160e51b62461bcd02815260206004820152600e6024820152600160911b6d34b73b30b634b21031b0b63632b902604482015290519081900360640190fd5b8383838360405160200180858580828437600160f91b601702920191825250600101838380828437808301925050509450505050506040516020818303038152906040526111c881612407565b1561120d5760408051600160e51b62461bcd02815260206004820152600a6024820152600160b01b696f72672065786973747302604482015290519081900360640190fd5b61128585858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8901819004810282018101909252878152925087915086908190840183828082843760009201919091525060029250829150612d0e9050565b5050505050565b600060056000836040516020018082805190602001908083835b602083106112c55780518252601f1990920191602091820191016112a6565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120815260200190815260200160002054600014151561149057600061132383612495565b905060048181548110151561133457fe5b906000526020600020906008020160010154600214806113735750600480548290811061135d57fe5b9060005260206000209060080201600101546003145b1561148e57600061142c60048381548110151561138c57fe5b6000918252602091829020600460089092020101805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156114225780601f106113f757610100808354040283529160200191611422565b820191906000526020600020905b81548152906001019060200180831161140557829003601f168201915b5050505050612495565b905060048181548110151561143d57fe5b9060005260206000209060080201600101546002148061147c5750600480548290811061146657fe5b9060005260206000209060080201600101546003145b1561148c57600192505050611494565b505b505b5060005b919050565b60608060606000806004868154811015156114b057fe5b90600052602060002090600802016000016004878154811015156114d057fe5b90600052602060002090600802016002016004888154811015156114f057fe5b906000526020600020906008020160040160048981548110151561151057fe5b90600052602060002090600802016006015460048a81548110151561153157fe5b906000526020600020906008020160010154848054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115d85780601f106115ad576101008083540402835291602001916115d8565b820191906000526020600020905b8154815290600101906020018083116115bb57829003601f168201915b5050875460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152959a50899450925084019050828280156116665780601f1061163b57610100808354040283529160200191611666565b820191906000526020600020905b81548152906001019060200180831161164957829003601f168201915b5050865460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152959950889450925084019050828280156116f45780601f106116c9576101008083540402835291602001916116f4565b820191906000526020600020905b8154815290600101906020018083116116d757829003601f168201915b505050505092509450945094509450945091939590929450565b606061174f83838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061240792505050565b15156001146117a05760408051600160e51b62461bcd0281526020600482015260126024820152600160721b711bdc99c8191bd95cc81b9bdd08195e1a5cdd02604482015290519081900360640190fd5b60006117e184848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061249592505050565b90506004818154811015156117f257fe5b906000526020600020906008020160070180548060200260200160405190810160405280929190818152602001828054801561184d57602002820191906000526020600020905b815481526020019060010190808311611839575b505050505091505092915050565b6004545b90565b600060056000846040516020018082805190602001908083835b6020831061189b5780518252601f19909201916020918201910161187c565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120815260200190815260200160002054600014156118f5575060006110a8565b600061190084612495565b905060056000856040516020018082805190602001908083835b602083106119395780518252601f19909201916020918201910161191a565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001208152602001908152602001600020546000141580156119b257508260048281548110151561199e57fe5b906000526020600020906008020160010154145b949350505050565b600160009054906101000a90046001600160a01b03166001600160a01b0316630e32cf906040518163ffffffff1660e01b815260040160206040518083038186803b158015611a0857600080fd5b505afa158015611a1c573d6000803e3d6000fd5b505050506040513d6020811015611a3257600080fd5b50516001600160a01b03163314611a875760408051600160e51b62461bcd02815260206004820152600e6024820152600160911b6d34b73b30b634b21031b0b63632b902604482015290519081900360640190fd5b611adc6040518060200160405280600081525085858080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506001925060029150612d0e9050565b6002556003555050565b600160009054906101000a90046001600160a01b03166001600160a01b0316630e32cf906040518163ffffffff1660e01b815260040160206040518083038186803b158015611b3457600080fd5b505afa158015611b48573d6000803e3d6000fd5b505050506040513d6020811015611b5e57600080fd5b50516001600160a01b03163314611bb35760408051600160e51b62461bcd02815260206004820152600e6024820152600160911b6d34b73b30b634b21031b0b63632b902604482015290519081900360640190fd5b611bf582828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250611862915050565b1515600114611c465760408051600160e51b62461bcd0281526020600482015260126024820152600160701b716e6f7468696e6720746f20617070726f766502604482015290519081900360640190fd5b6000611c8783838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061249592505050565b90506002600482815481101515611c9a57fe5b9060005260206000209060080201600101819055507fd705723a50859c9cc1d3953e10b8b9478820e7a62927ad3215897ed87b20591c600482815481101515611cdf57fe5b9060005260206000209060080201600001600483815481101515611cff57fe5b9060005260206000209060080201600201600484815481101515611d1f57fe5b9060005260206000209060080201600401600485815481101515611d3f57fe5b906000526020600020906008020160060154600260405180806020018060200180602001868152602001858152602001848103845289818154600181600116156101000203166002900481526020019150805460018160011615610100020316600290048015611df05780601f10611dc557610100808354040283529160200191611df0565b820191906000526020600020905b815481529060010190602001808311611dd357829003601f168201915b5050848103835288546002600019610100600184161502019091160480825260209091019089908015611e645780601f10611e3957610100808354040283529160200191611e64565b820191906000526020600020905b815481529060010190602001808311611e4757829003601f168201915b5050848103825287546002600019610100600184161502019091160480825260209091019088908015611ed85780601f10611ead57610100808354040283529160200191611ed8565b820191906000526020600020905b815481529060010190602001808311611ebb57829003601f168201915b50509850505050505050505060405180910390a1505050565b6060806060600080611f3887878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061240792505050565b1515611fa757868660008083838080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060408051602080820183528382528251908101909252918152949d509b50929950939750919550612250945050505050565b6000611fe888888080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061249592505050565b9050600481815481101515611ff957fe5b906000526020600020906008020160000160048281548110151561201957fe5b906000526020600020906008020160020160048381548110151561203957fe5b906000526020600020906008020160040160048481548110151561205957fe5b90600052602060002090600802016006015460048581548110151561207a57fe5b906000526020600020906008020160010154848054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156121215780601f106120f657610100808354040283529160200191612121565b820191906000526020600020905b81548152906001019060200180831161210457829003601f168201915b5050875460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152959a50899450925084019050828280156121af5780601f10612184576101008083540402835291602001916121af565b820191906000526020600020905b81548152906001019060200180831161219257829003601f168201915b5050865460408051602060026001851615610100026000190190941693909304601f81018490048402820184019092528181529599508894509250840190508282801561223d5780601f106122125761010080835404028352916020019161223d565b820191906000526020600020905b81548152906001019060200180831161222057829003601f168201915b5050505050925095509550955095509550505b9295509295909350565b600160009054906101000a90046001600160a01b03166001600160a01b0316630e32cf906040518163ffffffff1660e01b815260040160206040518083038186803b1580156122a857600080fd5b505afa1580156122bc573d6000803e3d6000fd5b505050506040513d60208110156122d257600080fd5b50516001600160a01b031633146123275760408051600160e51b62461bcd02815260206004820152600e6024820152600160911b6d34b73b30b634b21031b0b63632b902604482015290519081900360640190fd5b81818080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061236992508391506124079050565b156123ae5760408051600160e51b62461bcd02815260206004820152600a6024820152600160b01b696f72672065786973747302604482015290519081900360640190fd5b6124026040518060200160405280600081525084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060019250829150612d0e9050565b505050565b600060056000836040516020018082805190602001908083835b602083106124405780518252601f199092019160209182019101612421565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120815260200190815260200160002054600014159050919050565b6000600160056000846040516020018082805190602001908083835b602083106124d05780518252601f1990920191602091820191016124b1565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120815260200190815260200160002054039050919050565b61252d816002611862565b151560011461257057604051600160e51b62461bcd028152600401808060200182810382526034815260200180613ad76034913960400191505060405180910390fd5b600061257b82612495565b9050600360048281548110151561258e57fe5b9060005260206000209060080201600101819055507f0e8b7be64e0c730234ba2cd252b227fb481d7a247ba806d1941144c535bf054b6004828154811015156125d357fe5b90600052602060002090600802016000016004838154811015156125f357fe5b906000526020600020906008020160020160048481548110151561261357fe5b906000526020600020906008020160040160048581548110151561263357fe5b9060005260206000209060080201600601546003604051808060200180602001806020018681526020018581526020018481038452898181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156126e45780601f106126b9576101008083540402835291602001916126e4565b820191906000526020600020905b8154815290600101906020018083116126c757829003601f168201915b50508481038352885460026000196101006001841615020190911604808252602090910190899080156127585780601f1061272d57610100808354040283529160200191612758565b820191906000526020600020905b81548152906001019060200180831161273b57829003601f168201915b50508481038252875460026000196101006001841615020190911604808252602090910190889080156127cc5780601f106127a1576101008083540402835291602001916127cc565b820191906000526020600020905b8154815290600101906020018083116127af57829003601f168201915b50509850505050505050505060405180910390a15050565b6127ef816004611862565b15156001146128485760408051600160e51b62461bcd02815260206004820152601a60248201527f6f7267206e6f7420696e2073757370656e646564207374617465000000000000604482015290519081900360640190fd5b600061285382612495565b9050600560048281548110151561286657fe5b9060005260206000209060080201600101819055507f0e8b7be64e0c730234ba2cd252b227fb481d7a247ba806d1941144c535bf054b6004828154811015156128ab57fe5b90600052602060002090600802016000016004838154811015156128cb57fe5b90600052602060002090600802016002016004848154811015156128eb57fe5b906000526020600020906008020160040160048581548110151561290b57fe5b9060005260206000209060080201600601546005604051808060200180602001806020018681526020018581526020018481038452898181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156126e45780601f106126b9576101008083540402835291602001916126e4565b61299c816003611862565b15156001146129ed5760408051600160e51b62461bcd0281526020600482015260126024820152600160701b716e6f7468696e6720746f20617070726f766502604482015290519081900360640190fd5b60006129f882612495565b905060048082815481101515612a0a57fe5b9060005260206000209060080201600101819055507f73ccf8d6c8385bf5347269bd59712da33183c1a5e1702494bcdb87d0f4674d96600482815481101515612a4f57fe5b9060005260206000209060080201600001600483815481101515612a6f57fe5b9060005260206000209060080201600201600484815481101515612a8f57fe5b9060005260206000209060080201600401600485815481101515612aaf57fe5b600091825260209182902060066008909202010154604080516060810183905260808082528754600260001961010060018416150201909116049082018190529293909283929183019183019060a084019089908015612b505780601f10612b2557610100808354040283529160200191612b50565b820191906000526020600020905b815481529060010190602001808311612b3357829003601f168201915b5050848103835287546002600019610100600184161502019091160480825260209091019088908015612bc45780601f10612b9957610100808354040283529160200191612bc4565b820191906000526020600020905b815481529060010190602001808311612ba757829003601f168201915b5050848103825286546002600019610100600184161502019091160480825260209091019087908015612c385780601f10612c0d57610100808354040283529160200191612c38565b820191906000526020600020905b815481529060010190602001808311612c1b57829003601f168201915b505097505050505050505060405180910390a15050565b612c5a816005611862565b1515600114612cab5760408051600160e51b62461bcd0281526020600482015260126024820152600160701b716e6f7468696e6720746f20617070726f766502604482015290519081900360640190fd5b6000612cb682612495565b90506002600482815481101515612cc957fe5b9060005260206000209060080201600101819055507f882f030c609566cd82918a97d457fd48f9cfcefd11282e2654cde3f94579c15f600482815481101515612a4f57fe5b600080806001851415612d9057856040516020018082805190602001908083835b60208310612d4e5780518252601f199092019160209182019101612d2f565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052805190602001209150612ecf565b866040516020018082805190602001908083835b60208310612dc35780518252601f199092019160209182019101612da4565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405280519060200120925086866040516020018083805190602001908083835b60208310612e345780518252601f199092019160209182019101612e15565b6001836020036101000a03801982511681845116808217855250505050505090500180600160f91b60170281525060010182805190602001908083835b60208310612e905780518252601f199092019160209182019101612e71565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040528051906020012091505b600680546001908101918290556000848152600560205260408120929092556004805491612eff9190830161382a565b90508560011415612fc45785600482815481101515612f1a57fe5b9060005260206000209060080201600601819055506000600482815481101515612f4057fe5b90600052602060002090600802016005018190555086600482815481101515612f6557fe5b90600052602060002090600802016003019080519060200190612f89929190613856565b5086600482815481101515612f9a57fe5b90600052602060002090600802016004019080519060200190612fbe929190613856565b50613308565b600084815260056020526040902054600354600480546000199093019450909184908110612fee57fe5b6000918252602090912060076008909202010154106130575760408051600160e51b62461bcd02815260206004820152601660248201527f62726561647468206c6576656c20657863656564656400000000000000000000604482015290519081900360640190fd5b600254600480548490811061306857fe5b9060005260206000209060080201600601541015156130d15760408051600160e51b62461bcd02815260206004820152601460248201527f6465707468206c6576656c206578636565646564000000000000000000000000604482015290519081900360640190fd5b60048054839081106130df57fe5b90600052602060002090600802016006015460010160048281548110151561310357fe5b9060005260206000209060080201600601819055508160048281548110151561312857fe5b6000918252602090912060056008909202010155600480548390811061314a57fe5b906000526020600020906008020160040160048281548110151561316a57fe5b9060005260206000209060080201600401908054600181600116156101000203166002900461319a9291906138d4565b5060006004838154811015156131ac57fe5b906000526020600020906008020160070180548091906001016131cf9190613949565b9050816004848154811015156131e157fe5b9060005260206000209060080201600701828154811015156131ff57fe5b906000526020600020018190555088886040516020018083805190602001908083835b602083106132415780518252601f199092019160209182019101613222565b6001836020036101000a03801982511681845116808217855250505050505090500180600160f91b60170281525060010182805190602001908083835b6020831061329d5780518252601f19909201916020918201910161327e565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040526004838154811015156132e157fe5b90600052602060002090600802016003019080519060200190613305929190613856565b50505b8660048281548110151561331857fe5b9060005260206000209060080201600001908051906020019061333c929190613856565b508760048281548110151561334d57fe5b90600052602060002090600802016002019080519060200190613371929190613856565b508460048281548110151561338257fe5b90600052602060002090600802016001018190555084600114156135e2577f0e8b7be64e0c730234ba2cd252b227fb481d7a247ba806d1941144c535bf054b6004828154811015156133d057fe5b90600052602060002090600802016000016004838154811015156133f057fe5b906000526020600020906008020160020160048481548110151561341057fe5b906000526020600020906008020160040160048581548110151561343057fe5b9060005260206000209060080201600601546001604051808060200180602001806020018681526020018581526020018481038452898181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156134e15780601f106134b6576101008083540402835291602001916134e1565b820191906000526020600020905b8154815290600101906020018083116134c457829003601f168201915b50508481038352885460026000196101006001841615020190911604808252602090910190899080156135555780601f1061352a57610100808354040283529160200191613555565b820191906000526020600020905b81548152906001019060200180831161353857829003601f168201915b50508481038252875460026000196101006001841615020190911604808252602090910190889080156135c95780601f1061359e576101008083540402835291602001916135c9565b820191906000526020600020905b8154815290600101906020018083116135ac57829003601f168201915b50509850505050505050505060405180910390a1613820565b7fd705723a50859c9cc1d3953e10b8b9478820e7a62927ad3215897ed87b20591c60048281548110151561361257fe5b906000526020600020906008020160000160048381548110151561363257fe5b906000526020600020906008020160020160048481548110151561365257fe5b906000526020600020906008020160040160048581548110151561367257fe5b9060005260206000209060080201600601546002604051808060200180602001806020018681526020018581526020018481038452898181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156137235780601f106136f857610100808354040283529160200191613723565b820191906000526020600020905b81548152906001019060200180831161370657829003601f168201915b50508481038352885460026000196101006001841615020190911604808252602090910190899080156137975780601f1061376c57610100808354040283529160200191613797565b820191906000526020600020905b81548152906001019060200180831161377a57829003601f168201915b505084810382528754600260001961010060018416150201909116048082526020909101908890801561380b5780601f106137e05761010080835404028352916020019161380b565b820191906000526020600020905b8154815290600101906020018083116137ee57829003601f168201915b50509850505050505050505060405180910390a15b5050505050505050565b81548183558181111561240257600802816008028360005260206000209182019101612402919061396d565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061389757805160ff19168380011785556138c4565b828001600101855582156138c4579182015b828111156138c45782518255916020019190600101906138a9565b506138d09291506139e4565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061390d57805485556138c4565b828001600101855582156138c457600052602060002091601f016020900482015b828111156138c457825482559160010191906001019061392e565b815481835581811115612402576000838152602090206124029181019083016139e4565b61185f91905b808211156138d057600061398782826139fe565b600182016000905560028201600061399f91906139fe565b6139ad6003830160006139fe565b6139bb6004830160006139fe565b600582016000905560068201600090556007820160006139db9190613a45565b50600801613973565b61185f91905b808211156138d057600081556001016139ea565b50805460018160011615610100020316600290046000825580601f10613a245750613a42565b601f016020900490600052602060002090810190613a4291906139e4565b50565b5080546000825590600052602060002090810190613a4291906139e456fe696e76616c696420616374696f6e2e206f7065726174696f6e206e6f7420616c6c6f7765646e6f742061206d6173746572206f72672e206f7065726174696f6e206e6f7420616c6c6f7765646f72672073746174757320646f6573206e6f7420616c6c6f7720746865206f7065726174696f6e6f7267206e6f7420696e20617070726f766564207374617475732e206f7065726174696f6e2063616e6e6f7420626520646f6e65a165627a7a72305820e20472358f6cc444b5476d1b471677de46e77b7421a1bcae4549f346a29e10870029"
    37  
    38  // DeployOrgManager deploys a new Ethereum contract, binding an instance of OrgManager to it.
    39  func DeployOrgManager(auth *bind.TransactOpts, backend bind.ContractBackend, _permUpgradable common.Address) (common.Address, *types.Transaction, *OrgManager, error) {
    40  	parsed, err := abi.JSON(strings.NewReader(OrgManagerABI))
    41  	if err != nil {
    42  		return common.Address{}, nil, nil, err
    43  	}
    44  
    45  	address, tx, contract, err := bind.DeployContract(auth, parsed, common.FromHex(OrgManagerBin), backend, _permUpgradable)
    46  	if err != nil {
    47  		return common.Address{}, nil, nil, err
    48  	}
    49  	return address, tx, &OrgManager{OrgManagerCaller: OrgManagerCaller{contract: contract}, OrgManagerTransactor: OrgManagerTransactor{contract: contract}, OrgManagerFilterer: OrgManagerFilterer{contract: contract}}, nil
    50  }
    51  
    52  // OrgManager is an auto generated Go binding around an Ethereum contract.
    53  type OrgManager struct {
    54  	OrgManagerCaller     // Read-only binding to the contract
    55  	OrgManagerTransactor // Write-only binding to the contract
    56  	OrgManagerFilterer   // Log filterer for contract events
    57  }
    58  
    59  // OrgManagerCaller is an auto generated read-only Go binding around an Ethereum contract.
    60  type OrgManagerCaller struct {
    61  	contract *bind.BoundContract // Generic contract wrapper for the low level calls
    62  }
    63  
    64  // OrgManagerTransactor is an auto generated write-only Go binding around an Ethereum contract.
    65  type OrgManagerTransactor struct {
    66  	contract *bind.BoundContract // Generic contract wrapper for the low level calls
    67  }
    68  
    69  // OrgManagerFilterer is an auto generated log filtering Go binding around an Ethereum contract events.
    70  type OrgManagerFilterer struct {
    71  	contract *bind.BoundContract // Generic contract wrapper for the low level calls
    72  }
    73  
    74  // OrgManagerSession is an auto generated Go binding around an Ethereum contract,
    75  // with pre-set call and transact options.
    76  type OrgManagerSession struct {
    77  	Contract     *OrgManager       // Generic contract binding to set the session for
    78  	CallOpts     bind.CallOpts     // Call options to use throughout this session
    79  	TransactOpts bind.TransactOpts // Transaction auth options to use throughout this session
    80  }
    81  
    82  // OrgManagerCallerSession is an auto generated read-only Go binding around an Ethereum contract,
    83  // with pre-set call options.
    84  type OrgManagerCallerSession struct {
    85  	Contract *OrgManagerCaller // Generic contract caller binding to set the session for
    86  	CallOpts bind.CallOpts     // Call options to use throughout this session
    87  }
    88  
    89  // OrgManagerTransactorSession is an auto generated write-only Go binding around an Ethereum contract,
    90  // with pre-set transact options.
    91  type OrgManagerTransactorSession struct {
    92  	Contract     *OrgManagerTransactor // Generic contract transactor binding to set the session for
    93  	TransactOpts bind.TransactOpts     // Transaction auth options to use throughout this session
    94  }
    95  
    96  // OrgManagerRaw is an auto generated low-level Go binding around an Ethereum contract.
    97  type OrgManagerRaw struct {
    98  	Contract *OrgManager // Generic contract binding to access the raw methods on
    99  }
   100  
   101  // OrgManagerCallerRaw is an auto generated low-level read-only Go binding around an Ethereum contract.
   102  type OrgManagerCallerRaw struct {
   103  	Contract *OrgManagerCaller // Generic read-only contract binding to access the raw methods on
   104  }
   105  
   106  // OrgManagerTransactorRaw is an auto generated low-level write-only Go binding around an Ethereum contract.
   107  type OrgManagerTransactorRaw struct {
   108  	Contract *OrgManagerTransactor // Generic write-only contract binding to access the raw methods on
   109  }
   110  
   111  // NewOrgManager creates a new instance of OrgManager, bound to a specific deployed contract.
   112  func NewOrgManager(address common.Address, backend bind.ContractBackend) (*OrgManager, error) {
   113  	contract, err := bindOrgManager(address, backend, backend, backend)
   114  	if err != nil {
   115  		return nil, err
   116  	}
   117  	return &OrgManager{OrgManagerCaller: OrgManagerCaller{contract: contract}, OrgManagerTransactor: OrgManagerTransactor{contract: contract}, OrgManagerFilterer: OrgManagerFilterer{contract: contract}}, nil
   118  }
   119  
   120  // NewOrgManagerCaller creates a new read-only instance of OrgManager, bound to a specific deployed contract.
   121  func NewOrgManagerCaller(address common.Address, caller bind.ContractCaller) (*OrgManagerCaller, error) {
   122  	contract, err := bindOrgManager(address, caller, nil, nil)
   123  	if err != nil {
   124  		return nil, err
   125  	}
   126  	return &OrgManagerCaller{contract: contract}, nil
   127  }
   128  
   129  // NewOrgManagerTransactor creates a new write-only instance of OrgManager, bound to a specific deployed contract.
   130  func NewOrgManagerTransactor(address common.Address, transactor bind.ContractTransactor) (*OrgManagerTransactor, error) {
   131  	contract, err := bindOrgManager(address, nil, transactor, nil)
   132  	if err != nil {
   133  		return nil, err
   134  	}
   135  	return &OrgManagerTransactor{contract: contract}, nil
   136  }
   137  
   138  // NewOrgManagerFilterer creates a new log filterer instance of OrgManager, bound to a specific deployed contract.
   139  func NewOrgManagerFilterer(address common.Address, filterer bind.ContractFilterer) (*OrgManagerFilterer, error) {
   140  	contract, err := bindOrgManager(address, nil, nil, filterer)
   141  	if err != nil {
   142  		return nil, err
   143  	}
   144  	return &OrgManagerFilterer{contract: contract}, nil
   145  }
   146  
   147  // bindOrgManager binds a generic wrapper to an already deployed contract.
   148  func bindOrgManager(address common.Address, caller bind.ContractCaller, transactor bind.ContractTransactor, filterer bind.ContractFilterer) (*bind.BoundContract, error) {
   149  	parsed, err := abi.JSON(strings.NewReader(OrgManagerABI))
   150  	if err != nil {
   151  		return nil, err
   152  	}
   153  	return bind.NewBoundContract(address, parsed, caller, transactor, filterer), nil
   154  }
   155  
   156  // Call invokes the (constant) contract method with params as input values and
   157  // sets the output to result. The result type might be a single field for simple
   158  // returns, a slice of interfaces for anonymous returns and a struct for named
   159  // returns.
   160  func (_OrgManager *OrgManagerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error {
   161  	return _OrgManager.Contract.OrgManagerCaller.contract.Call(opts, result, method, params...)
   162  }
   163  
   164  // Transfer initiates a plain transaction to move funds to the contract, calling
   165  // its default method if one is available.
   166  func (_OrgManager *OrgManagerRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
   167  	return _OrgManager.Contract.OrgManagerTransactor.contract.Transfer(opts)
   168  }
   169  
   170  // Transact invokes the (paid) contract method with params as input values.
   171  func (_OrgManager *OrgManagerRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
   172  	return _OrgManager.Contract.OrgManagerTransactor.contract.Transact(opts, method, params...)
   173  }
   174  
   175  // Call invokes the (constant) contract method with params as input values and
   176  // sets the output to result. The result type might be a single field for simple
   177  // returns, a slice of interfaces for anonymous returns and a struct for named
   178  // returns.
   179  func (_OrgManager *OrgManagerCallerRaw) Call(opts *bind.CallOpts, result interface{}, method string, params ...interface{}) error {
   180  	return _OrgManager.Contract.contract.Call(opts, result, method, params...)
   181  }
   182  
   183  // Transfer initiates a plain transaction to move funds to the contract, calling
   184  // its default method if one is available.
   185  func (_OrgManager *OrgManagerTransactorRaw) Transfer(opts *bind.TransactOpts) (*types.Transaction, error) {
   186  	return _OrgManager.Contract.contract.Transfer(opts)
   187  }
   188  
   189  // Transact invokes the (paid) contract method with params as input values.
   190  func (_OrgManager *OrgManagerTransactorRaw) Transact(opts *bind.TransactOpts, method string, params ...interface{}) (*types.Transaction, error) {
   191  	return _OrgManager.Contract.contract.Transact(opts, method, params...)
   192  }
   193  
   194  // CheckOrgActive is a free data retrieval call binding the contract method 0x3fd62ae7.
   195  //
   196  // Solidity: function checkOrgActive(string _orgId) constant returns(bool)
   197  func (_OrgManager *OrgManagerCaller) CheckOrgActive(opts *bind.CallOpts, _orgId string) (bool, error) {
   198  	var (
   199  		ret0 = new(bool)
   200  	)
   201  	out := ret0
   202  	err := _OrgManager.contract.Call(opts, out, "checkOrgActive", _orgId)
   203  	return *ret0, err
   204  }
   205  
   206  // CheckOrgActive is a free data retrieval call binding the contract method 0x3fd62ae7.
   207  //
   208  // Solidity: function checkOrgActive(string _orgId) constant returns(bool)
   209  func (_OrgManager *OrgManagerSession) CheckOrgActive(_orgId string) (bool, error) {
   210  	return _OrgManager.Contract.CheckOrgActive(&_OrgManager.CallOpts, _orgId)
   211  }
   212  
   213  // CheckOrgActive is a free data retrieval call binding the contract method 0x3fd62ae7.
   214  //
   215  // Solidity: function checkOrgActive(string _orgId) constant returns(bool)
   216  func (_OrgManager *OrgManagerCallerSession) CheckOrgActive(_orgId string) (bool, error) {
   217  	return _OrgManager.Contract.CheckOrgActive(&_OrgManager.CallOpts, _orgId)
   218  }
   219  
   220  // CheckOrgExists is a free data retrieval call binding the contract method 0xffe40d1d.
   221  //
   222  // Solidity: function checkOrgExists(string _orgId) constant returns(bool)
   223  func (_OrgManager *OrgManagerCaller) CheckOrgExists(opts *bind.CallOpts, _orgId string) (bool, error) {
   224  	var (
   225  		ret0 = new(bool)
   226  	)
   227  	out := ret0
   228  	err := _OrgManager.contract.Call(opts, out, "checkOrgExists", _orgId)
   229  	return *ret0, err
   230  }
   231  
   232  // CheckOrgExists is a free data retrieval call binding the contract method 0xffe40d1d.
   233  //
   234  // Solidity: function checkOrgExists(string _orgId) constant returns(bool)
   235  func (_OrgManager *OrgManagerSession) CheckOrgExists(_orgId string) (bool, error) {
   236  	return _OrgManager.Contract.CheckOrgExists(&_OrgManager.CallOpts, _orgId)
   237  }
   238  
   239  // CheckOrgExists is a free data retrieval call binding the contract method 0xffe40d1d.
   240  //
   241  // Solidity: function checkOrgExists(string _orgId) constant returns(bool)
   242  func (_OrgManager *OrgManagerCallerSession) CheckOrgExists(_orgId string) (bool, error) {
   243  	return _OrgManager.Contract.CheckOrgExists(&_OrgManager.CallOpts, _orgId)
   244  }
   245  
   246  // CheckOrgStatus is a free data retrieval call binding the contract method 0x8c8642df.
   247  //
   248  // Solidity: function checkOrgStatus(string _orgId, uint256 _orgStatus) constant returns(bool)
   249  func (_OrgManager *OrgManagerCaller) CheckOrgStatus(opts *bind.CallOpts, _orgId string, _orgStatus *big.Int) (bool, error) {
   250  	var (
   251  		ret0 = new(bool)
   252  	)
   253  	out := ret0
   254  	err := _OrgManager.contract.Call(opts, out, "checkOrgStatus", _orgId, _orgStatus)
   255  	return *ret0, err
   256  }
   257  
   258  // CheckOrgStatus is a free data retrieval call binding the contract method 0x8c8642df.
   259  //
   260  // Solidity: function checkOrgStatus(string _orgId, uint256 _orgStatus) constant returns(bool)
   261  func (_OrgManager *OrgManagerSession) CheckOrgStatus(_orgId string, _orgStatus *big.Int) (bool, error) {
   262  	return _OrgManager.Contract.CheckOrgStatus(&_OrgManager.CallOpts, _orgId, _orgStatus)
   263  }
   264  
   265  // CheckOrgStatus is a free data retrieval call binding the contract method 0x8c8642df.
   266  //
   267  // Solidity: function checkOrgStatus(string _orgId, uint256 _orgStatus) constant returns(bool)
   268  func (_OrgManager *OrgManagerCallerSession) CheckOrgStatus(_orgId string, _orgStatus *big.Int) (bool, error) {
   269  	return _OrgManager.Contract.CheckOrgStatus(&_OrgManager.CallOpts, _orgId, _orgStatus)
   270  }
   271  
   272  // GetNumberOfOrgs is a free data retrieval call binding the contract method 0x7755ebdd.
   273  //
   274  // Solidity: function getNumberOfOrgs() constant returns(uint256)
   275  func (_OrgManager *OrgManagerCaller) GetNumberOfOrgs(opts *bind.CallOpts) (*big.Int, error) {
   276  	var (
   277  		ret0 = new(*big.Int)
   278  	)
   279  	out := ret0
   280  	err := _OrgManager.contract.Call(opts, out, "getNumberOfOrgs")
   281  	return *ret0, err
   282  }
   283  
   284  // GetNumberOfOrgs is a free data retrieval call binding the contract method 0x7755ebdd.
   285  //
   286  // Solidity: function getNumberOfOrgs() constant returns(uint256)
   287  func (_OrgManager *OrgManagerSession) GetNumberOfOrgs() (*big.Int, error) {
   288  	return _OrgManager.Contract.GetNumberOfOrgs(&_OrgManager.CallOpts)
   289  }
   290  
   291  // GetNumberOfOrgs is a free data retrieval call binding the contract method 0x7755ebdd.
   292  //
   293  // Solidity: function getNumberOfOrgs() constant returns(uint256)
   294  func (_OrgManager *OrgManagerCallerSession) GetNumberOfOrgs() (*big.Int, error) {
   295  	return _OrgManager.Contract.GetNumberOfOrgs(&_OrgManager.CallOpts)
   296  }
   297  
   298  // GetOrgDetails is a free data retrieval call binding the contract method 0xf4d6d9f5.
   299  //
   300  // Solidity: function getOrgDetails(string _orgId) constant returns(string, string, string, uint256, uint256)
   301  func (_OrgManager *OrgManagerCaller) GetOrgDetails(opts *bind.CallOpts, _orgId string) (string, string, string, *big.Int, *big.Int, error) {
   302  	var (
   303  		ret0 = new(string)
   304  		ret1 = new(string)
   305  		ret2 = new(string)
   306  		ret3 = new(*big.Int)
   307  		ret4 = new(*big.Int)
   308  	)
   309  	out := &[]interface{}{
   310  		ret0,
   311  		ret1,
   312  		ret2,
   313  		ret3,
   314  		ret4,
   315  	}
   316  	err := _OrgManager.contract.Call(opts, out, "getOrgDetails", _orgId)
   317  	return *ret0, *ret1, *ret2, *ret3, *ret4, err
   318  }
   319  
   320  // GetOrgDetails is a free data retrieval call binding the contract method 0xf4d6d9f5.
   321  //
   322  // Solidity: function getOrgDetails(string _orgId) constant returns(string, string, string, uint256, uint256)
   323  func (_OrgManager *OrgManagerSession) GetOrgDetails(_orgId string) (string, string, string, *big.Int, *big.Int, error) {
   324  	return _OrgManager.Contract.GetOrgDetails(&_OrgManager.CallOpts, _orgId)
   325  }
   326  
   327  // GetOrgDetails is a free data retrieval call binding the contract method 0xf4d6d9f5.
   328  //
   329  // Solidity: function getOrgDetails(string _orgId) constant returns(string, string, string, uint256, uint256)
   330  func (_OrgManager *OrgManagerCallerSession) GetOrgDetails(_orgId string) (string, string, string, *big.Int, *big.Int, error) {
   331  	return _OrgManager.Contract.GetOrgDetails(&_OrgManager.CallOpts, _orgId)
   332  }
   333  
   334  // GetOrgInfo is a free data retrieval call binding the contract method 0x5c4f32ee.
   335  //
   336  // Solidity: function getOrgInfo(uint256 _orgIndex) constant returns(string, string, string, uint256, uint256)
   337  func (_OrgManager *OrgManagerCaller) GetOrgInfo(opts *bind.CallOpts, _orgIndex *big.Int) (string, string, string, *big.Int, *big.Int, error) {
   338  	var (
   339  		ret0 = new(string)
   340  		ret1 = new(string)
   341  		ret2 = new(string)
   342  		ret3 = new(*big.Int)
   343  		ret4 = new(*big.Int)
   344  	)
   345  	out := &[]interface{}{
   346  		ret0,
   347  		ret1,
   348  		ret2,
   349  		ret3,
   350  		ret4,
   351  	}
   352  	err := _OrgManager.contract.Call(opts, out, "getOrgInfo", _orgIndex)
   353  	return *ret0, *ret1, *ret2, *ret3, *ret4, err
   354  }
   355  
   356  // GetOrgInfo is a free data retrieval call binding the contract method 0x5c4f32ee.
   357  //
   358  // Solidity: function getOrgInfo(uint256 _orgIndex) constant returns(string, string, string, uint256, uint256)
   359  func (_OrgManager *OrgManagerSession) GetOrgInfo(_orgIndex *big.Int) (string, string, string, *big.Int, *big.Int, error) {
   360  	return _OrgManager.Contract.GetOrgInfo(&_OrgManager.CallOpts, _orgIndex)
   361  }
   362  
   363  // GetOrgInfo is a free data retrieval call binding the contract method 0x5c4f32ee.
   364  //
   365  // Solidity: function getOrgInfo(uint256 _orgIndex) constant returns(string, string, string, uint256, uint256)
   366  func (_OrgManager *OrgManagerCallerSession) GetOrgInfo(_orgIndex *big.Int) (string, string, string, *big.Int, *big.Int, error) {
   367  	return _OrgManager.Contract.GetOrgInfo(&_OrgManager.CallOpts, _orgIndex)
   368  }
   369  
   370  // GetSubOrgIndexes is a free data retrieval call binding the contract method 0x5e99f6e5.
   371  //
   372  // Solidity: function getSubOrgIndexes(string _orgId) constant returns(uint256[])
   373  func (_OrgManager *OrgManagerCaller) GetSubOrgIndexes(opts *bind.CallOpts, _orgId string) ([]*big.Int, error) {
   374  	var (
   375  		ret0 = new([]*big.Int)
   376  	)
   377  	out := ret0
   378  	err := _OrgManager.contract.Call(opts, out, "getSubOrgIndexes", _orgId)
   379  	return *ret0, err
   380  }
   381  
   382  // GetSubOrgIndexes is a free data retrieval call binding the contract method 0x5e99f6e5.
   383  //
   384  // Solidity: function getSubOrgIndexes(string _orgId) constant returns(uint256[])
   385  func (_OrgManager *OrgManagerSession) GetSubOrgIndexes(_orgId string) ([]*big.Int, error) {
   386  	return _OrgManager.Contract.GetSubOrgIndexes(&_OrgManager.CallOpts, _orgId)
   387  }
   388  
   389  // GetSubOrgIndexes is a free data retrieval call binding the contract method 0x5e99f6e5.
   390  //
   391  // Solidity: function getSubOrgIndexes(string _orgId) constant returns(uint256[])
   392  func (_OrgManager *OrgManagerCallerSession) GetSubOrgIndexes(_orgId string) ([]*big.Int, error) {
   393  	return _OrgManager.Contract.GetSubOrgIndexes(&_OrgManager.CallOpts, _orgId)
   394  }
   395  
   396  // GetUltimateParent is a free data retrieval call binding the contract method 0x177c8d8a.
   397  //
   398  // Solidity: function getUltimateParent(string _orgId) constant returns(string)
   399  func (_OrgManager *OrgManagerCaller) GetUltimateParent(opts *bind.CallOpts, _orgId string) (string, error) {
   400  	var (
   401  		ret0 = new(string)
   402  	)
   403  	out := ret0
   404  	err := _OrgManager.contract.Call(opts, out, "getUltimateParent", _orgId)
   405  	return *ret0, err
   406  }
   407  
   408  // GetUltimateParent is a free data retrieval call binding the contract method 0x177c8d8a.
   409  //
   410  // Solidity: function getUltimateParent(string _orgId) constant returns(string)
   411  func (_OrgManager *OrgManagerSession) GetUltimateParent(_orgId string) (string, error) {
   412  	return _OrgManager.Contract.GetUltimateParent(&_OrgManager.CallOpts, _orgId)
   413  }
   414  
   415  // GetUltimateParent is a free data retrieval call binding the contract method 0x177c8d8a.
   416  //
   417  // Solidity: function getUltimateParent(string _orgId) constant returns(string)
   418  func (_OrgManager *OrgManagerCallerSession) GetUltimateParent(_orgId string) (string, error) {
   419  	return _OrgManager.Contract.GetUltimateParent(&_OrgManager.CallOpts, _orgId)
   420  }
   421  
   422  // AddOrg is a paid mutator transaction binding the contract method 0xf9953de5.
   423  //
   424  // Solidity: function addOrg(string _orgId) returns()
   425  func (_OrgManager *OrgManagerTransactor) AddOrg(opts *bind.TransactOpts, _orgId string) (*types.Transaction, error) {
   426  	return _OrgManager.contract.Transact(opts, "addOrg", _orgId)
   427  }
   428  
   429  // AddOrg is a paid mutator transaction binding the contract method 0xf9953de5.
   430  //
   431  // Solidity: function addOrg(string _orgId) returns()
   432  func (_OrgManager *OrgManagerSession) AddOrg(_orgId string) (*types.Transaction, error) {
   433  	return _OrgManager.Contract.AddOrg(&_OrgManager.TransactOpts, _orgId)
   434  }
   435  
   436  // AddOrg is a paid mutator transaction binding the contract method 0xf9953de5.
   437  //
   438  // Solidity: function addOrg(string _orgId) returns()
   439  func (_OrgManager *OrgManagerTransactorSession) AddOrg(_orgId string) (*types.Transaction, error) {
   440  	return _OrgManager.Contract.AddOrg(&_OrgManager.TransactOpts, _orgId)
   441  }
   442  
   443  // AddSubOrg is a paid mutator transaction binding the contract method 0x1f953480.
   444  //
   445  // Solidity: function addSubOrg(string _pOrgId, string _orgId) returns()
   446  func (_OrgManager *OrgManagerTransactor) AddSubOrg(opts *bind.TransactOpts, _pOrgId string, _orgId string) (*types.Transaction, error) {
   447  	return _OrgManager.contract.Transact(opts, "addSubOrg", _pOrgId, _orgId)
   448  }
   449  
   450  // AddSubOrg is a paid mutator transaction binding the contract method 0x1f953480.
   451  //
   452  // Solidity: function addSubOrg(string _pOrgId, string _orgId) returns()
   453  func (_OrgManager *OrgManagerSession) AddSubOrg(_pOrgId string, _orgId string) (*types.Transaction, error) {
   454  	return _OrgManager.Contract.AddSubOrg(&_OrgManager.TransactOpts, _pOrgId, _orgId)
   455  }
   456  
   457  // AddSubOrg is a paid mutator transaction binding the contract method 0x1f953480.
   458  //
   459  // Solidity: function addSubOrg(string _pOrgId, string _orgId) returns()
   460  func (_OrgManager *OrgManagerTransactorSession) AddSubOrg(_pOrgId string, _orgId string) (*types.Transaction, error) {
   461  	return _OrgManager.Contract.AddSubOrg(&_OrgManager.TransactOpts, _pOrgId, _orgId)
   462  }
   463  
   464  // ApproveOrg is a paid mutator transaction binding the contract method 0xe3028316.
   465  //
   466  // Solidity: function approveOrg(string _orgId) returns()
   467  func (_OrgManager *OrgManagerTransactor) ApproveOrg(opts *bind.TransactOpts, _orgId string) (*types.Transaction, error) {
   468  	return _OrgManager.contract.Transact(opts, "approveOrg", _orgId)
   469  }
   470  
   471  // ApproveOrg is a paid mutator transaction binding the contract method 0xe3028316.
   472  //
   473  // Solidity: function approveOrg(string _orgId) returns()
   474  func (_OrgManager *OrgManagerSession) ApproveOrg(_orgId string) (*types.Transaction, error) {
   475  	return _OrgManager.Contract.ApproveOrg(&_OrgManager.TransactOpts, _orgId)
   476  }
   477  
   478  // ApproveOrg is a paid mutator transaction binding the contract method 0xe3028316.
   479  //
   480  // Solidity: function approveOrg(string _orgId) returns()
   481  func (_OrgManager *OrgManagerTransactorSession) ApproveOrg(_orgId string) (*types.Transaction, error) {
   482  	return _OrgManager.Contract.ApproveOrg(&_OrgManager.TransactOpts, _orgId)
   483  }
   484  
   485  // ApproveOrgStatusUpdate is a paid mutator transaction binding the contract method 0x14f775f9.
   486  //
   487  // Solidity: function approveOrgStatusUpdate(string _orgId, uint256 _action) returns()
   488  func (_OrgManager *OrgManagerTransactor) ApproveOrgStatusUpdate(opts *bind.TransactOpts, _orgId string, _action *big.Int) (*types.Transaction, error) {
   489  	return _OrgManager.contract.Transact(opts, "approveOrgStatusUpdate", _orgId, _action)
   490  }
   491  
   492  // ApproveOrgStatusUpdate is a paid mutator transaction binding the contract method 0x14f775f9.
   493  //
   494  // Solidity: function approveOrgStatusUpdate(string _orgId, uint256 _action) returns()
   495  func (_OrgManager *OrgManagerSession) ApproveOrgStatusUpdate(_orgId string, _action *big.Int) (*types.Transaction, error) {
   496  	return _OrgManager.Contract.ApproveOrgStatusUpdate(&_OrgManager.TransactOpts, _orgId, _action)
   497  }
   498  
   499  // ApproveOrgStatusUpdate is a paid mutator transaction binding the contract method 0x14f775f9.
   500  //
   501  // Solidity: function approveOrgStatusUpdate(string _orgId, uint256 _action) returns()
   502  func (_OrgManager *OrgManagerTransactorSession) ApproveOrgStatusUpdate(_orgId string, _action *big.Int) (*types.Transaction, error) {
   503  	return _OrgManager.Contract.ApproveOrgStatusUpdate(&_OrgManager.TransactOpts, _orgId, _action)
   504  }
   505  
   506  // SetUpOrg is a paid mutator transaction binding the contract method 0x9e58eb9f.
   507  //
   508  // Solidity: function setUpOrg(string _orgId, uint256 _breadth, uint256 _depth) returns()
   509  func (_OrgManager *OrgManagerTransactor) SetUpOrg(opts *bind.TransactOpts, _orgId string, _breadth *big.Int, _depth *big.Int) (*types.Transaction, error) {
   510  	return _OrgManager.contract.Transact(opts, "setUpOrg", _orgId, _breadth, _depth)
   511  }
   512  
   513  // SetUpOrg is a paid mutator transaction binding the contract method 0x9e58eb9f.
   514  //
   515  // Solidity: function setUpOrg(string _orgId, uint256 _breadth, uint256 _depth) returns()
   516  func (_OrgManager *OrgManagerSession) SetUpOrg(_orgId string, _breadth *big.Int, _depth *big.Int) (*types.Transaction, error) {
   517  	return _OrgManager.Contract.SetUpOrg(&_OrgManager.TransactOpts, _orgId, _breadth, _depth)
   518  }
   519  
   520  // SetUpOrg is a paid mutator transaction binding the contract method 0x9e58eb9f.
   521  //
   522  // Solidity: function setUpOrg(string _orgId, uint256 _breadth, uint256 _depth) returns()
   523  func (_OrgManager *OrgManagerTransactorSession) SetUpOrg(_orgId string, _breadth *big.Int, _depth *big.Int) (*types.Transaction, error) {
   524  	return _OrgManager.Contract.SetUpOrg(&_OrgManager.TransactOpts, _orgId, _breadth, _depth)
   525  }
   526  
   527  // UpdateOrg is a paid mutator transaction binding the contract method 0x0cc27493.
   528  //
   529  // Solidity: function updateOrg(string _orgId, uint256 _action) returns(uint256)
   530  func (_OrgManager *OrgManagerTransactor) UpdateOrg(opts *bind.TransactOpts, _orgId string, _action *big.Int) (*types.Transaction, error) {
   531  	return _OrgManager.contract.Transact(opts, "updateOrg", _orgId, _action)
   532  }
   533  
   534  // UpdateOrg is a paid mutator transaction binding the contract method 0x0cc27493.
   535  //
   536  // Solidity: function updateOrg(string _orgId, uint256 _action) returns(uint256)
   537  func (_OrgManager *OrgManagerSession) UpdateOrg(_orgId string, _action *big.Int) (*types.Transaction, error) {
   538  	return _OrgManager.Contract.UpdateOrg(&_OrgManager.TransactOpts, _orgId, _action)
   539  }
   540  
   541  // UpdateOrg is a paid mutator transaction binding the contract method 0x0cc27493.
   542  //
   543  // Solidity: function updateOrg(string _orgId, uint256 _action) returns(uint256)
   544  func (_OrgManager *OrgManagerTransactorSession) UpdateOrg(_orgId string, _action *big.Int) (*types.Transaction, error) {
   545  	return _OrgManager.Contract.UpdateOrg(&_OrgManager.TransactOpts, _orgId, _action)
   546  }
   547  
   548  // OrgManagerOrgApprovedIterator is returned from FilterOrgApproved and is used to iterate over the raw logs and unpacked data for OrgApproved events raised by the OrgManager contract.
   549  type OrgManagerOrgApprovedIterator struct {
   550  	Event *OrgManagerOrgApproved // Event containing the contract specifics and raw log
   551  
   552  	contract *bind.BoundContract // Generic contract to use for unpacking event data
   553  	event    string              // Event name to use for unpacking event data
   554  
   555  	logs chan types.Log        // Log channel receiving the found contract events
   556  	sub  ethereum.Subscription // Subscription for errors, completion and termination
   557  	done bool                  // Whether the subscription completed delivering logs
   558  	fail error                 // Occurred error to stop iteration
   559  }
   560  
   561  // Next advances the iterator to the subsequent event, returning whether there
   562  // are any more events found. In case of a retrieval or parsing error, false is
   563  // returned and Error() can be queried for the exact failure.
   564  func (it *OrgManagerOrgApprovedIterator) Next() bool {
   565  	// If the iterator failed, stop iterating
   566  	if it.fail != nil {
   567  		return false
   568  	}
   569  	// If the iterator completed, deliver directly whatever's available
   570  	if it.done {
   571  		select {
   572  		case log := <-it.logs:
   573  			it.Event = new(OrgManagerOrgApproved)
   574  			if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
   575  				it.fail = err
   576  				return false
   577  			}
   578  			it.Event.Raw = log
   579  			return true
   580  
   581  		default:
   582  			return false
   583  		}
   584  	}
   585  	// Iterator still in progress, wait for either a data or an error event
   586  	select {
   587  	case log := <-it.logs:
   588  		it.Event = new(OrgManagerOrgApproved)
   589  		if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
   590  			it.fail = err
   591  			return false
   592  		}
   593  		it.Event.Raw = log
   594  		return true
   595  
   596  	case err := <-it.sub.Err():
   597  		it.done = true
   598  		it.fail = err
   599  		return it.Next()
   600  	}
   601  }
   602  
   603  // Error returns any retrieval or parsing error occurred during filtering.
   604  func (it *OrgManagerOrgApprovedIterator) Error() error {
   605  	return it.fail
   606  }
   607  
   608  // Close terminates the iteration process, releasing any pending underlying
   609  // resources.
   610  func (it *OrgManagerOrgApprovedIterator) Close() error {
   611  	it.sub.Unsubscribe()
   612  	return nil
   613  }
   614  
   615  // OrgManagerOrgApproved represents a OrgApproved event raised by the OrgManager contract.
   616  type OrgManagerOrgApproved struct {
   617  	OrgId     string
   618  	PorgId    string
   619  	UltParent string
   620  	Level     *big.Int
   621  	Status    *big.Int
   622  	Raw       types.Log // Blockchain specific contextual infos
   623  }
   624  
   625  // FilterOrgApproved is a free log retrieval operation binding the contract event 0xd705723a50859c9cc1d3953e10b8b9478820e7a62927ad3215897ed87b20591c.
   626  //
   627  // Solidity: event OrgApproved(string _orgId, string _porgId, string _ultParent, uint256 _level, uint256 _status)
   628  func (_OrgManager *OrgManagerFilterer) FilterOrgApproved(opts *bind.FilterOpts) (*OrgManagerOrgApprovedIterator, error) {
   629  
   630  	logs, sub, err := _OrgManager.contract.FilterLogs(opts, "OrgApproved")
   631  	if err != nil {
   632  		return nil, err
   633  	}
   634  	return &OrgManagerOrgApprovedIterator{contract: _OrgManager.contract, event: "OrgApproved", logs: logs, sub: sub}, nil
   635  }
   636  
   637  var OrgApprovedTopicHash = "0xd705723a50859c9cc1d3953e10b8b9478820e7a62927ad3215897ed87b20591c"
   638  
   639  // WatchOrgApproved is a free log subscription operation binding the contract event 0xd705723a50859c9cc1d3953e10b8b9478820e7a62927ad3215897ed87b20591c.
   640  //
   641  // Solidity: event OrgApproved(string _orgId, string _porgId, string _ultParent, uint256 _level, uint256 _status)
   642  func (_OrgManager *OrgManagerFilterer) WatchOrgApproved(opts *bind.WatchOpts, sink chan<- *OrgManagerOrgApproved) (event.Subscription, error) {
   643  
   644  	logs, sub, err := _OrgManager.contract.WatchLogs(opts, "OrgApproved")
   645  	if err != nil {
   646  		return nil, err
   647  	}
   648  	return event.NewSubscription(func(quit <-chan struct{}) error {
   649  		defer sub.Unsubscribe()
   650  		for {
   651  			select {
   652  			case log := <-logs:
   653  				// New log arrived, parse the event and forward to the user
   654  				event := new(OrgManagerOrgApproved)
   655  				if err := _OrgManager.contract.UnpackLog(event, "OrgApproved", log); err != nil {
   656  					return err
   657  				}
   658  				event.Raw = log
   659  
   660  				select {
   661  				case sink <- event:
   662  				case err := <-sub.Err():
   663  					return err
   664  				case <-quit:
   665  					return nil
   666  				}
   667  			case err := <-sub.Err():
   668  				return err
   669  			case <-quit:
   670  				return nil
   671  			}
   672  		}
   673  	}), nil
   674  }
   675  
   676  // ParseOrgApproved is a log parse operation binding the contract event 0xd705723a50859c9cc1d3953e10b8b9478820e7a62927ad3215897ed87b20591c.
   677  //
   678  // Solidity: event OrgApproved(string _orgId, string _porgId, string _ultParent, uint256 _level, uint256 _status)
   679  func (_OrgManager *OrgManagerFilterer) ParseOrgApproved(log types.Log) (*OrgManagerOrgApproved, error) {
   680  	event := new(OrgManagerOrgApproved)
   681  	if err := _OrgManager.contract.UnpackLog(event, "OrgApproved", log); err != nil {
   682  		return nil, err
   683  	}
   684  	return event, nil
   685  }
   686  
   687  // OrgManagerOrgPendingApprovalIterator is returned from FilterOrgPendingApproval and is used to iterate over the raw logs and unpacked data for OrgPendingApproval events raised by the OrgManager contract.
   688  type OrgManagerOrgPendingApprovalIterator struct {
   689  	Event *OrgManagerOrgPendingApproval // Event containing the contract specifics and raw log
   690  
   691  	contract *bind.BoundContract // Generic contract to use for unpacking event data
   692  	event    string              // Event name to use for unpacking event data
   693  
   694  	logs chan types.Log        // Log channel receiving the found contract events
   695  	sub  ethereum.Subscription // Subscription for errors, completion and termination
   696  	done bool                  // Whether the subscription completed delivering logs
   697  	fail error                 // Occurred error to stop iteration
   698  }
   699  
   700  // Next advances the iterator to the subsequent event, returning whether there
   701  // are any more events found. In case of a retrieval or parsing error, false is
   702  // returned and Error() can be queried for the exact failure.
   703  func (it *OrgManagerOrgPendingApprovalIterator) Next() bool {
   704  	// If the iterator failed, stop iterating
   705  	if it.fail != nil {
   706  		return false
   707  	}
   708  	// If the iterator completed, deliver directly whatever's available
   709  	if it.done {
   710  		select {
   711  		case log := <-it.logs:
   712  			it.Event = new(OrgManagerOrgPendingApproval)
   713  			if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
   714  				it.fail = err
   715  				return false
   716  			}
   717  			it.Event.Raw = log
   718  			return true
   719  
   720  		default:
   721  			return false
   722  		}
   723  	}
   724  	// Iterator still in progress, wait for either a data or an error event
   725  	select {
   726  	case log := <-it.logs:
   727  		it.Event = new(OrgManagerOrgPendingApproval)
   728  		if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
   729  			it.fail = err
   730  			return false
   731  		}
   732  		it.Event.Raw = log
   733  		return true
   734  
   735  	case err := <-it.sub.Err():
   736  		it.done = true
   737  		it.fail = err
   738  		return it.Next()
   739  	}
   740  }
   741  
   742  // Error returns any retrieval or parsing error occurred during filtering.
   743  func (it *OrgManagerOrgPendingApprovalIterator) Error() error {
   744  	return it.fail
   745  }
   746  
   747  // Close terminates the iteration process, releasing any pending underlying
   748  // resources.
   749  func (it *OrgManagerOrgPendingApprovalIterator) Close() error {
   750  	it.sub.Unsubscribe()
   751  	return nil
   752  }
   753  
   754  // OrgManagerOrgPendingApproval represents a OrgPendingApproval event raised by the OrgManager contract.
   755  type OrgManagerOrgPendingApproval struct {
   756  	OrgId     string
   757  	PorgId    string
   758  	UltParent string
   759  	Level     *big.Int
   760  	Status    *big.Int
   761  	Raw       types.Log // Blockchain specific contextual infos
   762  }
   763  
   764  // FilterOrgPendingApproval is a free log retrieval operation binding the contract event 0x0e8b7be64e0c730234ba2cd252b227fb481d7a247ba806d1941144c535bf054b.
   765  //
   766  // Solidity: event OrgPendingApproval(string _orgId, string _porgId, string _ultParent, uint256 _level, uint256 _status)
   767  func (_OrgManager *OrgManagerFilterer) FilterOrgPendingApproval(opts *bind.FilterOpts) (*OrgManagerOrgPendingApprovalIterator, error) {
   768  
   769  	logs, sub, err := _OrgManager.contract.FilterLogs(opts, "OrgPendingApproval")
   770  	if err != nil {
   771  		return nil, err
   772  	}
   773  	return &OrgManagerOrgPendingApprovalIterator{contract: _OrgManager.contract, event: "OrgPendingApproval", logs: logs, sub: sub}, nil
   774  }
   775  
   776  var OrgPendingApprovalTopicHash = "0x0e8b7be64e0c730234ba2cd252b227fb481d7a247ba806d1941144c535bf054b"
   777  
   778  // WatchOrgPendingApproval is a free log subscription operation binding the contract event 0x0e8b7be64e0c730234ba2cd252b227fb481d7a247ba806d1941144c535bf054b.
   779  //
   780  // Solidity: event OrgPendingApproval(string _orgId, string _porgId, string _ultParent, uint256 _level, uint256 _status)
   781  func (_OrgManager *OrgManagerFilterer) WatchOrgPendingApproval(opts *bind.WatchOpts, sink chan<- *OrgManagerOrgPendingApproval) (event.Subscription, error) {
   782  
   783  	logs, sub, err := _OrgManager.contract.WatchLogs(opts, "OrgPendingApproval")
   784  	if err != nil {
   785  		return nil, err
   786  	}
   787  	return event.NewSubscription(func(quit <-chan struct{}) error {
   788  		defer sub.Unsubscribe()
   789  		for {
   790  			select {
   791  			case log := <-logs:
   792  				// New log arrived, parse the event and forward to the user
   793  				event := new(OrgManagerOrgPendingApproval)
   794  				if err := _OrgManager.contract.UnpackLog(event, "OrgPendingApproval", log); err != nil {
   795  					return err
   796  				}
   797  				event.Raw = log
   798  
   799  				select {
   800  				case sink <- event:
   801  				case err := <-sub.Err():
   802  					return err
   803  				case <-quit:
   804  					return nil
   805  				}
   806  			case err := <-sub.Err():
   807  				return err
   808  			case <-quit:
   809  				return nil
   810  			}
   811  		}
   812  	}), nil
   813  }
   814  
   815  // ParseOrgPendingApproval is a log parse operation binding the contract event 0x0e8b7be64e0c730234ba2cd252b227fb481d7a247ba806d1941144c535bf054b.
   816  //
   817  // Solidity: event OrgPendingApproval(string _orgId, string _porgId, string _ultParent, uint256 _level, uint256 _status)
   818  func (_OrgManager *OrgManagerFilterer) ParseOrgPendingApproval(log types.Log) (*OrgManagerOrgPendingApproval, error) {
   819  	event := new(OrgManagerOrgPendingApproval)
   820  	if err := _OrgManager.contract.UnpackLog(event, "OrgPendingApproval", log); err != nil {
   821  		return nil, err
   822  	}
   823  	return event, nil
   824  }
   825  
   826  // OrgManagerOrgSuspendedIterator is returned from FilterOrgSuspended and is used to iterate over the raw logs and unpacked data for OrgSuspended events raised by the OrgManager contract.
   827  type OrgManagerOrgSuspendedIterator struct {
   828  	Event *OrgManagerOrgSuspended // Event containing the contract specifics and raw log
   829  
   830  	contract *bind.BoundContract // Generic contract to use for unpacking event data
   831  	event    string              // Event name to use for unpacking event data
   832  
   833  	logs chan types.Log        // Log channel receiving the found contract events
   834  	sub  ethereum.Subscription // Subscription for errors, completion and termination
   835  	done bool                  // Whether the subscription completed delivering logs
   836  	fail error                 // Occurred error to stop iteration
   837  }
   838  
   839  // Next advances the iterator to the subsequent event, returning whether there
   840  // are any more events found. In case of a retrieval or parsing error, false is
   841  // returned and Error() can be queried for the exact failure.
   842  func (it *OrgManagerOrgSuspendedIterator) Next() bool {
   843  	// If the iterator failed, stop iterating
   844  	if it.fail != nil {
   845  		return false
   846  	}
   847  	// If the iterator completed, deliver directly whatever's available
   848  	if it.done {
   849  		select {
   850  		case log := <-it.logs:
   851  			it.Event = new(OrgManagerOrgSuspended)
   852  			if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
   853  				it.fail = err
   854  				return false
   855  			}
   856  			it.Event.Raw = log
   857  			return true
   858  
   859  		default:
   860  			return false
   861  		}
   862  	}
   863  	// Iterator still in progress, wait for either a data or an error event
   864  	select {
   865  	case log := <-it.logs:
   866  		it.Event = new(OrgManagerOrgSuspended)
   867  		if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
   868  			it.fail = err
   869  			return false
   870  		}
   871  		it.Event.Raw = log
   872  		return true
   873  
   874  	case err := <-it.sub.Err():
   875  		it.done = true
   876  		it.fail = err
   877  		return it.Next()
   878  	}
   879  }
   880  
   881  // Error returns any retrieval or parsing error occurred during filtering.
   882  func (it *OrgManagerOrgSuspendedIterator) Error() error {
   883  	return it.fail
   884  }
   885  
   886  // Close terminates the iteration process, releasing any pending underlying
   887  // resources.
   888  func (it *OrgManagerOrgSuspendedIterator) Close() error {
   889  	it.sub.Unsubscribe()
   890  	return nil
   891  }
   892  
   893  // OrgManagerOrgSuspended represents a OrgSuspended event raised by the OrgManager contract.
   894  type OrgManagerOrgSuspended struct {
   895  	OrgId     string
   896  	PorgId    string
   897  	UltParent string
   898  	Level     *big.Int
   899  	Raw       types.Log // Blockchain specific contextual infos
   900  }
   901  
   902  // FilterOrgSuspended is a free log retrieval operation binding the contract event 0x73ccf8d6c8385bf5347269bd59712da33183c1a5e1702494bcdb87d0f4674d96.
   903  //
   904  // Solidity: event OrgSuspended(string _orgId, string _porgId, string _ultParent, uint256 _level)
   905  func (_OrgManager *OrgManagerFilterer) FilterOrgSuspended(opts *bind.FilterOpts) (*OrgManagerOrgSuspendedIterator, error) {
   906  
   907  	logs, sub, err := _OrgManager.contract.FilterLogs(opts, "OrgSuspended")
   908  	if err != nil {
   909  		return nil, err
   910  	}
   911  	return &OrgManagerOrgSuspendedIterator{contract: _OrgManager.contract, event: "OrgSuspended", logs: logs, sub: sub}, nil
   912  }
   913  
   914  var OrgSuspendedTopicHash = "0x73ccf8d6c8385bf5347269bd59712da33183c1a5e1702494bcdb87d0f4674d96"
   915  
   916  // WatchOrgSuspended is a free log subscription operation binding the contract event 0x73ccf8d6c8385bf5347269bd59712da33183c1a5e1702494bcdb87d0f4674d96.
   917  //
   918  // Solidity: event OrgSuspended(string _orgId, string _porgId, string _ultParent, uint256 _level)
   919  func (_OrgManager *OrgManagerFilterer) WatchOrgSuspended(opts *bind.WatchOpts, sink chan<- *OrgManagerOrgSuspended) (event.Subscription, error) {
   920  
   921  	logs, sub, err := _OrgManager.contract.WatchLogs(opts, "OrgSuspended")
   922  	if err != nil {
   923  		return nil, err
   924  	}
   925  	return event.NewSubscription(func(quit <-chan struct{}) error {
   926  		defer sub.Unsubscribe()
   927  		for {
   928  			select {
   929  			case log := <-logs:
   930  				// New log arrived, parse the event and forward to the user
   931  				event := new(OrgManagerOrgSuspended)
   932  				if err := _OrgManager.contract.UnpackLog(event, "OrgSuspended", log); err != nil {
   933  					return err
   934  				}
   935  				event.Raw = log
   936  
   937  				select {
   938  				case sink <- event:
   939  				case err := <-sub.Err():
   940  					return err
   941  				case <-quit:
   942  					return nil
   943  				}
   944  			case err := <-sub.Err():
   945  				return err
   946  			case <-quit:
   947  				return nil
   948  			}
   949  		}
   950  	}), nil
   951  }
   952  
   953  // ParseOrgSuspended is a log parse operation binding the contract event 0x73ccf8d6c8385bf5347269bd59712da33183c1a5e1702494bcdb87d0f4674d96.
   954  //
   955  // Solidity: event OrgSuspended(string _orgId, string _porgId, string _ultParent, uint256 _level)
   956  func (_OrgManager *OrgManagerFilterer) ParseOrgSuspended(log types.Log) (*OrgManagerOrgSuspended, error) {
   957  	event := new(OrgManagerOrgSuspended)
   958  	if err := _OrgManager.contract.UnpackLog(event, "OrgSuspended", log); err != nil {
   959  		return nil, err
   960  	}
   961  	return event, nil
   962  }
   963  
   964  // OrgManagerOrgSuspensionRevokedIterator is returned from FilterOrgSuspensionRevoked and is used to iterate over the raw logs and unpacked data for OrgSuspensionRevoked events raised by the OrgManager contract.
   965  type OrgManagerOrgSuspensionRevokedIterator struct {
   966  	Event *OrgManagerOrgSuspensionRevoked // Event containing the contract specifics and raw log
   967  
   968  	contract *bind.BoundContract // Generic contract to use for unpacking event data
   969  	event    string              // Event name to use for unpacking event data
   970  
   971  	logs chan types.Log        // Log channel receiving the found contract events
   972  	sub  ethereum.Subscription // Subscription for errors, completion and termination
   973  	done bool                  // Whether the subscription completed delivering logs
   974  	fail error                 // Occurred error to stop iteration
   975  }
   976  
   977  // Next advances the iterator to the subsequent event, returning whether there
   978  // are any more events found. In case of a retrieval or parsing error, false is
   979  // returned and Error() can be queried for the exact failure.
   980  func (it *OrgManagerOrgSuspensionRevokedIterator) Next() bool {
   981  	// If the iterator failed, stop iterating
   982  	if it.fail != nil {
   983  		return false
   984  	}
   985  	// If the iterator completed, deliver directly whatever's available
   986  	if it.done {
   987  		select {
   988  		case log := <-it.logs:
   989  			it.Event = new(OrgManagerOrgSuspensionRevoked)
   990  			if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
   991  				it.fail = err
   992  				return false
   993  			}
   994  			it.Event.Raw = log
   995  			return true
   996  
   997  		default:
   998  			return false
   999  		}
  1000  	}
  1001  	// Iterator still in progress, wait for either a data or an error event
  1002  	select {
  1003  	case log := <-it.logs:
  1004  		it.Event = new(OrgManagerOrgSuspensionRevoked)
  1005  		if err := it.contract.UnpackLog(it.Event, it.event, log); err != nil {
  1006  			it.fail = err
  1007  			return false
  1008  		}
  1009  		it.Event.Raw = log
  1010  		return true
  1011  
  1012  	case err := <-it.sub.Err():
  1013  		it.done = true
  1014  		it.fail = err
  1015  		return it.Next()
  1016  	}
  1017  }
  1018  
  1019  // Error returns any retrieval or parsing error occurred during filtering.
  1020  func (it *OrgManagerOrgSuspensionRevokedIterator) Error() error {
  1021  	return it.fail
  1022  }
  1023  
  1024  // Close terminates the iteration process, releasing any pending underlying
  1025  // resources.
  1026  func (it *OrgManagerOrgSuspensionRevokedIterator) Close() error {
  1027  	it.sub.Unsubscribe()
  1028  	return nil
  1029  }
  1030  
  1031  // OrgManagerOrgSuspensionRevoked represents a OrgSuspensionRevoked event raised by the OrgManager contract.
  1032  type OrgManagerOrgSuspensionRevoked struct {
  1033  	OrgId     string
  1034  	PorgId    string
  1035  	UltParent string
  1036  	Level     *big.Int
  1037  	Raw       types.Log // Blockchain specific contextual infos
  1038  }
  1039  
  1040  // FilterOrgSuspensionRevoked is a free log retrieval operation binding the contract event 0x882f030c609566cd82918a97d457fd48f9cfcefd11282e2654cde3f94579c15f.
  1041  //
  1042  // Solidity: event OrgSuspensionRevoked(string _orgId, string _porgId, string _ultParent, uint256 _level)
  1043  func (_OrgManager *OrgManagerFilterer) FilterOrgSuspensionRevoked(opts *bind.FilterOpts) (*OrgManagerOrgSuspensionRevokedIterator, error) {
  1044  
  1045  	logs, sub, err := _OrgManager.contract.FilterLogs(opts, "OrgSuspensionRevoked")
  1046  	if err != nil {
  1047  		return nil, err
  1048  	}
  1049  	return &OrgManagerOrgSuspensionRevokedIterator{contract: _OrgManager.contract, event: "OrgSuspensionRevoked", logs: logs, sub: sub}, nil
  1050  }
  1051  
  1052  var OrgSuspensionRevokedTopicHash = "0x882f030c609566cd82918a97d457fd48f9cfcefd11282e2654cde3f94579c15f"
  1053  
  1054  // WatchOrgSuspensionRevoked is a free log subscription operation binding the contract event 0x882f030c609566cd82918a97d457fd48f9cfcefd11282e2654cde3f94579c15f.
  1055  //
  1056  // Solidity: event OrgSuspensionRevoked(string _orgId, string _porgId, string _ultParent, uint256 _level)
  1057  func (_OrgManager *OrgManagerFilterer) WatchOrgSuspensionRevoked(opts *bind.WatchOpts, sink chan<- *OrgManagerOrgSuspensionRevoked) (event.Subscription, error) {
  1058  
  1059  	logs, sub, err := _OrgManager.contract.WatchLogs(opts, "OrgSuspensionRevoked")
  1060  	if err != nil {
  1061  		return nil, err
  1062  	}
  1063  	return event.NewSubscription(func(quit <-chan struct{}) error {
  1064  		defer sub.Unsubscribe()
  1065  		for {
  1066  			select {
  1067  			case log := <-logs:
  1068  				// New log arrived, parse the event and forward to the user
  1069  				event := new(OrgManagerOrgSuspensionRevoked)
  1070  				if err := _OrgManager.contract.UnpackLog(event, "OrgSuspensionRevoked", log); err != nil {
  1071  					return err
  1072  				}
  1073  				event.Raw = log
  1074  
  1075  				select {
  1076  				case sink <- event:
  1077  				case err := <-sub.Err():
  1078  					return err
  1079  				case <-quit:
  1080  					return nil
  1081  				}
  1082  			case err := <-sub.Err():
  1083  				return err
  1084  			case <-quit:
  1085  				return nil
  1086  			}
  1087  		}
  1088  	}), nil
  1089  }
  1090  
  1091  // ParseOrgSuspensionRevoked is a log parse operation binding the contract event 0x882f030c609566cd82918a97d457fd48f9cfcefd11282e2654cde3f94579c15f.
  1092  //
  1093  // Solidity: event OrgSuspensionRevoked(string _orgId, string _porgId, string _ultParent, uint256 _level)
  1094  func (_OrgManager *OrgManagerFilterer) ParseOrgSuspensionRevoked(log types.Log) (*OrgManagerOrgSuspensionRevoked, error) {
  1095  	event := new(OrgManagerOrgSuspensionRevoked)
  1096  	if err := _OrgManager.contract.UnpackLog(event, "OrgSuspensionRevoked", log); err != nil {
  1097  		return nil, err
  1098  	}
  1099  	return event, nil
  1100  }