SELECT url_to, r404 FROM pod_redirect WHERE BINARY REPLACE(url_from,'/ru/','/') = '/konstruktor_dlya_devochek/o_5-developing-konstruktsii-transformery.html' LIMIT 0,1 [0.00042390823364258 sec]
SELECT pod_filter.id,pod_filter.url FROM pod_filter WHERE BINARY pod_filter.url IN ('o_5','developing','konstruktsii','transformery') order by url [0.0014550685882568 sec]
SELECT pod_sub_icon.id,pod_sub_icon.url FROM pod_sub_icon WHERE BINARY pod_sub_icon.url IN ('o_5','developing','konstruktsii','transformery') order by url [0.00098419189453125 sec]
SELECT id, url FROM pod_filter WHERE url IN ('o_5','developing','konstruktsii','transformery') [0.00068807601928711 sec]
SELECT id, url FROM pod_sub_icon WHERE url IN ('o_5','developing','konstruktsii','transformery') [0.0010650157928467 sec]
SELECT f.id, mf.id as mf_id, mf.is_split FROM pod_filter f INNER JOIN pod_filter mf ON f.entry = mf.id WHERE f.id in (463,3450,363,3460) and f.is_active AND mf.is_active ORDER BY mf.id, f.id [0.00059390068054199 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_base_goods; CREATE TEMPORARY TABLE tmp_base_goods ( id INT NOT NULL PRIMARY KEY, brand_id INT, price DECIMAL(10,2), old_price DECIMAL(10,2), ordr INT, is_present TINYINT(1), sub_icon_id INT, fast_delivery TINYINT(1), is_new TINYINT(1), is_sale TINYINT(1), KEY idx_brand (brand_id) ) ENGINE=MEMORY [0.00054097175598145 sec]
INSERT INTO tmp_base_goods (id, brand_id, price, old_price, ordr, is_present, sub_icon_id, fast_delivery, is_new, is_sale) SELECT g.id, g.brand_id, g.price, g.old_price, g.ordr, g.is_present, g.sub_icon_id, g.fast_delivery, g.is_new, g.is_sale FROM pod_cat_good g WHERE g.cat_id IN (447) AND g.entry=0 AND g.is_active AND g.is_present_all_mods UNION SELECT g.id, g.brand_id, g.price, g.old_price, g.ordr, g.is_present, g.sub_icon_id, g.fast_delivery, g.is_new, g.is_sale FROM pod_cat_good g INNER JOIN pod_dop_cat_category dc ON dc.good_id = g.id WHERE dc.dop_cat_id IN (447) AND g.entry=0 AND g.is_active AND g.is_present_all_mods [0.045082092285156 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_sub_goods; CREATE TEMPORARY TABLE tmp_sub_goods ( id INT NOT NULL PRIMARY KEY, entry INT NOT NULL, price DECIMAL(10,2), old_price DECIMAL(10,2), sub_icon_id INT, is_present TINYINT(1), fast_delivery TINYINT(1), is_new TINYINT(1), is_sale TINYINT(1), KEY idx_entry (entry) ) ENGINE=MEMORY [0.0004417896270752 sec]
INSERT INTO tmp_sub_goods (id, entry, price, old_price, sub_icon_id, is_present, fast_delivery, is_new, is_sale) SELECT go.id, go.entry, go.price, go.old_price, go.sub_icon_id, go.is_present, go.fast_delivery, go.is_new, go.is_sale FROM pod_cat_good go INNER JOIN tmp_base_goods t ON go.entry = t.id WHERE go.is_active AND go.is_present [0.00070905685424805 sec]
SELECT g.id /* cats:447 */ FROM tmp_base_goods g INNER JOIN pod_good_filter gf0 ON g.id = gf0.id_good AND gf0.filter_id_value in (363) INNER JOIN pod_good_filter gf1 ON g.id = gf1.id_good AND gf1.filter_id_value in (463) INNER JOIN pod_good_filter gf2 ON g.id = gf2.id_good AND gf2.filter_id_value in (3450,3460) WHERE g.is_present AND 1 UNION SELECT g.id /* cats:447 */ FROM tmp_sub_goods go INNER JOIN tmp_base_goods g ON go.entry = g.id INNER JOIN pod_good_filter gf0 ON go.id = gf0.id_good AND gf0.filter_id_value in (363) INNER JOIN pod_good_filter gf1 ON g.id = gf1.id_good AND gf1.filter_id_value in (463) INNER JOIN pod_good_filter gf2 ON g.id = gf2.id_good AND gf2.filter_id_value in (3450,3460) WHERE 1 [0.0088322162628174 sec]
CREATE TEMPORARY TABLE temp_brand_counts_6a2bab49696e3 ( id INT, gid INT, INDEX idx_id (id), INDEX idx_gid (gid) ) [0.00042390823364258 sec]
INSERT INTO temp_brand_counts_6a2bab49696e3 (id, gid) SELECT g.brand_id AS id, g.id AS gid /* cats:447 */ FROM tmp_base_goods g INNER JOIN pod_good_filter gf0 ON g.id = gf0.id_good AND gf0.filter_id_value in (363) INNER JOIN pod_good_filter gf1 ON g.id = gf1.id_good AND gf1.filter_id_value in (463) INNER JOIN pod_good_filter gf2 ON g.id = gf2.id_good AND gf2.filter_id_value in (3450,3460) WHERE g.is_present AND 1 UNION SELECT g.brand_id AS id, g.id AS gid /* cats:447 */ FROM tmp_sub_goods go INNER JOIN tmp_base_goods g ON go.entry = g.id INNER JOIN pod_good_filter gf0 ON go.id = gf0.id_good AND gf0.filter_id_value in (363) INNER JOIN pod_good_filter gf1 ON g.id = gf1.id_good AND gf1.filter_id_value in (463) INNER JOIN pod_good_filter gf2 ON g.id = gf2.id_good AND gf2.filter_id_value in (3450,3460) WHERE 1 [0.0015170574188232 sec]
SELECT b.id, b.name_ua AS name, pc.name_ua AS country, b.country_id, b.image_icon, b.url, b.ordr, pc.code, COALESCE(tc.count, 0) as count FROM pod_cat_brand b INNER JOIN ( SELECT id, COUNT(gid) as count FROM temp_brand_counts_6a2bab49696e3 GROUP BY id HAVING COUNT(gid) > 0 ) tc ON b.id = tc.id LEFT JOIN pod_country pc ON (pc.id = b.country_id AND pc.is_active = 1) WHERE b.is_active = '1' ORDER BY b.ordr [0.00071883201599121 sec]
DROP TEMPORARY TABLE IF EXISTS temp_brand_counts_6a2bab49696e3 [0.00019598007202148 sec]
SELECT MIN(min_price) AS min_price, MAX(max_price) AS max_price FROM ( SELECT MIN(g.price) AS min_price, MAX(g.price) AS max_price /* cats:447 */ FROM tmp_base_goods g INNER JOIN pod_good_filter gf0 ON g.id = gf0.id_good AND gf0.filter_id_value in (363) INNER JOIN pod_good_filter gf1 ON g.id = gf1.id_good AND gf1.filter_id_value in (463) INNER JOIN pod_good_filter gf2 ON g.id = gf2.id_good AND gf2.filter_id_value in (3450,3460) WHERE g.is_present AND 1 UNION SELECT MIN(go.price) AS min_price, MAX(go.price) AS max_price /* cats:447 */ FROM tmp_sub_goods go INNER JOIN tmp_base_goods g ON go.entry = g.id INNER JOIN pod_good_filter gf0 ON go.id = gf0.id_good AND gf0.filter_id_value in (363) INNER JOIN pod_good_filter gf1 ON g.id = gf1.id_good AND gf1.filter_id_value in (463) INNER JOIN pod_good_filter gf2 ON g.id = gf2.id_good AND gf2.filter_id_value in (3450,3460) WHERE 1 ) A [0.0012152194976807 sec]
SELECT id, name_ua AS name, url FROM pod_filter WHERE id in (463,3450,363,3460) AND is_active='1' [0.00031399726867676 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496cd26; CREATE TEMPORARY TABLE tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496cd26 ( goods_id INT NOT NULL, filter_id INT NOT NULL, PRIMARY KEY (goods_id, filter_id) ) ENGINE=MEMORY; [0.0002291202545166 sec]
INSERT INTO tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496cd26 (goods_id, filter_id) SELECT DISTINCT t.id AS goods_id, f.id AS filter_id FROM pod_cat_filter cf INNER JOIN pod_filter fm ON cf.filter_id = fm.id AND fm.is_split = 0 AND fm.is_active INNER JOIN pod_good_filter gf USE INDEX (idx_cat_filter_good) ON gf.filter_id = cf.filter_id AND gf.cat_id IN (447) AND gf.filter_id_value NOT IN (363,463,3450,3460) INNER JOIN pod_filter f ON gf.filter_id_value = f.id AND f.is_active INNER JOIN tmp_base_goods t ON gf.id_good = t.id WHERE cf.category_id = 447 [0.0010349750518799 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496cd26; CREATE TEMPORARY TABLE tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496cd26 ( filter_id INT NOT NULL PRIMARY KEY, count INT NOT NULL ) ENGINE=MEMORY; [0.0001528263092041 sec]
INSERT IGNORE INTO tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496cd26 (filter_id, count) SELECT p.filter_id, COUNT(*) AS count FROM tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496cd26 p GROUP BY p.filter_id [0.00013995170593262 sec]
SELECT c.filter_id, c.count, f.entry, f.name_ua AS name, f.url, f.ord, fm.name_ua AS mname, fm.url AS murl, fm.ord AS mord FROM tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496cd26 c INNER JOIN pod_filter f ON c.filter_id = f.id INNER JOIN pod_filter fm ON f.entry = fm.id ORDER BY fm.ord DESC, f.ord DESC, c.filter_id [0.00023794174194336 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496cd26 [0.00010800361633301 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496cd26 [4.887580871582E-5 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496d927; CREATE TEMPORARY TABLE tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496d927 ( goods_id INT NOT NULL, filter_id INT NOT NULL, PRIMARY KEY (goods_id, filter_id) ) ENGINE=MEMORY; [0.00017499923706055 sec]
INSERT INTO tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496d927 (goods_id, filter_id) SELECT DISTINCT ts.entry AS goods_id, f.id AS filter_id FROM pod_cat_filter cf INNER JOIN pod_filter fm ON cf.filter_id = fm.id AND fm.is_split = 1 AND fm.is_active INNER JOIN pod_good_filter gf USE INDEX (idx_cat_filter_good) ON gf.filter_id = cf.filter_id AND gf.cat_id IN (447) AND gf.filter_id_value NOT IN (363,463,3450,3460) INNER JOIN pod_filter f ON gf.filter_id_value = f.id AND f.is_active INNER JOIN tmp_sub_goods ts ON gf.id_good = ts.id WHERE cf.category_id = 447 [0.0003058910369873 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496d927; CREATE TEMPORARY TABLE tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496d927 ( filter_id INT NOT NULL PRIMARY KEY, count INT NOT NULL ) ENGINE=MEMORY; [0.00019979476928711 sec]
INSERT IGNORE INTO tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496d927 (filter_id, count) SELECT p.filter_id, COUNT(*) AS count FROM tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496d927 p GROUP BY p.filter_id [0.0001828670501709 sec]
SELECT c.filter_id, c.count, f.entry, f.name_ua AS name, f.url, f.ord, fm.name_ua AS mname, fm.url AS murl, fm.ord AS mord FROM tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496d927 c INNER JOIN pod_filter f ON c.filter_id = f.id INNER JOIN pod_filter fm ON f.entry = fm.id ORDER BY fm.ord DESC, f.ord DESC, c.filter_id [0.00014686584472656 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496d927 [0.00017690658569336 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496d927 [9.0837478637695E-5 sec]
SELECT f.id, mf.id as mf_id, mf.is_split FROM pod_filter f INNER JOIN pod_filter mf ON f.entry = mf.id WHERE f.id in (3450,363,3460) and f.is_active AND mf.is_active ORDER BY mf.id, f.id [0.00031590461730957 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496ebbe; CREATE TEMPORARY TABLE tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496ebbe ( goods_id INT NOT NULL, filter_id INT NOT NULL, PRIMARY KEY (goods_id, filter_id) ) ENGINE=MEMORY; [0.00041294097900391 sec]
INSERT INTO tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496ebbe (goods_id, filter_id) SELECT DISTINCT t.id AS goods_id, f.id AS filter_id FROM pod_cat_filter cf INNER JOIN pod_filter fm ON cf.filter_id = fm.id AND fm.is_split = 0 AND fm.is_active INNER JOIN pod_good_filter gf USE INDEX (idx_cat_filter_good) ON gf.filter_id = cf.filter_id AND gf.cat_id IN (447) AND gf.filter_id = 461 INNER JOIN pod_filter f ON gf.filter_id_value = f.id AND f.is_active INNER JOIN tmp_base_goods t ON gf.id_good = t.id WHERE cf.category_id = 447 [0.00082802772521973 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496ebbe; CREATE TEMPORARY TABLE tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496ebbe ( filter_id INT NOT NULL PRIMARY KEY, count INT NOT NULL ) ENGINE=MEMORY; [0.00037097930908203 sec]
INSERT INTO tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496ebbe (filter_id, count) SELECT p.filter_id, COUNT(*) AS count FROM tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496ebbe p GROUP BY p.filter_id [0.0003659725189209 sec]
INSERT IGNORE INTO tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496ebbe (filter_id, count) SELECT pf.id, 0 FROM pod_filter pf LEFT JOIN tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496ebbe c ON c.filter_id = pf.id WHERE pf.id in (463) AND c.filter_id IS NULL [0.0002601146697998 sec]
SELECT c.filter_id, c.count, f.entry, f.name_ua AS name, f.url, f.ord, fm.name_ua AS mname, fm.url AS murl, fm.ord AS mord FROM tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496ebbe c INNER JOIN pod_filter f ON c.filter_id = f.id INNER JOIN pod_filter fm ON f.entry = fm.id ORDER BY fm.ord DESC, f.ord DESC, c.filter_id [0.00038003921508789 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496ebbe [0.00028204917907715 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496ebbe [9.3936920166016E-5 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496fc5a; CREATE TEMPORARY TABLE tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496fc5a ( goods_id INT NOT NULL, filter_id INT NOT NULL, PRIMARY KEY (goods_id, filter_id) ) ENGINE=MEMORY; [0.00021219253540039 sec]
INSERT INTO tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496fc5a (goods_id, filter_id) SELECT DISTINCT t.id AS goods_id, f.id AS filter_id FROM pod_cat_filter cf INNER JOIN pod_filter fm ON cf.filter_id = fm.id AND fm.is_split = 0 AND fm.is_active INNER JOIN pod_good_filter gf USE INDEX (idx_cat_filter_good) ON gf.filter_id = cf.filter_id AND gf.cat_id IN (447) AND gf.filter_id = 3436 INNER JOIN pod_filter f ON gf.filter_id_value = f.id AND f.is_active INNER JOIN tmp_base_goods t ON gf.id_good = t.id WHERE cf.category_id = 447 [0.00066494941711426 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496fc5a; CREATE TEMPORARY TABLE tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496fc5a ( filter_id INT NOT NULL PRIMARY KEY, count INT NOT NULL ) ENGINE=MEMORY; [0.00024199485778809 sec]
INSERT INTO tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496fc5a (filter_id, count) SELECT p.filter_id, COUNT(*) AS count FROM tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496fc5a p GROUP BY p.filter_id [0.00026988983154297 sec]
INSERT IGNORE INTO tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496fc5a (filter_id, count) SELECT pf.id, 0 FROM pod_filter pf LEFT JOIN tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496fc5a c ON c.filter_id = pf.id WHERE pf.id in (3450,3460) AND c.filter_id IS NULL [0.00031018257141113 sec]
SELECT c.filter_id, c.count, f.entry, f.name_ua AS name, f.url, f.ord, fm.name_ua AS mname, fm.url AS murl, fm.ord AS mord FROM tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496fc5a c INNER JOIN pod_filter f ON c.filter_id = f.id INNER JOIN pod_filter fm ON f.entry = fm.id ORDER BY fm.ord DESC, f.ord DESC, c.filter_id [0.00031399726867676 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_pairs_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496fc5a [0.00020003318786621 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab496fc5a [9.9897384643555E-5 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_A_jpbq89kt2nt53r8vbvksvif8fb_6a2bab497093f; CREATE TEMPORARY TABLE tmp_A_jpbq89kt2nt53r8vbvksvif8fb_6a2bab497093f ( entry INT NOT NULL, sub_icon_id INT NOT NULL, PRIMARY KEY (entry, sub_icon_id) ) ENGINE=MEMORY; [0.00015020370483398 sec]
INSERT IGNORE INTO tmp_A_jpbq89kt2nt53r8vbvksvif8fb_6a2bab497093f (entry, sub_icon_id) SELECT DISTINCT A.entry, A.sub_icon_id FROM ( SELECT g.id as id, g.id as entry, g.sub_icon_id /* cats:447 */ FROM tmp_base_goods g INNER JOIN pod_good_filter gf0 ON g.id = gf0.id_good AND gf0.filter_id_value in (363) INNER JOIN pod_good_filter gf1 ON g.id = gf1.id_good AND gf1.filter_id_value in (463) INNER JOIN pod_good_filter gf2 ON g.id = gf2.id_good AND gf2.filter_id_value in (3450,3460) WHERE g.is_present AND 1 UNION SELECT go.id as id, g.id as entry, go.sub_icon_id /* cats:447 */ FROM tmp_sub_goods go INNER JOIN tmp_base_goods g ON go.entry = g.id INNER JOIN pod_good_filter gf0 ON go.id = gf0.id_good AND gf0.filter_id_value in (363) INNER JOIN pod_good_filter gf1 ON g.id = gf1.id_good AND gf1.filter_id_value in (463) INNER JOIN pod_good_filter gf2 ON g.id = gf2.id_good AND gf2.filter_id_value in (3450,3460) WHERE 1 ) A [0.00056695938110352 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab497093f; CREATE TEMPORARY TABLE tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab497093f ( sub_icon_id INT NOT NULL PRIMARY KEY, count INT NOT NULL ) ENGINE=MEMORY; [0.00031185150146484 sec]
INSERT IGNORE INTO tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab497093f (sub_icon_id, count) SELECT sub_icon_id, COUNT(DISTINCT entry) AS count FROM ( SELECT A.entry, A.sub_icon_id FROM tmp_A_jpbq89kt2nt53r8vbvksvif8fb_6a2bab497093f A INNER JOIN pod_sub_icon si ON A.sub_icon_id = si.id AND si.is_active_filter = 1 ) AA GROUP BY sub_icon_id [0.00046300888061523 sec]
SELECT c.sub_icon_id AS id, c.count, si.entry, si.name_ua AS name, si.url FROM tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab497093f c INNER JOIN pod_sub_icon si ON c.sub_icon_id = si.id AND si.is_active_filter = 1 ORDER BY si.ordr, si.name [0.00025296211242676 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_A_jpbq89kt2nt53r8vbvksvif8fb_6a2bab497093f [0.00024700164794922 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_counts_jpbq89kt2nt53r8vbvksvif8fb_6a2bab497093f [0.00011014938354492 sec]
DROP TEMPORARY TABLE IF EXISTS tmp_base_goods; DROP TEMPORARY TABLE IF EXISTS tmp_sub_goods [0.00021195411682129 sec]
Конструктор для дівчаток - купити конструктори для дівчинки в Україні та Києві, ціна в каталозі, інтернет магазин Podushka.com.ua

DEVELOPMENT🌷ЗНИЖКИ ДО 70%

ПЕРЕЙТИ

Конструктор для дівчаток : 5 років, розвиваючі, конструкції, трансформери