āĻŦā§āĻ˛āĻāĻā§āĻāĻ¨ā§āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻāĻŋ āĻāĻāĻ¨āĻ āĻā§āĻŦāĻ˛ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ§āĻ°āĻŖā§āĻ° āĻĒā§āĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻ¤ā§āĻ¸ āĻ¨āĻ¯āĻŧ, āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻ¤ āĻĻā§āĻˇā§āĻāĻŋāĻā§āĻŖ āĻĨā§āĻā§ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻŽā§āĻ˛ā§āĻ¯āĻŦāĻžāĻ¨ āĻ§āĻžāĻ°āĻŖāĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻ¤ā§āĻ¸ āĻšāĻ¤ā§ āĻā§āĻˇāĻžāĻ¨ā§āĻ¤ āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻ āĻ¤āĻāĻŦ, āĻāĻāĻŋ āĻ°ā§āĻĻā§āĻ°ā§āĻā§āĻā§āĻŦāĻ˛ āĻļāĻšāĻ°ā§āĻ° āĻŦāĻžāĻ¸āĻŋāĻ¨ā§āĻĻāĻžāĻĻā§āĻ° āĻŦāĻžāĻāĻĒāĻžāĻ¸ āĻāĻ°ā§āĻ¨āĻŋāĨ¤ āĻ˛ā§āĻā§āĻ°āĻž āĻāĻ¨āĻŋāĻˇā§āĻ āĻāĻžāĻŦā§ āĻĻā§āĻāĻā§, āĻ āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨ āĻāĻ°āĻā§, āĻĒā§āĻ°āĻĨāĻžāĻāĻ¤ āĻ¤āĻĨā§āĻ¯ āĻ¸ā§āĻ°āĻā§āĻˇāĻžāĻ¯āĻŧ āĻ¤āĻžāĻĻā§āĻ° āĻĻāĻā§āĻˇāĻ¤āĻž āĻŦā§āĻ˛āĻāĻā§āĻāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻā§āĨ¤ āĻāĻāĻ¨ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤, āĻāĻāĻŋ āĻ¸ā§āĻĒāĻ āĻ āĻ¨: Rostelecom-Solar-āĻāĻ° āĻāĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻāĻā§āĻāĻ¨-āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĻ āĻ¸āĻĢā§āĻāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ°ā§āĻ° āĻ¨āĻŋāĻ°āĻžāĻĒāĻ¤ā§āĻ¤āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻŦāĻ āĻĒāĻĨ āĻ§āĻ°ā§, āĻŦā§āĻ˛āĻāĻā§āĻāĻ¨ āĻ¸āĻŽā§āĻĒā§āĻ°āĻĻāĻžāĻ¯āĻŧā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻā§āĻ¤ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻā§āĻ˛āĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻāĻŋāĻā§ āĻāĻŋāĻ¨ā§āĻ¤āĻžāĻāĻžāĻŦāĻ¨āĻž āĻĻā§āĻāĻž āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻ āĻ˛āĻžāĻāĻĢ āĻšā§āĻ¯āĻžāĻāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ - CREATE2 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§āĻ° āĻāĻā§ āĻā§āĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋāĻ° āĻ āĻŋāĻāĻžāĻ¨āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ - āĻāĻ āĻāĻŽāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻāĻžāĻ° āĻ¨ā§āĻā§ āĻļā§āĻ¯āĻŧāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĨ¤
CREATE2 āĻ
āĻĒāĻā§āĻĄāĻāĻŋ āĻāĻ āĻŦāĻāĻ°ā§āĻ° 28āĻļā§ āĻĢā§āĻŦā§āĻ°ā§āĻ¯āĻŧāĻžāĻ°āĻŋ āĻāĻ¨āĻ¸ā§āĻāĻžāĻ¨ā§āĻāĻŋāĻ¨ā§āĻĒāĻ˛ āĻšāĻžāĻ°ā§āĻĄ āĻĢāĻ°ā§āĻā§ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ EIP-āĻ¤ā§ āĻ¯ā§āĻŽāĻ¨ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻ āĻ
āĻĒāĻā§āĻĄāĻāĻŋ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻāĻāĻžāĻŦā§ āĻ°āĻžāĻˇā§āĻā§āĻ°ā§āĻ¯āĻŧ āĻā§āĻ¯āĻžāĻ¨ā§āĻ˛āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻāĻŋāĻ¨ā§āĻ¨ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻāĻŋāĨ¤
āĻāĻā§āĻ¸āĻā§āĻā§āĻā§ āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸ āĻ¸āĻš āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻ āĻŦāĻļā§āĻ¯āĻ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻā§ āĻāĻāĻāĻŋ Ethereum āĻ āĻŋāĻāĻžāĻ¨āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¯āĻžāĻ¤ā§ āĻ¯ā§ āĻā§āĻ āĻā§āĻā§āĻ¨ āĻĒāĻžāĻ āĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯āĻžāĻ° āĻĢāĻ˛ā§ āĻ¤āĻžāĻĻā§āĻ° āĻ ā§āĻ¯āĻžāĻāĻžāĻāĻ¨ā§āĻ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻĒā§āĻ°āĻŖ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻāĻ¸ā§āĻ¨ āĻāĻ āĻ āĻŋāĻāĻžāĻ¨āĻžāĻā§āĻ˛āĻŋāĻā§ "āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ" āĻŦāĻ˛āĻŋāĨ¤ āĻ¯āĻāĻ¨ āĻā§āĻā§āĻ¨āĻā§āĻ˛āĻŋ āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻā§ āĻāĻ¸ā§, āĻ¤āĻāĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° āĻ āĻŦāĻļā§āĻ¯āĻ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻāĻāĻāĻŋ āĻāĻāĻ āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻā§ (āĻšāĻāĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ) āĻĒāĻžāĻ āĻžāĻ¤ā§ āĻšāĻŦā§āĨ¤
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻŦāĻŋāĻāĻžāĻāĻā§āĻ˛āĻŋāĻ¤ā§, āĻāĻŽāĻŋ CREATE2 āĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§āĻ° āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻā§āĻ˛āĻŋ āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻŖ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻŦāĻ˛āĻŋ āĻā§āĻ¨ āĻāĻŽāĻ°āĻž āĻ¸ā§āĻā§āĻ˛āĻŋ āĻĒāĻ°āĻŋāĻ¤ā§āĻ¯āĻžāĻ āĻāĻ°ā§āĻāĻŋā§ˇ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻā§āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻĢāĻ˛āĻžāĻĢāĻ˛ā§ āĻāĻā§āĻ°āĻšā§ āĻšāĻ¨ āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ "āĻā§āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨" āĻŦāĻŋāĻāĻžāĻā§ āĻā§āĻāĻā§ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
Ethereum āĻ āĻŋāĻāĻžāĻ¨āĻž
āĻ¸āĻšāĻ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻšāĻ˛ āĻ¨āĻ¤ā§āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¨āĻ¤ā§āĻ¨ Ethereum āĻ āĻŋāĻāĻžāĻ¨āĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĨ¤ āĻāĻ āĻ āĻŋāĻāĻžāĻ¨āĻž āĻŽāĻžāĻ¨āĻŋāĻŦā§āĻ¯āĻžāĻ āĻšāĻŦā§. āĻāĻāĻāĻŋ āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻĨā§āĻā§ āĻšāĻāĻāĻ¯āĻŧāĻžāĻ˛ā§āĻā§ āĻā§āĻā§āĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻ¤ā§, āĻāĻĒāĻ¨āĻžāĻā§ āĻĢāĻžāĻāĻļāĻ¨ā§ āĻāĻ˛ āĻāĻ°ā§ āĻ˛ā§āĻ¨āĻĻā§āĻ¨ā§ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°() āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄ āĻĨā§āĻā§ āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻā§āĻ° āĻĒā§āĻ°āĻžāĻāĻā§āĻ āĻā§ āĻĻāĻŋāĻ¯āĻŧā§āĨ¤
āĻāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻ°āĻ¯āĻŧā§āĻā§:
- āĻāĻšāĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ
- āĻāĻāĻāĻŋ āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻĨā§āĻā§ āĻšāĻāĻāĻ¯āĻŧāĻžāĻ˛ā§āĻā§ āĻā§āĻā§āĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻžāĻ° āĻāĻ°āĻ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ āĻāĻ˛ā§āĻ° āĻāĻ°āĻā§āĻ° āĻ¸āĻŽāĻžāĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°()
āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻŽāĻ°āĻž āĻāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻŦāĻŋāĻ°ā§āĻĻā§āĻ§ā§ āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ āĻāĻžāĻ°āĻŖ āĻāĻ° āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ°āĻ¯āĻŧā§āĻā§: āĻāĻĒāĻ¨āĻžāĻā§ āĻā§āĻĨāĻžāĻ āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻ¤ āĻā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¸ā§āĻā§āĻ˛āĻŋ āĻšāĻžāĻ°āĻŋāĻ¯āĻŧā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž, āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻ āĻā§āĻā§āĻ˛āĻŋāĻ° āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻ¸āĻžāĻŦāĻ§āĻžāĻ¨ā§ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ āĻ¨ā§āĻ¤āĻ¤ āĻāĻāĻāĻŋ āĻāĻĒāĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻā§āĻā§āĻ¨ āĻāĻ°āĻŽ āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻā§ āĻĒā§āĻāĻāĻžāĻŦā§ āĻ¨āĻžāĨ¤
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻŽāĻžāĻ¨āĻŋāĻŦā§āĻ¯āĻžāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻ¤ āĻā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻž āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻšāĻāĻāĻ¯āĻŧāĻžāĻ˛ā§āĻā§ āĻā§āĻā§āĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻā§āĻ¸āĻā§āĻā§āĻ āĻāĻ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋāĻā§ āĻāĻ˛ āĻāĻ°āĻŦā§āĨ¤
āĻāĻŽāĻ°āĻž āĻāĻ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨āĻāĻŋāĻ āĻĒāĻ°āĻŋāĻ¤ā§āĻ¯āĻžāĻ āĻāĻ°ā§āĻāĻŋ, āĻ¯ā§āĻšā§āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ¨āĻž āĻāĻ°ā§ āĻ¤āĻžāĻ° āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻā§āĻ° āĻ āĻŋāĻāĻžāĻ¨āĻž āĻĻā§āĻāĻžāĻ¨ā§ āĻ¯āĻžāĻŦā§ āĻ¨āĻž (āĻāĻāĻŋ āĻāĻ¸āĻ˛ā§ āĻ¸āĻŽā§āĻāĻŦ, āĻ¤āĻŦā§ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻāĻāĻŋāĻ˛ āĻāĻĒāĻžāĻ¯āĻŧā§ āĻ¯āĻž āĻāĻŽāĻ°āĻž āĻāĻāĻžāĻ¨ā§ āĻāĻ˛ā§āĻāĻ¨āĻž āĻāĻ°āĻŦ āĻ¨āĻž)āĨ¤ āĻāĻā§āĻ¸āĻā§āĻā§āĻā§, āĻāĻāĻāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ¤āĻžāĻ° āĻ¯āĻ¤āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¤āĻ¤āĻā§āĻ˛āĻŋ āĻ ā§āĻ¯āĻžāĻāĻžāĻāĻ¨ā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋāĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ˇ āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻ¯ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻāĻ āĻ ā§āĻ¯āĻžāĻāĻžāĻāĻ¨ā§āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§ āĻ¤āĻž āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻ¨āĻž āĻšāĻ¯āĻŧā§āĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ°ā§āĻĨ āĻŦā§āĻ¯āĻ¯āĻŧ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤
Opcode CREATE2
āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻ°āĻž CREATE2 āĻ āĻĒāĻā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋāĨ¤ CREATE2 āĻāĻĒāĻ¨āĻžāĻā§ āĻ āĻŋāĻāĻžāĻ¨āĻžāĻāĻŋ āĻĒā§āĻ°ā§āĻŦ-āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻ āĻŋāĻāĻžāĻ¨āĻžāĻāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ¸ā§āĻ¤ā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ:
keccak256 (0xff ++ address ++ salt ++ keccak256 (init_code)) [12:]
, āĻ¯ā§āĻāĻžāĻ¨ā§:
- āĻ āĻŋāĻāĻžāĻ¨āĻž â āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋāĻ° āĻ āĻŋāĻāĻžāĻ¨āĻž āĻ¯āĻž CREATE2 āĻāĻ˛ āĻāĻ°āĻŦā§
- āĻ˛āĻŦāĻŖ - āĻāĻ˛ā§āĻŽā§āĻ˛ā§ āĻŽāĻžāĻ¨
- init_code - āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋ āĻŦāĻžāĻāĻāĻā§āĻĄ
āĻāĻāĻŋ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°ā§ āĻ¯ā§ āĻāĻŽāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻā§ āĻ¯ā§ āĻ āĻŋāĻāĻžāĻ¨āĻžāĻāĻŋ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻŋ āĻ¤āĻžāĻ¤ā§ āĻĒā§āĻ°āĻā§āĻ¤āĻĒāĻā§āĻˇā§ āĻĒāĻāĻ¨ā§āĻĻāĻ¸āĻ āĻŦāĻžāĻāĻāĻā§āĻĄ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻ
āĻ§āĻŋāĻāĻ¨ā§āĻ¤ā§, āĻāĻ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋāĻāĻŋ āĻ¯āĻāĻ¨āĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻŦā§ āĻŽā§āĻ¤āĻžāĻ¯āĻŧā§āĻ¨ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¯āĻāĻ¨ āĻāĻāĻāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻĒā§āĻ°āĻĨāĻŽāĻŦāĻžāĻ° āĻ¤āĻžāĻĻā§āĻ° āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨ā§āĻ¯āĻŧāĨ¤
āĻ¤āĻĻā§āĻĒāĻ°āĻŋ, āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° āĻāĻāĻŋ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋāĻ° āĻ āĻŋāĻāĻžāĻ¨āĻž āĻāĻŖāĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻžāĻ°āĻŖ:
- āĻ āĻŋāĻāĻžāĻ¨āĻž āĻ¸ā§āĻ¤ā§āĻ°ā§ āĻ§ā§āĻ°ā§āĻŦāĻ, āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻāĻžāĻ°āĻāĻžāĻ¨āĻžāĻ° āĻ āĻŋāĻāĻžāĻ¨āĻž
- āĻ˛āĻŦāĻŖ â user_id āĻšā§āĻ¯āĻžāĻļ
- init_code āĻ§ā§āĻ°ā§āĻŦāĻ āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻŽāĻ°āĻž āĻāĻāĻ āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋ
āĻāĻ°āĻ āĻāĻ¨ā§āĻ¨āĻ¤āĻŋ
āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨āĻāĻŋāĻ° āĻāĻāĻ¨āĻ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ°āĻ¯āĻŧā§āĻā§: āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ°ā§āĻĨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻĒāĻ°āĻŋāĻ¤ā§āĻ°āĻžāĻŖ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¨āĻŋ āĻĢāĻžāĻāĻļāĻ¨ āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°(), СаŅĐĩĐŧ СаŅĐĩĐŧ āĻāĻ¤ā§āĻŽāĻ§ā§āĻŦāĻāĻ¸ () āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻāĻ¨āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻāĻ°ā§ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋ āĻŽā§āĻ¤āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ¯āĻžāĻ¸ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻŦā§āĨ¤
āĻāĻ¨āĻĒā§āĻ°āĻŋāĻ¯āĻŧ āĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ā§āĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§, āĻāĻĒāĻ¨āĻŋ CREATE2 āĻ āĻĒāĻā§āĻĄ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻāĻ āĻ āĻŋāĻāĻžāĻ¨āĻžāĻ¯āĻŧ āĻāĻāĻžāĻ§āĻŋāĻāĻŦāĻžāĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻ° āĻāĻžāĻ°āĻŖ āĻšāĻ˛ CREATE2 āĻā§āĻ āĻāĻ°ā§ āĻ¯ā§ āĻāĻžāĻ°ā§āĻā§āĻ āĻ ā§āĻ¯āĻžāĻĄā§āĻ°ā§āĻ¸ā§āĻ° āĻ¨āĻ¨ā§āĻ¸ āĻļā§āĻ¨ā§āĻ¯ (āĻāĻāĻŋ āĻāĻ¨āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻāĻ°ā§āĻ° āĻļā§āĻ°ā§āĻ¤ā§ "1" āĻŽāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§)āĨ¤ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻĢāĻžāĻāĻļāĻ¨ āĻāĻ¤ā§āĻŽāĻ§ā§āĻŦāĻāĻ¸ () āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° āĻ¨āĻ¨āĻ¸ āĻ ā§āĻ¯āĻžāĻĄā§āĻ°ā§āĻ¸ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§āĨ¤ āĻ¤āĻžāĻ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¸āĻš āĻāĻŦāĻžāĻ° CREATE2 āĻāĻ˛ āĻāĻ°ā§āĻ¨, āĻ¨āĻ¨āĻ¸ āĻā§āĻ āĻĒāĻžāĻ¸ āĻšāĻŦā§āĨ¤
āĻĻāĻ¯āĻŧāĻž āĻāĻ°ā§ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨āĻāĻŋ Ethereum āĻ āĻŋāĻāĻžāĻ¨āĻž āĻŦāĻŋāĻāĻ˛ā§āĻĒā§āĻ° āĻ āĻ¨ā§āĻ°ā§āĻĒ, āĻ¤āĻŦā§ āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻ¤ āĻā§āĻā§āĻ˛āĻŋ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻāĻžāĻĄāĻŧāĻžāĻāĨ¤ āĻāĻāĻāĻŋ āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻĨā§āĻā§ āĻšāĻāĻāĻ¯āĻŧāĻžāĻ˛ā§āĻā§ āĻ āĻ°ā§āĻĨ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻžāĻ° āĻāĻ°āĻ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻāĻ°āĻā§āĻ° āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ¸āĻŽāĻžāĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°(), āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻŽāĻ°āĻž āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ°ā§āĻĨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻŋ āĻ¨āĻžāĨ¤
āĻā§āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤
āĻŽā§āĻ˛āĻ¤ āĻāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤:
- āĻĻā§āĻŦāĻžāĻ°āĻž āĻ˛āĻŦāĻŖ āĻĒā§āĻ¤ā§ āĻĢāĻžāĻāĻļāĻ¨ USER_ID
- āĻāĻāĻāĻŋ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻā§āĻā§āĻ¤āĻŋ āĻ¯āĻž āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻ˛āĻŦāĻŖ āĻ¸āĻš CREATE2 āĻ āĻĒāĻā§āĻĄ āĻāĻ˛ āĻāĻ°āĻŦā§ (āĻ¯ā§āĻŽāĻ¨ āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻāĻžāĻ°āĻāĻžāĻ¨āĻž)
- āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻŦāĻžāĻāĻāĻā§āĻĄ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻ¨āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻā§āĻā§āĻ¤āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤:
constructor () {
address hotWallet = 0xâĻ;
address token = 0xâĻ;
token.transfer (hotWallet, token.balanceOf (address (this)));
selfdestruct (address (0));
}
āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§āĻ āĻ¨āĻ¤ā§āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻ°āĻž āĻšāĻŋāĻ¸āĻžāĻŦ āĻāĻ°ā§ āĻ¤āĻžāĻ° āĻŽāĻžāĻ¨āĻŋāĻŦā§āĻ¯āĻžāĻā§āĻ° āĻ āĻŋāĻāĻžāĻ¨āĻž āĻĻā§āĻāĻžāĻ
keccak256 (0xff ++ address ++ salt ++ keccak256 (init_code)) [12:]
āĻ¯āĻāĻ¨ āĻāĻāĻāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻ āĻŋāĻāĻžāĻ¨āĻžāĻ¯āĻŧ āĻā§āĻā§āĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°ā§, āĻ¤āĻāĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻ¸āĻš āĻāĻāĻāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻā§āĻ¨ā§āĻ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ¯āĻŧ _āĻĒā§āĻ°āĻ¤āĻŋ, āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻ āĻŋāĻāĻžāĻ¨āĻžāĻ° āĻ¸āĻŽāĻžāĻ¨āĨ¤ āĻāĻ āĻŽā§āĻšā§āĻ°ā§āĻ¤ā§, āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻā§ āĻāĻā§āĻ¸āĻā§āĻā§āĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸ āĻŦāĻžāĻĄāĻŧāĻžāĻ¨ā§ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻ¸āĻŽā§āĻāĻŦāĨ¤
āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻ āĻŋāĻāĻžāĻ¨āĻžāĻ¯āĻŧ āĻĒāĻ°ā§āĻ¯āĻžāĻĒā§āĻ¤ āĻ¸āĻāĻā§āĻ¯āĻ āĻā§āĻā§āĻ¨ āĻāĻŽāĻž āĻšāĻ¯āĻŧ, āĻ¤āĻāĻ¨ āĻāĻŽāĻ°āĻž āĻ¸ā§āĻā§āĻ˛āĻŋ āĻāĻāĻŦāĻžāĻ°ā§ āĻšāĻāĻāĻ¯āĻŧāĻžāĻ˛ā§āĻā§ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄāĻāĻŋ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻāĻ¨ā§āĻā§āĻ°āĻžāĻā§āĻ āĻĢā§āĻ¯āĻžāĻā§āĻāĻ°āĻŋ āĻĢāĻžāĻāĻļāĻ¨āĻā§ āĻāĻ˛ āĻāĻ°ā§, āĻ¯āĻž āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°ā§:
function deployWallet (ŅĐžĐģŅ uint256) {
bytes memory walletBytecode =âĻ;
// invoke CREATE2 with wallet bytecode and salt
}
āĻāĻāĻāĻžāĻŦā§, āĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻ āĻāĻ¨ā§āĻā§āĻ°āĻžāĻā§āĻāĻ° āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻž āĻ¤āĻžāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻā§āĻ¨ āĻšāĻāĻāĻ¯āĻŧāĻžāĻ˛ā§āĻ āĻ āĻŋāĻāĻžāĻ¨āĻžāĻ¯āĻŧ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°ā§ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻ¸ā§āĻŦ-āĻ§ā§āĻŦāĻāĻ¸ āĻāĻ°ā§āĨ¤
āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻā§āĻĄ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻŦā§
āĻ˛ā§āĻāĻ āĻĒāĻžāĻā§āĻ˛ āĻāĻ¨āĻĄā§āĻ°āĻžāĻā§āĻ¨āĻāĻ, āĻāĻĨā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŽ āĻŦāĻŋāĻļā§āĻˇāĻā§āĻ
āĻāĻ¤ā§āĻ¸: www.habr.com